Решение проблем с OpenCode
Введение
Эта статья о решении проблем, с которыми можно встретиться при работе с OpenCode
Глобальные регионы
Error: Upstream request failed: This Go model requires Global regions. Select Global in your workspace's Privacy settings to use it.
Эта ошибка приходит из OpenCode, а не из чего-либо в репозитории. В моём
случае она появилась, когда я оформил подписку OpenCode Go и выбрал
opencode-go/deepseek-v4.1-flash.
Это DeepSeek через вашу подписку OpenCode Go, и репозиторий его не задаёт:
роли и opencode.jsonc используют только id вида opencode/...
Выбор сохраняется в ~/.local/state/opencode/model.json. Ваше рабочее
пространство OpenCode настроено на более узкий регион, чем Global, а эта
модель Go обслуживается только при настройке Global.
Исправить можно любым из двух способов:
- - Оставить модель Go: на opencode.ai откройте Privacy settings рабочего пространства и выберите Global, как говорит ошибка. Тогда запросы могут обрабатываться вне вашего текущего региона, поэтому проверьте, что для этого репозитория это приемлемо.
- - Оставить свой регион: выберите другую модель в TUI через /models:
- - opencode/deepseek-v4.1-flash-free, бесплатная модель, которую репозиторий уже использует
- - openrouter/deepseek/deepseek-v4.1-flash, которую вы тоже использовали раньше
Я решил продолжить с моделью Go.
Вот как это сделать, по разделу «Enable restricted models» в документации OpenCode Go:
1. Перейдите на
https://opencode.ai/console
и войдите под аккаунтом, у которого есть подписка Go.
2. Если у вас несколько рабочих пространств, выберите то, к которому относится ваш ключ API.
3. Откройте Settings → Privacy.
4. В разделе Regions смените регион по умолчанию Europe & United States на Global и сохраните.
Изменить это может только владелец или администратор рабочего пространства.
Если страница Privacy для вас доступна только для чтения, попросите
владельца рабочего пространства изменить настройку.
Затем вернитесь в OpenCode и отправьте сообщение снова. В документации не
сказано, нужен ли перезапуск CLI, я сделал его на всякий случай.
/restart
Если ошибка повторяется, выйдите из OpenCode и запустите его заново через container/tools/ai/opencode.sh.
Есть ещё одна вещь, которую стоит знать. В документации сказано, что DeepSeek V4.1 Flash не хранит ваши запросы по соглашению, которое «продлевается ежемесячно». Текущее, которое я получил, было «valid through October 31, 2026», то есть до следующего дня. Проверьте ту страницу снова после этой даты, если оставляете DeepSeek через Go.
Автор статьи: Клавдия Кондакова