Перейти к основному содержанию
POST
/
v1
/
responses
curl https://api.apimart.ai/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <token>" \
  -d '{
    "model": "gpt-5",
    "input": [
      {
        "role": "user",
        "content": [
          {
            "type": "input_text",
            "text": "What is in this image?"
          },
          {
            "type": "input_image",
            "image_url": "https://openai-documentation.vercel.app/images/cat_and_otter.png"
          }
        ]
      }
    ]
  }'
{
  "code": 200,
  "data": {
    "id": "resp-9876543210",
    "object": "response",
    "created": 1677652288,
    "model": "gpt-5",
    "choices": [
      {
        "index": 0,
        "message": {
          "role": "assistant",
          "content": "This image shows a cat and an otter. They appear to be interacting with each other in a very cute and heartwarming scene. The cat and otter seem to be getting along well."
        },
        "finish_reason": "stop"
      }
    ],
    "usage": {
      "prompt_tokens": 156,
      "completion_tokens": 45,
      "total_tokens": 201
    }
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.apimart.ai/llms.txt

Use this file to discover all available pages before exploring further.

curl https://api.apimart.ai/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <token>" \
  -d '{
    "model": "gpt-5",
    "input": [
      {
        "role": "user",
        "content": [
          {
            "type": "input_text",
            "text": "What is in this image?"
          },
          {
            "type": "input_image",
            "image_url": "https://openai-documentation.vercel.app/images/cat_and_otter.png"
          }
        ]
      }
    ]
  }'
{
  "code": 200,
  "data": {
    "id": "resp-9876543210",
    "object": "response",
    "created": 1677652288,
    "model": "gpt-5",
    "choices": [
      {
        "index": 0,
        "message": {
          "role": "assistant",
          "content": "This image shows a cat and an otter. They appear to be interacting with each other in a very cute and heartwarming scene. The cat and otter seem to be getting along well."
        },
        "finish_reason": "stop"
      }
    ],
    "usage": {
      "prompt_tokens": 156,
      "completion_tokens": 45,
      "total_tokens": 201
    }
  }
}

Авторизация

Authorization
string
обязательно
##Все API требуют аутентификации Bearer Token##Получение API-ключа:Откройте страницу управления API-ключами, чтобы получить ваш API-ключДобавьте в заголовок запроса:
Authorization: Bearer YOUR_API_KEY

Body

model
string
по умолчанию:"gpt-5"
обязательно
Название моделиПоддерживаемые модели:
  • gpt-5 — новейшая мультимодальная модель OpenAI
  • GPT-4o-image — оптимизированная мультимодальная модель GPT-4
  • gpt-4-vision — модель GPT-4 с пониманием изображений
  • Скоро будут добавлены новые модели…
input
array
обязательно
Список входных данныхВходной массив, каждый элемент содержит поля role и content.💡 Быстрое заполнение (область «Try it»):
  1. Нажмите «+ Add an item», чтобы добавить элемент ввода
  2. В поле role введите: user (сообщение пользователя), assistant (ответ AI) или system (системная подсказка)
  3. В поле content добавьте блоки контента (могут включать текст и изображения)
temperature
number
Управляет случайностью вывода, диапазон 0–2
  • Меньшие значения (например, 0.2) делают вывод более детерминированным
  • Большие значения (например, 1.8) делают вывод более случайным
По умолчанию: 1.0
max_tokens
integer
Максимальное количество генерируемых токеновУ разных моделей разные максимальные лимиты, обратитесь к документации конкретной модели
stream
boolean
Использовать ли потоковый вывод
  • true: потоковый ответ (формат SSE)
  • false: вернуть полный ответ за один раз
По умолчанию: false
top_p
number
Параметр ядровой выборки (nucleus sampling), диапазон 0–1Управляет разнообразием генерируемого текста, рекомендуется использовать его как альтернативу temperatureПо умолчанию: 1.0
tools
array
Список инструментов для расширения возможностей моделиПоддерживаемые типы инструментов:
  • Веб-поиск (web_search): поиск актуальной информации в интернете
  • Поиск по файлам (file_search): поиск по содержимому загруженных файлов
  • Function Calling (function): вызов пользовательских функций
  • Удалённый MCP (remote_mcp): подключение к удалённым сервисам Model Context Protocol
Пример: [{"type": "web_search"}]

Response

id
string
Уникальный идентификатор ответа
object
string
Тип объекта, фиксированное значение response
created
integer
Временная метка создания
model
string
Фактически использованное название модели
choices
array
Список сгенерированных ответов
usage
object
Статистика использования токенов

Примеры использования

Только текстовый ввод

{
  "model": "gpt-5",
  "input": [
    {
      "role": "user",
      "content": [
        {
          "type": "input_text",
          "text": "Hello, introduce artificial intelligence"
        }
      ]
    }
  ]
}

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

{
  "model": "gpt-5",
  "tools": [{"type": "web_search"}],
  "input": "What positive news is there today?"
}
cURL Example
curl "https://api.apimart.ai/v1/responses" \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer <token>" \
    -d '{
        "model": "gpt-5",
        "tools": [{"type": "web_search"}],
        "input": "What positive news is there today?"
    }'

Понимание изображений

{
  "model": "gpt-5",
  "input": [
    {
      "role": "user",
      "content": [
        {
          "type": "input_text",
          "text": "Describe this image"
        },
        {
          "type": "input_image",
          "image_url": "https://example.com/image.jpg"
        }
      ]
    }
  ]
}

Анализ нескольких изображений

{
  "model": "gpt-5",
  "input": [
    {
      "role": "user",
      "content": [
        {
          "type": "input_text",
          "text": "Compare the similarities and differences of these two images"
        },
        {
          "type": "input_image",
          "image_url": "https://example.com/image1.jpg"
        },
        {
          "type": "input_image",
          "image_url": "https://example.com/image2.jpg"
        }
      ]
    }
  ]
}

Изображение в кодировке Base64

{
  "model": "gpt-5",
  "input": [
    {
      "role": "user",
      "content": [
        {
          "type": "input_text",
          "text": "Analyze this image"
        },
        {
          "type": "input_image",
          "image_url": "data:image/jpeg;base64,/9j/4AAQSkZJRg..."
        }
      ]
    }
  ]
}

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

{
  "model": "gpt-5",
  "tools": [{"type": "file_search"}],
  "input": "Based on uploaded documents, summarize the company's quarterly performance"
}

Использование Function Calling

{
  "model": "gpt-5",
  "tools": [
    {
      "type": "function",
      "function": {
        "name": "get_weather",
        "description": "Get weather information for a specified city",
        "parameters": {
          "type": "object",
          "properties": {
            "city": {
              "type": "string",
              "description": "City name, e.g.: Beijing"
            },
            "unit": {
              "type": "string",
              "enum": ["celsius", "fahrenheit"],
              "description": "Temperature unit"
            }
          },
          "required": ["city"]
        }
      }
    }
  ],
  "input": "What's the weather like in Beijing today?"
}

Использование удалённого MCP

{
  "model": "gpt-5",
  "tools": [
    {
      "type": "remote_mcp",
      "remote_mcp": {
        "url": "https://mcp.example.com/api",
        "auth_token": "your_mcp_token"
      }
    }
  ],
  "input": "Query user information in the database"
}

Комбинирование нескольких инструментов

{
  "model": "gpt-5",
  "tools": [
    {"type": "web_search"},
    {"type": "file_search"},
    {
      "type": "function",
      "function": {
        "name": "calculate",
        "description": "Perform mathematical calculations",
        "parameters": {
          "type": "object",
          "properties": {
            "expression": {
              "type": "string",
              "description": "Mathematical expression"
            }
          },
          "required": ["expression"]
        }
      }
    }
  ],
  "input": "Search for the latest Bitcoin price and calculate the total value of 100 Bitcoins"
}

Спецификации типов контента

input_text

Тип текстового ввода Свойства:
  • type: фиксированное значение "input_text"
  • text: текстовое содержимое (строка)

input_image

Тип ввода изображения Свойства:
  • type: фиксированное значение "input_image"
  • image_url: URL изображения или Base64-кодированный data URI
Поддерживаемые форматы изображений:
  • JPEG
  • PNG
  • GIF
  • WebP
Ограничения размера изображения:
  • Максимальный размер файла: 20 МБ
  • Рекомендуемое разрешение: не более 2048x2048 пикселей

Подробности использования инструментов

Веб-поиск

Инструмент веб-поиска позволяет модели получать актуальную информацию из интернета. Пример конфигурации:
{
  "tools": [{"type": "web_search"}]
}
Сценарии использования:
  • Запрос последних новостей и текущих событий
  • Получение данных в реальном времени (акции, погода, курсы валют и т. д.)
  • Поиск актуальной технической документации
  • Проверка фактической информации

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

Инструмент поиска по файлам позволяет модели искать релевантную информацию в загруженных документах. Пример конфигурации:
{
  "tools": [{"type": "file_search"}]
}
Сценарии использования:
  • Анализ внутрикорпоративных документов
  • Поиск по техническим спецификациям и руководствам
  • Запросы по договорам и юридическим документам
  • Системы вопросов и ответов на базе знаний

Function Calling

Определение пользовательских функций позволяет модели вызывать внешние API или выполнять конкретные операции. Полный пример конфигурации:
{
  "tools": [
    {
      "type": "function",
      "function": {
        "name": "get_stock_price",
        "description": "Get real-time stock price",
        "parameters": {
          "type": "object",
          "properties": {
            "symbol": {
              "type": "string",
              "description": "Stock symbol, e.g.: AAPL"
            },
            "currency": {
              "type": "string",
              "enum": ["USD", "CNY"],
              "description": "Currency unit",
              "default": "USD"
            }
          },
          "required": ["symbol"]
        }
      }
    }
  ]
}
Описание параметров:
  • name: имя функции (обязательно)
  • description: описание функции (обязательно)
  • parameters: определение параметров в формате JSON Schema
    • type: тип параметра
    • properties: определения свойств параметров
    • required: список обязательных параметров
Сценарии использования:
  • Вызов сторонних API
  • Выполнение запросов к базе данных
  • Запуск бизнес-процессов
  • Интеграция с внутренними системами

Удалённый MCP

Подключение к удалённым сервисам Model Context Protocol (MCP) для расширения возможностей модели. Пример конфигурации:
{
  "tools": [
    {
      "type": "remote_mcp",
      "remote_mcp": {
        "url": "https://your-mcp-server.com/api",
        "auth_token": "your_auth_token",
        "timeout": 30
      }
    }
  ]
}
Описание параметров:
  • url: адрес MCP-сервера (обязательно)
  • auth_token: токен аутентификации (необязательно)
  • timeout: таймаут в секундах, по умолчанию 30 секунд
Сценарии использования:
  • Подключение к корпоративным AI-сервисам
  • Использование специализированных моделей
  • Доступ к защищённым источникам данных
  • Интеграция с распределёнными AI-системами

Формат ответа при использовании инструментов

Когда модель использует инструменты, формат ответа будет содержать информацию о вызове инструментов:
{
  "id": "resp-123456",
  "object": "response",
  "created": 1677652288,
  "model": "gpt-5",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": null,
        "tool_calls": [
          {
            "id": "call_abc123",
            "type": "function",
            "function": {
              "name": "get_weather",
              "arguments": "{\"city\": \"Beijing\"}"
            }
          }
        ]
      },
      "finish_reason": "tool_calls"
    }
  ]
}
Рабочий процесс вызова инструмента:
  1. Модель получает пользовательский ввод
  2. Анализирует, нужны ли инструменты
  3. При необходимости возвращает запрос на вызов инструмента
  4. Клиент выполняет вызов инструмента
  5. Возвращает результаты инструмента модели
  6. Модель формирует окончательный ответ

Важные замечания

  1. Требования к URL изображений:
    • Должен быть публично доступным URL
    • Или использовать формат Base64-кодированного Data URI
  2. Тарификация токенов:
    • Изображения расходуют токены в зависимости от их разрешения
    • Изображения с высоким разрешением автоматически уменьшаются для оптимизации стоимости
    • Вызовы инструментов также потребляют дополнительные токены
  3. Порядок контента:
    • Порядок элементов в массиве content влияет на понимание моделью
    • Рекомендуется сначала располагать текстовые инструкции, затем изображения
  4. Мультимодальные комбинации:
    • В одном запросе можно смешивать несколько текстов и изображений
    • Поддерживаются многошаговые диалоги с сохранением контекста
  5. Ограничения использования инструментов:
    • При одновременном использовании нескольких инструментов модель интеллектуально выбирает наиболее подходящий
    • Function calling требует чёткого определения функций и описания параметров
    • Результаты веб-поиска могут быть ограничены регионом и временем
  6. Совместимость API:
    • Полная совместимость с форматом OpenAI Responses API
    • Бесшовная миграция существующего кода OpenAI
    • Поддержка всех функций расширения инструментов OpenAI