dify中的agent需基于知识库精准生成3~5题轻量级性格测试:先锁定“mbti-大五人格-简版”知识库,用函数调用动态组装题目,触发条件为用户输入含测验意图,返回结构化json并经模板渲染完整呈现。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要让Dify中的Agent不仅能识别用户输入中隐含的性格倾向,还能基于心理学模型动态生成3~5题的轻量级互动测试,并实时反馈结果。这要求Agent具备结构化思维链、可配置的评估维度和可控的输出格式。
准备性格分析所需的知识库与提示词框架
在Dify知识库中新建一个名为“MBTI-大五人格-简版”的知识库,上传包含五大性格维度定义(开放性、尽责性、外向性、宜人性、神经质)及MBTI四字母组合对应行为特征的纯文本文件,确保每段描述不超过80字,避免长段落导致RAG截断。
创建新Agent时,在「提示词」区域顶部写明系统指令:“你是一个性格洞察助手,只依据知识库内容作答,不编造维度解释;所有测试题必须为单选,选项控制在4个以内,题干需体现具体生活场景。”
这一步不可跳过——【若未锁定知识库引用范围,Agent会自行发挥心理学概念,导致测试题偏离信效度基础】。
配置测试生成逻辑:用LLM函数调用驱动题库组装
进入Agent设置页→「函数调用」→启用「自定义函数」,添加名为“generate_personality_quiz”的函数。
方法一:使用JSON Schema声明输入参数
设定必需字段“traits”(数组,取值为[“openness”, “conscientiousness”, “extraversion”, “agreeableness”, “neuroticism”]中1~3项),并注明“根据所选特质,每项生成1道题,总题数不超过5”。
Dify 3.9.2更新重点增强系统安全性,引入 Chainguard 安全基础镜像并同步社区版 CVE 修复,同时优化 OpenSearch 向量存储兼容性、插件参数传输机制及 Helm 部署配置。新增工作流模型节点缓存能力,可减少重复凭证查询,显著提升复杂工作流初始化速度,为企业级 AI 应用提供更稳定、高效的运行体验。
方法二:绑定内部Python脚本(需Dify专业版)
脚本读取用户历史对话中出现的关键词(如“我经常拖延”→触发neuroticism+conscientiousness双维度),自动填充“traits”参数后触发函数。
注意:函数返回值必须严格为JSON格式,包含“questions”数组,每个元素含“id”“stem”“options”“answer_key”,否则后续解析会中断。
设计用户交互流程与结果渲染规则
第一步:在Agent提示词末尾插入分隔符“---TEST_TRIGGER---”,并在其后写:
“当用户消息含‘测测我’‘我是哪种人’等意图时,立即调用generate_personality_quiz函数,传入当前对话中已识别出的top-2性格维度。”
第二步:在「响应后处理」中启用「模板渲染」,填写如下Handlebars模板:
{{#if quiz}}
? 为你定制的性格小测试来啦!
{{#each quiz.questions}}
{{@index 1}}. {{stem}}
{{#each options}} {{this}}
{{/each}}
{{/each}}
提交后立刻生成专属解读。
{{else}}
{{response}}
{{/if}}
第三步:关闭「流式响应」开关——【开启状态下模板变量无法完整渲染,会导致测试题显示错乱或缺失】。










