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

JBoltAI_SpringBoot如何基于Deepseek官网API区分 R1大模型深度思考和具体回答的内容?

R1大模型推出后,Deepseek官网的API也更新了,我们可以看到 chat 接口的响应数据结果里多了一个reasoning_content 字段

于是我们的JBoltAI SDK 以及 SpringBoot版以及Jfinal版JBoltAI Platform 迅速跟进,提供了对深度思考的支持:

//1. 将大模型注册为全局资源
ResourceCenter.registerAI("ai-chatgpt1", AIModel.DEEP_SEEK, JBoltAITestConfig.DEEPSEEK_API_KEY);//2.指定使用DeepSeek大模型发起聊天,会自动从全局资源中调取deepseek的资源
JBoltAI.chat(AIModel.DEEP_SEEK).setModelName("deepseek-reasoner").contextMessages(Arrays.asList(new AIMessage(AIMessageRole.user, "你好,我叫张三丰,请问你是谁?"),new AIMessage(AIMessageRole.assistant, "你好,我是人工智能大模型,有什么我可以帮你的"))).prompt("请你重复下我的名字").onThinking((e, think, status) -> {if (status == ThinkStatus.START) {System.out.println("===== 思考开始 =============");} else if (status == ThinkStatus.RUNNING) {System.out.print(think);} else if (status == ThinkStatus.COMPLETE) {System.out.print(think);System.out.println("===== 思考结束 =============");System.out.println("===== 开始回答 =============");}}).onSuccess((e,msg) -> {System.out.print(msg.getContent());}).publish().await();

在上面的例子中,我们模拟构造了一个上下文环境,让AI基于历史消息进行回答。

这里的核心就是onThinking 回调和 onSuccess 回调。在onThinking 回调中我们可以获取到R1大模型的思考过程,通过status可以知道当前思考过程的进度。在onSuccess 回调中我们可以获取到R1大模型的正式回答内容。

我们发起的AI聊天是以event事件的形式执行的,框架底层有一个事件调度器,会根据系统负载和ai资源的可用情况,自动分配资源给事件去执行。

默认情况下,AI聊天事件是流式输出的,所以onThinkgingonSuccess 回调会随着AI的流式响应而触发多次。当然我们也可以控制事件的输出方式为非流式的,这一点,我们的JBoltAI 框架是非常灵活的,并且我们以统一的编码方式,让开发者可以非常容易的去使用近二十种主流的大模型、平台,开发者无需关心各个模型的参数差异,接口差异,无需更改代码就可以无缝切换不同的大模型。

欢迎大家使用的 JBoltAI 开发框架,来加速开发你的AI应用和知识库应用。

http://www.lryc.cn/news/544105.html

相关文章:

  • YOLOv11-ultralytics-8.3.67部分代码阅读笔记-model.py
  • MySQL 事务笔记
  • react使用拖拽,缩放组件,采用react-rnd解决
  • 【C++基础】什么是C++?
  • 3 算法1-3 火星人
  • 【原创工具】同文件夹PDF文件合并 By怜渠客
  • 数据结构-直接插入和希尔排序
  • vue3表单验证的时候访问接口如果有值就通过否则不通过.主动去触发校验
  • Trae根据原型设计稿生成微信小程序密码输入框的踩坑记录
  • 【数据结构】 最大最小堆实现优先队列 python
  • 基于多层感知机(MLP)实现MNIST手写体识别
  • QT和有道词典有冲突,导致内存溢出,闪退。
  • 4. 示例:创建带约束的随机地址生成器(范围0x1000-0xFFFF)
  • VSCode轻松调试运行C#控制台程序
  • 内容中台是什么?内容管理平台解析
  • sqlmap:自动SQL注入和数据库接管工具
  • Python设置阿里云镜像源教程:解决PIP安装依赖包下载速度慢的问题
  • 基于专利合作地址匹配的数据构建区域协同矩阵
  • Java集合List快速实现重复判断的10种方法深度解析
  • List的模拟实现(2)
  • 如何使用SaltStack批量替换SSL证书方案
  • Golang快速上手01/Golang基础
  • [Web 安全] 反序列化漏洞 - 学习笔记
  • 【学习笔记】Google的Lyra项目:基于神经网络的超低比特率语音编解码技术
  • Unity Dedicated Server 控制台 输出日志LOg 中文 乱码
  • 【Excel】 Power Query抓取多页数据导入到Excel
  • 去耦电容的作用详解
  • HTTPS 与 HTTP 的区别在哪?
  • let、const【ES6】
  • openharmony5.0中hdf框架中实现驱动程序的动态加载和管理的技术细节分析