掘金 人工智能 07月14日 15:01
AI大模型智能体开发实战|基于 Dify + MCP 的理财助手
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文深入探讨了如何利用Dify和MCP技术,构建一个功能完善、可上线的AI理财助手。内容涵盖了从技术选型、环境部署、智能体架构设计,到插件开发、金融数据抓取、微信公众号接入,以及上线运维与性能安全优化的全过程。该项目为企业团队和个人开发者提供了宝贵的实践参考,帮助他们将生成式AI能力转化为实际的金融服务产品。

💡 Dify作为LLMOps平台,提供可视化Prompt编排、RAG工作流和Agent框架,简化了生成式AI应用的开发流程。它支持主流模型,并提供Docker部署方案,降低了部署门槛。

🔌 MCP(Model Context Protocol)协议,是AI Agent的“USB-C”,允许Agent在不同模型、工具和操作系统间无缝交互,降低了外部服务调用的耦合度。微软在Windows AI Foundry中支持MCP,预示其广泛应用前景。

💰 理财助手通过结合大模型的上下文推理能力,提供个性化投资建议,并对接实时金融数据API,方便用户查询行情和进行组合分析。同时,它支持微信公众号等多渠道接入,方便用户使用。

🛠️ 开发者可以利用Dify的可视化界面创建应用,编排Prompt,并配置模型。结合MCP Action,可以实现与外部工具的交互,例如获取股票价格和财报数据。通过微信公众号对接,实现与用户的交互。

导读: 本文以“AI大模型智能体开发实战|基于 Dify + MCP 的理财助手”为主题,完整还原一个可上线的 AIGC 理财助手项目:从技术选型、环境部署、智能体(Agent)架构设计,到插件开发、金融数据抓取、微信公众号接入,再到上线运维与性能安全优化,适合企业技术团队和个人开发者实践参考。


一、背景与核心概念

1.1 Dify:面向生产的开源 LLMOps 平台

1.2 MCP(Model Context Protocol):Agent 的“USB‑C”

1.3 理财助手的业务价值


二、开发环境准备

组件版本 / 说明作用
Docker & Docker‑Compose24+统一部署 Dify、MCP 服务、向量库
Python3.11SDK、插件、Webhook 逻辑
Dify最新 stableLLMOps 与多 Agent 调度
mcp‑agent0.4.xMCP 流水线核心库
向量库Milvus 或 Qdrant存储金融研报、FAQ 等检索语料
yfinance / iexfinance0.2+ / 0.6+行情与财报数据抓取
wechatpy + Flask2.x公众号服务器

2.1 一键安装 Dify

git clone https://github.com/langgenius/dify.gitcd dify/deploydocker compose -f docker-compose.enterprise.yml up -d

容器启动后访问 http://<your_ip>:5000 即可。(GitHub[11])

2.2 安装 MCP 及金融依赖

pip install mcp-agent dify-api-python yfinance iexfinance wechatpy flask python-dotenv

dify-api-python SDK 简化了对 Dify SaaS 或自建实例的 API 调用。(GitHub[12])


三、整体架构设计

用户 ─► 微信公众号 ─► Flask Webhook                                                                  Dify Streaming API                                     ┌────────────┴───────────┐                    Router Agent                ├────────────┬───────────┤              MCP Action: FetchData   ←─ yfinance/IEX            ├────────────┴───────────┤              MCP Action: Analyze     ←─ Pandas/NumPy            ├────────────┬───────────┤              MCP Action: Response              └────────────────────────┘
    入口层:微信公众号接收用户消息,WebHook 转成 JSON 调用 Dify;支持文字、语音转写。(CSDN Blog[13], Zhihu[14])Dify Router Agent:根据意图路由到不同 MCP Action(数据抓取、策略分析、自然语言回复)。(Dify Docs[15])MCP Action:最小可组合单元;通过 @tool 声明需要外部函数并返回 JSON,降低大模型“幻想”风险。(GitHub[16])数据层:行情接口(Yahoo / IEX)、本地向量库、RDS(保存用户配置)。(GeeksforGeeks[17], Analyzing Alpha[18])

四、分步实战

4.1 在 Dify 创建应用

    新建 Dataset:上传券商研报 PDF、基金招募说明书等,Dify 会自动切分文本并写入向量库。(Dify Docs[19])Prompt 编排:在可视化编辑器中添加 RouterFinancial‑QAPortfolio‑Analysis 三个节点,每个节点对应不同 MCP Action。模型配置:选择 GPT‑4o 或 Claude‑Sonnet;若成本敏感可串联 Llama‑3‑8B 作摘要、GPT‑4o 作决策。

4.2 编写 MCP 动作(Python 示例)

# mcp_actions.pyfrom mcp_agent import action, ctximport yfinance as yffrom iexfinance.stocks import Stock@action(name="get_stock_price", desc="获取实时股价")def get_stock_price(symbol: str):    price = yf.Ticker(symbol).fast_info['last_price']    return {"symbol": symbol, "price": price}@action(name="get_company_finance", desc="拉取财报摘要")def get_company_finance(symbol: str):    stock = Stock(symbol, token=ctx.secrets['IEX_TOKEN'])    return stock.balance_sheet().iloc[0].to_dict()

yfinance 使用示例来源于 GeeksForGeeks 教程;IEX Cloud SDK 用法参考官方文档。(GeeksforGeeks[20], PyPI[21])

4.3 在 Dify 中注册 Tool

在 Tools ➜ Custom Tools ➜ +Tool,粘贴上方函数签名即可自动生成 JSON Schema。(Dify Docs[22])

4.4 配置 MCP Pipeline

mcp.yaml

version: 0.2pipeline:  - use: get_stock_price    when"user_asks_price"  - use: get_company_finance    when"user_asks_finance"  - use: respond_naturally

基于 LangChain 的 MCP 适配器还支持在链前后插入预处理器/后处理器。(hubwiz.com[23])

4.5 微信公众号对接

# app.pyfrom flask import Flask, request, abortfrom wechatpy import parse_message, create_replyfrom dify_api_python import DifyClientimport osapp = Flask(__name__)dify = DifyClient(base_url=os.getenv("DIFY_URL"), api_key=os.getenv("DIFY_KEY"))@app.route("/wx", methods=["GET", "POST"])def wechat():    if request.method == "GET":        # 服务器验证略        return request.args.get("echostr", "")    msg = parse_message(request.data)    if msg.type == "text":        rsp = dify.chat.completions(              model="router-agent",              inputs={"query": msg.content},              user="wx_"+msg.source)        reply = create_reply(rsp.choices[0].message.content, msg)        return reply.render()    return "success"

公众号开启服务器配置 → 填写 URL、Token 即可。(CSDN Blog[24], CSDN Blog[25])

4.6 Docker‑Compose 一键部署

version: "3.9"services:  dify:    image: langgenius/dify:stable    ports: ["5000:80"]    env_file:      - .env  mcp:    build: ./mcp_svc    env_file: .env  wechat:    build: ./wechat    ports: ["80:8000"]    depends_on: [dify, mcp]  qdrant:    image: qdrant/qdrant:latest    volumes: ["./qdrant_data:/qdrant/storage"]

五、进阶功能

5.1 智能资产组合分析

import pandas as pdimport numpy as npfrom scipy.optimize import minimizedef optimize_portfolio(symbols):    prices = yf.download(symbols, period="3y")["Adj Close"]    returns = prices.pct_change().dropna()    cov = returns.cov() * 252    mu = returns.mean() * 252    def neg_sharpe(w):        ret = np.dot(w, mu)        vol = np.sqrt(np.dot(np.dot(w, cov), w.T))        return -ret/vol    w0 = np.repeat(1/len(symbols), len(symbols))    bounds = [(00.3) for _ in symbols]    cons = {"type""eq""fun": lambda w: np.sum(w)-1}    out = minimize(neg_sharpe, w0, bounds=bounds, constraints=[cons])    return dict(zip(symbols, out.x.round(4)))

结果通过 MCP Action 回传给大模型,再生成自然语言解释。

5.2 LangChain MCP Adapter 联动

使用 langchain_mcp_adapters 将 Dify Prompt‑flow 转成 LangChain Chain,在同一脚本里复用记忆、RAG、工具调用。(hubwiz.com[26], CSDN Blog[27])

5.3 多模态与 RAG 加强


六、运维与安全

风险点方案
Prompt 注入MCP 工具严格返回 JSON,限制大模型对系统命令的输出。(GitHub[28])
Token 泄露环境变量+ KMS 加密;IEX Token 只在服务器端调用。(Analyzing Alpha[29])
请求速率Nginx + Redis 限流;Dify 内置 QPS 监控面板。(GitHub[30])
法规合规跟随微信官方“金融信息”类接口规范,提前报备。(CSDN Blog[31])

七、未来展望


结语

以上从 0 到 1 深度拆解了  “基于 Dify + MCP 的大模型理财助手” :既结合了 Dify 在 LLMOps 上的可视化与高并发优势,又借助 MCP 的协议化工具链实现安全、可组装的智能体流水线。通过对接金融数据 API、微信公众号等高频入口,一个真正能落地、能迭代、可监控的 AI 理财助手就此诞生。希望本文的流程图、 YAML 配置和完整 Python 代码能够助你快速实践,把生成式 AI 能力转换为面向 C 端的金融服务产品。

原文地址:

Fish AI Reader

Fish AI Reader

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

FishAI

FishAI

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

联系邮箱 441953276@qq.com

相关标签

Dify MCP AI理财助手 LLMOps 智能体
相关文章