Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-zh
提交
74631d25
unidocs-zh
项目概览
DCloud
/
unidocs-zh
通知
3182
Star
105
Fork
807
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
93
列表
看板
标记
里程碑
合并请求
69
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
93
Issue
93
列表
看板
标记
里程碑
合并请求
69
合并请求
69
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
74631d25
编写于
6月 15, 2023
作者:
雪洛
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
docs: update uni-ai
上级
5058a332
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
23 addition
and
9 deletion
+23
-9
docs/uniCloud/uni-ai.md
docs/uniCloud/uni-ai.md
+23
-9
未找到文件。
docs/uniCloud/uni-ai.md
浏览文件 @
74631d25
...
...
@@ -125,7 +125,6 @@ const llmManager = uniCloud.ai.getLLMManager({
})
```
### 对话@chat-completion
:::warning 注意
...
...
@@ -291,7 +290,7 @@ console.log(res);
> 新增于HBuilderX正式版 3.7.10+, alpha版 HBuilderX 3.8.0+。
> uni-ai
内部处理流式响应云端支持新增于2023年6月15日,HBuilderX会在下次发版时进行支持。使用流式响应时,uni-ai计费网关仅支持uni-ai内部处理流式响应的用法
> uni-ai
chatCompletion接口支持传sseChannel参数的用法云端支持新增于2023年6月15日,HBuilderX会在下次发版时进行支持。使用uni-ai计费网关流式响应时,sseChannel参数必填
访问AI聊天接口时,如生成内容过大,响应时间会很久,前端用户需要等待很长时间才会收到结果。
...
...
@@ -312,7 +311,7 @@ uniCloud的云函数,基于uni-push2,于 HBuilderX 新版提供了sse通道
1.
需提前为应用开通
[
uni-push2
](
/unipush-v2.md
)
2.
不同provider的流式支持度不同,有的message事件是按字输出、有的是按句输出。
3.
开启流式响应后
`chatCompletion`
接口将返回流对象,而不会返回具体结果。开发者需要使用流获取AI响应的内容。
4.
如果使用uni-ai内部处理流式响应
,
`chatCompletion`
接口不会返回流对象,只会返回
`{errCode: 0}`
。
4.
`chatCompletion`
接口传
`sseChannel`
参数时
,
`chatCompletion`
接口不会返回流对象,只会返回
`{errCode: 0}`
。
5.
如使用nginx代理,需要将代理配置为
`proxy_buffering off;`
,否则可能会遇到
`Unexpected end of JSON input`
错误
stream对象有四个事件:
...
...
@@ -325,7 +324,7 @@ stream对象有四个事件:
**云函数代码示例**
```
js
//
uni-ai内部处理
流式响应
//
将sseChannel传递给chatCompletion接口,由uni-ai自动往客户端发送
流式响应
'
use strict
'
;
exports
.
main
=
async
(
event
,
context
)
=>
{
const
llmManager
=
uniCloud
.
ai
.
getLLMManager
({
...
...
@@ -341,15 +340,17 @@ exports.main = async (event, context) => {
sseChannel
:
event
.
channel
})
return
{
errCode
:
0
errCode
:
0
,
errMsg
:
''
}
};
```
```
js
// 自行处理流式响应
// 自行处理流式响应
,上述将sseChannel传递给chatCompletion接口的等价写法
'
use strict
'
;
exports
.
main
=
async
(
event
,
context
)
=>
{
const
sseChannel
=
uniCloud
.
deserializeSSEChannel
(
event
.
channel
)
const
llmManager
=
uniCloud
.
ai
.
getLLMManager
({
provider
:
'
azure
'
})
...
...
@@ -371,16 +372,23 @@ exports.main = async (event, context) => {
streamRes
.
on
(
'
line
'
,
(
line
)
=>
{
console
.
log
(
'
---line----
'
,
line
)
// 返回一行时触发,即\n
})
streamRes
.
on
(
'
message
'
,
(
message
)
=>
{
streamRes
.
on
(
'
message
'
,
async
(
message
)
=>
{
await
sseChannel
.
write
(
message
)
console
.
log
(
'
---message----
'
,
message
)
// 实时触发
})
streamRes
.
on
(
'
end
'
,
()
=>
{
streamRes
.
on
(
'
end
'
,
async
()
=>
{
console
.
log
(
'
---end----
'
)
// 响应结束
await
sseChannel
.
end
({
errCode
:
0
})
resolve
({
errCode
:
0
errCode
:
0
,
errMsg
:
''
})
})
streamRes
.
on
(
'
error
'
,
(
err
)
=>
{
await
sseChannel
.
end
({
errCode
:
err
.
errCode
||
err
.
code
,
errMsg
:
err
.
errMsg
||
err
.
message
,
})
console
.
log
(
'
---error----
'
,
err
)
reject
(
err
)
})
...
...
@@ -715,6 +723,12 @@ uni-ai计费网关支持调用minimax、微软azure openai ChatGPT3.5的对话
调整完毕后上传依赖uni-ai的云函数/云对象即可,
**注意即使没有修改也需要重新上传**
。
**免费版取消后使用免费版可能遇到的错误**
在免费版停用后,如果连接云端云函数时未使用uni-ai计费网关且未自行传递key信息,且未在2023年6月15日0点后更新云函数,则会遇到
`token is unusable`
错误。如果使用在2023年6月15日0点后更新了云函数,则会提示
`尚未购买uni-ai套餐`
。
此外使用HBuilderX 3.8.4及之前的版本本地运行时无法使用uni-ai计费网关,因此也会遇到
`token is unusable`
错误。请使用云端云函数进行调试。
**如何测试是否配置成功**
在您使用uni-ai计费网关后,且在云函数代码中做好配置后。您可以:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录