提交 8916d6b3 编写于 作者: 雪洛's avatar 雪洛

docs: update uniCloud uni-ai

上级 88375df7
......@@ -146,6 +146,7 @@ const llmManager = uniCloud.ai.getLLMManager({
|topP |number |否 |1 |采样方法,数值越小结果确定性越强;数值越大,结果越随机 |baidu不支持此参数 |
|stream |boolean|否 |false |是否使用流式响应,见下方[流式响应](#chat-completion-stream)章节 |baidu不支持此参数 |
|sseChannel |object |通过uni-ai计费网关使用流式响应时必填 |- |见下方[流式响应](#chat-completion-stream)章节。客户端如何获取sseChannel对象,请参考:[云函数请求中的中间状态通知通道](sse-channel.md)|baidu不支持此参数 |
|streamEventForSSE|string |否 |message |自动处理流式响应时使用的流式响应回调事件,可选:message、optimizedMessage、line。见下方[流式响应](#chat-completion-stream)章节 |
**messages参数说明**
......@@ -317,10 +318,13 @@ uniCloud的云函数,基于uni-push2,于 HBuilderX 新版提供了sse通道
stream对象有四个事件:
- message: 收到AI响应的事件,回调函数内可以获取AI返回的信息。需要注意的是在使用不同服务商时message事件的响应可能有些不同,有些服务商是一个字一个字的返回,有些则是一段一段的返回。
- optimizedMessage: 收到AI响应的事件,基于message事件降频得到,使用此事件可以避免非常频繁的往客户端发送请求,导致部分情况下客户端处理消息卡顿。云端新增于`2023年6月21日`,HBuilderX本地调试将于下次发版支持。
- line: AI响应一行文字时触发,回调函数内可以获取这行文字的内容。uni-ai对服务商返回内容做了处理,AI每响应一个段落会触发一次此事件
- end: AI响应完毕事件
- error: AI响应错误事件,回调函数内可以获取具体错误信息
注意,以上事件属于stream对象,不要和sseChannel的事件搞混了,云端调用sseChannel.write客户端就需要使用sseChannel.on('message')进行接受,例如sseChannel并没有optimizedMessage事件。
**云函数代码示例**
```js
......@@ -372,7 +376,11 @@ exports.main = async (event, context) => {
streamRes.on('line', (line) => {
console.log('---line----', line) // 返回一行时触发,即\n
})
streamRes.on('message', async (message) => {
// streamRes.on('message', async (message) => { // 部分服务商message事件频率过高可能导致客户端卡顿,建议使用optimizedMessage事件
// await sseChannel.write(message)
// console.log('---message----', message) // 实时触发
// })
streamRes.on('optimizedMessage', async (message) => { // optimizedMessage事件云端新增于`2023年6月21日`,HBuilderX本地调试将于下次发版支持。
await sseChannel.write(message)
console.log('---message----', message) // 实时触发
})
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册