当前位置: 首页 > news >正文

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);}
http://www.dtcms.com/a/258901.html

相关文章:

  • python基础(字符串-复习)
  • 50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | MovieApp(电影卡片组件)
  • 2025湖北省职业院校技能大赛信息安全管理与评估样题
  • Springboot——整合netty并进行websocket通信
  • 2025.6.16-实习
  • 《仿盒马》app开发技术分享-- 兑换列表展示(68)
  • SQL Server从入门到项目实践(超值版)读书笔记 18
  • 【Python-Day 29】万物皆对象:详解 Python 类的定义、实例化与 `__init__` 方法
  • 轨迹降噪API及算法
  • 【Python练习】011. 定义一个字符串变量并打印其长度
  • linux中信号解析
  • Unity3D仿星露谷物语开发70之背景音乐
  • Docker 数据持久化完全指南:Volume、Bind Mount 与匿名卷
  • 多网卡与网关配置关系详解:是否能共用、如何分配、如何避免冲突
  • Android 开发问题:Wrong argument type for formatting argument ‘#2‘ in info_message
  • 有AI后,还用学编程吗?
  • C++(异常处理)
  • 电影交流平台小程序完整项目
  • 鸿蒙OH南向开发 轻量系统内核(LiteOS-M)【异常调测】
  • linux操作系统的软件架构分析
  • 左神算法之双集合平均值优化操作的最大次数
  • 【Linux】高级IO
  • MySQL:深入总结锁机制
  • 机器学习×第十四卷:集成学习中篇——她从每次错误中修正自己
  • Java实现简易即时通讯系统
  • Linux离线搭建Jenkins
  • C++【生存游戏】开发:荒岛往事 第一期
  • GLib库介绍与linux下应用
  • 基于元学习的回归预测模型如何设计?
  • ubuntu20.04安装多版本python时,如何使用sudo python3.10