springAi---智能客服

首先被取代的是客服类,智能客服机器人都能够高效地完成任务。

spring Ai 大模型应用相关开发demo,智能客服系统;

在需求分析阶段,把功能属于传统Java处理的和ai的功能进行分离

梳理为流程图如下:

在大模型中,通过Function定义来实现

函数定义好后,交给spring ai由他们处理即可。

第一步:编写提示词

第二步:定义Tool,即Function

java 复制代码
    @Tool(description = "根据条件查询课程")
    public List<Course> queryCourse(@ToolParam(description = "查询的条件", required = false) CourseQuery query) {}

第三步,配置Tool

在ChatClient中,配置defaultTools

java 复制代码
    @Bean
    public ChatClient serviceChatClient(OpenAiChatModel openAiChatModel,
                                        ChatMemory chatMemory,
                                        CourseTool courseTool){
        return   ChatClient
                .builder(openAiChatModel)
                .defaultAdvisors(new SimpleLoggerAdvisor(),
                        new MessageChatMemoryAdvisor(chatMemory))
                .defaultTools(courseTool)
                .build();
    }

以上就完成了简单的智能客服。

业务代码等逻辑,通过CourseTool 实现即可。

相关推荐
C+++Python1 小时前
详细介绍一下Java泛型的通配符
java·windows·python
JosieBook2 小时前
【数据库】时序预测能力的分级进化:TimechoAI如何让每一类用户都能精准预见未来
java·开发语言·数据库
一生了无挂3 小时前
Java处理JSON技巧教学(从基础到高阶实战全覆盖)
java·开发语言·json
李白的天不白3 小时前
使用 SmartAdmin 进行前后端开发
java·前端
swordbob3 小时前
Spring 单例 Bean 是线程安全的吗?
java·开发语言
2601_951643774 小时前
Python第一,Java跌出前三,C语言杀回来了
java·c语言·python·编程语言排行·技术趋势
IT 行者6 小时前
GitHub Spec Kit 实战(五):/speckit.tasks 怎么拆——Spec Kit 五部曲收官
java·ai编程·claude
(Charon)6 小时前
【C++ 面试高频基础:指针、引用、const、static、new/delete 总结】
java·开发语言
Yeats_Liao7 小时前
Feed流系统设计(三):数据模型与存储设计,从表结构到Redis收件箱
java·javascript·redis
JiaHao汤7 小时前
分布式事务方案全景:从理论到 Seata 落地
java·分布式·spring·spring cloud