15.11.2025

Как создавать агентов с помощью GPT-5

В этой статье мы расскажем вам о том, как создавать агентские системы с помощью GPT-5 от OpenAI. Наличие агентов с доступными инструментами в вашем приложении скоро станет базовым требованием пользователей для большинства приложений искусственного интеллекта, поэтому вам следует начать его внедрять как можно скорее.

Мы рассмотрим, как можно использовать GPT-5 в качестве мощной модели для ответов на вопросы, предоставив ей доступ к вашим данным и снабдив ее полезными инструментами для ответов на запросы пользователей.

Содержание

Почему стоит использовать GPT-5 в качестве агента?

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

  • Доступ к внутренней базе знаний
  • Агент кодирования
  • Автоматизация рабочих процессов
Все это веские причины для внедрения агентской системы, и GPT-5 с инструментами может помочь в достижении всех этих целей.

Основная причина, по которой я решил использовать GPT-5 для своего агента, заключается в том, что я обычно работаю с корпусом документов, а OpenAI имеет интегрированную экосистему, которая очень полезна для решения проблем, которые для меня актуальны: отвечать на запросы пользователей, исходя из данной информации.

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

Доступ RAG к данным

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

После того, как вы загрузили свои документы и поместили их в векторное хранилище, вы можете, например, выполнить векторный поиск, чтобы найти соответствующие документы с помощью:
user_query = "When is our latest data management agreement from?"

results = client.vector_stores.search(
    vector_store_id=<your vector store id>,
    query=user_query,
)
Это вернет серию документов и определенные фрагменты из этих документов, аналогично тому, что делает Pinecone. Затем вы можете использовать эти фрагменты для ответа на запросы пользователей.

Тем не менее, есть возможность сделать векторное хранилище еще более мощным, предоставив GPT-5 доступ к нему через инструмент.
from openai import OpenAI
client = OpenAI(api_key="")

response = client.responses.create(
    model="gpt-5",
    input="When is our latest data management agreement from?",
    tools=[{
        "type": "file_search",
        "vector_store_ids": ["<your vector store id>"]
    }]
)
Это гораздо более эффективно, поскольку теперь вы сделали векторное хранилище доступным для GPT-5 с помощью инструмента. Когда вы вводите запрос пользователя, GPT-5 решает, нужно ли использовать инструмент для ответа на запрос пользователя. Если он решает, что нужно использовать инструмент, GPT-5 делает следующее:

  • Рассуждает о том, какие инструменты или векторные хранилища у него есть и какие из них использовать.
  • Переписывает запрос: пишет 5 различных версий запроса пользователя, но оптимизированных для поиска релевантной информации с помощью RAG.
  • Запускает 5 запросов параллельно и извлекает наиболее релевантные документы.
  • Определяет, достаточно ли информации для ответа на запрос пользователя:
  1. Если да, то отвечает на запрос пользователя.
  2. Если нет, то может продолжить поиск в векторном хранилище (хранилищах).

Это очень простой и эффективный способ получить доступ к вашим данным, и OpenAI в основном решает все сложные задачи, связанные с:

  • Разбиением документов на фрагменты и их встраиванием
  • Решение о том, когда выполнять векторный поиск
  • Перезапись запроса
  • Определение релевантных документов на основе сходства с запросами
  • Решение о том, достаточно ли информации для ответа на запрос пользователя
  • Ответ на запрос пользователя

Gemini также недавно создала управляемую систему RAG с помощью своего API файлов, которая по сути предлагает ту же услугу.

Использование инструмента GPT-5

В предыдущем разделе я рассказал о векторном инструменте хранения данных, который можно сделать доступным для GPT-5. Однако вы также можете открыть доступ для GPT-5 любому другому инструменту. Классическим примером является предоставление GPT-5 доступа к инструменту get_weather, чтобы он мог получать информацию о текущей погоде. Приведенный ниже пример взят из документации OpenAI.
from openai import OpenAI

client = OpenAI()

tools = [
    {
        "type": "function",
        "name": "get_weather",
        "description": "Get current temperature for a given location.",
        "parameters": {
            "type": "object",
            "properties": {
                "location": {
                    "type": "string",
                    "description": "City and country e.g. Bogotá, Colombia",
                }
            },
            "required": ["location"],
            "additionalProperties": False,
        },
        "strict": True,
    },
]

response = client.responses.create(
    model="gpt-5",
    input=[
        {"role": "user", "content": "What is the weather like in Paris today?"},
    ],
    tools=tools,
)
Теперь вам нужно определить, какие инструменты следует предоставить вашему агенту, чтобы он мог лучше отвечать на запросы, которые вы ему будете предоставлять. Например:

  • Если вы работаете с внешними базами знаний, вам следует предоставить инструмент для поиска в этих базах знаний и сообщить модели, когда использовать этот инструмент.
  • Инструмент выполнения Python: вы можете предоставить модели инструмент для запуска кода Python и просматривать результаты с помощью
  • Инструмент калькулятора: вместо того, чтобы LLM самостоятельно выполнял математические вычисления (что неэффективно и чревато ошибками), вы можете предоставить ему инструмент калькулятора для выполнения вычислений.

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

  • Инструменты всегда хорошо описаны.
  • Инструменты однозначны: модели (и любому человеку, читающему инструмент) всегда должно быть ясно, когда инструмент следует использовать, а когда нет.
  • Минимальное пересечение между инструментами.
При определении инструментов для GPT-5 вы также можете предоставить рекомендации относительно того, является ли инструмент обязательным или нет. Обязательным инструментом может быть поиск в векторном хранилище, при котором вы заставляете модель искать векторный запрос для каждого запроса пользователя, гарантируя, что ответы всегда будут основаны на корпусе документов. Однако функция get_weather обычно должна быть опциональной, учитывая, что она должна вызываться только тогда, когда пользователь спрашивает о погоде.

Вы также можете создавать инструменты с помощью коннекторов. Коннекторы — это, по сути, инструменты, которые предоставляют доступ к другим приложениям, таким как:

  • Gmail
  • Slack
  • Figma
  • GitHub

Это позволяет GPT, например, отображать список ваших писем, искать определенные темы в Slack, просматривать дизайны в Figma или просматривать код в GitHub.

Пакет агентов

Также стоит упомянуть, что OpenAI создала SDK для агентов, к которому можно получить доступ через Python или TypeScript. SDK для агентов полезен для более сложных сценариев построения агентов, когда необходимо:

  • Заставить агента выполнять сложные, связанные между собой действия.
  • Сохранять контекст между задачами.
  • Например, вы можете создать специальных агентов, специализирующихся на определенных задачах (поиск информации, обобщение информации и т. д.), и создать агент-оркестратор, который отвечает на запросы пользователей, запускает под-агентов для поиска и обобщения информации, определяет, достаточно ли информации, а затем отвечает пользователю.
Существует множество похожих SDK для агентов, что значительно упрощает создание собственного агента. Некоторые другие хорошие альтернативы:

  • LangGraph
  • CrewAI
  • Agent Development Kit

Все эти пакеты служат одной и той же цели — упростить создание агентов ИИ и сделать их более доступными.

В заключение

В этой статье я рассказал о том, как использовать GPT-5 в качестве ИИ-агента. Сначала я рассмотрел, когда нужно создавать агентов и почему GPT-5 является одной из нескольких хороших альтернатив. Затем я углубился в векторное хранилище OpenAI и рассказал, как можно очень просто создать векторное хранилище и сделать его доступным для вашего агента в качестве инструмента. Кроме того, я рассказал о предоставлении вашему агенту других настраиваемых инструментов и SDK для агентов, которые можно использовать для создания продвинутых агентских приложений. Предоставление ваших LLM инструментов — это простой способ значительно усилить ваших агентов и сделать их гораздо более способными отвечать на запросы пользователей. Как я уже упоминал в начале этой статьи, пользователи скоро начнут ожидать, что большинство приложений искусственного интеллекта будут иметь доступных агентов, которые могут выполнять действия с помощью инструментов, и поэтому вам следует как можно скорее изучить эту тему и внедрить ее в свою работу.
Читайте также