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

WordPress苏醒模板免费青岛设计优化公司

WordPress苏醒模板免费,青岛设计优化公司,路飞和女帝做h的网站,胶州网站建设dch100前言 最近赶上AI的热潮,很多业务都在接入AI大模型相关的接口去方便的实现一些功能,后端需要做的是接入AI模型接口,并整合成流式输出到前端,下面有一些经验和踩过的坑。 集成 Spring WebFlux是全新的Reactive Web技术栈&#xf…

前言

最近赶上AI的热潮,很多业务都在接入AI大模型相关的接口去方便的实现一些功能,后端需要做的是接入AI模型接口,并整合成流式输出到前端,下面有一些经验和踩过的坑。

集成

Spring WebFlux是全新的Reactive Web技术栈,基于反应式编程,很适合处理我们需求的流式数据。

依赖

只需要下面这一个依赖即可,但是需要助力springboot父版本,不同的版本在相关的API实现上面有些许的差别。

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-webflux</artifactId>
</dependency>

代码

这边我在controller写了一个测试代码,意思是每秒产生一段json数据,一共10次,需要注意,响应头一定要设置text/event-stream 这个值,标志着是流式输出

@GetMapping(path = "/test/chat", produces = MediaType.TEXT_EVENT_STREAM_VALUE)public Flux<String> chatTest() {//chat交互测试return Flux.interval(Duration.ofSeconds(1)).take(10).map(sequence -> "{" + "    \"data\": \"33\"," + "    \"count\": \"" + sequence + "\"" + "}");}

postman 调用接口测试下,正常返回数据了
在这里插入图片描述

后端集成AI大模型

在实际业务中,基本上都是后端来调用 deepseek,再返回给前端,下面大概是集成

public Flux<ServerSentEvent<ObjectNode>> chat() {WebClient webClient = WebClient.create();
String url = "大模型url链接"return webClient.post().uri(url).header("Accept", "text/event-stream").body(BodyInserters.fromObject(reqNode))  // 注意高版本的API 可以直接用 bodyValue().retrieve().bodyToFlux(new ParameterizedTypeReference<ServerSentEvent<ObjectNode>>() {}).log().onBackpressureBuffer().doOnError(throwable -> {//错误处理log.error("chat request error -> {}", throwable.getMessage());throw new RuntimeException("request error -> " +throwable.getMessage());}).doOnNext(v -> {//每次输出流处理log.info("received chat message: {}", v);}).doOnComplete(() -> {//流输出完成处理});

一些错误解决

reactor.core.Exceptions$OverflowException: Could not emit buffer due to lack of requests

报错是由于发布者(Publisher)尝试以比订阅者(Subscriber)请求速率更快的速度推送数据时。这种情况违反了 Reactive Streams 的背压(Backpressure)机制,导致异常抛出。导致流异常终止。
在上面请求时加上了 .onBackpressureBuffer() 用缓冲机制解决

http://www.dtcms.com/wzjs/304230.html

相关文章:

  • 深圳高端网站制作费用免费建站哪个比较好
  • 网站建设前期应该做哪些准备个人网站推广
  • 网页设计教程23杭州网站seo外包
  • 辅助网站怎么做江西百度推广公司
  • 龙华网站建设多少钱网络销售每天做什么
  • 闵行区网站建设百度一下子就知道了
  • 网站是如何建立的职业培训学校
  • 罗湖做网站报价刚刚地震最新消息今天
  • ERP开发 网站开发友情视频
  • 六安的网页制作今日头条搜索优化怎么做
  • 培训中心网站建设论文企业查询免费
  • 广州专业的做网站公司厦门网络推广公司
  • 怎么做单页网站重庆网页优化seo
  • 怎样做动漫照片下载网站站长之家ping
  • 网站建设哪家好 北京爱站网seo综合查询
  • 网站接任务来做网络营销策略的演变
  • 一个ip 做2个网站吗成都网站建设
  • 汤阴有没有做网站的公司百度移动端优化
  • 河北网站建设seo优化营销制作设计策划公司是做什么的
  • 松江网站建设培训费用江苏seo排名
  • 无二制造 网站升级建设中我想做电商
  • 怎么做网站赌博免费b站推广入口
  • 在线教育网站有哪些企业培训课程开发
  • 外贸网站推广工作营销网站的建造步骤
  • 微信公众平台网站建设新闻报道个人如何加入百度推广
  • 东莞技术支持 骏域网站建设哈尔滨最新消息
  • 手机免费制作网站品牌营销策略包括哪些内容
  • 网络顾问搜索引擎优化入门
  • 长沙网站制作哪google推广
  • 有没有做任务赚钱网站东莞网络营销推广软件