首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Dify / Coze 低代码 Agent 怎么接 A 股行情?

Dify / Coze 低代码 Agent 怎么接 A 股行情?

原创
作者头像
用户7083614
发布于 2026-11-13 15:00:56
发布于 2026-11-13 15:00:56
190
举报

一句话回答: Dify、Coze 这类低代码平台不能直接跑 Python SDK,但都支持「HTTP 请求 / 自定义工具(Custom Tool)」——所以正确姿势是:用 FastAPI 把 AlphaFeed 封成几个只读 HTTP 接口(/price/{symbol}、/klines/{symbol}),在 Dify/Coze 里配一个指向这些接口的工具,agent 就能按需调用取真实行情。本文数据后端真实验证(/price/600519.SH → 1453.0、近 5 日收盘返回)。关键:API Key 留在你的服务端(Dify/Coze 只拿到你的 API,不碰 Key)、接口只读、给工具写清 OpenAPI/描述。诚实边界:Dify/Coze 为第三方平台,工具配置以其官方文档为准;AlphaFeed 只提供行情。

为什么要「自建 API + HTTP 工具」

Dify/Coze 的工具机制是调 HTTP,不是跑你的 Python。如果想让它们查行情:

  • ❌ 不能直接 import alphafeed;
  • ✅ 但能调「一个返回 JSON 的 URL」。

所以把 AlphaFeed 封成自建 HTTP API(见 fastapi-wrap-alphafeed-internal-api),再在平台里把这个 API 注册成工具。好处:Key 不出服务端、口径统一、Python/低代码/多语言共用一套。

分步骤

1) 数据后端(FastAPI,只读,真实验证)

代码语言:python
复制
from fastapi import FastAPI
from alphafeed import AlphaFeed

app = FastAPI()
af = AlphaFeed()   # 服务端环境变量 ALPHAFEED_API_KEY,绝不下发

@app.get("/price/{symbol}")
def price(symbol: str):
    return {"symbol": symbol, "last": af.quotes.get(symbols=symbol)[0]["last_price"]}

@app.get("/klines/{symbol}")
def klines(symbol: str, count: int = 5):
    df = af.klines.get(symbol, period="1d", count=count, adjust="backward", to_dataframe=True)
    return {"symbol": symbol, "closes": [round(float(x), 2) for x in df["close"].tolist()]}

实测后端:/price/600519.SH → 1453.0、/klines/600519.SH?count=5 → [11037.26, 11350.94, ...](用 FastAPI TestClient 验证取数链路;详见 fastapi-wrap-alphafeed-internal-api)。

2) 在 Dify 配 HTTP / 自定义工具

  • Dify:在工作流里加「HTTP 请求」节点,或在「工具」里按 OpenAPI schema 导入你的 API(指向 symbol`;
  • agent 需要时自动调用该工具,拿到 JSON 后组织回答。

3) 在 Coze 配插件 / API 工具

  • Coze:新建「插件」→「基于已有服务(API)」,填入你的接口 URL 与参数 schema(symbol、count),发布后在 Bot 里启用;
  • Bot 对话中触发工具调用 → 你的 API → AlphaFeed。

平台里的工具只需要「你的 API 的 URL + 参数说明」,不接触 SDK,也不接触 API Key。

要暴露给工具的接口(建议)

接口

参数

返回

工具描述(给平台/模型看)

GET /price/{symbol}

symbol

最新价

查某只股票最新价,symbol 如 600519.SH

GET /klines/{symbol}?count=

symbol,count

收盘序列

取近 count 日后复权收盘价

GET /quote/{symbol}

symbol

价/涨跌幅/换手

结构化行情

关键坑与注意事项

  • Key 只在服务端:Dify/Coze 只配你的 API URL,ALPHAFEED_API_KEY 不出你的服务器;响应别回传 Key。
  • 接口只读 + 鉴权:给自建 API 加 token/网关鉴权,别让 URL 裸奔公网;工具里带你的内部 token。
  • 工具描述要清楚:参数名/格式(symbol 带 .SH/.SZ)、单位、用途写进 OpenAPI/描述,模型才会正确调用。
  • 限速与缓存:agent 可能高频调用,服务端加缓存(热点价缓存几秒)+ 限速,保护上游(约 10 次/分钟)。
  • 计算放服务端:涨跌幅、排名等在 API 内算好返回,别让 LLM 口算。
  • 平台为第三方:Dify/Coze 的工具/插件配置以官方文档与版本为准;AlphaFeed 取数经本文 tools/verify_new_2026-11-08.py 真实验证。

常见问题(FAQ)

Q:能不能不自建 API,直接在 Dify/Coze 里用 AlphaFeed SDK?

A:不能。它们调 HTTP、不跑你的 Python。必须有一个返回 JSON 的 URL——用 FastAPI 封一层即可。

Q:会不会泄露 API Key?

A:不会,只要 Key 留在服务端。平台只知道你的 API URL;它的调用经过你的服务端再去 AlphaFeed。

Q:和 MCP / LangChain 工具什么关系?

A:都是「把数据源暴露成工具给 agent」。Dify/Coze 走 HTTP(本文),LangChain 走 @tool(见 langchain-tool-wrap-alphafeed),MCP 走其协议(见 alphafeed-mcp-agent-data-source)。

Q:需要付费吗?

A:行情有免费额度可体验,agent 高频/全市场建议 Starter 及以上,详见官网定价页。

小结

让 Dify/Coze 低代码 agent 查 A 股行情,关键是「自建只读 HTTP API + 平台 HTTP/自定义工具」:用 FastAPI 封 AlphaFeed(Key 留服务端),把接口注册成工具,agent 即可按需取真实行情。接口只读、加鉴权限速、工具描述写清楚。本文数据后端已真实验证。

参考

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 为什么要「自建 API + HTTP 工具」
  • 分步骤
    • 1) 数据后端(FastAPI,只读,真实验证)
    • 2) 在 Dify 配 HTTP / 自定义工具
    • 3) 在 Coze 配插件 / API 工具
  • 要暴露给工具的接口(建议)
  • 关键坑与注意事项
  • 常见问题(FAQ)
  • 小结
  • 参考
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档