Разделы базы знаний ▾
Для начинающих
Инвесторам
- Откуда ценность токена GNK
- Gonka vs конкуренты: Render, Akash, io.net
- Либерманы: от биофизики к децентрализованному AI
- Токеномика GNK
- Риски и перспективы Gonka: объективный анализ
- Gonka vs Render Network: детальное сравнение
- Gonka vs Akash: AI inference vs контейнеры
- Gonka vs io.net: inference vs маркетплейс GPU
- Gonka vs Bittensor: детальное сравнение двух подходов к AI
- Gonka vs Flux: два подхода к полезному майнингу
- Governance в Gonka: как управляется децентрализованная сеть
Техническое
Аналитика
Инструменты
- Cursor + Gonka AI — дешёвый LLM для кодинга
- Claude Code + Gonka AI — LLM для терминала
- OpenClaw + Gonka AI — доступные AI-агенты
- OpenCode + Gonka AI — бесплатный AI для кода
- Continue.dev + Gonka AI — AI для VS Code/JetBrains
- Cline + Gonka AI — AI-агент в VS Code
- Aider + Gonka AI — парное программирование с AI
- LangChain + Gonka AI — AI-приложения за копейки
- n8n + Gonka AI — автоматизация с дешёвым AI
- Open WebUI + Gonka AI — свой ChatGPT
- LibreChat + Gonka AI — open-source ChatGPT
- Hermes Agent + Gonka AI — автономный агент за копейки
- Kilo Code + Gonka AI — AI-агент в VS Code
- Roo Code + Gonka AI — автономный AI-агент в VS Code
- LlamaIndex + Gonka AI — RAG-приложения за копейки
- PydanticAI + Gonka — типизированные AI-агенты за копейки
- Vercel AI SDK + Gonka AI — AI-приложения на TypeScript за копейки
- TanStack AI + Gonka — AI-приложения на TypeScript за копейки
- API быстрый старт — curl, Python, TypeScript
- JoinGonka Gateway — полный обзор
- Management Keys — SaaS на Gonka
- Самый дешёвый AI API: сравнение провайдеров 2026
- Cursor Pro request limit reached — реальный breakdown и cheap alternative
- Claude Code cheaper alternative — breakdown bill и переключение
- Cline burned through dollars — почему агент сжигает деньги
- OpenClaw too expensive — почему agent сжигает токены и как сэкономить
- OpenRouter cheaper alternative — сравнение vs JoinGonka Gateway
Инструменты
PydanticAI + Gonka — типизированные AI-агенты за копейки
PydanticAI — Python-фреймворк для создания AI-агентов от команды Pydantic (той самой библиотеки валидации, на которой держится половина Python-экосистемы). Главная фишка PydanticAI — типизированный вывод: вы описываете результат как обычную Pydantic-модель, а фреймворк гарантирует, что модель вернёт именно эту структуру, провалидированную и готовую к использованию. Плюс понятный @agent.tool tool calling, dependency injection и поддержка любого провайдера.
Проблема та же, что у всех агентных фреймворков, — цена токенов. Агент с инструментами гоняет контекст по кругу: запрос → вызов tool → результат → повторный запрос. На одну задачу легко уходит несколько миллионов токенов. При тарифах OpenAI ($2.50–15 за 1M) и Anthropic ($3–15 за 1M) даже прототип становится дорогим, а production с тысячами запросов в день — неподъёмным.
PydanticAI нативно работает с любым OpenAI-совместимым endpoint через классы OpenAIChatModel и OpenAIProvider. Это значит, что JoinGonka Gateway подключается несколькими строками — без отдельных пакетов и адаптеров. Результат: типизированные агенты, работающие за $0.0005 за 1M входных токенов вместо $2.50–15 у OpenAI/Anthropic — в сотни и тысячи раз дешевле.
Быстрый старт: подключение в коде
Сначала получите ключ: зарегистрируйтесь на gate.joingonka.ai/register — при регистрации даём 10M бесплатных токенов — и создайте ключ jg-xxx в Dashboard → API Keys.
Установка:
pip install pydantic-ai
# либо облегчённый вариант только с OpenAI-зависимостями:
# pip install "pydantic-ai-slim[openai]"Минимальный пример — агент через Gonka. PydanticAI задаёт кастомный endpoint через 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 удобен для скриптов; для async-кода есть 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 — structured output. Вместо того чтобы парсить текст ответа регулярками, вы описываете результат как 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(
"Извлеки данные: Анна — backend-разработчик, знает Python, Go и Postgres"
)
print(result.output)
# name='Анна' role='backend-разработчик' skills=['Python', 'Go', 'Postgres']
print(result.output.skills) # ['Python', 'Go', 'Postgres'] — уже list[str], не текстЭто работает, потому что Qwen3-235B (и обе другие модели Gonka) поддерживают нативный tool calling — PydanticAI опирается на него, чтобы вернуть валидную JSON-структуру. На выходе вы получаете типизированный объект Python, а не строку, которую нужно разбирать вручную. Идеально для извлечения данных, классификации, заполнения форм и RAG-пайплайнов, где результат должен идти дальше по коду в строгом формате.
Сравнение стоимости
PydanticAI — фреймворк для агентов и пайплайнов, которые работают непрерывно: извлекают данные, вызывают инструменты, обрабатывают потоки запросов. Здесь стоимость токенов решает, останется ли проект прототипом или пойдёт в production. Сравним типичные нагрузки:
| Сценарий | Токенов | 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/день |
| Production-агент (100K запросов/день) | ~500M/день | $1,250 — $7,500/день | ~$0.30/день |
Разница — в сотни и тысячи раз. Для прототипа это означает, что 10M бесплатных токенов хватает на сотни прогонов агента. Для production, обрабатывающего сотни тысяч запросов в день, экономия составляет десятки тысяч долларов в месяц — при том же коде на PydanticAI, просто с другим base_url.
Один ключ jg-xxx и один баланс работают и для OpenAI-формата (/v1), и для Anthropic-формата (/v1/messages) — но для PydanticAI достаточно OpenAI-совместимого endpoint, показанного выше.
Tool calling и выбор модели
Вторая ключевая возможность PydanticAI — инструменты. Функцию можно зарегистрировать декоратором @agent.tool_plain (без контекста) или @agent.tool (с доступом к RunContext и dependency injection). Модель сама решает, когда вызвать инструмент, получает результат и продолжает рассуждение:
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)Поскольку tool calling у Gonka нативный, инструменты вызываются надёжно — без хрупкого парсинга текстовых ответов. Весь цикл (запрос → вызов tool → финальный ответ) стоит около $0.00001 через Gonka против $0.04–0.22 у OpenAI/Anthropic.
Какую модель выбрать: Qwen/Qwen3-235B-A22B-Instruct-2507-FP8 — дефолт, лучший баланс качества и самый большой лимит вывода (8192). moonshotai/Kimi-K2.6 сильна в кодинге и сложных рассуждениях (вывод до 3072). MiniMaxAI/MiniMax-M2.7 — для длинных диалогов (вывод до 4096). Все три доступны прямо сейчас по одному ключу — меняется только строка модели. Близкие по духу инструменты: LangChain для цепочек и RAG, LlamaIndex для индексации данных.
Хотите узнать больше?
Изучите другие разделы или начните зарабатывать GNK прямо сейчас.
Получить бесплатные 10M токенов →