掘金 人工智能 09月12日
Dify中调用硅基流动模型显示思考过程的方法
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

在使用Dify调用硅基流动模型时,若流程编排中运行模型不显示思考过程,可以通过优化工作流来实现。本文详细介绍了解决方法,包括申请硅基流动模型API、在Dify中下载模型、配置工作流以及使用代码执行节点去除无关内容,最终实现显示模型的思考过程。

🔍 在硅基流动模型广场申请免费模型API,创建API key并下载模型至Dify插件页面。

🏗 在Dify中新建工作流,增加开始节点、模型节点和结束节点,初步配置模型数据处理。

🔄 发现运行模型后无思考过程,分析模型输出格式,确定需要去除标签之间的内容。

💻 添加代码执行节点,使用正则表达式去除模型输出中的思考过程部分,保留最终答案。

📊 新增变量聚合器节点,整合处理后的结果,并在运行时通过下拉框选择显示思考过程或最终答案。

今天在使用Dify调用硅基流动中模型时,流程编排中运行模型不显示思考过程,以下是详细的解决方法。可能有很多方法,这个方法只是一个示例。

1 硅基流动模型API

2 DIfy中下载硅基流动

3 Dify工作流(无思考过程)

{  "model_mode": "chat",  "prompts": [    {      "role": "system",      "text": "你是一个数学专家,请根据我的要求开展工作",      "files": []    },    {      "role": "user",      "text": "请问1+1等于多少?",      "files": []    }  ],  "usage": {    "prompt_tokens": 30,    "prompt_unit_price": "0",    "prompt_price_unit": "0.000001",    "prompt_price": "0",    "completion_tokens": 845,    "completion_unit_price": "0",    "completion_price_unit": "0.000001",    "completion_price": "0",    "total_tokens": 875,    "total_price": "0",    "currency": "RMB",    "latency": 30.78103548800027  },  "finish_reason": "stop",  "model_provider": "langgenius/siliconflow/siliconflow",  "model_name": "Qwen/Qwen3-8B"}
{  "text": "<think>\n\n嗯,用户问的是“1+1等于多少?”,  这个问题看起来很简单,但作为数学专家,我需要仔细思考。首  先,确定用户的需求是什么。可能他们是在测试我的知识,  或者想确认基础数学概念,或者有更深层的问题。比如,  他们可能在学习数学的基础,或者对某些数学理论有疑问,  比如在模运算或布尔代数中1+1可能有不同的结果。\n\n接下来,  我需要考虑用户可能的背景。如果是小学生,他们可能只是需要确认加法的基本规则,  答案是2。  但如果是更高级的用户,比如计算机科学或数学专业的学生,  他们可能想知道在不同数学结构下的结果。比如,  在二进制中,1+1等于10,而在布尔代数中,1+1等于1(逻辑或)。  还有在模2运算中,1+1=0,因为2 mod 2是0。另外,  集合论中,1+1可能代表两个集合的并集的基数,如果集合不相交,  结果也是2;如果相交,可能不同。\n\n也有可能用户是在问某种哲学或逻辑问题,  比如“1+1=2”是否总是成立,或者在某些情况下是否可能不成立。  比如,在非标准分析中,无穷小量的存在可能会影响结果,  但通常在基本算术中,1+1=2是公理。或者在某些抽象数学结构中,  比如在模3运算中,1+1=2,但在模2运算中是0。  需要明确用户是否在特定上下文中提问。\n\n此外,用户可能有拼写错误或其他误解,  比如是否想问“1+1等于多少?”在某种编程语言中的运算结果,或者是否在问某种特定的数学问题,  比如在范畴论中的加法,或者在群论中的运算。需要进一步询问用户是否需要特定领域的解释,  或者是否在一般算术的范围内。\n\n可能还要考虑到用户是否在寻找一个幽默或讽刺的答案,  比如在某些文化或语境中,1+1可能有不同的含义,但通常数学问题不会涉及这些。  因此,作为数学专家,我需要先回答最普遍的情况,即在标准算术中1+1=2,  然后询问是否有特定的上下文或领域需要进一步解释,以确保提供准确的信息。  同时,保持回答简洁明了,适合不同层次的用户理解。\n\n</think>\n\n在标准算术中,**1 + 1 = 2**。  这是基本的加法运算规则,适用于自然数、整数、实数等数域。\n\n不过,  如果问题涉及其他数学结构或语境,答案可能不同:\n\n1. **二进制(计算机科学)**:    \n   在二进制中,`1 + 1 = 10`(即十进制的2)。  \n   原因:二进制的进位规则是满2进1,   所以1+1=10。\n\n2. **布尔代数(逻辑运算)**:  \n   在布尔代数中,`1 + 1 = 1`(逻辑或)。     \n   原因:布尔加法对应逻辑“或”,1或1的结果是1。\n\n3. **模运算**:  \n   - 在模2运算中,    `1 + 1 = 0`(因为2 ≡ 0 mod 2)。  \n   - 在模3运算中,`1 + 1 = 2`(因为2 < 3)。\n\n4.     **集合论**:  \n   如果1代表一个单元素集合,`1 + 1`表示两个不相交集合的并集,其基数为2。     \n\n5. **非标准分析或抽象代数**:  \n   在某些特殊数学体系中,结果可能不遵循常规规则,     但这类情况通常需要明确的上下文说明。\n\n**结论**:  \n在常规数学中,**1 + 1 = 2**。     若涉及其他领域,请补充说明具体语境。",  "usage": {    "prompt_tokens": 30,    "prompt_unit_price": "0",    "prompt_price_unit": "0.000001",    "prompt_price": "0",    "completion_tokens": 845,    "completion_unit_price": "0",    "completion_price_unit": "0.000001",    "completion_price": "0",    "total_tokens": 875,    "total_price": "0",    "currency": "RMB",    "latency": 30.78103548800027  },  "finish_reason": "stop",  "files": []}

4 Dify工作流(有思考过程)

content;文本类型mlist:下拉选项

import redef main(text: str) -> dict:    cleaned_answer = re.sub(r'<think[^>]*>.*?</think>', '', text, flags=re.DOTALL)    final_answer = re.sub(r'^\n+', '', cleaned_answer)    return {        "result": final_answer    }

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Dify 硅基流动 模型API 思考过程 工作流优化
相关文章