通义灵码+支付 MCP:30 分钟实现创作打赏智能体
作者:阡易
本文介绍如何使用通义灵码智能体与 qwen3 和支付 MCP 编写创作打赏智能体,该智能体能够完成日常聊天、诗词创作和请求打赏并生成支付链接功能。
前提条件
- 已在 IDE 中安装通义灵码 [ 1] ,并确认版本在 2.5 以上
- 本地安装 ollama [ 2]
- 已完成支付 MCP 接入准备 [ 3]
视频演示
点击此处,查看视频演示。
步骤一:生成智能体代码
-
单击侧边栏的通义灵码图标进入智能会话。(本文使用 pycharm 进行演示),选择智能体模式,模型选用 qwen3-coder
-
输入智能体创建提示词并回车
参考https://github.com/QwenLM/Qwen-Agent,结合chainlit,使用python语言,通过ollama+qwen3模型+chainlit实现一个对话机器人,使用Assiatant初始化模型,提示词为:“你是一个智能陪伴和创作助手,可以进行日常聊天和诗词创作,会使用温暖热情的语气与用户交流。实现的功能包括:1、日常聊天:回答问题、进行对话,2、诗词创作:根据用户给定的主题创作诗词,并提供简短的解释”,将代码输入到tongyi_lm_demo_06下
- 灵码会参考 Qwen-Agent 中的实现,适配 chainlit 框架,逐步调用所需工具,最终生成智能体代码
- 执行命令 .venv/bin/chainlit run app.py -w,打开智能体对话页面,可与其对话创作诗词
- 如果发现智能体输出内容重复,大概率是由于生成的代码打印了所有而非最新输出,可进一步引导灵码生成正确的输出代码
智能体的输出存在大量重复,你可以参考https://github.com/QwenLM/Qwen-Agent/blob/main/qwen_agent/utils/output_beautify.py中typewriter_print的逻辑,让智能体类似打印机风格输出不重复的内容
- 在 message.content 后追加/no_think,可让 qwen3 不输出思考内容,提高输出效率
步骤二:引入支付 MCP
- 该智能体代码完成后,我们进一步为智能体添加支付 MCP 调用能力
很好,你已经生成了一个符合我要求的诗词创作智能体,但我还希望它能具备调用支付工具请求打赏的能力,请在提示词里追加“3. 请求打赏:在提供诗词创作内容后,你可以请求用户进行支付打赏,通过调用工具create-web-page-alipay-payment生成网页支付链接,金额在0.01-0.03元之间,订单号根据当前时间戳随机生成(不同订单需要不同),订单标题根据上下文生成,并对用户输出具体订单号和金额,展示支付链接并提醒用户支付 4. 表达感谢:如果用户表示已打赏或者已支付,你需要调用查询工具query-alipay-payment查询订单支付状态,如果已经支付完成,你需要输出至少三句对用户的夸夸;如果没有完成支付,可以提醒用户完成支付 注意: 工具调用请勿使用之前返回的结果,每次都要重新调用工具! 一定要通过调用工具来生成支付链接,不要自行mock或者模拟!”,同时请调用支付宝支付mcp来实现支付和查询的功能,mcp的配置为 { 'alipay-server': { "command": "npx", "args": [ "-y", "@alipay/mcp-server-alipay" ], "env": { "AP_APP_ID": "${AP_APP_ID}", "AP_APP_KEY": "${AP_APP_KEY}", "AP_PUB_KEY": "${AP_PUB_KEY}" } } }
- 如果发现生成的代码中 MCP 工具传输给模型的方式不正确,可告知灵码调整
你刚刚生成的不对,assistant中传入mcp工具的方式请严格参考https://github.com/QwenLM/Qwen-Agent/blob/main/examples/assistant_mcp_sqlite_bot.py的示例代码来实现
- AP_APP_ID、AP_APP_KEY、AP_PUB_KEY 需要进行配置替换,获取方式参考支付 MCP 接入准备 [ 3]
6.(可选)再次运行项目,支付 MCP 可以被正常调用,但可能会发现生成的支付链接不完整,这可能是由于工具调用内容未被输出的原因,可引导灵码正确输出工具调用内容,也便于观察实际工具调用情况
你需要参考https://github.com/QwenLM/Qwen-Agent/blob/main/qwen_agent/utils/output_beautify.py中typewriter_print的逻辑,将工具调用的内容也进行输出
7.(可选)如果正常生成了支付链接,但是发现点击支付链接后报错,这大概率是模型生成了重复的订单号,我们可以再让灵码添加一个随机字符串工具模拟单号生成(在实际的应用研发中,订单号应该来自于订单系统本身的逻辑),正确的支付链接可正常跳转支付页面
添加一个随机字符串工具,基于时间戳生成随机字符串
- 支付完成后智能体也可调用查询工具确认最终支付结果
加入我们
欢迎加入支付宝 AI 服务合作群,我们随时听取您的建议和需求。
附:生成代码参考
由于模型本身存在灵活性,故不同用户尝试时生成代码有所不同,以下为一个参考示例:
-
tylm_demo_04.zip:
https://tongyi-code.oss-cn-hangzhou.aliyuncs.com/assets/tylm_demo_04.zip
-
MCP 使用实践:
https://help.aliyun.com/zh/lingma/use-cases/mcp-usage-practice/
相关链接:
[1] 安装通义灵码
https://help.aliyun.com/zh/lingma/user-guide/download-the-installation-guide
[2] ollama
https://datawhalechina.github.io/handy-ollama/#/
[3] 接入准备