Class ChromaEmbeddingStore
java.lang.Object
io.quarkiverse.langchain4j.chroma.ChromaEmbeddingStore
- All Implemented Interfaces:
dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
public class ChromaEmbeddingStore
extends Object
implements dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
Represents a store for embeddings using the Chroma backend.
Always uses cosine distance as the distance metric.
TODO: introduce an SPI in langchain4j that will allow us to provide our own client
-
Nested Class Summary
Nested Classes -
Constructor Summary
ConstructorsConstructorDescriptionChromaEmbeddingStore(String baseUrl, String collectionName, Duration timeout) Initializes a new instance of ChromaEmbeddingStore with the specified parameters. -
Method Summary
Modifier and TypeMethodDescriptionadd(dev.langchain4j.data.embedding.Embedding embedding) add(dev.langchain4j.data.embedding.Embedding embedding, dev.langchain4j.data.segment.TextSegment textSegment) voidaddAll(List<dev.langchain4j.data.embedding.Embedding> embeddings, List<dev.langchain4j.data.segment.TextSegment> textSegments) static ChromaEmbeddingStore.Builderbuilder()voiddeleteAll(int dimension) List<dev.langchain4j.store.embedding.EmbeddingMatch<dev.langchain4j.data.segment.TextSegment>>findRelevant(dev.langchain4j.data.embedding.Embedding referenceEmbedding, int maxResults, double minScore) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface dev.langchain4j.store.embedding.EmbeddingStore
findRelevant, findRelevant, findRelevant
-
Constructor Details
-
ChromaEmbeddingStore
Initializes a new instance of ChromaEmbeddingStore with the specified parameters.- Parameters:
baseUrl- The base URL of the Chroma service.collectionName- The name of the collection in the Chroma service. If not specified, "default" will be used.timeout- The timeout duration for the Chroma client. If not specified, 5 seconds will be used.
-
-
Method Details
-
builder
-
add
- Specified by:
addin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
add
- Specified by:
addin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
add
public String add(dev.langchain4j.data.embedding.Embedding embedding, dev.langchain4j.data.segment.TextSegment textSegment) - Specified by:
addin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
addAll
- Specified by:
addAllin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
addAll
public List<String> addAll(List<dev.langchain4j.data.embedding.Embedding> embeddings, List<dev.langchain4j.data.segment.TextSegment> textSegments) - Specified by:
addAllin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
findRelevant
public List<dev.langchain4j.store.embedding.EmbeddingMatch<dev.langchain4j.data.segment.TextSegment>> findRelevant(dev.langchain4j.data.embedding.Embedding referenceEmbedding, int maxResults, double minScore) - Specified by:
findRelevantin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
deleteAll
public void deleteAll(int dimension)
-