1. Dependence 추가
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-starter-model-openai</artifactId>
</dependency>
2. 설정 추가
spring.ai.openai.api-key=${OPENAI_API_KEY}
3. Config
@Configuration
public class LLMConfig {
@Bean
public ChatClient chatClient(ChatClient.Builder builder) {
return builder.build();
}
}
4. Controller
@RestController
@RequiredArgsConstructor
@RequestMapping("${api.prefix}/chat")
public class ChatController {
private final ChatClient chatClient;
@GetMapping
public String chat(@RequestParam("message") String message){
List<Message> messages = new ArrayList<>();
String systemPrompt = "You are a helpful agent. " +
"You goal is the listen to the user question and provide a response.";
messages.add(new SystemMessage(systemPrompt)); // 시스템 메시지 추가
messages.add(new UserMessage(message)); // 사용자 메시지 추가
ChatClient.CallResponseSpec responseSpec = chatClient
.prompt()
.messages(messages)
.call();
return responseSpec.content();
}
}