การสร้าง Embeddings ด้วย OpenAI API
Emmanuel Pire
Senior Software Engineer, DataCamp


from chromadb.utils.embedding_functions import OpenAIEmbeddingFunction
collection = client.get_collection(
name="netflix_titles",
embedding_function=OpenAIEmbeddingFunction(api_key="...")
)
result = collection.query(
query_texts=["movies where people sing a lot"],
n_results=3
)
print(result)
{'ids': [['s4068', 's293', 's2213']],
'embeddings': None,
'documents': [['Title: Quién te cantará (Movie)\nDescription: When a near-...',
'Title: Quartet (Movie)\nDescription: To save their posh retirement home, ...',
'Title: Sing On! Spain (TV Show)\nDescription: In this fast-paced, high-...']],
'metadatas': [[None, None, None]],
'distances': [[0.350419282913208, 0.36049118638038635, 0.37080681324005127]]
query() คืนค่า dict ที่มีหลาย key:
ids: ID ของรายการที่ได้รับembeddings: embedding ของรายการที่ได้รับdocuments: ข้อความต้นฉบับของรายการที่ได้รับmetadatas: metadata ของรายการที่ได้รับdistances: ระยะห่างของรายการจากข้อความค้นหา{'ids': [...],
'embeddings': None,
'documents': [...],
'metadatas': [...],
'distances': [...]}


collection.update(
ids=["id-1", "id-2"],
documents=["New document 1", "New document 2"]
)
collection.upsert(
ids=["id-1", "id-2"],
documents=["New document 1", "New document 2"]
)
ลบรายการออกจาก collection
collection.delete(ids=["id-1", "id-2"])
ลบ collection และรายการทั้งหมด
client.reset()
การสร้าง Embeddings ด้วย OpenAI API