Как подключить Grok 4.7 к приложению и сохранить историю рассуждений

Точный идентификатор Grok 4.7, минимальный запрос Responses и сохранение зашифрованных рассуждений между ходами диалога.

Линейный рисунок шестерёнки на светлой карточке с надписью Grok 4.7 API.

Для вызова Grok 4.7 из приложения используйте grok-4.7 в API xAI. Главное изменение интеграции касается не только имени модели: Responses возвращает элементы с зашифрованными рассуждениями, которые нужно сохранять без изменений при повторной отправке истории диалога.

Руководство основано на официальной документации, проверенной 22 сентября 2026 года. Примеры показывают построение запросов; это не отчёт о платном тестировании в рабочей среде и не измерение производительности.

Начните с минимального запроса Responses

Создайте ключ разработчика по официальной инструкции, проверьте необходимый баланс учётной записи и задайте XAI_API_KEY в локальном окружении. Не помещайте ключ в браузерный код или конфигурацию, попадающую в репозиторий.

curl https://api.x.ai/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $XAI_API_KEY" \
  -d '{
    "model": "grok-4.7",
    "input": "Explain why Python list.sort() returns None."
  }'

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

Успешный HTTP-ответ — лишь одна проверка. Убедитесь, что ответ содержит ожидаемый текст и сведения о расходе, затем проверьте сам ответ. Корректный формат ответа API не гарантирует правильность рассуждений.

Python: сохраняйте элементы ответа целиком

Установите версию OpenAI SDK с поддержкой Responses и запишите её в журнал тестирования. Например, python -m pip show openai показывает установленную версию пакета.

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["XAI_API_KEY"],
    base_url="https://api.x.ai/v1",
)

history = [{
    "role": "user",
    "content": "Explain why Python list.sort() returns None.",
}]
first = client.responses.create(model="grok-4.7", input=history)
print(first.output_text)

# Preserve all items, including encrypted reasoning.
history.extend(item.model_dump(exclude_none=True) for item in first.output)
history.append({
    "role": "user",
    "content": "Show a version that sorts without mutating the input.",
})
second = client.responses.create(model="grok-4.7", input=history)
print(second.output_text)

Не сводите first.output к видимому ответу, когда сохраняете историю для следующего хода. По документации провайдера Grok 4.7 автоматически включает reasoning.encrypted_content, даже без явного параметра include. Передавайте элементы рассуждений без изменений; не пытайтесь декодировать или переписывать зашифрованное поле.

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

Chat Completions использует отдельную схему

Поведение зашифрованных данных в Responses не означает, что его выходные объекты нужно вставлять в массив messages Chat Completions. Используйте схему вызываемого API. Если приложение уже работает через Chat Completions, сначала проверьте этот вариант с новой моделью, затем решите, нужен ли переход на другой протокол.

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

Настраивайте рассуждения и кэш осознанно

Модель предлагает режимы рассуждений low, medium, high и xhigh; по умолчанию используется high. Записывайте выбранный режим при оценке. Более высокий уровень не гарантирует меньшую стоимость выполненной задачи.

Для кэширования официальное руководство рекомендует prompt_cache_key в Responses или заголовок x-grok-conv-id в Chat Completions, чтобы улучшить маршрутизацию диалога. При этом измеряйте фактическое использование кэша: сама настройка маршрутизации не доказывает применение тарифа на кэшированный вход.

Проверяйте тот уровень, на котором возник сбой

СимптомЧто проверить в первую очередь
Ошибка аутентификацииАктивного провайдера, источник ключа и HTTP-ошибку без секретных данных
Модель отклоненаТочный идентификатор grok-4.7 и список моделей провайдера
Первый ход работает, следующий — нетСохранённые элементы ответа и схему API
Неожиданно растёт стоимость агентаВсю последовательность запросов, рассуждения, повторы и использование кэша
Редактор предлагает Fast, но вызов API не проходитРазличие продуктов: Fast не является вариантом публичного API

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

Перед долгими задачами прочитайте о стоимости Grok 4.7. Если предпочитаете готовый клиент собственной интеграции, руководство по доступу объясняет различия между Cursor, Grok Build и учётной записью API.

Часто задаваемые вопросы

Какой идентификатор модели использовать для API Grok 4.7?
Для публичного API xAI используйте grok-4.7. У шлюзов идентификаторы могут отличаться.
Нужно ли удалять зашифрованные рассуждения между вызовами Responses?
Нет. Провайдер предписывает передавать элементы рассуждений без изменений во входных данных следующих запросов.