性格测评小程序10生成报告

server/2025/2/22 22:16:48/

目录

  • 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 项目的根目录下,使用 npmyarn 安装所需的包:
// npm i @cloudbase/js-sdk@2.9.1
// npm i @cloudbase/adapter-nodeconst 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篇的教程自己搭建一款性格测评的小程序吧。


http://www.ppmy.cn/server/169951.html

相关文章

数据结构与算法-排序算法

冒泡排序 每轮冒泡不断地比较相邻的两个元素,如果它们是逆序的,则交换它们的位置 下一轮冒泡,可以调整未排序的右边界,减少不必要比较每一轮选择,找出最大(最小)的元素,并把它交换…

代码随想录算法训练营第四十四天 | 198. 打家劫舍 213. 打家劫舍 II 337. 打家劫舍 III

198. 打家劫舍 题目链接:LeetCode 文档讲解:代码随想录 状态:AC Java代码: class Solution {public int rob(int[] nums) {if (nums.length 1) {return nums[0];}int[] dp new int[nums.length];dp[0] nums[0];dp[1] Math.ma…

实现rolabelimg对于dota格式文件的直接加载和保存

在本篇博客中,我们将讲解如何修改roLabelImg.py文件,使其能够直接加载和保存Dota格式的标注文件(txt)以替换掉复杂的xml文件。通过对源代码的修改,我们将实现支持加载并保存Dota格式标注数据,以便与roLabel…

Redis 中列表(List)常见命令详解

列表(List)常见命令详解 在 Redis 中,列表(List)是一种线性数据结构,允许在列表的头部和尾部进行高效的元素添加和删除操作。列表中的元素是有序的,并且可以重复。以下是 Redis 中列表相关命令…

ICRA2024:CoLRIO,用于机器人群体的激光雷达测距-惯性集中状态估计

文章目录 摘要I. 引言II. 相关工作A. 激光雷达惯性里程计B. 多机器人定位和映射 III. 相对状态估计框架A. 单个机器人前端B. 群体定位 IV. 实验V. 结论 摘要 摘要 —— 使用不同异构传感器进行协作状态估计对于在无GPS环境中运行的机器人群体来说是一个基本前提,这…

【论文精读】VLM-AD:通过视觉-语言模型监督实现端到端自动驾驶

论文地址: VLM-AD: End-to-End Autonomous Driving through Vision-Language Model Supervision 摘要 人类驾驶员依赖常识推理来应对复杂多变的真实世界驾驶场景。现有的端到端(E2E)自动驾驶(AD)模型通常被优化以模仿…

JMeter 中实现 100 个用户在 3 秒内并发登录

在 JMeter 中实现 100 个用户在 3 秒内并发登录,需要合理配置线程组、定时器和测试逻辑。以下是具体步骤: 1. 创建测试计划 打开 JMeter。右键点击“Test Plan”,选择 Add > Threads (Users) > Thread Group。 : 设置为 100(模拟 100 个用户)。 : 设置为 3

【JMeter使用-2】JMeter中Java Request采样器的使用指南

Apache JMeter 是一款功能强大的性能测试工具,支持多种协议和测试场景。除了内置的采样器(如HTTP请求、FTP请求等),JMeter还允许通过 Java Request采样器 调用自定义的Java代码,从而实现更复杂的测试逻辑。本文将详细介…