Class VespaEmbeddingStore
java.lang.Object
dev.langchain4j.store.embedding.vespa.VespaEmbeddingStore
- All Implemented Interfaces:
EmbeddingStore<TextSegment>
-
Nested Class Summary
Nested Classes -
Constructor Summary
ConstructorsConstructorDescriptionVespaEmbeddingStore(String url, String keyPath, String certPath, Duration timeout, String namespace, String documentType, String clusterName, String rankProfile, Integer targetHits, Boolean avoidDups, Boolean logRequests, Boolean logResponses) Creates a new VespaEmbeddingStore instance. -
Method Summary
Modifier and TypeMethodDescriptionadd(Embedding embedding, TextSegment textSegment) voidAdds a new embedding with provided ID to the store.voidstatic VespaEmbeddingStore.Builderbuilder()voidsearch(EmbeddingSearchRequest request) The score insideEmbeddingMatchis Vespa relevance according to provided rank profile.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface EmbeddingStore
addAll, generateIds, remove, removeAll, removeAll
-
Constructor Details
-
VespaEmbeddingStore
public VespaEmbeddingStore(String url, String keyPath, String certPath, Duration timeout, String namespace, String documentType, String clusterName, String rankProfile, Integer targetHits, Boolean avoidDups, Boolean logRequests, Boolean logResponses) Creates a new VespaEmbeddingStore instance.- Parameters:
url- server url, local or cloud one. The latter you can find under Endpoint of your Vespa application, e.g. https://alexey-heezer.langchain4j.mytenant346.aws-us-east-1c.dev.z.vespa-app.cloud/keyPath- local path to the SSL private key file in PEM format. Read docs for details. Null if there is no SSL private key file e.g. for local Vespa server.certPath- local path to the SSL certificate file in PEM format. Read docs for details. Null if there is no SSL certificate file e.g. for local Vespa server.timeout- for Vespa Java client injava.time.Durationformat.namespace- required for document ID generation, find more details here.documentType- document type, used for document ID generation, find more details here and data queryingclusterName- cluster name, used for deleting all documents, find more details hererankProfile- rank profile from your .sd schema. Provided example schema configures cosine similarity matchtargetHits- sets the number of hits (10 is default) exposed to the real Vespa's first-phase ranking function per content node, find more details here.avoidDups- if true (default), thenVespaEmbeddingStorewill generate a hashed ID based on provided text segment, which avoids duplicated entries in DB. If false, then random ID will be generated.logRequests- If true, requests to the Vespa service are logged.logResponses- If true, responses from the Vespa service are logged.
-
-
Method Details
-
builder
-
add
- Specified by:
addin interfaceEmbeddingStore<TextSegment>
-
add
Adds a new embedding with provided ID to the store.- Specified by:
addin interfaceEmbeddingStore<TextSegment>- Parameters:
id- "user-specified" part of document ID, find more details hereembedding- the embedding to add
-
add
- Specified by:
addin interfaceEmbeddingStore<TextSegment>
-
addAll
- Specified by:
addAllin interfaceEmbeddingStore<TextSegment>
-
addAll
- Specified by:
addAllin interfaceEmbeddingStore<TextSegment>
-
search
The score insideEmbeddingMatchis Vespa relevance according to provided rank profile.- Specified by:
searchin interfaceEmbeddingStore<TextSegment>
-
removeAll
public void removeAll()- Specified by:
removeAllin interfaceEmbeddingStore<TextSegment>
-