GPT-4o mini API

GPT-4o mini API в ruGPT — это доступ к быстрой и экономичной модели OpenAI для чат-ботов, классификации текста и массовой обработки запросов. Подключайте модель через единый API ruGPT и используйте её в поддержке, CRM, контентных сервисах и внутренних инструментах.

Стоимость GPT-4o-mini API: цены и оплата в России

ПровайдерOpenAI
Ввод20,25за 1М токенов
Вывод81за 1М токенов
Веб-поиск-за 1 запрос
Кэш чтение10,13за 1М токенов
Запись в кэш0за 1М токенов
Контекст500 000токенов
Макс.вывод10 000токенов
* 1 звезда ~ 1 рубль

Пример кода

import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic({
    apiKey: '{{API_KEY}}',
    baseURL: 'https://rugpt.io/api/anthropic/v1',
});

const message = await client.messages.create({
    model: 'gpt-4o-mini',
    max_tokens: 1024,
    messages: [{ role: 'user', content: 'Hello!' }],
});

console.log(message);

Документация по данной модели

GPT-4o mini API: документация по подключению

GPT-4o mini — компактная модель для генерации текста, чат-ботов, классификации, извлечения данных и автоматической обработки большого количества запросов.

Модель принимает текст и изображения, возвращает текстовые ответы и поддерживает потоковую генерацию, вызов функций и структурированный вывод. Контекст модели составляет до 128 000 токенов, максимальная длина ответа — до 16 384 токенов.

Что потребуется

Для подключения модели необходимо получить у выбранного API-провайдера:

  • API-ключ;
  • базовый адрес API;
  • точный идентификатор модели;
  • информацию о тарифах и лимитах.

Обычно GPT-4o mini используется с идентификатором:

gpt-4o-mini

Данные для запроса

Запрос отправляется методом POST:

{BASE_URL}/chat/completions

Необходимые заголовки:

Authorization: Bearer {API_KEY}
Content-Type: application/json

Замените:

  • {BASE_URL} — на адрес API вашего провайдера;
  • {API_KEY} — на полученный API-ключ.

Пример запроса

curl "{BASE_URL}/chat/completions" \
  -H "Authorization: Bearer {API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o-mini",
    "messages": [
      {
        "role": "system",
        "content": "Ты полезный ассистент. Отвечай кратко и понятно."
      },
      {
        "role": "user",
        "content": "Объясни простыми словами, что такое API."
      }
    ],
    "temperature": 0.3,
    "max_completion_tokens": 500
  }'

Пример ответа

{
  "id": "chatcmpl-example",
  "object": "chat.completion",
  "model": "gpt-4o-mini",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "API — это способ, с помощью которого разные программы обмениваются данными."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 35,
    "completion_tokens": 22,
    "total_tokens": 57
  }
}

Готовый текст ответа находится в поле:

choices[0].message.content

Подключение на Python

import os
import requests

url = f"{os.environ['BASE_URL']}/chat/completions"

response = requests.post(
    url,
    headers={
        "Authorization": f"Bearer {os.environ['API_KEY']}",
        "Content-Type": "application/json"
    },
    json={
        "model": "gpt-4o-mini",
        "messages": [
            {
                "role": "system",
                "content": "Ты полезный ассистент."
            },
            {
                "role": "user",
                "content": "Придумай три названия для интернет-магазина."
            }
        ],
        "temperature": 0.7,
        "max_completion_tokens": 500
    },
    timeout=60
)

response.raise_for_status()
data = response.json()

print(data["choices"][0]["message"]["content"])

Основные параметры

ПараметрОписание
modelИдентификатор модели
messagesСообщения и история диалога
temperatureВариативность ответа от 0 до 2
max_completion_tokensМаксимальная длина ответа
streamВключение потоковой генерации
response_formatФормат ответа, например JSON
toolsФункции, доступные модели

Для точных и предсказуемых ответов обычно используют temperature от 0 до 0.3. Для идей и творческой генерации — от 0.7 и выше.

Роли сообщений

В массиве messages используются три основные роли:

  • system — задаёт правила поведения модели;
  • user — содержит запрос пользователя;
  • assistant — передаёт предыдущие ответы модели.

Чтобы продолжить диалог, необходимо отправлять предыдущие сообщения вместе с новым запросом.

Потоковая генерация

Для получения ответа по частям добавьте:

{
  "stream": true
}

Потоковый режим удобен для чат-ботов: пользователь начинает видеть ответ до завершения всей генерации.

Возможные ошибки

КодПричина
400Ошибка в параметрах или JSON
401Неверный или отсутствующий API-ключ
403Нет доступа к модели
404Неправильный адрес API или ID модели
429Превышены лимиты запросов
500–503Временная ошибка сервера

Рекомендации по безопасности

  • храните API-ключ в переменных окружения;
  • отправляйте запросы с backend-сервера;
  • не размещайте ключ в браузерном JavaScript;
  • не публикуйте ключ в открытых репозиториях;
  • устанавливайте тайм-аут запросов;
  • обрабатывайте ошибки и превышение лимитов;
  • контролируйте расход токенов через поле usage;
  • ограничивайте длину ответа параметром max_completion_tokens.

Частые вопросы и ответы