目录
- 1 修改数据源
- 2 创建云函数
- 2.1 安装依赖文件
- 2.2 编写主方法
- 3 启用大模型
- 4 搭建前端逻辑
- 5 最终效果
- 总结
这是我们测评小程序的最后一篇内容,当用户提交了测评,就需要依据测评的结果生成报告。如果按照传统开发思路,需要建表然后录入不同性格的不同解析能力。现在借助大模型,我们就可以生成一份智能的报告,本篇介绍一下如何使用大模型生成报告。
1 修改数据源
因为大模型给的结果是markdown格式的,我们需要在我们的报告表添加一个报告解析字段,类型选择markdown
这样大模型给出分析后可以更新回来,后续用户如何希望查看报告,就可以直接看到上一次的内容
2 创建云函数
要想调用大模型的能力,我们需要通过云函数进行集成,点击云函数,点击新建云函数
输入函数名称
点击列表的函数名称,打开云函数
切换到函数代码
2.1 安装依赖文件
云函数运行的时候需要先创建依赖文件,点击保存并安装依赖,会弹出依赖配置的窗口
点击复制
在文件里点击新建文件,输入package.json
在package.json配置文件中输入如下内容:
{
"name": "app",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {},
"author": "",
"license": "ISC",
"dependencies": {
"@cloudbase/node-sdk": "latest",
"cloudbase/js-sdk":"2.9.1",
"@cloudbase/adapter-node":"latest"
}
}
然后点击保存并安装依赖,安装完毕后会多一个node_modules文件夹
2.2 编写主方法
编写调用方法,在index.js中贴入如下代码
'use strict';
// 在 Node.js 项目的根目录下,使用 npm 或 yarn 安装所需的包:
// npm i @cloudbase/js-sdk@2.9.1
// npm i @cloudbase/adapter-node
const cloudbase = require("@cloudbase/js-sdk");
const adapter = require("@cloudbase/adapter-node");
const { sessionStorage } = adapter.genAdapter();
cloudbase.useAdapters(adapter);
const app = cloudbase.init({
env: "", // 需替换为实际使用环境 id
});
/**
* auth 初始化的时候要传入storage 和 captchaOptions.openURIWithCallback
* 否则会用默认的,依赖于平台,在 nodejs 环境报错
*/
const auth = app.auth({
storage: sessionStorage,
captchaOptions: {
openURIWithCallback: (...props) =>
console.log("open uri with callback", ...props),
},
});
exports.main = async (event, context) => {
// 或者使用其他登录方式
const type = event.type
// 验证用户输入的类型是否为有效的 MBTI 类型
const validTypes = [
"ISTJ", "ISFJ", "INFJ", "INTJ",
"ISTP", "ISFP", "INFP", "INTP",
"ESTP", "ESFP", "ENFP", "ENTP",
"ESTJ", "ESFJ", "ENFJ", "ENTJ",
];
if (!validTypes.includes(type)) {
return { error: "无效的 MBTI 类型,请检查输入。" };
}
await auth.signInAnonymously();
const ai = await app.ai();
// 接下来就可以调用 ai 模块提供的方法了
const aiModel = ai.createModel("hunyuan-exp");
const prompt = `
以下是一项任务,根据用户提供的 MBTI 人格类型,生成详细的分析内容。
- 分析内容包括但不限于:
1. 类型的基本特征。
2. 性格优点和需要注意的方面。
3. 适合的职业和工作环境建议。
4. 在人际关系中的表现和建议。
5. 可能面临的挑战以及如何应对。
注意:
- 确保 MBTI 类型是 16 种合法类型之一。
- 请生成清晰、准确且符合心理学标准的描述。
用户输入的 MBTI 类型是:${type}。
根据该类型生成详细的个性化分析内容。
如果类型无效,请明确提示用户输入错误,并列出 16 种合法类型。
`;
const res = await aiModel.generateText({
model: "hunyuan-lite",
messages: [
{ role: "user", content: prompt },
],
});
console.log(res.text)
return { type,analysis: res.text }
};
3 启用大模型
点击AI+,启用大模型
开发阶段我们可以启用混元的体验版供测试,如果上线需要启用混元的正式版,而且需要进行算法备案才可以正式上线。目前算法备案只支持企业主体,个人是无法备案的。
4 搭建前端逻辑
在前端我们是在查看报告的按钮调用大模型的能力,在我们的自定义方法里输入如下代码
export default async function({event, data}) {
const result = await $w.cloud
.callFunction({
name: "callChatBot",
data: { type: "ISTJ"},
})
console.log("result",result)
$w.page.dataset.state.analysis = result.result.analysis
$w.modal1.open({})
}
创建一个自定义变量用来显示我们的信息
在页面组件下边添加一个弹窗组件,弹窗内容里放置markdown组件
markdown组件绑定我们刚才定义的变量
5 最终效果
当我们走完流程,会弹出一个报告
总结
本篇我们介绍了使用云函数调用腾讯混元大模型的能力,结合我们测评的结果,按照一定的提示词,大模型就可以依据他掌握的知识给出具体的分析,感兴趣照着前边10篇的教程自己搭建一款性格测评的小程序吧。