-
Notifications
You must be signed in to change notification settings - Fork 2k
Closed
Description
Bug description
When spring.ai.openai.base-url is configured with the IP and port of the HTTP protocol, calling LLM will report HTTP/1.1 header parser received no bytes.
Environment
SpringBoot: 3.5.7
spring-ai-bom: 1.0.3 or 1.1.0-M3
Java: Oracle OpenJDK 21.0.8 or Oracle OpenJDK 17.0.4
Steps to reproduce
Create a SpringBoot project, introduce Spring Ai dependencies, configure spring.ai.openai.base-url as an available IP address, and call the model.
Expected behavior
Normal response, not error
Minimal Complete Reproducible example
<properties>
<java.version>21</java.version>
<spring-ai.version>1.0.3</spring-ai.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-starter-model-openai</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-bom</artifactId>
<version>${spring-ai.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
spring.ai.openai.base-url=http://192.xxx.xx.xx:3000/api/
spring.ai.openai.api-key=xxxxxxxxxx
@SpringBootTest
public class ChatTest {
@Autowired
private OpenAiApi openAiApi;
@Test
void test() {
OpenAiApi.ChatCompletionMessage chatCompletionMessage =
new OpenAiApi.ChatCompletionMessage("Tell me a joke", OpenAiApi.ChatCompletionMessage.Role.USER);
ResponseEntity<OpenAiApi.ChatCompletion> chatCompletionResponseEntity = this.openAiApi.chatCompletionEntity(
new OpenAiApi.ChatCompletionRequest(List.of(chatCompletionMessage), null, (Double) null, false));
System.out.println(chatCompletionResponseEntity.getBody());
}
}
