chroma[patch]: fix bug (#28538)

Fix bug introduced in
https://github.com/langchain-ai/langchain/pull/27995

If all document IDs are `""`, the chroma SDK will raise
```
DuplicateIDError: Expected IDs to be unique
```

Caught by [docs
tests](https://github.com/langchain-ai/langchain/actions/runs/12180395579/job/33974633950),
but added a test to langchain-chroma as well.
This commit is contained in:
ccurme
2024-12-05 10:37:19 -05:00
committed by GitHub
parent ecff9a01e4
commit 8f9b3b7498
2 changed files with 17 additions and 1 deletions

View File

@@ -1228,7 +1228,7 @@ class Chroma(VectorStore):
texts = [doc.page_content for doc in documents]
metadatas = [doc.metadata for doc in documents]
if ids is None:
ids = [doc.id if doc.id else "" for doc in documents]
ids = [doc.id if doc.id else str(uuid.uuid4()) for doc in documents]
return cls.from_texts(
texts=texts,
embedding=embedding,