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 实现即可。

相关推荐
David爱编程10 分钟前
Java 守护线程 vs 用户线程:一文彻底讲透区别与应用
java·后端
即将进化成人机36 分钟前
Maven架构的依赖管理和项目构建
java·架构·maven
qianmoq1 小时前
第03章:无限流:generate()和iterate()的神奇用法
java
whitepure1 小时前
万字详解JVM
java·jvm·后端
我崽不熬夜1 小时前
Java的条件语句与循环语句:如何高效编写你的程序逻辑?
java·后端·java ee
我崽不熬夜2 小时前
Java中的String、StringBuilder、StringBuffer:究竟该选哪个?
java·后端·java ee
草明2 小时前
docker stats 增加一列容器名称的显示
java·开发语言·docker
期待のcode2 小时前
Maven的概念与Maven项目的创建
java·maven
我崽不熬夜2 小时前
Java中的基本数据类型和包装类:你了解它们的区别吗?
java·后端·java ee
我是廖志伟3 小时前
【jar包启动,每天生成一个日志文件】
java·jar