Вышла версия v2.46.0.
pydantic/pydantic-ai
AI Agent Framework, the Pydantic way
Что это за инструмент
Pydantic AI — это фреймворк для создания AI-агентов на Python, разработанный командой Pydantic для обеспечения строгой типизации и простоты разработки.
Зачем нужен
Инструмент решает проблему создания надежных и типобезопасных приложений с LLM, перенося проверку ошибок с этапа выполнения на этап написания кода. Он полезен для быстрой разработки production-решений, обеспечивая интеграцию с множеством провайдеров моделей и встроенное отслеживание производительности через Pydantic Logfire.
Что можно реализовать
- Создание агентов с доступом к внешним данным через Model Context Protocol (MCP)
- Разработка систем с проверкой человеком (Human-in-the-Loop) перед выполнением критических действий
- Построение долговечных (durable) агентов, сохраняющих состояние при сбоях API или перезапусках
- Стриминг структурированных данных с немедленной валидацией в реальном времени
Ключевые возможности
- Полная типобезопасность (Type-safe) для улучшения автодополнения и статического анализа
- Модель-агностицизм: поддержка OpenAI, Anthropic, Gemini, Ollama и других провайдеров
- Встроенная интеграция с Pydantic Logfire для трассировки, оценки (evals) и отслеживания затрат
- Компонуемые возможности (capabilities) для добавления инструментов, хуков и инструкций
- Поддержка графов (Graph Support) для сложных рабочих процессов
👤 Кому подойдёт: разработчики на Python, создающие production-grade AI-приложения и агентов
Релизы
Добавлен TypeSafeModel для Jev, поддержка GPT-5.6 на Bedrock, оптимизация сессий MCP и исправления использования.
- Added: Добавлен TypeSafeModel для интеграции с Jev от TypeSafe.
- Added: Добавлена поддержка моделей gpt-5.6-sol, gpt-5.6-luna и gpt-5.6-terra в Bedrock Converse.
- Fixed: Исправлено использование усилий xhigh в Bedrock при поддержке профиля модели.
- Fixed: DynamicToolset и сессии MCP теперь разрешаются один раз за durable run, а не для каждого блока.
- Fixed: Исправлено сохранение истории инструментов в MCPSamplingModel и корректный отчет об использовании.
Выпуск v2.44.0: исправление 4 уязвимостей в web_fetch и OpenTelemetry, стабилизация сериализации AgentRunResult и безопасность потоков.
- Fixed: Исправлены четыре уязвимости безопасности в web_fetch_tool и OpenTelemetry, включая обход блокировок IPv6 и утечку данных в спанах.
- Breaking: UI-адаптер теперь требует заголовок Content-Type: application/json для входящих запросов.
- Added: Добавлен навык миграции для Vercel AI SDK и Eve, а также страница Storage для удобства поиска настроек хранения.
- Fixed: RunContext.enqueue() стал безопасным для вызова из рабочих потоков, а AgentRunResult получил стабильную форму сериализации.
- Fixed: Исправлена передача blocked_domains в OpenAI web search, корректная работа tool_search в AG-UI и завершение RealtimeSession при отмене задачи.
Pydantic AI v2.43.0: добавлен баннер первого запуска, исправлена потеря границ текста в OpenAIChatModel и логика оптимизации MCP.
- Added: Добавлен баннер первого запуска, описывающий выполнение, и возможность открывать сессии clai через него.
- Fixed: В OpenAIChatModel исправлено сохранение границ текстовых частей после вызова инструментов.
- Fixed: Исправлена проверка оптимизации ключевых инструментов в Temporal: теперь она опирается на тип операции, а не на импорт MCP.
Добавлен провайдер GitHub Copilot, исправлена работа с Bedrock и валидация ToolReturnContent.
- Breaking: Внедрена строгая валидация значений approvals в DeferredToolResults, теперь некорректные значения отклоняются.
- Added: Добавлен GitHubCopilotProvider для работы с OpenAI-совместимым API GitHub Copilot.
- Fixed: Исправлена поддержка настроек sampling в BedrockConverseModel для Anthropic.
- Fixed: Улучшена валидация ToolReturnContent без вызова Python и исправлена работа с inline-ссылками в code-mode.
Добавлена прямая генерация изображений, поддержка OpenAI Codex и исправления для Anthropic и Bedrock.
- Added: Появился прямой API генерации изображений через ImageGenerator.
- Added: Добавлен провайдер openai-codex для аутентификации подписок ChatGPT/Codex.
- Deprecated: fallback_model в ImageGeneration и XSearch устарел, используйте fallback_subagent_model.
- Fixed: Исправлен учёт стоимости и деталей веб-поиска Anthropic в RequestUsage.details.
- Fixed: Ошибки транспорта botocore в BedrockConverseModel теперь корректно оборачиваются в ModelAPIError.
- Fixed: Уровни мышления Gemini теперь автоматически привязываются к ближайшему поддерживаемому значению.
Добавлены функции для работы с Realtime API, слушатели событий и асинхронное обновление цен.
- Added: Добавлена поддержка barge-in в сессиях Realtime API, включая методы interrupt и played_audio_bytes.
- Added: Внедрен декоратор @agent.on_event для регистрации слушателей событий на уровне агента.
- Added: Появились функции update_in_background для цен, enqueue для очередей и provider_factory для infer_realtime_model.
- Fixed: Исправлена синхронизация tool_result и tool_use при defer_loading, а также состояние сессии при некорректных аудио данных.
- Fixed: Устранены проблемы с подпиской на потоки аудио и транскриптов, а также корректное завершение сессий при ошибках инструментов.
Исправлены утечки памяти в экспортере, восстановлена опция Instrumentation, улучшена обработка ошибок Azure и инструментов.
- Fixed: Устранены утечки памяти и проблемы с кэшированием в экспортере context_subtree().
- Fixed: Восстановлена опция Instrumentation include_model_request_parameters и улучшена обработка ошибок слияния атрибутов.
- Fixed: Добавлено корректное обнаружение ошибок фильтрации контента Azure для провайдеров AzureProvider и AsyncAzureOpenAI.
- Fixed: Исправлена передача медиафайлов, возвращаемых инструментами, когда они не могут быть включены в результат вызова.
- Fixed: Исправлена генерация события завершения речи при использовании инструмента в stream_transcripts().
Добавлены модели Gemini 3.8 Flash, Claude Fable/Mythos 5.1, контекстное окно и кастомные события; исправления багов и зависимостей.
- Added: Добавлена поддержка моделей gemini-3.8-flash, claude-fable-5-1 и claude-mythos-5-1.
- Added: В ModelProfile добавлено поле context_window, а в RunContext — context_window_used.
- Added: Приложения и возможности теперь могут генерировать и подписываться на события CustomEvent и CapabilityEvent через @on_event.
- Fixed: Исправлена обработка tool_choice для DeepSeek и Together, а также поддержка NativeOutput в Responses API DeepSeek.
- Fixed: Устранены проблемы с отменой выполнения, загрузками CodeExecutionTool в Anthropic и восстановлением ID вызовов инструментов в Bedrock.
Добавлена поддержка модели glm-5.3-flash, исправлены ошибки маршрутизации и управления контекстом в durable-операциях.
- Added: Добавлена поддержка модели glm-5.3-flash и обновлен тестовый набор для Z.AI.
- Fixed: Исправлена маршрутизация веток API Vertex и Gemini в GoogleModel на основе транспорта клиента.
- Fixed: Исправлено сохранение всех условий в запросах к обрезанным span-ам.
- Fixed: Добавлена обработка нестандартных значений finish_reason от Z.AI.
- Fixed: Улучшено управление контекстом моделей, пересозданных внутри durable-операций, и отключено их повторное создание.
Pydantic AI v2.36.0: добавлена поддержка MCP, durable-операций и стриминга в CLI, исправлен TestModel.
- Breaking: В CLI clai добавлена поддержка --mcp-config и стриминг вызовов инструментов.
- Added: Введен декоратор @durable_operation для интеграции с движками надежного выполнения.
- Added: Теперь требуется явное указание имени операции в декораторе @durable_operation.
- Added: Метод RealtimeSession.send_audio() теперь принимает асинхронные итерируемые объекты.
- Added: Части инструкций получили стабильный идентификатор InstructionPart.id.
- Fixed: Исправлена генерация в TestModel для узких эксклюзивных числовых границ.
Исправлены баги в маршрутизации GLM, безопасности cookies, обработке инструментов и зависимостях dbos.
- Fixed: Маршрутизация моделей GLM через Heroku теперь осуществляется через zai_model_profile.
- Fixed: Cookies функции safe_download теперь ограничены исходными именами хостов.
- Fixed: Исправлено определение оставшихся ID результатов в DeferredToolRequests для разных категорий.
- Fixed: Добавлена идентификация отклонённых наборов инструментов в ошибках durable execution.
- Fixed: Убрано ограничение extra для dbos; opentelemetry-instrumentation-logging добавлен как тестовая зависимость.
Исправления в маршрутизации GLM, безопасности cookies, работе DeferredToolRequests и зависимостях dbos.
- Fixed: Маршрутизация моделей GLM через Heroku теперь осуществляется через zai_model_profile.
- Fixed: Cookies функции safe_download теперь ограничены исходными именами хостов.
- Fixed: Исправлено определение оставшихся ID результатов для DeferredToolRequests в разных категориях.
- Fixed: Отклоненные наборы инструментов runtime теперь корректно идентифицируются в ошибках durable execution.
- Fixed: Снят лимит на extra dbos; opentelemetry-instrumentation-logging добавлен как тестовая зависимость.
Исправлено сохранение трассировки guardrail в Bedrock, учёт provider_factory при отмене Temporal и ограничение версии dbos.
- Fixed: Трассировка Bedrock guardrail теперь корректно сохраняется в provider_details ответа модели.
- Fixed: При отмене ответов Temporal теперь учитывается provider_factory.
- Fixed: Версия dbos ограничена версией ниже 2.31.0 для предотвращения ошибки импорта opentelemetry-instrumentation-logging.
В Pydantic AI v2.35.0 устарели методы управления способностями, исправлена работа TestModel и сохранение пустых описаний инструментов.
- Deprecated: Устарели RunContext.capability_loaded и available_capability_ids; используйте capability_active и active_capability_ids.
- Fixed: Исправлено достижение граничного значения maximum в TestModel для целочисленных диапазонов.
- Fixed: Теперь пустое описание Tool сохраняется явно, а не заменяется на docstring функции.
- Added: Снижена частота экспорта метрик Temporal по умолчанию.
Добавлена поддержка GLM-5.3, навык миграции с LangChain и исправлены ошибки в TestModel, Vercel и Cohere.
- Added: Добавлен навык миграции с LangChain для упрощения перехода.
- Added: В ZaiModel добавлена поддержка модели GLM-5.3.
- Fixed: Исправлена генерация TestModel для равных включенных границ и ложных значений const.
- Fixed: Исправлена потеря вызовов инструментов без аргументов в CohereModel.
- Fixed: Устранены проблемы с отклонением ID частей в VercelAIAdapter и потерей профиля Groq.
Релиз v2.33.0: поддержка Anthropic SDK 1.0.0 с переходом на httpx2, что является ломающим изменением для клиентов.
- Breaking: Обновлена поддержка Anthropic SDK до версии 1.0.0, что требует перехода на httpx2.
- Breaking: Пользовательские http_client для AnthropicProvider теперь должны быть экземплярами httpx2.AsyncClient.
- Fixed: Исправлена проблема совместимости, возникавшая при установке новой версии SDK Anthropic.
- Added: Добавлена поддержка httpx2 для клиентов Anthropic.
Исправлена ошибка с пустыми блоками мышления в Anthropic, улучшена валидация синхронных вызовов и принятие callable в FunctionModel.
- Fixed: Запрещён вызов Agent.run_sync() из синхронных колбэков во время выполнения агента.
- Fixed: Убраны блоки thinking от Anthropic, если они содержат пустую подпись.
- Added: FunctionModel теперь принимает любой вызываемый объект для параметров function и stream_function.
Релиз v2.32.0: улучшена работа с xAI и OpenRouter, исправлены ошибки синхронных хуков и обработки ответов, обновлен httpx.
- Added: Добавлена поддержка жизненного цикла поиска xAI и отображение источников OpenRouter в provider_details.
- Added: Введена версия инструментации 6 с отправкой результатов инструментов под ролью 'tool'.
- Added: Система теперь предлагает известные имена моделей при вводе некорректных идентификаторов.
- Fixed: Исправлена работа синхронных хуков: они выполняются в пуле потоков с учетом таймаутов.
- Fixed: Устранены ошибки обработки отмены через RunContext, пустых текстовых ответов и сортировки результатов для Bedrock.
- Fixed: Обновлена зависимость httpx до версии 2 для совместимых HTTP-клиентов.
Исправлена работа со структурированным выводом для Claude Sonnet 5 и Fable 5, а также улучшена обработка Gemini.
- Fixed: Запрещён нативный структурированный вывод для моделей Claude Sonnet 5 и Fable 5 в Bedrock.
- Fixed: Добавлен fallback на thinking_level='LOW' для моделей Gemini, отклоняющих параметр MINIMAL.
Pydantic AI v2.31.0: улучшена работа UIEventStream, исправлены атрибуты FallbackModel и пропуск openai в Temporal.
- Added: UIEventStream теперь можно инициализировать без run_input, а AGUIEventStream получил собственные thread_id и run_id.
- Fixed: Исправлено атрибутирование провалов FallbackModel: ошибки теперь корректно привязываются к конкретной модели, а не к обёртке fallback.
- Fixed: Исправлен пропуск библиотеки openai через песочницы Temporal workflow.
Исправлена уязвимость DNS-rebinding в локальном веб-интерфейсе через валидацию Host-заголовка и новый параметр allowed_hosts.
- Fixed: Устранена уязвимость DNS-rebinding в локальном веб-интерфейсе (Agent.to_web(), clai web) из-за отсутствия проверки заголовка Host.
- Breaking: Добавлена валидация Host-заголовка по умолчанию; для доступа по реальному имени хоста теперь требуется явное указание параметра allowed_hosts.
- Added: Внедрён новый параметр конфигурации allowed_hosts для управления списком разрешённых хостов.
Pydantic AI v2.29.0: поддержка FastMCP 4, Azure AI Voice Live, исправления потоков и gzip.
- Added: Добавлена поддержка FastMCP 4 и MCP SDK v2 в MCPToolset.
- Added: Реализована интеграция Azure AI Voice Live через настройку azure_voice_live.
- Fixed: Исправлено молчаливое усечение gzip-ответов.
- Fixed: В описания инструментов теперь включаются описания параметров.
- Fixed: Устранены ошибки наследования for_realtime в WebRTC и Azure, а также проблемы с завершением потоков провайдеров.
Выпуск v1.107.4: исправлена ошибка сборки v1.107.3 и применены два бэкпорта исправлений безопасности.
- Fixed: Исправлена ошибка в инструментах сборки, из-за которой предыдущий тег v1.107.3 не мог быть опубликован на PyPI.
- Fixed: Устранена уязвимость в веб-интерфейсе чата: теперь эндпоинт требует заголовок Content-Type: application/json, предотвращая несанкционированный запуск инструментов агента.
- Fixed: Исправлено скрытие чувствительных данных: контент промптов при повторных попытках теперь корректно скрывается настройками InstrumentationSettings.
Исправления багов: восстановление span'ов, маппинг finish_reason, поддержка адаптивного мышления в Anthropic.
- Fixed: Восстановлены span'ы инструментов при ошибках валидации аргументов.
- Fixed: Исправлено маппинг finish_reason для потоковых ответов XaiStreamedResponse.
- Added: Добавлена поддержка адаптивного мышления с Tool Output и принудительным выбором инструментов в Anthropic.
- Fixed: Содержимое RetryPromptPart в OpenTelemetry теперь фильтруется по параметру include_content.
- Fixed: Исправлена ссылка на автономную сборку веб-интерфейса для офлайн-хостинга.
Добавлена поддержка Snowflake Cortex, улучшена работа с компактизацией и исправлены ошибки OTel-трейсинга.
- Added: Добавлены SnowflakeModel и SnowflakeProvider для работы с Snowflake Cortex.
- Added: В XaiModelSettings добавлено поле xai_agent_count.
- Added: Обеспечен round-trip для CompactionPart через адаптеры Vercel AI и AG-UI.
- Fixed: Исправлена сериализация OTel: теперь корректно учитывается include_binary_content=False.
- Fixed: Исправлено сопоставление атрибутов в SpanQuery для JSON-сериализованных словарей и списков.
- Fixed: Улучшена обработка компактизации: сохранение encrypted_content, очистка provenance stamp и предотвращение дублирования standing prompt.
Pydantic AI v2.26.0: отложенные инструменты, отмена выполнения, кэширование промптов и поддержка DeepSeek V4 Flash.
- Added: Добавлена поддержка отложенных инструментов: скрытие функций до их раскрытия через поиск, load_capability или ToolReturn.tools.
- Added: Введена встроенная отмена выполнения: методы AgentRun.cancel(), RunContext.cancel() и исключение RunCancelled.
- Added: Добавлен метод Model.resolve_prompt_cache_retention() для определения эффективного удержания кэша промптов.
- Added: Итератор run_stream_events() вынесен в публичный интерфейс AgentRunEvents с доступом к отмене и состоянию запуска.
- Added: Добавлена поддержка модели DeepSeek V4 Flash через OpenAIResponsesModel и DeepSeekProvider.
- Fixed: Исправлена передача model_id через WrapperModel, маппинг деталей OpenRouter, работа с системными сообщениями и компактированием.
Исправления для Azure, GPT-5.6 и некорректных аргументов инструментов; добавлена поддержка опций поиска xAI FileSearchTool.
- Added: Добавлена поддержка опций поиска коллекций для xAI FileSearchTool.
- Fixed: Исправлена передача max_tokens для моделей Mistral в Azure вместо max_completion_tokens.
- Fixed: Исправлена работа режима thinking="minimal" для моделей GPT-5.6.
- Fixed: Улучшена обработка некорректных аргументов вызова инструментов в ToolCallPart.args_as_json_str().
- Fixed: Исправлена передача base_url через WrapperModel при некорректном порте.
Исправления в провайдерах Google, Bedrock, OpenAI, Grok, Kimi, Vercel и OpenRouter; поддержка новых моделей и протоколов.
- Fixed: Исправлена потеря явного таймаута в Google-провайдере и фильтрация недоступных имён функций.
- Fixed: Улучшена работа с Bedrock: сохранение настроек OpenAI, корректная отправка top_p и учёт пробелов в потоке.
- Added: Добавлена поддержка моделей kimi-k2-thinking, kimi-k2-5 и Groq compound.
- Fixed: Исправлена обработка ошибок OpenRouter, строгий тип для Vercel AI и защита от отрицательных Retry-After.
- Fixed: Оптимизирована работа с AG-UI: пропуск новых версий контента и сохранение индексов при воспроизведении.
Добавлена поддержка Bedrock, стоимость запросов, новые алиасы Gemini и исправления багов.
- Added: Добавлена поддержка extra_headers для Bedrock.
- Added: В RunUsage добавлена стоимость, в UsageLimits — лимит расходов.
- Added: Восстановлены алиасы для моделей gemini-3-pro-image и gemini-3.1-flash-image.
- Added: Добавлена поддержка ToolAvailabilityDeltaPart для рендеринга инструментов.
- Fixed: Исправлено зависание при bedrock_max_concurrency=0 и утечка переменных Google Cloud.
- Fixed: Исправлено чтение timestamp в OpenAI-стриминге и закрытие асинхронных потоков.