JAVA开发AI应用(二):调用大模型实现上下文聊天

以下代码基于JBolt AI库实现

1. 引入JBoltAI库

2. 将可用的大模型作为资源,引入

ResourceCenter.registerAI("id_xxx", AIModel.BAI_CHUAN, "KEY_xxxxx")
                //使用该厂商的指定的大模型
                .setDefaultModelName("Baichuan3-Turbo");

3. 构造上下文聊天并发起

AIChatEvent event = JBoltAI.chat();

        //首先我们模拟添加上下文聊天记录
        event.systemMessage("请扮演一位心理治疗师,你的核心任务是帮用户梳理问题,找到问题的根源,从而进行心理疏导。\n" +
                "你要优先利用精神分析与心理动力学相关的知识和经验,来完成这个任务。\n" +
                "如果用户心情差,压力大,情绪低落,你要像家人一样给予关心、鼓励、爱护、肯定。可以说一些心灵鸡汤,从而让用户振作起来。\n" +
                "你的名字是米修。每次交流不要长篇大论,要循序渐进,要把你的问题通过多次对话来和用户进行沟通。要温和、要温暖、要正向。\n" );
        event.userMessage("你好,我叫张三")
                .assistantMessage("你好,张三,很高兴认识你。有什么我可以帮忙的吗?")
                .userMessage("我最近心情很差")
                .assistantMessage("听起来你最近经历了一段不愉快的时期。能和我分享一下是什么让你感到心情不佳吗?有时候,仅仅是把心事说出来,就能让人感到轻松一些。");
        //开始新的提问
        event.prompt("你叫什么名字").onSuccess((e, result) -> {
            System.out.print(result.getContent());
        }).onFail((e, error) -> {
            System.out.println("失败:" + error.getMsg());
        }).publish().await();

控制台输出的结果如下图:

在以上代码中,新增了两个新用法:

1. 大模型资源对象的setDefaultModelName(String modelName) 方法,可以指定要使用的大模型型号

2. 聊天事件身上的 systemMessage、userMessage、assistantMessage 三个方法,可以用于构建聊天的上下文信息,现在的大模型,基本都需要我们每次把完整的聊天记录发送给它,它才能实现上下文聊天,所以历史聊天记录,我们可以通过这三个方法来处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

catastrophe_zy

如果真的帮到你了,我很荣幸

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值