openai, curl 8.x, ключ OPENAI_API_KEY, доступ к аккаунту, где включена нужная модель
openai (официальный SDK): pip install --upgrade openaicurl версии 8.x — для «голых» запросов без SDKOPENAI_API_KEY (не в файле репозитория) - [ ] python3 --version выдаёт 3.11 или новее
- [ ] pip show openai показывает установленную версию
- [ ] printenv OPENAI_API_KEY не пустой
- [ ] вы знаете, где в кабинете включается доступ к нужной модели
| Модель | Отличие | Цена |
|---|---|---|
| GPT-6.1 Terra | Анонс OpenAI; центральный сценарий — OSWorld 2.1, десктопные приложения и многошаговые задачи (например, собрать 3D-модель по техническому чертежу). В описании упомянут режим medium reasoning | В анонсе цифр нет — сверьтесь с документацией |
| GPT-6.1 Sol | В наших постах — руководства по API, по автоматизации и по оплате/доступу; публичных бенчмарков и цифр по скорости в постах нет | Тарифы разбираются в отдельном материале — сверьтесь с документацией |
Практический вывод для новичка: Terra выбирают, когда задача — «сделай что-то в приложении за несколько шагов», Sol — когда задача — «дай текстовый ответ через API, который я встрою в скрипт». Сравнивать их «по уму» бессмысленно: опубликованных общих замеров нет, поэтому дальше вы строите собственный замер на двух метриках — время ответа и расход токенов.
Что сделать: создать рабочую папку, виртуальное окружение и три переменные: ключ, id Terra, id Sol.
mkdir -p ~/terrsol && cd ~/terrsol
python3 -m venv .venv && source .venv/bin/activate
pip install --upgrade openai
export OPENAI_API_KEY="<ваш-ключ>"
export TERRA_MODEL="<id-terra-из-документации>"
export SOL_MODEL="<id-sol-из-документации>"
Зачем: id моделей в постах не приводятся, а угадывание строки — главная причина ошибки 404 на первом же запросе. Переменные окружения позволяют менять модель без правки кода.
Как проверить: получить список доступных моделей и отфильтровать нужные.
curl -s https://api.openai.com/v1/models \
-H "Authorization: Bearer $OPENAI_API_KEY" | grep -o '"id": *"[^"]*6\.1[^"]*"'
На экране появятся строки вида "id": "..." — скопируйте точные значения в TERRA_MODEL и SOL_MODEL. Пустой вывод означает, что доступ к моделям не выдан аккаунту: это вопрос тарифа, а не кода.
Пример: после export TERRA_MODEL="..." команда echo "$TERRA_MODEL" печатает ровно ту строку, которую вы вставили.

Что сделать: отправить обеим моделям одну и ту же задачу по коду и записать время ответа и токены. Это ваш собственный замер вместо отсутствующих публичных цифр.
import os, time
from openai import OpenAI
client = OpenAI(api_key=os.environ["OPENAI_API_KEY"])
TASK = "Отрефактори функцию и объясни правку: def f(a): return a/0"
for name, model in (("terra", os.environ["TERRA_MODEL"]),
("sol", os.environ["SOL_MODEL"])):
t0 = time.perf_counter()
r = client.chat.completions.create(
model=model,
messages=[{"role": "user", "content": TASK}],
temperature=0.2,
)
dt = time.perf_counter() - t0
u = r.usage
print(f"{name}\t{model}\t{dt:.2f}s\tin={u.prompt_tokens}\tout={u.completion_tokens}")
Зачем: одна и та же задача снимает разницу «по-честному». temperature=0.2 уменьшает разброс между прогонами, usage даёт расход токенов для расчёта стоимости по вашему тарифу.
Как проверить: запустите python bench.py (файл создайте в ~/terrsol). Ожидаемый вывод — две строки, по одной на модель:
terra <id-terra> <секунды> in=<N> out=<N>
sol <id-sol> <секунды> in=<N> out=<N>
Числа у вас будут свои — важны соотношения. Если строка terra не появилась, а вместо неё выброшено исключение, переходите в раздел «Возможные проблемы».
Пример: прогоните скрипт три раза и возьмите медиану по каждой модели — одиночный замер сильно шумит из-за сети.

Что сделать: для Terra прогнать проверку «многошаговой задачи» — именно на таких сценариях построен анонс (OSWorld 2.1). Локальный запуск самого бенчмарка в постах не описан, поэтому используйте прокси-тест: 5-шаговая инструкция в одном запросе и чек-лист выполнения.
curl -s -o out.json -w "%{http_code}\n" https://api.openai.com/v1/chat/completions \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d "{\"model\":\"$TERRA_MODEL\",\"messages\":[{\"role\":\"user\",\"content\":\"1) Открой план; 2) Назови 3 узла; 3) Собери порядок сборки; 4) Укажи риски; 5) Дай итог списком\"}]}"
Зачем: анонс Terra про работу с интерфейсами и многошаговые задачи, а не про чат. Если модель «теряет» шаги инструкции, в агентном сценарии вы получите дорогую ошибку — чем сложнее сценарий, тем она дороже.
Как проверить: код ответа 200 в последней строке и в out.json — ответ, где присутствуют все 5 пунктов. Сверьте по чек-листу:
200Для режима medium reasoning сверьтесь с документацией: имя параметра, который его включает, в постах не приводится.
Проблема. Первый же запрос падает на Terra, хотя Sol работает
Error code: 404 - {'error': {'message': 'The model ... does not exist or you do not have access to it', 'type': 'invalid_request_error', 'param': 'model', 'code': 'model_not_found'}}curl -s https://api.openai.com/v1/models -H "Authorization: Bearer $OPENAI_API_KEY" | grep -o '"id": *"[^"]*"', подставьте точный id в TERRA_MODEL и перезапустите python bench.py.Проблема. Любой запрос отклоняется на авторизации
openai.AuthenticationError: Error code: 401 - {'error': {'message': 'Incorrect API key provided', 'type': 'invalid_request_error', 'code': 'invalid_api_key'}}printenv OPENAI_API_KEY | wc -c — длина без перевода строки должна соответствовать ключу; затем заново выполните export OPENAI_API_KEY="<ваш-ключ>" в том же терминале, где запускаете скрипт. Ключ не храните в git.Проблема. Скрипт работает, но падает на втором прогоне
openai.RateLimitError: Error code: 429 - {'error': {'message': 'Rate limit reached for requests', 'type': 'requests', 'code': 'rate_limit_exceeded'}}sleep 2; при повторной ошибке увеличьте интервал и сверьте лимиты с документацией.Вы зафиксировали id моделей через /v1/models, сняли собственный замер по времени и токенам и отдельно проверили многошаговый сценарий для Terra. Дальше оберните скрипт из Шага 2 в функцию с ретраями и логируйте в CSV модель, время и prompt_tokens/completion_tokens на каждый вызов.
Чем GPT-6.1 Terra отличается от GPT-6.1 Sol?
По постам: Terra анонсирована как модель под агентные многошаговые задачи в десктопных приложениях (OSWorld 2.1, режим medium reasoning), а по Sol публиковались руководства по API, автоматизации и оплате — общих бенчмарков для обеих в постах нет.
Можно ли узнать цену Terra и Sol из этой инструкции?
Нет: в постах цены не приводятся. Стоимость считайте по вашему тарифу из prompt_tokens и completion_tokens, которые печатает скрипт, а актуальные ставки сверяйте с документацией.
Почему запрос возвращает 404, если ключ правильный?
Потому что ключ и доступ к модели — разные вещи: проверьте точный id через /v1/models и наличие доступа к модели в аккаунте.
Обязательно ли запускать OSWorld 2.1, чтобы проверить Terra?
Нет: локальный прогон бенчмарка в постах не описан. Достаточно прокси-теста с многошаговой инструкцией и чек-листом из Шага 3.
Статус: практическое руководство. Часть утверждений — заявления вендоров и проектов; проверяйте на своей среде.
Сравниваем возможности, скорость, цены и сценарии использования GPT-6.1 Terra и GPT-6.1 Sol, чтобы выбрать модель под чат, программирование и интеграцию через API. Время выполнения: 40–50 минут Уровень сложности: Intermediate (нужен Python и работа в терминале)
Машинные данные публикации: Citation Map JSON · JSON-LD · Semantic Embeddings — отдельный этап.
| Сущность | Тип | Роль в публикации |
|---|---|---|
| GPT-6.1 Terra | продукт/модель | упоминается в заголовке, TL;DR или разделах гайда |
| GPT-6.1 Sol | продукт/модель | упоминается в заголовке, TL;DR или разделах гайда |
| GPT-6.1 Terra или Sol | продукт/модель | упоминается в заголовке, TL;DR или разделах гайда |
| сравнение GPT-6.1 | продукт/модель | упоминается в заголовке, TL;DR или разделах гайда |
| Windows | платформа/технология | упоминается в заголовке, TL;DR или разделах гайда |
| Linux | платформа/технология | упоминается в заголовке, TL;DR или разделах гайда |
| macOS | платформа/технология | упоминается в заголовке, TL;DR или разделах гайда |
| Python | платформа/технология | упоминается в заголовке, TL;DR или разделах гайда |
| OpenAI | компания | упоминается в заголовке, TL;DR или разделах гайда |
| GPT-6.1 | продукт/модель | упоминается в заголовке, TL;DR или разделах гайда |
В материале нет отдельного независимого подтверждения; ниже разделены заявления источников и редакционные выводы.
| Источник | Тип | Роль |
|---|---|---|
| api.openai.com | внешний источник | ссылка из тела гайда |
| api.openai.com | внешний источник | ссылка из тела гайда |
Как цитировать: AI Release. GPT-6.1 Terra или GPT-6.1 Sol: что выбрать для работы, кода и API. ai-release.org.