AI 大模型之spring alibaba篇
一 知识篇
1.1 常见大模型
三者之间的比较:
1.2 spirng ai baba版本对比
1.3 大模型的3要素
1.秘钥;2.模型名;3.调用地址
1.4 流式处理篇
1.4.1 简介与作用
Server-Sent Events (SSE) 是一种允许服务端可以持续推送数据片段(如逐词或逐句)到前端的 Web 技术。通过单向的HTTP长连接,使用一个长期存在的连接,让服务器可以主动将数据"推"给客户端,SSE是轻量级的单向通信协议,适合AI对话这类服务端主导的场景
SSE 的核心思想是:客户端发起一个请求,服务器保持这个连接打开并在有新数据时,通过这个连接将数据发送给客户端。这与传统的请求-响应模式(客户端请求一次,服务器响应一次,连接关闭)有本质区别。SSE下一代(Stream able Http)。
1.4.2 适用场景
概述:sse :一种让服务器能够主动、持续地向客户端(比如你的网页浏览器)推送数据的技术。
sse非常适合需要服务器向客户端实时推送更新的场景。
1.实时通知:股票更新,新闻推送,聊天应用,系统告警
2.状态更新:长时间运行的任务进度
3.实时数据流:传感器数据,监控仪表盘
4.协作应用:显示其他用户在线状态或操作。
1.4.3 使用flux编程式响应案例
1.配置
2.
Flux是SpringWebFlux中的一个核心组件,属于响应式编程模型的一部分。它主要用于处理异步、非阻塞的流式数据,能够高效地处理高并发场景。Flux可以生成和处理一系列的事件或数据如流式输出等。
看类注释和类所在的jar包我们就明白:
SAA中的流式输出是通过ReactorStreams技术实现的和SpringWebFlux的底层实现是一样的技术。
具体执行流程:
ReactorStreams会订阅数据源,当有数据时,ReactorStreams以分块流的方式发送给客户端用户。