Оркестрация агентов
Соберёте скрипт, где сильная модель составляет план, дешёвые параллельно выполняют части, а редактор сводит всё в отчёт — через один ключ.
Нужно: ключ fetch_... (создать), баланс (отчёт стоит около цента), Python 3.10+.
- 1Выберите модели
Планировщик и редактор —
claude-sonnet-5-5илиclaude-sonnet-5, для самых сложных задач планировщику —claude-opus-5-5. Исполнители —deepseek-v4.1-flashилиclaude-haiku-5-5. - 2Сохраните код
Скопируйте код ниже в файл
research.py. - 3Запуститеbash
pip install openai export ZUKKO_API_KEY="fetch_ваш_ключ" python research.py "Рынок электросамокатов в России в 2026 году"Отчёт печатается и сохраняется в
report.md, журнал шагов — в консоли. - 4Посмотрите журнал
Там цена и время каждого шага. Исполнители пишут слабо — дайте им
claude-haiku-5-5. Отчёт поверхностный — усильте планировщика.
1Код
"""
Команда агентов: планировщик -> исполнители параллельно -> редактор.
pip install openai
python research.py "Рынок электросамокатов в России в 2026 году"
"""
import asyncio
import json
import os
import sys
import time
import urllib.request
from openai import AsyncOpenAI
Стоимость каждого запроса код берёт из заголовка X-Zukko-Cost-Micros. Перед каждым запросом он сверяет потраченное с BUDGET_USD и останавливается, если потолок достигнут.
2Готовые фреймворки
Укажите base_url и ключ Zukko. Точные имена параметров зависят от версии библиотеки.
| Библиотека | Настройка |
|---|---|
| OpenAI Agents SDK | set_default_openai_client(AsyncOpenAI(base_url="https://api.zukko.pro/v1", api_key=...)) и set_default_openai_api("chat_completions") |
| LangGraph (через LangChain) | ChatOpenAI(model="claude-sonnet-5", base_url="https://api.zukko.pro/v1", api_key=...) |
| CrewAI | LLM(model="openai/claude-sonnet-5", base_url="https://api.zukko.pro/v1", api_key=...) |
| AutoGen | OpenAIChatCompletionClient(model="claude-sonnet-5", base_url="https://api.zukko.pro/v1", api_key=..., model_info={...}) — для моделей не от OpenAI опишите возможности в model_info |
3Если не работает
| Что видите | Что сделать |
|---|---|
| «планировщик вернул негодный план» | Уточните формат в PLANNER_SYSTEM или возьмите модель сильнее |
APITimeoutError | Поднимите timeout до 300 секунд |
| «бюджет исчерпан» | Найдите в журнале дорогой шаг; поднимите BUDGET_USD или урежьте контекст |
429 key_daily_limit_reached | Проверьте, нет ли зацикливания, затем поднимите лимит ключа |
| 402 | Пополните баланс — повтор не поможет |
| В отчёте выдуманные цифры | Оставьте USE_WEB_SEARCH = True и требование указывать источник |
Другие ошибки — Ошибки API.