软件测试大模型Agent探索(dify:chatflow+企业微信机器人)

大模型在测试领域应用提高测试效率。使用本地部署的dify+deepseek大模型,使用dify的本地知识库创建的Chatflow工作流,将生成的测试相关结论同步推送到企业微信群中,是团队对测试相关内容做到实时同步。

探索点:本地部署dify平台的知识库、chatflow配置及推送大模型生成内容到企业微信群。实现流程如下:

1.介绍

本地部署Dify1.3.0Docker Compose 部署 | Dify,以及使用硅基流动deepseek-r1:硅基流动系统

Dify 工作流分为两种类型:

  • Chatflow:面向对话类情景,包括客户服务、语义搜索、以及其他需要在构建响应时进行多步逻辑的对话式应用程序。

  • Workflow:面向自动化和批处理情景,适合高质量翻译、数据分析、内容生成、电子邮件自动化等应用程序。

2.创建企业微信群机器人

在企业微信--群管理中,创建群机器人,创建后如下图。记录webhook地址,尤其是key=后面的字段,在后续设置chatflow中,调用企业微信工具时需要填写此Key(需要保护自己Key防止泄露)。

3.dify配置各类信息及chatflow工作流

3.1dify配置硅基流动模型

登录dify后,点击右上角用户--“设置”--模型供应商,配置大模型。本次使用硅基流动提供的各类模型。【硅基流动有活动,注册认整后送14元tokens,基本满足探索学习的使用】

3.2dify安装企业微信-发生群消息工具

大模型不具备直接使用外部工具的能力,需要通过自己开发的工具或者已发布的三方工具等进行调用。本次使用dify工具市场自带的工具插件。

工具--市场:下拉找到企业微信图标,点击安装

3.3dify本地知识创建

        大模型存在自身不足知识局限性、缺乏专业深度等不足之处。RAG(Retrieval-Augmented Generation,检索增强生成)技术应运而生。无需微调大模型参数,通过模型外知识库增强,将非参数化的外部知识库、文档与大模型结合,提示词提交大模型前,先从RAG中补充提示词,从而弥补模型在知识专业性和时效性上的不足,减少生成不确定性,在确保数据安全的同时,充分利用领域知识和私有数据。

        创建本地知识库,也是为了解决公司内部信息、文档,保密安全性,减少内部文档信息上传网络知识库泄露风险。

        dify支持常见本地知识库和对接外部知识库,本次因自己本地部署dify社区版本,使用本地知识库。

创建知识库

进入知识库页面,创建知识库。

文件上传知识并设置模型参数

索引方式:高质量

Embedding模型:选择bge-m3,按需选择embedding模型。

Rerank 模型: 选择bge-reanker-v2-m3。开启后将使用第三方 Rerank 模型再一次重排序由全文检索召回的内容分段,以优化排序结果。向 LLM 发送经过重排序的分段,辅助其提升输出的内容质量。

         配置后,前往文档。进行分块查看,以及召回测试。若测试结果符合预期,同时确定知识库模型参数后上传准备好的其他知识文件。

3.4chatflow创建

1.创建chatflow工作流及设置

工作室--创建空白应用--Chatflow

功能配置,开始节点使用默认配置

2.增加条件选择节点

上传文件检测是否需要进行文档提取,增加条件选择节点。调整if参数:选择系统参数sys.flies,else无需条件。

3.增加文档提取器节点

if条件节点添加文档提取器节点,用作上传的文档内容提取。

输出参数:开始的sys.flies

4.增加知识检索节点

将前面用户输入的提示词,以及上传文档提取的信息,调用本地知识库进行检索增强后,提交给大模型。

查询变量:sys.query

知识库:选择当前工作流需要的、已经配置的知识库。

5.大模型LLM配置

模型:deepseek-R1

上下文:配置知识库处理后的提示词参数

6.增加代码执行

大模型处理的返回是流式信息,文本量很大,输出时候出给后面机器人是无法全部接收发送,为减少文本量,需要去除流式信息think内容,将去除后信息发送企业微信。解决因文字数量超限,企业微信群中收到信息不全。

# 代码有Trae调用deepseek-v3生成
import re

def main(llm_str: str) -> dict:
    # 一次性移除<think>标签和开头的空行
    final_text = re.sub(
        r'<think[^>]*>.*?</think>|^\n+', 
        '', 
        llm_str, 
        flags=re.DOTALL
    )
    return {"result": final_text}

7.添加发送群消息节点

将代码执行处理后的信息给到发送群消息工具,发送给企业微信机器人

8.结束节点

结束节点:必须添加,不然预览或者发布时提示报错。

9.配置小技巧

        上面节点是按照图上节点关键信息进行的说明,因编排知识拖拽等操作,可以按需随时调整。节点间流程线条无法拖拽,但是可以选择线条删除,然后重新点击拖拽增加期望调整的节点顺序。

10.预览调试及发布

1.单节点调试运行:点击选择需要调试的节点,在右侧节点名称框中根据需要进行运行调试,与输出参数的,需要在输出框中添加参数或者文件等运行。

2.整体工作流预览调试

3.调试功能无异常后点击发布,若有需要优化调整,调整后及时发布更新。

3.5使用验证

工作流执行结果如下:

同时,企业微信群里收到消息如下:

4.后续

本次使用了dify-chatflow实现了简单组合功能,关键工作流跑通、验证了可行性。后续可以基于chatflow以及自己业务场景进行深度复杂定制。

内容概要:本文详细探讨了双馈风力发电机(DFIG)在Simulink环境下的建模方法及其在不同风速条件下的电流与电压波形特征。首先介绍了DFIG的基本原理,即定子直接接入电网,转子通过双向变流器连接电网的特点。接着阐述了Simulink模型的具体搭建步骤,包括风力机模型、传动系统模型、DFIG本体模型和变流器模型的建立。文中强调了变流器控制算法的重要性,特别是在应对风速变化时,通过实时调整转子侧的电压和电流,确保电流和电压波形的良好特性。此外,文章还讨论了模型中的关键技术和挑战,如转子电流环控制策略、低电压穿越性能、直流母线电压脉动等问题,并提供了具体的解决方案和技术细节。最终,通过对故障工况的仿真测试,验证了所建模型的有效性和优越性。 适用人群:从事风力发电研究的技术人员、高校相关专业师生、对电力电子控制系统感兴趣的工程技术人员。 使用场景及目标:适用于希望深入了解DFIG工作原理、掌握Simulink建模技能的研究人员;旨在帮助读者理解DFIG在不同风速条件下的动态响应机制,为优化风力发电系统的控制策略提供理论依据和技术支持。 其他说明:文章不仅提供了详细的理论解释,还附有大量Matlab/Simulink代码片段,便于读者进行实践操作。同时,针对一些常见问题给出了实用的调试技巧,有助于提高仿真的准确性和可靠性。
<think>好的,我现在需要处理用户关于如何集成Dify企业微信机器人的问题。首先,用户提到了两个引用,一个是关于ngcbot接入Dify实现微信机器人,另一个是使用Dify-Enterprise-WeChat-bot项目来搭建企业微信机器人。用户的主要问题是如何配置Dify企业微信的集成,或者了解具体的实现方式。 首先,我需要确认用户提到的两个引用内容是否相关。引用[1]提到ngcbot需要修改Dify的代码来实现功能,而引用[2]则是一个开源项目Dify-Enterprise-WeChat-bot,可能已经提供了现成的解决方案。用户可能更倾向于使用现有的开源项目,所以需要重点介绍第二个引用中的方法。 接下来,我应该分步骤说明如何利用Dify-Enterprise-WeChat-bot进行集成。根据项目地址中的README,可能需要先克隆仓库,配置环境变量,安装依赖,然后启动服务。同时,用户需要准备企业微信的相关信息,比如企业ID、应用密钥等,这些步骤需要详细列出。 另外,用户可能需要了解如何自定义功能,比如知识库和API的接入,这时候需要指导他们修改代码中的特定部分,比如处理消息的函数或添加新的API调用。同时,注意事项部分需要提醒用户关于企业微信API的限制以及Dify的版本兼容性,确保他们顺利部署。 最后,生成的相关问题应该覆盖配置常见问题、安全性、功能扩展和性能优化,这些都是用户在集成过程中可能会遇到的后续疑问。需要确保回答结构清晰,步骤明确,帮助用户一步步完成配置,并引用提供的参考资料来增强可信度。</think>### 如何使用 Dify 构建企业微信机器人 #### 1. **基础环境准备** - **部署 Dify 平台** 确保已安装并运行最新版 Dify(推荐使用 Docker 部署),用于构建和管理 AI 应用。 - **获取企业微信权限** 在企业微信管理后台创建应用,记录以下信息: - `CORP_ID`(企业 ID) - `CORP_SECRET`(应用密钥) - `AGENT_ID`(应用 AgentId) #### 2. **集成 Dify-Enterprise-WeChat-bot** - **克隆仓库并配置环境** ```bash git clone https://github.com/luolin-ai/Dify-Enterprise-WeChat-bot cd Dify-Enterprise-WeChat-bot cp .env.example .env # 复制环境变量模板 ``` - **填写 `.env` 文件** 将企业微信的 `CORP_ID`、`CORP_SECRET`、`AGENT_ID` 填入,并设置 Dify 的 API 密钥: ```env WECHAT_CORP_ID=your_corp_id WECHAT_CORP_SECRET=your_corp_secret WECHAT_AGENT_ID=your_agent_id DIFY_API_KEY=your_dify_api_key ``` - **安装依赖并运行** ```bash pip install -r requirements.txt python app.py # 启动服务 ``` #### 3. **配置消息路由与 AI 能力** - **企业微信回调配置** 在企业微信后台设置消息接收服务器的 URL(需公网可访问),例如: `https://your-domain.com/wechat/callback` - **绑定 Dify 工作流** 修改 `app.py` 中的消息处理逻辑,调用 Dify API 实现智能回复: ```python def handle_message(msg): response = dify_client.generate(text=msg.content) return response.text ``` #### 4. **扩展功能示例** - **接入知识库** 在 Dify 中创建知识库应用,并通过 API 将其绑定到企业微信机器人的响应逻辑。 - **添加外部 API** 在 `app.py` 中添加自定义函数调用(如查询订单): ```python def query_order(order_id): # 调用内部系统 API return order_status ``` #### 5. **注意事项** - **企业微信 API 频率限制** 需处理消息推送的并发限制,建议增加队列机制[^2]。 - **Dify 版本兼容性** 确认使用的 Dify API 版本与机器人代码兼容(如 v1.5+)。 --- §§ 1. 配置过程中出现 `403 回调URL验证失败` 如何解决? 2. 如何保证企业微信机器人的对话数据安全性? 3. Dify 能否支持多企业微信应用同时接入? 4. 如何优化机器人响应延迟较高的场景? [^1]: ngcbot接入dify,实现微信机器人。 [^2]: 使用开源工具Dify-Enterprise-WeChat-bot实现企业微信智能机器人
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

测试老吴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值