Làm việc với Chroma (tiếp tục)
Để tạo bộ, bạn cần gọi phương thức reate_collection, truyền tên bạn gán cho nó.
collection_name = “news_collection”
#Check if collection name is unique, if not delete previous collection
if len(chroma_client.list_collections()) > 0 and collection_name in [chroma_client.list_collections()[0].name]:chroma_client.delete_collection(name=collection_name)
collection = chroma_client.create_collection(name=collection_name)
Sau khi tạo bộ, bạn đã sẵn sàng thêm dữ liệu vào CSDL ChromaDB. Bạn có thể làm cái này bằng cách gọi hàm add
và cung cấp tài liệu, metadata, và một cái nhận dạng duy nhất cho mỗi record.
Tài liệu có thể là bất cứ độ dài nào và sẽ chứa tất cả thông tin bạn cần để lưu giữ.
Phụ thuộc vào độ dài của các tài liệu lưu giữ, bạn có thể xem xét chia tách chúng thành các bộ phận nhỏ hơn, như
các pages hay chapters. Bạn nên giữ trong đầu rằng thông tin trả về bởi CSDL sẽ được sử dụng để tạo bối cảnh của
prompt và rằng các prompts có giới hạn về mặt độ dài chúng có thể đi đến.
Vì vậy, nó là quan trọng để xem xét trao đổi giữa độ dài của các tài liệu và các giới hạn độ dài prompts khi thiết
kế hệ thống.
Trong ví dụ này, bạn sẽ sử dụng toàn bộ thông tin tài liệu để tạo prompt. Tuy nhiên, trong dự án tiên tiến hơn,
nó là phổ biến để sử dụng model khác để tạo sinh một tóm tắt thông tin trả về, cho phép tạo một prompt với
ít nội dung nhất nhưng phù hợp hơn.
Metadata không được sử dụng trong tìm kiếm vector bản thân nó. Metadata được sử dụng lưu giữ các hạng mục hay
thông tin thêm cái có thể được sử dụng trong lọc sau để tinh chỉnh các kết quả.
