11package dev .langchain4j .ollama .spring ;
22
33import dev .langchain4j .http .client .HttpClientBuilder ;
4- import dev .langchain4j .http .client .spring .restclient .SpringRestClientBuilder ;
4+ import dev .langchain4j .http .client .spring .restclient .SpringRestClient ;
55import dev .langchain4j .model .chat .listener .ChatModelListener ;
66import dev .langchain4j .model .ollama .*;
77import org .springframework .beans .factory .ObjectProvider ;
@@ -27,22 +27,22 @@ public class AutoConfig {
2727
2828 private static final String TASK_EXECUTOR_THREAD_NAME_PREFIX = "LangChain4j-Ollama-" ;
2929
30- private static final String OLLAMA_CHAT_MODEL_HTTP_CLIENT_BUILDER = "ollamaChatModelHttpClientBuilder" ;
30+ private static final String CHAT_MODEL_HTTP_CLIENT_BUILDER = "ollamaChatModelHttpClientBuilder" ;
3131
32- private static final String OLLAMA_STREAMING_CHAT_MODEL_HTTP_CLIENT_BUILDER = "ollamaStreamingChatModelHttpClientBuilder" ;
33- private static final String OLLAMA_STREAMING_CHAT_MODEL_TASK_EXECUTOR = "ollamaStreamingChatModelTaskExecutor" ;
32+ private static final String STREAMING_CHAT_MODEL_HTTP_CLIENT_BUILDER = "ollamaStreamingChatModelHttpClientBuilder" ;
33+ private static final String STREAMING_CHAT_MODEL_TASK_EXECUTOR = "ollamaStreamingChatModelTaskExecutor" ;
3434
35- private static final String OLLAMA_LANGUAGE_MODEL_HTTP_CLIENT_BUILDER = "ollamaLanguageModelHttpClientBuilder" ;
35+ private static final String LANGUAGE_MODEL_HTTP_CLIENT_BUILDER = "ollamaLanguageModelHttpClientBuilder" ;
3636
37- private static final String OLLAMA_STREAMING_LANGUAGE_MODEL_HTTP_CLIENT_BUILDER = "ollamaStreamingLanguageModelHttpClientBuilder" ;
38- private static final String OLLAMA_STREAMING_LANGUAGE_MODEL_TASK_EXECUTOR = "ollamaStreamingLanguageModelTaskExecutor" ;
37+ private static final String STREAMING_LANGUAGE_MODEL_HTTP_CLIENT_BUILDER = "ollamaStreamingLanguageModelHttpClientBuilder" ;
38+ private static final String STREAMING_LANGUAGE_MODEL_TASK_EXECUTOR = "ollamaStreamingLanguageModelTaskExecutor" ;
3939
40- private static final String OLLAMA_EMBEDDING_MODEL_HTTP_CLIENT_BUILDER = "ollamaEmbeddingModelHttpClientBuilder" ;
40+ private static final String EMBEDDING_MODEL_HTTP_CLIENT_BUILDER = "ollamaEmbeddingModelHttpClientBuilder" ;
4141
4242 @ Bean
4343 @ ConditionalOnProperty (PREFIX + ".chat-model.base-url" )
4444 OllamaChatModel ollamaChatModel (
45- @ Qualifier (OLLAMA_CHAT_MODEL_HTTP_CLIENT_BUILDER ) HttpClientBuilder httpClientBuilder ,
45+ @ Qualifier (CHAT_MODEL_HTTP_CLIENT_BUILDER ) HttpClientBuilder httpClientBuilder ,
4646 Properties properties ,
4747 ObjectProvider <ChatModelListener > listeners
4848 ) {
@@ -69,11 +69,11 @@ OllamaChatModel ollamaChatModel(
6969 .build ();
7070 }
7171
72- @ Bean (OLLAMA_CHAT_MODEL_HTTP_CLIENT_BUILDER )
72+ @ Bean (CHAT_MODEL_HTTP_CLIENT_BUILDER )
7373 @ ConditionalOnProperty (PREFIX + ".chat-model.base-url" )
74- @ ConditionalOnMissingBean (name = OLLAMA_CHAT_MODEL_HTTP_CLIENT_BUILDER )
74+ @ ConditionalOnMissingBean (name = CHAT_MODEL_HTTP_CLIENT_BUILDER )
7575 HttpClientBuilder ollamaChatModelHttpClientBuilder (ObjectProvider <RestClient .Builder > restClientBuilder ) {
76- return new SpringRestClientBuilder ()
76+ return SpringRestClient . builder ()
7777 .restClientBuilder (restClientBuilder .getIfAvailable (RestClient ::builder ))
7878 // executor is not needed for no-streaming OllamaChatModel
7979 .createDefaultStreamingRequestExecutor (false );
@@ -82,7 +82,7 @@ HttpClientBuilder ollamaChatModelHttpClientBuilder(ObjectProvider<RestClient.Bui
8282 @ Bean
8383 @ ConditionalOnProperty (PREFIX + ".streaming-chat-model.base-url" )
8484 OllamaStreamingChatModel ollamaStreamingChatModel (
85- @ Qualifier (OLLAMA_STREAMING_CHAT_MODEL_HTTP_CLIENT_BUILDER ) HttpClientBuilder httpClientBuilder ,
85+ @ Qualifier (STREAMING_CHAT_MODEL_HTTP_CLIENT_BUILDER ) HttpClientBuilder httpClientBuilder ,
8686 Properties properties ,
8787 ObjectProvider <ChatModelListener > listeners
8888 ) {
@@ -108,20 +108,20 @@ OllamaStreamingChatModel ollamaStreamingChatModel(
108108 .build ();
109109 }
110110
111- @ Bean (OLLAMA_STREAMING_CHAT_MODEL_HTTP_CLIENT_BUILDER )
111+ @ Bean (STREAMING_CHAT_MODEL_HTTP_CLIENT_BUILDER )
112112 @ ConditionalOnProperty (PREFIX + ".streaming-chat-model.base-url" )
113- @ ConditionalOnMissingBean (name = OLLAMA_STREAMING_CHAT_MODEL_HTTP_CLIENT_BUILDER )
113+ @ ConditionalOnMissingBean (name = STREAMING_CHAT_MODEL_HTTP_CLIENT_BUILDER )
114114 HttpClientBuilder ollamaStreamingChatModelHttpClientBuilder (
115115 ObjectProvider <RestClient .Builder > restClientBuilder ,
116- @ Qualifier (OLLAMA_STREAMING_CHAT_MODEL_TASK_EXECUTOR ) AsyncTaskExecutor executor ) {
117- return new SpringRestClientBuilder ()
116+ @ Qualifier (STREAMING_CHAT_MODEL_TASK_EXECUTOR ) AsyncTaskExecutor executor ) {
117+ return SpringRestClient . builder ()
118118 .restClientBuilder (restClientBuilder .getIfAvailable (RestClient ::builder ))
119119 .streamingRequestExecutor (executor );
120120 }
121121
122- @ Bean (OLLAMA_STREAMING_CHAT_MODEL_TASK_EXECUTOR )
122+ @ Bean (STREAMING_CHAT_MODEL_TASK_EXECUTOR )
123123 @ ConditionalOnProperty (PREFIX + ".streaming-chat-model.base-url" )
124- @ ConditionalOnMissingBean (name = OLLAMA_STREAMING_CHAT_MODEL_TASK_EXECUTOR )
124+ @ ConditionalOnMissingBean (name = STREAMING_CHAT_MODEL_TASK_EXECUTOR )
125125 @ ConditionalOnClass (name = "io.micrometer.context.ContextSnapshotFactory" )
126126 AsyncTaskExecutor ollamaStreamingChatModelTaskExecutorWithContextPropagation () {
127127 ThreadPoolTaskExecutor taskExecutor = new ThreadPoolTaskExecutor ();
@@ -130,9 +130,9 @@ AsyncTaskExecutor ollamaStreamingChatModelTaskExecutorWithContextPropagation() {
130130 return taskExecutor ;
131131 }
132132
133- @ Bean (OLLAMA_STREAMING_CHAT_MODEL_TASK_EXECUTOR )
133+ @ Bean (STREAMING_CHAT_MODEL_TASK_EXECUTOR )
134134 @ ConditionalOnProperty (PREFIX + ".streaming-chat-model.base-url" )
135- @ ConditionalOnMissingBean (name = OLLAMA_STREAMING_CHAT_MODEL_TASK_EXECUTOR )
135+ @ ConditionalOnMissingBean (name = STREAMING_CHAT_MODEL_TASK_EXECUTOR )
136136 @ ConditionalOnMissingClass ("io.micrometer.context.ContextSnapshotFactory" )
137137 AsyncTaskExecutor ollamaStreamingChatModelTaskExecutor () {
138138 ThreadPoolTaskExecutor taskExecutor = new ThreadPoolTaskExecutor ();
@@ -143,7 +143,7 @@ AsyncTaskExecutor ollamaStreamingChatModelTaskExecutor() {
143143 @ Bean
144144 @ ConditionalOnProperty (PREFIX + ".language-model.base-url" )
145145 OllamaLanguageModel ollamaLanguageModel (
146- @ Qualifier (OLLAMA_LANGUAGE_MODEL_HTTP_CLIENT_BUILDER ) HttpClientBuilder httpClientBuilder ,
146+ @ Qualifier (LANGUAGE_MODEL_HTTP_CLIENT_BUILDER ) HttpClientBuilder httpClientBuilder ,
147147 Properties properties
148148 ) {
149149 LanguageModelProperties languageModelProperties = properties .getLanguageModel ();
@@ -167,11 +167,11 @@ OllamaLanguageModel ollamaLanguageModel(
167167 .build ();
168168 }
169169
170- @ Bean (OLLAMA_LANGUAGE_MODEL_HTTP_CLIENT_BUILDER )
170+ @ Bean (LANGUAGE_MODEL_HTTP_CLIENT_BUILDER )
171171 @ ConditionalOnProperty (PREFIX + ".language-model.base-url" )
172- @ ConditionalOnMissingBean (name = OLLAMA_LANGUAGE_MODEL_HTTP_CLIENT_BUILDER )
172+ @ ConditionalOnMissingBean (name = LANGUAGE_MODEL_HTTP_CLIENT_BUILDER )
173173 HttpClientBuilder ollamaLanguageModelHttpClientBuilder (ObjectProvider <RestClient .Builder > restClientBuilder ) {
174- return new SpringRestClientBuilder ()
174+ return SpringRestClient . builder ()
175175 .restClientBuilder (restClientBuilder .getIfAvailable (RestClient ::builder ))
176176 // executor is not needed for no-streaming OllamaLanguageModel
177177 .createDefaultStreamingRequestExecutor (false );
@@ -180,7 +180,7 @@ HttpClientBuilder ollamaLanguageModelHttpClientBuilder(ObjectProvider<RestClient
180180 @ Bean
181181 @ ConditionalOnProperty (PREFIX + ".streaming-language-model.base-url" )
182182 OllamaStreamingLanguageModel ollamaStreamingLanguageModel (
183- @ Qualifier (OLLAMA_STREAMING_LANGUAGE_MODEL_HTTP_CLIENT_BUILDER ) HttpClientBuilder httpClientBuilder ,
183+ @ Qualifier (STREAMING_LANGUAGE_MODEL_HTTP_CLIENT_BUILDER ) HttpClientBuilder httpClientBuilder ,
184184 Properties properties
185185 ) {
186186 LanguageModelProperties languageModelProperties = properties .getStreamingLanguageModel ();
@@ -203,21 +203,21 @@ OllamaStreamingLanguageModel ollamaStreamingLanguageModel(
203203 .build ();
204204 }
205205
206- @ Bean (OLLAMA_STREAMING_LANGUAGE_MODEL_HTTP_CLIENT_BUILDER )
206+ @ Bean (STREAMING_LANGUAGE_MODEL_HTTP_CLIENT_BUILDER )
207207 @ ConditionalOnProperty (PREFIX + ".streaming-language-model.base-url" )
208- @ ConditionalOnMissingBean (name = OLLAMA_STREAMING_LANGUAGE_MODEL_HTTP_CLIENT_BUILDER )
208+ @ ConditionalOnMissingBean (name = STREAMING_LANGUAGE_MODEL_HTTP_CLIENT_BUILDER )
209209 HttpClientBuilder ollamaStreamingLanguageModelHttpClientBuilder (
210- @ Qualifier (OLLAMA_STREAMING_LANGUAGE_MODEL_TASK_EXECUTOR ) AsyncTaskExecutor executor ,
210+ @ Qualifier (STREAMING_LANGUAGE_MODEL_TASK_EXECUTOR ) AsyncTaskExecutor executor ,
211211 ObjectProvider <RestClient .Builder > restClientBuilder
212212 ) {
213- return new SpringRestClientBuilder ()
213+ return SpringRestClient . builder ()
214214 .restClientBuilder (restClientBuilder .getIfAvailable (RestClient ::builder ))
215215 .streamingRequestExecutor (executor );
216216 }
217217
218- @ Bean (OLLAMA_STREAMING_LANGUAGE_MODEL_TASK_EXECUTOR )
218+ @ Bean (STREAMING_LANGUAGE_MODEL_TASK_EXECUTOR )
219219 @ ConditionalOnProperty (PREFIX + ".streaming-language-model.base-url" )
220- @ ConditionalOnMissingBean (name = OLLAMA_STREAMING_LANGUAGE_MODEL_TASK_EXECUTOR )
220+ @ ConditionalOnMissingBean (name = STREAMING_LANGUAGE_MODEL_TASK_EXECUTOR )
221221 @ ConditionalOnClass (name = "io.micrometer.context.ContextSnapshotFactory" )
222222 AsyncTaskExecutor ollamaStreamingLanguageModelTaskExecutorWithContextPropagation () {
223223 ThreadPoolTaskExecutor taskExecutor = new ThreadPoolTaskExecutor ();
@@ -226,9 +226,9 @@ AsyncTaskExecutor ollamaStreamingLanguageModelTaskExecutorWithContextPropagation
226226 return taskExecutor ;
227227 }
228228
229- @ Bean (OLLAMA_STREAMING_LANGUAGE_MODEL_TASK_EXECUTOR )
229+ @ Bean (STREAMING_LANGUAGE_MODEL_TASK_EXECUTOR )
230230 @ ConditionalOnProperty (PREFIX + ".streaming-language-model.base-url" )
231- @ ConditionalOnMissingBean (name = OLLAMA_STREAMING_LANGUAGE_MODEL_TASK_EXECUTOR )
231+ @ ConditionalOnMissingBean (name = STREAMING_LANGUAGE_MODEL_TASK_EXECUTOR )
232232 @ ConditionalOnMissingClass ("io.micrometer.context.ContextSnapshotFactory" )
233233 AsyncTaskExecutor ollamaStreamingLanguageModelTaskExecutor () {
234234 ThreadPoolTaskExecutor taskExecutor = new ThreadPoolTaskExecutor ();
@@ -239,7 +239,7 @@ AsyncTaskExecutor ollamaStreamingLanguageModelTaskExecutor() {
239239 @ Bean
240240 @ ConditionalOnProperty (PREFIX + ".embedding-model.base-url" )
241241 OllamaEmbeddingModel ollamaEmbeddingModel (
242- @ Qualifier (OLLAMA_EMBEDDING_MODEL_HTTP_CLIENT_BUILDER ) HttpClientBuilder httpClientBuilder ,
242+ @ Qualifier (EMBEDDING_MODEL_HTTP_CLIENT_BUILDER ) HttpClientBuilder httpClientBuilder ,
243243 Properties properties
244244 ) {
245245 EmbeddingModelProperties embeddingModelProperties = properties .getEmbeddingModel ();
@@ -255,11 +255,11 @@ OllamaEmbeddingModel ollamaEmbeddingModel(
255255 .build ();
256256 }
257257
258- @ Bean (OLLAMA_EMBEDDING_MODEL_HTTP_CLIENT_BUILDER )
258+ @ Bean (EMBEDDING_MODEL_HTTP_CLIENT_BUILDER )
259259 @ ConditionalOnProperty (PREFIX + ".embedding-model.base-url" )
260- @ ConditionalOnMissingBean (name = OLLAMA_EMBEDDING_MODEL_HTTP_CLIENT_BUILDER )
260+ @ ConditionalOnMissingBean (name = EMBEDDING_MODEL_HTTP_CLIENT_BUILDER )
261261 HttpClientBuilder ollamaEmbeddingModelHttpClientBuilder (ObjectProvider <RestClient .Builder > restClientBuilder ) {
262- return new SpringRestClientBuilder ()
262+ return SpringRestClient . builder ()
263263 .restClientBuilder (restClientBuilder .getIfAvailable (RestClient ::builder ))
264264 // executor is not needed for no-streaming OllamaEmbeddingModel
265265 .createDefaultStreamingRequestExecutor (false );
0 commit comments