Skip to content

Commit 9755b22

Browse files
committed
fix search
1 parent 8bfb315 commit 9755b22

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

astra-db-java/src/main/java/com/datastax/astra/client/DataAPIClients.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ public static DataAPIClient createForLocal() {
7878
new UsernamePasswordTokenProvider().getToken(),
7979
DataAPIOptions.builder()
8080
.withDestination(DataAPIOptions.DataAPIDestination.CASSANDRA)
81+
.logRequests()
8182
.withObserver(new LoggingCommandObserver(DataAPIClient.class))
8283
.build());
8384
}

langchain4j-astradb/src/main/java/com/datastax/astra/langchain4j/store/embedding/AstraDbEmbeddingStore.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
import dev.langchain4j.data.embedding.Embedding;
3333
import dev.langchain4j.data.segment.TextSegment;
3434
import dev.langchain4j.store.embedding.EmbeddingMatch;
35+
import dev.langchain4j.store.embedding.EmbeddingSearchRequest;
3536
import dev.langchain4j.store.embedding.EmbeddingSearchResult;
3637
import dev.langchain4j.store.embedding.EmbeddingStore;
3738
import lombok.Getter;
@@ -215,6 +216,18 @@ public List<EmbeddingMatch<TextSegment>> findRelevant(Embedding referenceEmbeddi
215216
return findRelevant(referenceEmbedding, (Filter) null, maxResults, minScore);
216217
}
217218

219+
public EmbeddingSearchResult<TextSegment> search(EmbeddingSearchRequest request) {
220+
dev.langchain4j.store.embedding.filter.Filter lc4jFilter = request.filter();
221+
if (lc4jFilter != null) {
222+
// Map Filter
223+
Filter astraFilter = AstraDbFilterMapper.map(lc4jFilter);
224+
List<EmbeddingMatch<TextSegment>> matches = this.findRelevant(request.queryEmbedding(), astraFilter, request.maxResults(), request.minScore());
225+
return new EmbeddingSearchResult(matches);
226+
}
227+
List<EmbeddingMatch<TextSegment>> matches2 = this.findRelevant(request.queryEmbedding(), request.maxResults(), request.minScore());
228+
return new EmbeddingSearchResult(matches2);
229+
}
230+
218231
/**
219232
* Implementation of the Search to add the metadata Filtering.
220233
*

0 commit comments

Comments
 (0)