LangChain4j之会话功能AiServices工具类的使用(系列二)
概述
LangChain4j 的会话功能 AiServices 工具类,可助力轻松实现智能对话。它能记录对话上下文,让 AI 回答连贯且贴合情境。使用起来,先引入类,配置好相关参数,如模型地址、密钥等。接着,调用相应方法传入用户输入,即可获取 AI 的回复。其封装的接口操作简单,方便开发者快速集成会话功能到项目中,提升应用的交互性,且能灵活应对不同场景的对话需求,提高用户体验。
引入依赖
<!-- AiServices相关依赖 -->
<dependency><groupId>dev.langchain4j</groupId><artifactId>langchain4j-spring-boot-starter</artifactId><version>1.0.1-beta6</version>
</dependency>
yml文件配置
参考链接
定义接口
public interface ChatService {/*** 用于聊天的方法* @param message 输入参数* @return String*/public String chat(String message);}
定义配置类
@Configuration
public class CommonConfig {@Autowiredprivate OpenAiChatModel model;@Beanpublic ChatService chatService(){return AiServices.builder(ChatService.class).chatModel(model).build();}}
定义接口
@RestController
public class ChatController {@Autowiredprivate ChatService chatService;@RequestMapping("/chat")public String chats(String message){return chatService.chat(message);}}
配置类的替代方案【推荐使用】
可以在定义的接口上使用 @AiService 注解的方式简化开发,具体使用方式如下所示:
@AiService(wiringMode = AiServiceWiringMode.EXPLICIT, // 手动装配chatModel = "openAiChatModel" // 指定模型
)
public interface ChatService {/*** 用于聊天的方法* @param message 输入参数* @return String*/public String chat(String message);}