news 2026/2/13 13:14:32

AI 工具调用流式开发,TokenStream 才是正确选择

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
AI 工具调用流式开发,TokenStream 才是正确选择

在基于LangChain4j + Spring Boot开发AI代码生成平台的过程中,主要想实现Vue项目带工具调用的流式生成能力,比如自动写入项目文件、构建打包,同时通过响应式流向前端推送实时进度。

但是,在前端调试时,出现了以下错误:

抱歉,生成过程中出现了错误,请重试。

原因分析

1. AI服务接口
@SystemMessage(fromResource = "prompt/codegen-vue-project-system-prompt.txt") Flux<String> generateVueProjectCodeStream(@MemoryId long appId, @UserMessage String userMessage);
2. Facade层调度逻辑
case VUE_PROJECT -> { Flux codeStream = aiCodeGeneratorService.generateVueProjectCodeStream(appId, userMessage); yield processCodeStream(codeStream, CodeGenTypeEnum.VUE_PROJECT, appId); }

接口调用直接返回业务异常,前端无任何流式输出,日志无有效业务堆栈,仅提示:抱歉,生成过程中出现了错误,请重试

主要原因是:

  • TokenStream是LangChain4j专为AI流式响应 + 工具调用设计的API,内置onToolRequest/onToolExecuted等完整回调事件,可无缝衔接工具执行流程;
  • Flux<String>是通用响应式流组件,无AI场景专属能力,无法接收、处理工具调用的回调事件。

解决方法

将接口和调度层作如下修改:

// 1. AI接口原生返回值类型 @SystemMessage(fromResource = "prompt/codegen-vue-project-system-prompt.txt") TokenStream generateVueProjectCodeStream(@MemoryId long appId, @UserMessage String userMessage); // 2. Facade层调度逻辑 case VUE_PROJECT -> { TokenStream tokenStream = aiCodeGeneratorService.generateVueProjectCodeStream(appId, userMessage); yield processTokenStream(tokenStream); }

接下来,就恢复正常了。

小贴士

在集成工具调用的LangChain4j AI场景中,TokenStream是官方推荐且唯一能保证全功能正常运行的流式类型,Flux仅适用于无AI业务逻辑的通用流式场景。

在集成第三方框架时,优先使用框架原生提供的组件和API,是保证系统稳定性的最优解。

学习资源推荐

如果你想更深入地学习大模型,以下是一些非常有价值的学习资源,这些资源将帮助你从不同角度学习大模型,提升你的实践能力。

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!​

因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获取

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示

​因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获取

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获取

四、AI大模型商业化落地方案

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/12 5:09:24

[STM32L5] 【STM32L562E-DK测评活动】by clever:02-外部中断检测

分享一下STM32L562的中断学习过程&#xff1a; 一&#xff1a;STM32中断知识的如下所示&#xff1a; 扩展中断和事件控制器(EXTI)通过可配置和直接的事件输入管理单个CPU和系统唤醒。它向电源控制提供唤醒请求&#xff0c;并向CPUNVIC生成中断请求&#xff0c;向CPU事件输入生成…

作者头像 李华
网站建设 2026/2/13 17:53:51

QXS320F280049 i2c传感器驱动测试

介绍 DSP QXS320F280049 DSP芯片集成了一路i2c接口,它的i2c接口符合NXP Semiconductor i2c总线规范: 支持8位格式传输 7位和10位寻址模式 常规调用 START字节模式 支持多个主发送器和从接收器 支持多个从发送器和主接收器 组合主器件发送/接收和接收/发送模式 数据传输速率…

作者头像 李华
网站建设 2026/2/13 12:57:03

2008-2025年全国地级市文旅融合DID数据

数据简介 本数据以周春波等&#xff08;2025&#xff09;《文旅融合政策与旅游业发展&#xff1a;效应评估与机制检验》的研究框架为参考&#xff0c;构建文旅融合政策DID虚拟变量。文旅融合并非文化与旅游的简单叠加&#xff0c;而是指文化要素与旅游活动在产业、空间、功能、…

作者头像 李华
网站建设 2026/2/11 11:41:45

灭火不是最后一步,而是系统工程:消防灭火系统安装的底线逻辑

一、什么是消防灭火系统安装&#xff1f;消防灭火系统安装&#xff0c;是指在各类建筑、工业厂房及公共场所中&#xff0c;根据国家消防技术规范和工程设计要求&#xff0c;对自动喷水灭火系统、气体灭火系统、泡沫灭火系统、干粉灭火系统以及相关控制、管网、泵房和联动设备进…

作者头像 李华