把 LLM 链接到真实零工平台:三层架构与计费闭环
大多数 AI 演示止步于一个聪明的对话补全。要把它变成可计费的服务,需要三个协同工作的层。本文展示一个最小化、接近生产的实现,把每个关注点隔离、同时保持易迭代。
三层架构
| 层 | 职责 | 典型失败点 |
|---|---|---|
| Prompt/Chain | 把用户请求变成确定性的 LLM 调用序列、工具调用与后处理 | 幻觉、token 暴涨、失控递归 |
| 执行运行时 | 托管链、管理状态与重试、暴露干净的 HTTP/JSON-RPC 端点 | 冷启动延迟、扩展限制、密钥泄漏 |
| 计费与计量 | 记录每次成功调用、向调用方收费、失败时可选退款 | 价格波动、重放攻击、可争议的结果 |
任何一层弱,整个管线要么亏钱(多收或少收),要么失信任(坏输出、SLA 未达成)。
LLM 链:确定性、可观测、便宜
用 LangChain(v0.2+)的 Runnable 组合。示例链做三件事:意图分类(一个把零工请求映射到已知技能的小分类器)、技能子链(prompt 填充的 LLM 调用加可选工具)、输出校验(轻量 regex/JSON schema 检查,失败重试 N 次或落入人工队列)。
INTENT_PROMPT = ChatPromptTemplate.from_messages([
("system", "You are a gig-router. Classify the user request into one of: "
"[seo_blog, social_copy, code_review, data_summarize]. "
"Return JSON with keys skill and confidence (0-1)."),
("human", "{request}"),
])
intent_chain = INTENT_PROMPT | LLM | JsonOutputParser()
链中的取舍(原文权衡表):分类用 mini 模型(gpt-4o-mini,便宜低延迟约 150ms,但模糊请求可能误分类 → 人工兜底);技能执行用全尺寸模型(质量优先,token 成本更高);确定性校验器 + 重试保证收费前的最低 SLA(上限 2 次防失控循环);JSON-only 接口易单测、易监控、易接 HTTP 网关。
运行时:暴露成可计费的微服务
链部署在 Cloudflare Workers 之后(也可用 Lambda、Fly.io 或自托管 Kubernetes)。Worker 做三件事:JWT 鉴权(平台计费系统签发)、计量请求(durable object 或 KV 里计数)、执行链并返回结果或错误载荷。价格表与调用一一对应,如 seo_blog $0.05/成功调用、code_review $0.08。
计费与计量:智能合约托管
支付侧把每笔成功调用记入账本,用 USDC 稳定币经智能合约托管向调用方收费、失败可选退款。作者列出的风险:gas 价格波动、重放攻击、可争议结果。文章建议的边界:先验证、后计费,托管释放前走确定性校验器,争议走人工队列。
实践建议
- 链的"确定性"来自校验器而非模型承诺:输出必须过 schema/长度检查才允许收费;
- 意图分类这类低风险高频率调用用 mini 模型,生成类高风险调用用全尺寸模型,分别定价;
- 计费前先验证,托管 escrow 只释放给通过校验的结果,争议走人工。
来源:From Prompt to Paycheck: Wiring an LLM Chain Into Real Gig Platforms - DEV Community