Trae + Dify 10分钟构建 Data McpServer 与 Agent ,和 Excel 说再见!

大家好,我是九歌AI。

今天手把手教大家使用AI编程工具 Trae + Dify构建一个能根据大模型对话处理Excel的智能体

当然,全程下来10分钟是不可能的,代码确实是Trae 几分钟就生成的,但是我调Bug就花了2个小时啊!

本来还想加上Pyecharts数据可视化部分,但是一口气吃成胖子也不好,先做个简单的吧。

话不多说,我们撸起袖子开干。

打开国内最新版的AI编程工具Trae(字节能不能给我点广告费,这个编程工具其实也让人头疼),在新建Builder地方,输入下面的提示词,大模型选择DeepSeek R1。提示词为什么这么写,当然是给大家避坑了!

图片

DeepSeek R1 提示词

我要使用 MCP  server 搭建1个服务,接受 Excel 路径和大模型对话中的数据处理要求,这个server服务里的 llm(使用deepseek) 将数据处理要求转变成 真实的 pandas 代码,然后服务执行这个代码,将代码运行结果返回。 请根据我的要求,一步步给出完整的解决办法和创建完整代码。

代码结构可以参考下面这样:

excel_mcp/ ├── config.py ├── llm_integration.py ├── main.py ├── safe_exec.py └── requirements.txt

数据处理库使用Pandas

LLM使用DeepSeek,DeepSeek的请求使用参考下方代码

from openai import OpenAI

client = OpenAI(api_key="<DeepSeek API Key>", base_url="https://api.deepseek.com")

response = client.chat.completions.create(

model="deepseek-chat",

messages=[

{"role": "system", "content": "You are a helpful assistant"},

{"role": "user", "content": "Hello"},

],

stream=False

)

print(response.choices[0].message.content)

使用Trae的Builder模式,将上面的提示词输入

图片

在代码生成的过程中,一直点击全部接受,直到代码执行阶段。这时候终端会报错,你根据报错信息就会陷入修Bug的无底洞,所以要自己把代码都读一遍,不然哪里错的都不知道。

比如下面这个报错,原因很简单,包的大小写弄错了!

图片

代码全部生成后,你需要在config.py中 添加DeepSeep API的密钥,然后按下面步骤运行代码。

  1. 替换config.py中的API密钥

  2. 通过uvicorn main:app --host 0.0.0.0 --port 8000 启动服务

  3. 访问http://localhost:8000/docs 测试接口

  4. 如果使用venv管理环境,请先激活环境,再执行第2步。

  5. vevn环境激活命令:.\venv\Scripts\activate

这时候,访问FastAPI的docs路径(可能需要科学上网,因为fastapi的一个js库被挡了),就可以看到Data McpServer的接口了。

图片

紧接着,我们需要准备一个excel文件,我们可以直接在excel模板中找一个,下载下来。我找的是客户反馈跟踪表。

图片

将这个表格放在Trae项目根文件夹,直接点击Trae右下角的Go Live,会将项目文档以端口5000的web服务暴露出来。

图片

我们访问这个地址,复制表格的URL链接。

图片

接下来再回到FastAPI Docs界面,找到接口,点击Try It!填写参数值,然后点击Execute按钮 执行!

图片

查看结果,成功了!(中途修了半小时BUG!)

图片

下面我们就要把McpServer 作为工具放到Dify上了。

第一步  先确定你Dify能访问到本地运行的Fastapi接口服务,所以我将地址换成了电脑的IP。

图片

第二步  获取Fastapi openAPI-Swagger数据,点下面这里。

图片

第三步  把json数据复制到dify 自定义工具界面。这里面需要手动添加servers信息,fastapi上没有带这个参数。

图片

点击接口旁边的测试,测试一下工具是否可用。

图片

回到Dify,创建一个工作流应用,取名为Excel智能助手

图片

编排这个简单的工作流如下,开始按钮设置变量类型,一个是Excel文件URL上传,一个是用户提示词。

图片

图片

在下一个节点,选择我们刚刚内置的工具,讲文件URL和用户提示词对接好。

图片

点击运行按钮,查看执行效果。

图片

发布运行这个智能体,再查看效果!

图片

好了,今天就先到这,我们还可以把这个工作流发布为工具,在新的智能体对话时作为Function Call调用,我们下期再详细讲。

所有的代码和Dify工作流文件,可以访问下方或阅读原文链接获取。

https://mbd.pub/o/bread/aJWXm5dv

### 修改 Traefik 配置或代码 对于希望调整 Traefik 行为的用户来,理解如何修改其配置文件以及相关联的资源定义至关重要。Traefik 是一个现代化的反向代理负载均衡器,支持多种后端服务发现机制。 #### 修改 Traefik 的配置文件 通常情况下,Traefik 的主要配置通过 `config.yml` 或者环境变量来完成。如果想要更改模型配置,则主要是指调整这些设置以适应特定需求。例如,在 Kubernetes 中部署时,可以通过编辑 ConfigMap 来实现这一点[^1]: ```yaml apiVersion: v1 kind: ConfigMap metadata: name: traefik-config data: traefik.toml: | [entryPoints] [entryPoints.web] address = ":80" [providers.kubernetesCRD] [api] dashboard = true ``` 上述 YAML 文件展示了如何创建一个新的入口点(entry point),并启用了 API 及仪表板功能。这只是一个简单的例子;实际环境中可能还需要考虑更多复杂的选项,比如 TLS 设置、中间件规则等。 #### 应用 RBAC 资源 为了使 Traefik 正确运行于 Kubernetes 上下文中,适当的应用程序权限是必要的。正如提到过的那样,可以下载官方提供的 `traefik-rbac.yaml` 文件,并直接应用于集群内[^3]: ```bash wget https://raw.githubusercontent.com/containous/traefik/master/examples/k8s/traefik-rbac.yaml kubectl apply -f traefik-rbac.yaml ``` 这段命令会确保 Traefik 拥有足够的权限去读取其他服务的信息,从而能够动态更新路由表。 #### 自定义模型参数 当涉及到具体到像 BERT 这样的预训练语言模型时,虽然这不是 Traefik 的一部分,但如果是在构建基于此类模型的服务时遇到类似的需求——即调整最大 token 数量或其他超参——则应该参照所使用的框架文档来进行相应操作[^2]。然而需要注意的是,这种类型的定制化并不适用于 Traefik 本身,因为后者是一个网络层面上的工具而非机器学习平台的一部分。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值