Новые инструменты для создания агентов

Попробовать в Playground
A sleek, minimal interface displaying a task list for an AI agent, including ‘triage_agent,’ ‘guardrail,’ and ‘update_salesforce_record,’ over a fluid blue abstract background.

Сегодня мы выпускаем первый набор базовых компонентов, которые помогут разработчикам и предприятиям создавать полезных и надежных агентов. Мы рассматриваем агентов как системы, которые самостоятельно выполняют задачи от имени пользователей. За последний год мы представили новые возможности моделей — такие как расширенные возможности рассуждения, мультимодальные взаимодействия и новые методы обеспечения безопасности, — которые заложили основу для того, чтобы наши модели могли справляться со сложными многоэтапными задачами, необходимыми для создания агентов. Тем не менее, пользователи отмечали, что превращение этих возможностей в готовых к работе агентов может быть сложной задачей, часто требующей масштабной итерации промптов и пользовательской логики оркестрации без достаточной прозрачности или встроенной поддержки.

Чтобы решить эти задачи, мы запускаем новый набор API и инструментов, специально разработанных для упрощения разработки агентных приложений:

  • Новый API ответов (Responses API), объединяющий простоту API завершения чата (Chat Completions) с возможностями использования инструментов API ассистентов (Assistants API) для создания агентов
  • Встроенные инструменты, включая веб-поиск, поиск по файлам и использование компьютера
  • Новый SDK агентов (Agents SDK) для оркестрации рабочих процессов с одним или несколькими агентами
  • Интегрированные инструменты наблюдаемости для трассировки и проверки выполнения рабочих процессов агентов

Эти новые инструменты оптимизируют основную логику агентов, оркестрацию и взаимодействие, значительно упрощая разработчикам начало создания агентов. В ближайшие недели и месяцы мы планируем выпустить дополнительные инструменты и возможности для дальнейшего упрощения и ускорения создания агентных приложений на нашей платформе.

Представляем API ответов (Responses API)

API ответов (Responses API) — это наш новый базовый API для использования встроенных инструментов OpenAI при создании агентов. Он объединяет простоту Chat Completions с возможностями использования инструментов Assistants API. По мере дальнейшего развития возможностей моделей мы верим, что Responses API обеспечит более гибкую основу для разработчиков, создающих агентные приложения. С помощью одного вызова Responses API разработчики смогут решать все более сложные задачи, используя несколько инструментов и шагов модели.

Для начала Responses API будет поддерживать новые встроенные инструменты, такие как веб-поиск, поиск по файлам и использование компьютера. Эти инструменты разработаны для совместной работы, чтобы подключать модели к реальному миру и делать их более полезными при выполнении задач. Он также приносит с собой ряд улучшений удобства использования, включая унифицированный дизайн на основе элементов, более простой полиморфизм, интуитивно понятные события потоковой передачи и вспомогательные средства SDK, такие как response.output_text, для удобного доступа к текстовому выводу модели.

Responses API разработан для разработчиков, которые хотят легко объединять модели OpenAI и встроенные инструменты в своих приложениях без сложностей интеграции нескольких API или внешних вендоров. API также упрощает хранение данных в OpenAI, позволяя разработчикам оценивать производительность агентов с помощью таких функций, как трассировка и оценки. Напоминаем, что мы не обучаем наши модели на бизнес-данных по умолчанию, даже если эти данные хранятся в OpenAI. API доступен всем разработчикам начиная с сегодняшнего дня и не тарифицируется отдельно — токены и инструменты оплачиваются по стандартным тарифам, указанным на нашей странице цен. Ознакомьтесь с руководством по быстрому старту Responses API, чтобы узнать больше.

Что это значит для существующих API

  • Chat Completions API: Chat Completions остается нашим самым популярным API, и мы полностью привержены его поддержке с помощью новых моделей и возможностей. Разработчики, которым не требуются встроенные инструменты, могут смело продолжать использовать Chat Completions. Мы продолжим выпускать новые модели для Chat Completions всякий раз, когда их возможности не зависят от встроенных инструментов или многократных вызовов моделей. Тем не менее, Responses API является надмножеством Chat Completions с той же отличной производительностью, поэтому для новых интеграций мы рекомендуем начинать с Responses API.
  • Assistants API: Основываясь на отзывах разработчиков из периода бета-тестирования Assistants API, мы внедрили ключевые улучшения в Responses API, сделав его более гибким, быстрым и простым в использовании. Мы работаем над достижением полной функциональной эквивалентности между Assistants API и Responses API, включая поддержку объектов типа Assistant и Thread, а также инструмента Code Interpreter. Как только это будет завершено, мы планируем официально объявить об устаревании (deprecation) Assistants API с целевой датой прекращения поддержки в середине 2026 года. После устаревания мы предоставим понятное руководство по миграции с Assistants API на Responses API, которое позволит разработчикам сохранить все свои данные и перенести приложения. До официального объявления об устаревании мы продолжим предоставлять новые модели для Assistants API. Responses API представляет собой будущее направление для создания агентов на базе OpenAI.

Представление встроенных инструментов в API ответов (Responses API)

Поиск в интернете

Теперь разработчики могут получать быстрые, актуальные ответы с четкими и релевантными цитатами из интернета. В Responses API поиск по интернету доступен в качестве инструмента при использовании gpt-4o и gpt-4o-mini, а также может объединяться с другими инструментами или вызовами функций.

JavaScript

1
const response = await openai.responses.create({
2
model: "gpt-4o",
3
tools: [ { type: "web_search_preview" } ],
4
input: "What was a positive news story that happened today?",
5
});
6

7
console.log(response.output_text);

В ходе раннего тестирования мы видели, как разработчики создают с помощью веб-поиска самые разные приложения: от помощников по шопингу и исследовательских агентов до агентов для бронирования путешествий — любые приложения, требующие актуальной информации из сети.

Например, компания Hebbia использует инструмент веб-поиска, чтобы помогать управляющим активами, инвестиционным компаниям, кредитным организациям и юридическим практикам быстро извлекать полезные данные из обширных общедоступных и частных наборов информации. Интегрируя возможности поиска в реальном времени в свои рабочие процессы исследований, Hebbia предоставляет более богатую, контекстуальную рыночную аналитику и постоянно повышает точность и релевантность своих аналитических материалов, превосходя текущие стандарты.

Поиск в интернете в API работает на базе той же модели, которая используется для поиска в ChatGPT. В бенчмарке SimpleQA, оценивающем точность языковых моделей при ответах на краткие фактологические вопросы, предварительные версии поиска GPT‑4o и GPT‑4o mini набирают 90% и 88% соответственно.

Точность в SimpleQA (выше — лучше)
63%38%47%15%90%88%Точность

Ответы, сгенерированные с помощью функции веб-поиска в API, включают ссылки на источники (такие как новостные статьи и записи в блогах), что дает пользователям возможность узнать больше. Благодаря этим четким встроенным цитатам пользователи могут взаимодействовать с информацией по-новому, в то время как владельцы контента получают новые возможности для охвата более широкой аудитории.

Любой веб-сайт или издатель может выбрать отображение в результатах веб-поиска в API.

Инструмент веб-поиска доступен всем разработчикам в режиме предварительного просмотра в Responses API. Мы также предоставляем разработчикам прямой доступ к нашим специализированным моделям поиска в Chat Completions API через gpt-4o-search-preview и gpt-4o-mini-search-preview. Цены начинаются от $30 и $25 за тысячу запросов для поиска GPT‑4o и 4o-mini соответственно. Оцените веб-поиск в песочнице (Playground) и узнайте больше в нашей документации.

Поиск по файлам

Теперь разработчики могут легко извлекать релевантную информацию из больших объемов документов с помощью улучшенного инструмента поиска по файлам. Благодаря поддержке нескольких типов файлов, оптимизации запросов, метаданным-фильтрации и пользовательскому ранжированию он обеспечивает быстрые и точные результаты поиска. И снова: благодаря Responses API для интеграции требуется всего несколько строк кода.

JavaScript

1
const productDocs = await openai.vectorStores.create({
2
name: "Product Documentation",
3
file_ids: [file1.id, file2.id, file3.id],
4
});
5

6
const response = await openai.responses.create({
7
model: "gpt-4o-mini",
8
tools: [{
9
type: "file_search",
10
vector_store_ids: [productDocs.id],
11
}],
12
input: "What is deep research by OpenAI?",
13
});
14

15
console.log(response.output_text);

Инструмент поиска по файлам может использоваться в различных сценариях реального мира, включая помощь агенту поддержки клиентов в быстром доступе к часто задаваемым вопросам (FAQ), помощь юридическому ассистенту в оперативном поиске прецедентов для квалифицированного специалиста, а также помощь агенту по программированию в запросах к технической документации. Например, компания Navan использует поиск по файлам в своем туристическом агенте на базе ИИ, чтобы быстро предоставлять пользователям точные ответы из статей базы знаний (например, касающихся корпоративной политики поездок). Благодаря встроенной оптимизации запросов и переранжированию они могут настроить мощный пайплайн RAG (генерации с дополненным извлечением) без дополнительной настройки или конфигурирования. Имея выделенные векторные хранилища для каждой группы пользователей, Navan может адаптировать ответы под индивидуальные настройки аккаунта и роли пользователей, экономя время клиентов и их сотрудников и обеспечивая при этом точную и персонализированную поддержку.

Этот инструмент доступен в Responses API всем разработчикам. Использование оценивается в $2,50 за тысячу запросов, а хранение файлов — в $0,10 за ГБ в день, причем первый гигабайт предоставляется бесплатно. Инструмент по-прежнему доступен и в Assistants API. Наконец, мы также добавили новый эндпоинт поиска к объектам Vector Store API для прямой отправки запросов к вашим данным с целью использования в других приложениях и API. Узнайте больше в нашей документации и начните тестирование в песочнице (Playground).

Использование компьютера

Чтобы создавать агентов, способных выполнять задачи на компьютере, разработчики теперь могут использовать инструмент компьютерного взаимодействия (computer use) в Responses API, который работает на базе той же модели агента для работы за компьютером (CUA), лежащей в основе Operator. Эта исследовательская превью-модель установила новый рекорд среди современных решений, достигнув 38,1% успешности выполнения задач на OSWorld для полноценного использования компьютера, 58,1% на WebArena и 87% на WebVoyager для взаимодействия в веб-среде.

Встроенный инструмент компьютерного взаимодействия фиксирует действия мыши и клавиатуры, генерируемые моделью, позволяя разработчикам автоматизировать задачи на ПК путем прямой трансляции этих действий в исполняемые команды в своих средах.

JavaScript

1
const response = await openai.responses.create({
2
model: "computer-use-preview",
3
tools: [{
4
type: "computer_use_preview",
5
display_width: 1024,
6
display_height: 768,
7
environment: "browser",
8
}],
9
truncation: "auto",
10
input: "I'm looking for a new camera. Help me find the best one.",
11
});
12

13
console.log(response.output);

Разработчики могут использовать инструмент компьютерного взаимодействия для автоматизации рабочих процессов в браузере, таких как обеспечение контроля качества веб-приложений или выполнение задач по вводу данных в устаревших системах. Например, Unify — это система действий для роста доходов, которая использует агентов для определения намерений, исследования аккаунтов и взаимодействия с покупателями. Используя инструмент компьютерного взаимодействия OpenAI, агенты Unify могут получать доступ к информации, ранее недоступной через API. Например, это позволяет компании по управлению недвижимостью проверять с помощью онлайн-карт, расширила ли компания свой парк недвижимости. Это исследование служит индивидуальным сигналом для запуска персонализированной работы с клиентами, позволяя командам выхода на рынок привлекать покупателей с высокой точностью и в больших масштабах.

В качестве другого примера компания Luminai интегрировала инструмент компьютерного взаимодействия для автоматизации сложных операционных рабочих процессов для крупных предприятий с устаревшими системами, в которых отсутствуют доступность API и стандартизированные данные. В ходе недавнего пилотного проекта с крупной организацией общественного обслуживания компания Luminai автоматизировала обработку заявок и регистрацию пользователей всего за несколько дней — то, чего традиционная роботизированная автоматизация процессов (RPA) с трудом добивалась после месяцев работы.

Прежде чем запустить CUA в составе Operator в прошлом году, мы провели обширное тестирование безопасности и оценку на устойчивость к атакам (red teaming), уделив особое внимание трем ключевым областям риска: неправомерному использованию, ошибкам модели и пограничным рискам. Чтобы устранить риски, связанные с расширением возможностей Operator на локальные операционные системы с помощью CUA в API, мы провели дополнительные оценки безопасности и проверки на взлом. Мы также добавили средства защиты для разработчиков, включая проверки безопасности для предотвращения инъекций промптов, подтверждающие запросы для конфиденциальных задач, инструменты, помогающие разработчикам изолировать свои среды, и улучшенное обнаружение потенциальных нарушений политик. Хотя эти меры помогают снизить риск, модель по-прежнему подвержена непреднамеренным ошибкам, особенно в небраузерных средах. Например, производительность CUA в OSWorld, бенчмарке, созданном для оценки эффективности ИИ-агентов в реальных задачах, в настоящее время составляет 38,1%, что указывает на то, что модель пока еще недостаточно надежна для автоматизации задач на уровне операционных систем. В таких сценариях рекомендуется контроль со стороны человека. Более подробную информацию о нашей работе по обеспечению безопасности в рамках конкретных API можно найти в нашем обновленном системном отчете (system card).

Тип бенчмаркаБенчмаркИспользование компьютера (универсальный интерфейс)Агенты веб-серфингаЧеловек
OpenAI CUAПредыдущий SOTAПредыдущий SOTA
Использование компьютераOSWorld38.1%22.0%-72.4%
Использование браузераWebArena58.1%36.2%57.1%78.2%
WebVoyager87.0%56.0%87.0%-
Подробности оценки описаны здесь

Начиная с сегодняшнего дня, инструмент компьютерного взаимодействия доступен в режиме исследовательского превью в Responses API для отдельных разработчиков из уровней использования 3–5. Использование оценивается в $3 за 1 млн входных токенов и $12 за 1 млн выходных токенов. Узнайте больше в нашей документации и ознакомьтесь с примером приложения, демонстрирующим создание решений с помощью этого инструмента.

Agents SDK

Помимо создания базовой логики агентов и предоставления им доступа к инструментам для повышения их полезности, разработчикам также необходимо оркестрировать агентские рабочие процессы. Наш новый пакет SDK для агентов с открытым исходным кодом упрощает оркестрацию многоагентных процессов и предлагает значительные улучшения по сравнению с Swarm — экспериментальным SDK, выпущенным нами в прошлом году, который получил широкое распространение в сообществе разработчиков и успешно внедрен множеством клиентов.

Улучшения включают в себя:

  • Агенты (Agents): легко настраиваемые языковые модели с чёткими инструкциями и встроенными инструментами.
  • Передача управления (Handoffs): интеллектуальная передача управления между агентами.
  • Защитные барьеры (Guardrails): настраиваемые проверки безопасности для валидации входных и выходных данных.
  • Трассировка и наблюдаемость (Tracing & Observability): визуализация трасс выполнения агентов для отладки и оптимизации производительности.

Python

1
from agents import Agent, Runner, WebSearchTool, function_tool, guardrail
2

3
@function_tool
4
def submit_refund_request(item_id: str, reason: str):
5
# Your refund logic goes here
6
return "success"
7

8
support_agent = Agent(
9
name="Support & Returns",
10
instructions="You are a support agent who can submit refunds [...]",
11
tools=[submit_refund_request],
12
)
13

14
shopping_agent = Agent(
15
name="Shopping Assistant",
16
instructions="You are a shopping assistant who can search the web [...]",
17
tools=[WebSearchTool()],
18
)
19

20
triage_agent = Agent(
21
name="Triage Agent",
22
instructions="Route the user to the correct agent.",
23
handoffs=[shopping_agent, support_agent],
24
)
25

26
output = Runner.run_sync(
27
starting_agent=triage_agent,
28
input="What shoes might work best with my outfit so far?",
29
)

Agents SDK подходит для различных реальных сценариев применения, включая автоматизацию службы поддержки, многоэтапные исследования, генерацию контента, проверку кода и поиск потенциальных клиентов (sales prospecting). Например, компания Coinbase использовала Agents SDK для быстрого прототипирования и развертывания AgentKit — набора инструментов, позволяющего ИИ-агентам беспрепятственно взаимодействовать с криптовалютными кошельками и различными ончейн-операциями. Всего за несколько часов Coinbase интегрировала пользовательские действия из своего SDK платформы для разработчиков в полнофункционального агента. Упрощенная архитектура AgentKit облегчила добавление новых действий агентов, позволив разработчикам уделять больше внимания значимым интеграциям и меньше — разбору сложных настроек агентов.

Всего за пару дней компания Box смогла быстро создать агентов, использующих веб-поиск и Agents SDK, чтобы предоставить предприятиям возможность искать, запрашивать и извлекать аналитические данные из неструктурированных данных, хранящихся в Box и в общедоступных источниках сети Интернет. Такой подход позволяет клиентам не только получать самую свежую информацию, но и выполнять поиск по своим внутренним проприетарным данным безопасным и надежным способом, соблюдающим их внутренние разрешения и политики безопасности. Например, финансовая организация может создать кастомного агента, который задействует ИИ-агент Box для объединения внутреннего рыночного анализа, хранящегося в Box, с новостями и экономическими данными из сети в реальном времени, предоставляя своим аналитикам исчерпывающую картину для принятия инвестиционных решений.

Agents SDK работает с Responses API и Chat Completions API. Этот SDK также будет поддерживать модели от других провайдеров, если они предоставляют эндпоинт API в стиле Chat Completions. Разработчики могут сразу интегрировать его в свои кодовые базы на Python, а поддержка Node.js появится в ближайшее время. Узнайте больше в нашей документации.

При разработке Agents SDK наша команда вдохновлялась отличной работой других участников сообщества, включая Pydantic, Griffe и MkDocs. Мы стремимся и дальше развивать Agents SDK как фреймворк с открытым исходным кодом, чтобы другие участники сообщества могли развивать наш подход.

Что дальше: создание платформы для агентов

Мы верим, что агенты вскоре станут неотъемлемой частью рабочего процесса, существенно повышая производительность в самых разных отраслях. Поскольку компании все активнее стремятся использовать искусственный интеллект для решения сложных задач, мы стремимся предоставлять строительные блоки, которые позволяют разработчикам и предприятиям эффективно создавать автономные системы, приносящие реальную пользу в реальном мире.

Сегодняшними релизами мы представляем первые компоненты, которые дают возможность разработчикам и предприятиям проще создавать, развертывать и масштабировать надежные и высокопроизводительные ИИ-агенты. По мере того как возможности моделей становятся все более агентскими, мы будем продолжать инвестировать в более глубокие интеграции между нашими API и новые инструменты для помощи в развертывании, оценке и оптимизации агентов в продакшене. Наша цель — предоставить разработчикам удобную платформу для создания агентов, способных помогать в самых разных задачах в любой индустрии. Мы с нетерпением ждем того, что разработчики создадут дальше. Чтобы начать работу, изучите нашу документацию и следите за обновлениями.

Авторы

OpenAI

Полный текст статьи читайте на OpenAI