知识库章节 ▾
投资者
技术
分析
工具
- Cursor + Gonka AI — 便宜的 LLM 用于编码
- Claude Code + Gonka AI — 终端的 LLM
- OpenClaw + Gonka AI — 可负担的 AI 代理
- OpenCode + Gonka AI — 免费的代码 AI
- Continue.dev + Gonka AI — 适用于 VS Code/JetBrains 的 AI
- Cline + Gonka AI — VS Code 中的 AI 代理
- Aider + Gonka AI — 与 AI 结对编程
- LangChain + Gonka AI — 便宜的 AI 应用程序
- n8n + Gonka AI — 通过便宜的 AI 实现自动化
- Open WebUI + Gonka AI — 您的 ChatGPT
- LibreChat + Gonka AI — 开源 ChatGPT
- Hermes Agent + Gonka AI — 廉价自主代理
- Kilo Code + Gonka AI — VS Code 中的 AI 代理
- Roo Code + Gonka AI — VS Code 中的自主 AI 代理
- LlamaIndex + Gonka AI — 低成本的 RAG 应用程序
- PydanticAI + Gonka — 低成本的类型化 AI 代理
- Vercel AI SDK + Gonka AI — 低成本的 TypeScript AI 应用程序
- TanStack AI + Gonka — 低成本的 TypeScript AI 应用程序
- API 快速入门 — curl, Python, TypeScript
- JoinGonka Gateway - 全面概述
- 管理密钥 — Gonka 上的 SaaS
- 最便宜的AI API:2026年提供商对比
- Cursor Pro 请求限制已达 — 真实分析与廉价替代方案
- Claude Code 更便宜的替代方案 — 账单分析与切换
- Cline 烧钱 — 为什么代理会烧钱
- OpenClaw 太贵 — 为什么代理会烧钱以及如何节省
- OpenRouter 更便宜的替代方案 — 与 JoinGonka Gateway 的比较
工具
PydanticAI + Gonka — 低成本的类型化 AI 代理
PydanticAI 是一个用于创建 AI 代理的 Python 框架,由 Pydantic 团队开发(正是那个支撑着 Python 生态系统一半的验证库)。PydanticAI 的主要特点是类型化输出:您将结果描述为一个普通的 Pydantic 模型,框架保证模型将严格按照此结构返回数据,经过验证并可供使用。此外,还有清晰的 @agent.tool tool calling、依赖注入和对任何提供商的支持。
问题与所有代理框架相同——令牌成本。带工具的代理会循环处理上下文:请求 → 调用工具 → 结果 → 再次请求。一项任务很容易消耗数百万个令牌。按照 OpenAI(每 100 万令牌 2.50-15 美元)和 Anthropic(每 100 万令牌 3-15 美元)的价格,即使是原型也会变得昂贵,而每天处理数千个请求的生产环境则无法承受。
PydanticAI 通过 OpenAIChatModel 和 OpenAIProvider 类原生支持任何 OpenAI 兼容的端点。这意味着 JoinGonka Gateway 可以通过几行代码连接——无需单独的包和适配器。结果是:类型化代理,以每 100 万输入令牌 0.0005 美元的价格运行,而不是 OpenAI/Anthropic 的 2.50-15 美元——便宜数百甚至数千倍。
快速入门:代码连接
首先获取密钥:在 gate.joingonka.ai/register 注册——注册时我们提供 10M 免费令牌——并在 Dashboard → API Keys 中创建 jg-xxx 密钥。
安装:
pip install pydantic-ai
# 或者只包含 OpenAI 依赖的轻量级版本:
# pip install "pydantic-ai-slim[openai]"最简单的例子——通过 Gonka 的代理。PydanticAI 通过 OpenAIProvider(base_url=..., api_key=...) 设置自定义端点,并将其传递给 OpenAIChatModel:
from pydantic_ai import Agent
from pydantic_ai.models.openai import OpenAIChatModel
from pydantic_ai.providers.openai import OpenAIProvider
model = OpenAIChatModel(
"Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
provider=OpenAIProvider(
base_url="https://gate.joingonka.ai/v1",
api_key="jg-你的密钥",
),
)
agent = Agent(model)
result = agent.run_sync("请用两句话解释什么是 PoUW")
print(result.output)就是这样——您的 PydanticAI 代理通过 Gonka 去中心化网络以极低的成本运行。run_sync 方法适用于脚本;对于异步代码,有 await agent.run(...)。
模型参数:Qwen3-235B 的上下文窗口为 128K 令牌(131072),通过 Gateway 的最大输出长度为 8192 令牌。可以通过模型设置限制输出(OpenAIChatModelSettings(max_tokens=8192))。还提供 moonshotai/Kimi-K2.6(最多 3072 输出令牌)和 MiniMaxAI/MiniMax-M2.7(最多 4096)——只需在 OpenAIChatModel 的第一个参数中更改模型名称即可。
PydanticAI 的特点:类型化输出
选择 PydanticAI 的主要原因是结构化输出。您不是通过正则表达式解析响应文本,而是将结果描述为 Pydantic 模型并将其传递给 output_type 参数。框架使用模型的 tool calling 功能,强制其严格按照方案返回数据,验证数据并通过 result.output 返回已经准备好的对象。
from pydantic import BaseModel
from pydantic_ai import Agent
from pydantic_ai.models.openai import OpenAIChatModel
from pydantic_ai.providers.openai import OpenAIProvider
model = OpenAIChatModel(
"Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
provider=OpenAIProvider(
base_url="https://gate.joingonka.ai/v1",
api_key="jg-你的密钥",
),
)
class Profile(BaseModel):
name: str
role: str
skills: list[str]
agent = Agent(model, output_type=Profile)
result = agent.run_sync(
"提取数据:Anna 是后端开发人员,精通 Python、Go 和 Postgres"
)
print(result.output)
# name='Anna' role='后端开发人员' skills=['Python', 'Go', 'Postgres']
print(result.output.skills) # ['Python', 'Go', 'Postgres'] — 已经是 list[str],不是文本这之所以有效,是因为 Qwen3-235B(以及其他两个 Gonka 模型)支持原生 tool calling——PydanticAI 依赖它来返回有效的 JSON 结构。您最终得到的是类型化的 Python 对象,而不是需要手动解析的字符串。这对于数据提取、分类、表单填充和 RAG 管道来说非常理想,因为结果需要以严格的格式向下传递到代码中。
成本比较
PydanticAI 是一个用于代理和管道的框架,这些代理和管道持续运行:提取数据、调用工具、处理请求流。在这里,令牌成本决定了一个项目是停留在原型阶段还是进入生产。我们比较一下典型的工作负载:
| 场景 | 令牌数 | OpenAI / Anthropic | JoinGonka Gonka |
|---|---|---|---|
| 从文档中提取结构 | ~3K | $0.008 — $0.045 | ~$0.000002 |
| 带 tool calling 的代理(一个周期) | ~15K | $0.04 — $0.22 | ~$0.00001 |
| RAG 管道(每天 1000 个请求) | ~5M/天 | $12 — $75/天 | ~$0.003/天 |
| 生产代理(每天 10 万个请求) | ~500M/天 | $1,250 — $7,500/天 | ~$0.30/天 |
差异高达数百甚至数千倍。对于原型来说,这意味着 10M 免费令牌足以进行数百次代理运行。对于每天处理数十万个请求的生产环境,每月可节省数万美元——使用相同的 PydanticAI 代码,只是 base_url 不同。
一个 jg-xxx 密钥和一个余额同时适用于 OpenAI 格式(/v1)和 Anthropic 格式(/v1/messages)——但对于 PydanticAI 来说,仅需要上面所示的 OpenAI 兼容端点即可。
Tool calling 和模型选择
PydanticAI 的第二个关键功能是工具。函数可以通过 @agent.tool_plain 装饰器(无上下文)或 @agent.tool 装饰器(可访问 RunContext 和依赖注入)进行注册。模型会自行决定何时调用工具,获取结果并继续推理:
import random
from pydantic_ai import Agent
from pydantic_ai.models.openai import OpenAIChatModel
from pydantic_ai.providers.openai import OpenAIProvider
model = OpenAIChatModel(
"Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
provider=OpenAIProvider(
base_url="https://gate.joingonka.ai/v1",
api_key="jg-你的密钥",
),
)
agent = Agent(
model,
instructions="你是一个助手。需要时请使用工具。",
)
@agent.tool_plain
def roll_dice() -> str:
"""掷六面骰子并返回结果。"""
return str(random.randint(1, 6))
@agent.tool_plain
def calculator(expression: str) -> str:
"""计算数学表达式。"""
return str(eval(expression))
result = agent.run_sync("掷骰子并将结果乘以 7")
print(result.output)由于 Gonka 的 tool calling 是原生的,因此工具调用非常可靠——无需脆弱的文本响应解析。整个周期(请求 → 调用工具 → 最终响应)通过 Gonka 成本约为 0.00001 美元,而 OpenAI/Anthropic 则为 0.04–0.22 美元。
选择哪个模型:Qwen/Qwen3-235B-A22B-Instruct-2507-FP8 —— 默认模型,质量平衡最佳且输出限制最大(8192)。moonshotai/Kimi-K2.6 擅长编码和复杂推理(输出最多 3072)。MiniMaxAI/MiniMax-M2.7 —— 适用于长对话(输出最多 4096)。所有这三种模型均可通过一个密钥直接使用——只需更改模型字符串即可。类似理念的工具:LangChain 用于链和 RAG,LlamaIndex 用于数据索引。