diff --git a/src/main/java/com/supervision/pdfqaserver/config/OllamaConfig.java b/src/main/java/com/supervision/pdfqaserver/config/OllamaConfig.java new file mode 100644 index 0000000..19cb50d --- /dev/null +++ b/src/main/java/com/supervision/pdfqaserver/config/OllamaConfig.java @@ -0,0 +1,28 @@ +package com.supervision.pdfqaserver.config; + +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.http.client.JdkClientHttpRequestFactory; +import org.springframework.web.client.RestClient; + +import java.net.http.HttpClient; +import java.time.Duration; + +@Configuration +public class OllamaConfig { + + @Value("${spring.ai.ollama.chat.options.timeout:180000}") + private int timeout; + + @Bean + @Qualifier("restClientBuilder") + public RestClient.Builder restClientBuilder() { + JdkClientHttpRequestFactory requestFactory = new JdkClientHttpRequestFactory( + HttpClient.newHttpClient()); + requestFactory.setReadTimeout(Duration.ofMillis(timeout)); + return RestClient.builder().requestFactory(requestFactory); + } + +} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 4f2f7e8..6d6df03 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -21,6 +21,7 @@ spring: top_p: 0.9 top_k: 40 temperature: 0.7 + timeout: 180000 neo4j: driver: uri: bolt://192.168.10.137:17687