File tree Expand file tree Collapse file tree
src/main/java/org/springframework/samples/petclinic/chat Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -32,14 +32,20 @@ ext.webjarsLocatorLiteVersion = "1.0.1"
3232ext. webjarsFontawesomeVersion = " 4.7.0"
3333ext. webjarsBootstrapVersion = " 5.3.3"
3434ext. webjarsMarkedVersion = " 14.1.2"
35- ext. langchain4jVersion = " 1.0.0-beta3"
35+ ext. langchain4jVersion = " 1.7.1"
36+
37+ dependencyManagement {
38+ imports {
39+ mavenBom " dev.langchain4j:langchain4j-bom:${ langchain4jVersion} "
40+ }
41+ }
3642
3743dependencies {
38- implementation " dev.langchain4j:langchain4j-spring-boot-starter: ${ langchain4jVersion } "
39- implementation " dev.langchain4j:langchain4j-open-ai-spring-boot-starter: ${ langchain4jVersion } "
40- // implementation "dev.langchain4j:langchain4j-azure-open-ai-spring-boot-starter:${langchain4jVersion} "
41- // implementation "dev.langchain4j:langchain4j-ollama-spring-boot-starter:${langchain4jVersion} "
42- implementation " dev.langchain4j:langchain4j-embeddings-all-minilm-l6-v2: ${ langchain4jVersion } "
44+ implementation " dev.langchain4j:langchain4j-spring-boot-starter"
45+ implementation " dev.langchain4j:langchain4j-open-ai-spring-boot-starter"
46+ // implementation "dev.langchain4j:langchain4j-azure-open-ai-spring-boot-starter"
47+ // implementation "dev.langchain4j:langchain4j-ollama-spring-boot-starter"
48+ implementation " dev.langchain4j:langchain4j-embeddings-all-minilm-l6-v2"
4349 // Workaround for AOT issue (https://github.com/spring-projects/spring-framework/pull/33949) -->
4450 implementation ' io.projectreactor:reactor-core'
4551
Original file line number Diff line number Diff line change 3838 <maven-checkstyle .version>3.6.0</maven-checkstyle .version>
3939 <nohttp-checkstyle .version>0.0.11</nohttp-checkstyle .version>
4040 <spring-format .version>0.0.43</spring-format .version>
41- <langchain4j .version>1.0.0-beta3 </langchain4j .version>
41+ <langchain4j .version>1.7.1 </langchain4j .version>
4242 </properties >
4343
44+ <dependencyManagement >
45+ <dependencies >
46+ <dependency >
47+ <groupId >dev.langchain4j</groupId >
48+ <artifactId >langchain4j-bom</artifactId >
49+ <version >${langchain4j.version} </version >
50+ <type >pom</type >
51+ <scope >import</scope >
52+ </dependency >
53+ </dependencies >
54+ </dependencyManagement >
55+
4456 <dependencies >
4557 <!-- Spring and Spring Boot dependencies -->
4658 <dependency >
7789 <dependency >
7890 <groupId >dev.langchain4j</groupId >
7991 <artifactId >langchain4j-spring-boot-starter</artifactId >
80- <version >${langchain4j.version} </version >
8192 </dependency >
8293 <dependency >
8394 <groupId >dev.langchain4j</groupId >
8495 <artifactId >langchain4j-embeddings-all-minilm-l6-v2</artifactId >
85- <version >${langchain4j.version} </version >
8696 </dependency >
8797
8898 <dependency >
486496 <dependency >
487497 <groupId >dev.langchain4j</groupId >
488498 <artifactId >langchain4j-open-ai-spring-boot-starter</artifactId >
489- <version >${langchain4j.version} </version >
490499 </dependency >
491500 </dependencies >
492501 </profile >
496505 <dependency >
497506 <groupId >dev.langchain4j</groupId >
498507 <artifactId >langchain4j-azure-open-ai-spring-boot-starter</artifactId >
499- <version >${langchain4j.version} </version >
500508 </dependency >
501509 </dependencies >
502510 </profile >
506514 <dependency >
507515 <groupId >dev.langchain4j</groupId >
508516 <artifactId >langchain4j-ollama-spring-boot-starter</artifactId >
509- <version >${langchain4j.version} </version >
510517 </dependency >
511518 </dependencies >
512519 </profile >
Original file line number Diff line number Diff line change 33import dev .langchain4j .data .segment .TextSegment ;
44import dev .langchain4j .memory .chat .ChatMemoryProvider ;
55import dev .langchain4j .memory .chat .MessageWindowChatMemory ;
6- import dev .langchain4j .model .chat .ChatLanguageModel ;
6+ import dev .langchain4j .model .chat .ChatModel ;
77import dev .langchain4j .model .embedding .EmbeddingModel ;
88import dev .langchain4j .model .embedding .onnx .allminilml6v2 .AllMiniLmL6V2EmbeddingModel ;
99import dev .langchain4j .rag .DefaultRetrievalAugmentor ;
@@ -42,9 +42,9 @@ EmbeddingStoreContentRetriever contentRetriever(InMemoryEmbeddingStore<TextSegme
4242 }
4343
4444 @ Bean
45- RetrievalAugmentor retrievalAugmentor (ChatLanguageModel chatLanguageModel , ContentRetriever vetContentRetriever ) {
45+ RetrievalAugmentor retrievalAugmentor (ChatModel chatModel , ContentRetriever vetContentRetriever ) {
4646 return DefaultRetrievalAugmentor .builder ()
47- .queryRouter (new VetQueryRouter (chatLanguageModel , vetContentRetriever ))
47+ .queryRouter (new VetQueryRouter (chatModel , vetContentRetriever ))
4848 .build ();
4949 }
5050
Original file line number Diff line number Diff line change 11package org .springframework .samples .petclinic .chat ;
22
33import dev .langchain4j .data .message .AiMessage ;
4- import dev .langchain4j .model .chat .ChatLanguageModel ;
4+ import dev .langchain4j .model .chat .ChatModel ;
55import dev .langchain4j .model .input .Prompt ;
66import dev .langchain4j .model .input .PromptTemplate ;
77import dev .langchain4j .rag .content .retriever .ContentRetriever ;
@@ -43,18 +43,18 @@ class VetQueryRouter implements QueryRouter {
4343
4444 private final ContentRetriever vetContentRetriever ;
4545
46- private final ChatLanguageModel chatLanguageModel ;
46+ private final ChatModel chatModel ;
4747
48- public VetQueryRouter (ChatLanguageModel chatLanguageModel , ContentRetriever vetContentRetriever ) {
49- this .chatLanguageModel = chatLanguageModel ;
48+ public VetQueryRouter (ChatModel chatModel , ContentRetriever vetContentRetriever ) {
49+ this .chatModel = chatModel ;
5050 this .vetContentRetriever = vetContentRetriever ;
5151 }
5252
5353 @ Override
5454 public Collection <ContentRetriever > route (Query query ) {
5555 Prompt prompt = PROMPT_TEMPLATE .apply (query .text ());
5656
57- AiMessage aiMessage = chatLanguageModel .chat (prompt .toUserMessage ()).aiMessage ();
57+ AiMessage aiMessage = chatModel .chat (prompt .toUserMessage ()).aiMessage ();
5858 LOGGER .debug ("LLM decided: {}" , aiMessage .text ());
5959
6060 if (aiMessage .text ().toLowerCase ().contains ("yes" )) {
You can’t perform that action at this time.
0 commit comments