Skip to content

Commit b04d847

Browse files
committed
fix: use updated apis
1 parent f4c4cd3 commit b04d847

File tree

6 files changed

+11
-12
lines changed

6 files changed

+11
-12
lines changed

backend/src/main/java/ch/xxx/aidoclibchat/adapter/repository/DocumentVSRepositoryBean.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,14 @@
2020
import org.postgresql.util.PGobject;
2121
import org.springframework.ai.document.Document;
2222
import org.springframework.ai.embedding.EmbeddingModel;
23-
import org.springframework.ai.vectorstore.pgvector.PgVectorStore;
2423
import org.springframework.ai.vectorstore.SearchRequest;
2524
import org.springframework.ai.vectorstore.VectorStore;
2625
import org.springframework.ai.vectorstore.filter.Filter;
2726
import org.springframework.ai.vectorstore.filter.Filter.ExpressionType;
2827
import org.springframework.ai.vectorstore.filter.Filter.Key;
2928
import org.springframework.ai.vectorstore.filter.Filter.Value;
3029
import org.springframework.ai.vectorstore.filter.FilterExpressionConverter;
30+
import org.springframework.ai.vectorstore.pgvector.PgVectorStore;
3131
import org.springframework.jdbc.core.JdbcTemplate;
3232
import org.springframework.jdbc.core.RowMapper;
3333
import org.springframework.stereotype.Repository;
@@ -52,7 +52,7 @@ public DocumentVSRepositoryBean(JdbcTemplate jdbcTemplate, EmbeddingModel embedd
5252
ObjectMapper objectMapper) {
5353
this.jdbcTemplate = jdbcTemplate;
5454
this.objectMapper = objectMapper;
55-
this.vectorStore = new PgVectorStore(jdbcTemplate, embeddingClient);
55+
this.vectorStore = PgVectorStore.builder().embeddingModel(embeddingClient).jdbcTemplate(jdbcTemplate).build();
5656
this.filterExpressionConverter = ((PgVectorStore) this.vectorStore).filterExpressionConverter;
5757
this.vectorTableName = PgVectorStore.DEFAULT_TABLE_NAME;
5858
}

backend/src/main/java/ch/xxx/aidoclibchat/adapter/repository/SubjectRepositoryBean.java

-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020

2121
import ch.xxx.aidoclibchat.domain.model.entity.Subject;
2222
import ch.xxx.aidoclibchat.domain.model.entity.SubjectRepository;
23-
import ch.xxx.aidoclibchat.domain.model.entity.Work;
2423

2524
@Repository
2625
public class SubjectRepositoryBean implements SubjectRepository {

backend/src/main/java/ch/xxx/aidoclibchat/usecase/service/CodeGenerationService.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ public String generateTest(String url, Optional<String> testUrlOpt) {
113113
.collect(Collectors.joining(System.getProperty("line.separator")));
114114
LOGGER.debug(new PromptTemplate(this.contextWindowSize >= 16 * 1024 ? this.ollamaPrompt1 : this.ollamaPrompt,
115115
Map.of("classToTest", classToTest, "contextClasses", contextClasses, "testExample", testExample))
116-
.createMessage().getContent());
116+
.createMessage().getText());
117117
LOGGER.info("Generation started with context window: {}", this.contextWindowSize);
118118
var response = chatClient.prompt()
119119
.user(u -> u.text(this.contextWindowSize >= 16 * 1024 ? this.ollamaPrompt1 : this.ollamaPrompt)

backend/src/main/java/ch/xxx/aidoclibchat/usecase/service/DocumentService.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ public Long storeDocument(Document document) {
188188
record TikaDocumentAndContent(org.springframework.ai.document.Document document, String content) {
189189
}
190190
var aiDocuments = tikaDocuments.stream()
191-
.flatMap(myDocument1 -> this.splitStringToTokenLimit(myDocument1.getContent(), embeddingTokenLimit)
191+
.flatMap(myDocument1 -> this.splitStringToTokenLimit(myDocument1.getText(), embeddingTokenLimit)
192192
.stream().map(myStr -> new TikaDocumentAndContent(myDocument1, myStr)))
193193
.map(myTikaRecord -> new org.springframework.ai.document.Document(myTikaRecord.content(),
194194
myTikaRecord.document().getMetadata()))
@@ -226,10 +226,10 @@ public AiDocumentResult queryDocuments(SearchDto searchDto) {
226226
this.getSystemMessage(mostSimilar.stream().toList(), this.documentTokenLimit, searchDto.getSearchString());
227227
default -> this.getSystemMessage(documentChunks, this.documentTokenLimit, searchDto.getSearchString());
228228
};
229-
UserMessage userMessage = this.activeProfile.contains("ollama") ? new UserMessage(systemMessage.getContent())
229+
UserMessage userMessage = this.activeProfile.contains("ollama") ? new UserMessage(systemMessage.getText())
230230
: new UserMessage(searchDto.getSearchString());
231231
LocalDateTime start = LocalDateTime.now();
232-
var response = chatClient.prompt().system(s -> s.text(systemMessage.getContent()))
232+
var response = chatClient.prompt().system(s -> s.text(systemMessage.getText()))
233233
.user(u -> u.text(userMessage.getContent())).call().chatResponse();
234234
LOGGER.info("AI response time: {}ms",
235235
ZonedDateTime.of(LocalDateTime.now(), ZoneId.systemDefault()).toInstant().toEpochMilli()
@@ -251,7 +251,7 @@ public AiDocumentResult queryDocuments(SearchDto searchDto) {
251251
private Message getSystemMessage(List<org.springframework.ai.document.Document> similarDocuments, int tokenLimit,
252252
String prompt) {
253253
String documentStr = this.cutStringToTokenLimit(
254-
similarDocuments.stream().map(entry -> entry.getContent())
254+
similarDocuments.stream().map(entry -> entry.getText())
255255
.filter(Predicate.not(Objects::isNull))
256256
.filter(Predicate.not(String::isBlank)).collect(Collectors.joining("\n")),
257257
tokenLimit);

backend/src/main/java/ch/xxx/aidoclibchat/usecase/service/ImageService.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public class ImageService {
5757
private DocumentVsRepository documentVsRepository;
5858
@Value("${image.result-size:20}")
5959
private Long resultSize;
60-
private final String systemPrompt = "You are a helpful assistent searching image descriptions.";
60+
//private final String systemPrompt = "You are a helpful assistent searching image descriptions.";
6161

6262
private record ResultData(String answer, ImageQueryDto imageQueryDto) {
6363
}
@@ -97,7 +97,7 @@ public List<ImageDto> queryImage(String imageQuery) {
9797
.stream().collect(Collectors.toMap(myDoc -> myDoc.getId(), myDoc -> myDoc));
9898
return imageMap.entrySet().stream().map(myEntry -> createImageContainer(aiDocuments, myEntry))
9999
.sorted((containerA, containerB) -> containerA.distance().compareTo(containerB.distance()))
100-
.map(myContainer -> new ImageDto(myContainer.document().getContent(),
100+
.map(myContainer -> new ImageDto(myContainer.document().getText(),
101101
Base64.getEncoder().encodeToString(myContainer.image().getImageContent()),
102102
myContainer.image().getImageType()))
103103
.limit(this.resultSize).toList();

backend/src/main/java/ch/xxx/aidoclibchat/usecase/service/TableService.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ private Prompt createPrompt(SearchDto searchDto, EmbeddingContainer documentCont
161161
joinTable.set(((String) myRowDoc.getMetadata().get(MetaData.TABLE_NAME)));
162162
joinColumn.set(((String) myRowDoc.getMetadata().get(MetaData.DATANAME)));
163163
tableColumnNames.columnNames().add(((String) myRowDoc.getMetadata().get(MetaData.DATANAME)));
164-
columnValue.set(myRowDoc.getContent());
164+
columnValue.set(myRowDoc.getText());
165165
this.tableMetadataRepository
166166
.findByTableNameIn(List.of(((String) myRowDoc.getMetadata().get(MetaData.TABLE_NAME))))
167167
.stream()
@@ -190,7 +190,7 @@ private List<Message> createMessages(SearchDto searchDto, final Float minRowDist
190190
tableRecords.stream().map(myRecord -> myRecord.schema()).collect(Collectors.joining(";")),
191191
"prompt", searchDto.getSearchString(), "joinColumn", joinColumn.get(), "joinTable",
192192
joinTable.get(), "columnValue", columnValue.get()));
193-
UserMessage userMessage = this.activeProfile.contains("ollama") ? new UserMessage(systemMessage.getContent())
193+
UserMessage userMessage = this.activeProfile.contains("ollama") ? new UserMessage(systemMessage.getText())
194194
: new UserMessage(searchDto.getSearchString());
195195
return List.of(systemMessage, userMessage);
196196
}

0 commit comments

Comments
 (0)