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

【LangChain4J】流式输出(底层和高级api两种模式)

响应流官网

底层

//注入StreamingChatModel
@Beanpublic StreamingChatModel streamingChatModel(){return OpenAiStreamingChatModel.builder().apiKey(System.getenv("DASHSCOPE_API_KEY")).modelName("qwen-plus").baseUrl("https://dashscope.aliyuncs.com/compatible-mode/v1").build();}@Autowiredprivate StreamingChatModel streamingChatModel;//流式传输响应,实现StreamingChatResponseHandler接口
@GetMapping("/stream/chat1")public Flux<String> streamChat1(@RequestParam(value = "prompt",defaultValue = "杭州有什么好吃的") String prompt) {return Flux.create(emitter -> {streamingChatModel.chat(prompt, new StreamingChatResponseHandler() {@Overridepublic void onPartialResponse(String s) {emitter.next(s);}@Overridepublic void onCompleteResponse(ChatResponse chatResponse) {emitter.complete();}@Overridepublic void onError(Throwable throwable) {emitter.error(throwable);}});});}

高级Api

//第一步编写接口
public interface ChatAssistant {Flux<String> streamChat(String prompt);
}//第二步注入接口实现
@Beanpublic ChatAssistant highStreamAssistant(StreamingChatModel streamingChatModel){return AiServices.create(ChatAssistant.class, streamingChatModel);}@Autowiredprivate ChatAssistant chatAssistant;//第三部调用
@GetMapping("/stream/chat2")public Flux<String> streamChat2(@RequestParam(value = "prompt",defaultValue = "杭州有什么好吃的") String prompt) {return chatAssistant.streamChat(prompt);}
http://www.rkmt.cn/news/122920.html

相关文章:

  • 9个高效降AI率工具,本科生必看!
  • 10个高效降AI率工具,自考学生必备!
  • 计算机专业自学指南:从大一到大四,步步为营!从零基础到精通,收藏这篇就够了!
  • 从零开始的云原生之旅(十八):部署热更新——无需重启服务的幕后
  • 非专业也能看懂的AI大模型工作原理!(非常详细)从零基础到精通,一篇就够了!
  • vulkan中的SSBO
  • 告别频繁校准,效率成本双拿捏!这款MEMS寻北仪刷新行业新体验
  • Java设计模式系列 - 基本概念
  • AI元人文构想:从价值对齐到意义生成的哲学范式革命
  • 探索12bit 100M两级PipeSAR ADC设计之路
  • ARM 汇编指令:MOV
  • Java求职者面试:面试官与水货程序员的搞笑对决
  • 英语_阅读_Noodles_待读
  • 漏洞原理我都懂,为什么就这么难挖?
  • 深入探讨后台摄像头|麦克风采集与轻量级RTSP服务|RTMP推流架构设计
  • 永磁同步电机双闭环在Matlab/Simulink中的数学模型仿真探索
  • 一份来自手机备忘录的AI元人文构想实录与宣言
  • 小程序毕设选题推荐:基于springboot的“智宠”一站式宠物服务小程序的设计与实现 基于微信小程序的宠物一站式服务平台设计与实现【附源码、mysql、文档、调试+代码讲解+全bao等】
  • 小程序毕设选题推荐:基于springboot的华兴书城微信小程序线上购书、阅读社交化【附源码、mysql、文档、调试+代码讲解+全bao等】
  • 小程序毕设选题推荐:基于springboot+微信小程序的羽球快讯爱好者平台小程序羽球生活app【附源码、mysql、文档、调试+代码讲解+全bao等】
  • string,byte,rune,character?详解Golang编码-UTF-8
  • 从核工业到精密装配:Haption力反馈设备的多元化应用场景
  • 二十三种设计模式(十四)--命令模式
  • 小程序毕设选题推荐:基于springboot微信小程序的校园食堂订餐服务系统基于springboot+微信小程序的大学生餐厅点餐系统小程序【附源码、mysql、文档、调试+代码讲解+全bao等】
  • 知识城舞蹈哪家好:官方排名与深度解析 - 品牌测评家
  • Vue.js前端框架技术课程总结知识点
  • 【毕业设计】基于springboot+微信小程序的羽球快讯爱好者平台小程序(源码+文档+远程调试,全bao定制等)
  • 26、SVG 样式设计全解析
  • Cursor 快捷键全集:提升效率的隐藏秘笈
  • Mathcad的野路子】11kW PFC参数计算书实战拆解