Spring AI - Basic (LangChain4j)
pom.xml
<dependencyManagement>
<dependencies>
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-bom</artifactId>
<version>1.18.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-webmvc</artifactId>
</dependency>
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-spring-boot4-starter</artifactId>
</dependency>
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j</artifactId>
</dependency>
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-open-ai</artifactId>
</dependency>
Assistant
@AiService
public interface Assistant {
@SystemMessage("You’re a helpful assistant")
String chat(String userMessage);
}
Config
@Bean
ChatModel chatModel() {
return OpenAiChatModel.builder()
.baseUrl("https://example.com/")
.apiKey("shhh")
.modelName("Qwen3.6-35B-A3B-UD-Q4_K_XL.gguf")
.build();
}
ChatController
@RestController
public class ChatController {
private final Assistant assistant;
public ChatController(Assistant assistant) {
this.assistant = assistant;
}
@GetMapping("/chat")
String chat(@RequestParam String message) {
return assistant.chat(message);
}
}
Curl