# 大模型接入
在小程序中,直接调用大模型的文本生成能力,实现最简单的文本生成
小程序基础库需要在 3.7.1 及以上版本,具备 wx.cloud.extend.AI 对象,开发者可以直接通过小程序中的 wx.cloud.extend.AI 调用。
# 初始化
在小程序代码中,通过以下代码进行云开发环境初始化:
wx.cloud.init({
env: "<云开发环境ID>",
});
const ai = wx.cloud.extend.AI;
# createModel()
创建指定的 AI 模型。
支持如下模型:
| 模型提供商 | 模型标识 |
|---|---|
| hunyuan | hunyuan-exp |
| deepseek | deepseek |
# 使用示例
const model = ai.createModel("hunyuan-exp");
# ChatModel.streamText()
以流式调用大模型生成文本。流式调用时,生成的文本及其他响应数据会通过 SSE 返回,该接口的返回值对 SSE 做了不同程度的封装,开发者能根据实际需求获取到文本流和完整数据流。
# 使用示例
const hy = ai.createModel("hunyuan-exp"); // 创建模型
const res = await hy.streamText({
data: {
model: "hunyuan-lite", // 模型名称
messages: [
{
role: "user",
content: "hi"
}
]
}
});
for await (let str of res.textStream) {
console.log(str); // 打印生成的文本
}
for await (let event of res.eventStream) {
console.log(event); // 打印每次返回的完整数据
// 当大模型结束传输时,通常会发一条 [DONE] 数据,在此之后即可停止循环
if (event.data === "[DONE]") {
break;
}
}
# ChatModel.generateText()
调用大模型生成文本。
# 使用示例
const hy = ai.createModel("hunyuan-exp"); // 创建模型
const res = await hy.generateText({
model: "hunyuan-lite",
messages: [{ role: "user", content: "你好" }],
});
console.log(res);
// {
// "id": "27dae91f4e9a4777782c61f89acf8ea4",
// "object": "chat.completion",
// "created": 1737602298,
// "model": "hunyuan-lite",
// "system_fingerprint": "",
// "choices": [
// {
// "index": 0,
// "message": {
// "role": "assistant",
// "content": "你好!很高兴与你交流。请问有什么我可以帮助你的吗?无论是关于生活、工作、学习还是其他方面的问题,我都会尽力为你提供帮助。"
// },
// "finish_reason": "stop"
// }
// ],
// "usage": {
// "prompt_tokens": 3,
// "completion_tokens": 33,
// "total_tokens": 36
// },
// "note": "以上内容为AI生成,不代表开发者立场,请勿删除或修改本标记"
// }
console.log(res.choices[0].message.content);
// 你好!很高兴与你交流。请问有什么我可以帮助你的吗?无论是关于生活、工作、学习还是其他方面的问题,我都会尽力为你提供帮助。