Локальные модели в OpenCode — как подключить Ollama и LM Studio и работать без интернета
Содержание
OpenCode может работать не только с облачными моделями, но и с локальными — запущенными на вашем компьютере. Для этого подходят Ollama, LM Studio или llama.cpp. Они поднимают у вас локальный сервер, а OpenCode подключается к нему как к обычному провайдеру. Плюсы: бесплатно и ничего не уходит в облако. Минусы: нужен мощный компьютер, а качество обычно ниже сильных облачных моделей.
Когда локальная модель имеет смысл
- Код или данные нельзя отправлять в облако: клиентские проекты, закрытые документы.
- Нужно работать без интернета.
- Хочется экспериментировать без лимитов и счетов.
- У вас мощный компьютер, особенно с хорошей видеокартой.
Если компьютер слабый, а приватность не критична, быстрее и качественнее будет облачная модель — даже бесплатная из OpenCode.
Вариант 1. Ollama
Ollama — самый простой способ запускать модели локально. По документации OpenCode она умеет сама настроиться для работы с OpenCode — подробности в её разделе интеграций.
Если настраиваете вручную, в файл opencode.json добавляется провайдер с адресом локального сервера Ollama:
{
"provider": {
"ollama": {
"npm": "@ai-sdk/openai-compatible",
"name": "Ollama (local)",
"options": { "baseURL": "http://localhost:11434/v1" },
"models": { "имя-модели": { "name": "Моя локальная модель" } }
}
}
}
Вместо имя-модели укажите модель, которую вы скачали в Ollama.
Важно: если агент «не умеет» пользоваться инструментами — не читает файлы, не запускает команды, — увеличьте размер контекста (num_ctx) в Ollama. OpenCode советует начать с 16–32 тысяч. На маленьком контексте агенту просто не хватает места на инструкции.
Вариант 2. LM Studio
LM Studio — программа с окнами, где удобно скачивать и запускать модели. Включите в ней локальный сервер, а в opencode.json укажите адрес http://127.0.0.1:1234/v1 и тот же пакет @ai-sdk/openai-compatible, что для Ollama.
Вариант 3. llama.cpp
Для тех, кто хочет максимум контроля. Сервер llama.cpp подключается так же, с адресом http://127.0.0.1:8080/v1. Для модели можно явно указать лимиты контекста и ответа.
Как выбрать модель
- Берите модели, которые специально учили на коде, — в названии часто есть «coder».
- Смотрите на память. Модель должна помещаться в память видеокарты или в оперативную память с запасом. Иначе всё будет очень медленно.
- Начните с небольшой модели и проверьте, справляется ли она с вашими задачами. Нет — берите больше, если позволяет железо.
Чего ждать по качеству
Честно: локальные модели, которые помещаются в обычный компьютер, заметно слабее лучших облачных. Для простых задач их хватает: мелкие правки, объяснение кода, шаблоны. Сложную логику, большие проекты и хитрые ошибки облачные модели решают надёжнее.
Хорошая схема: локальная модель для приватной рутины, облачная — для сложного. В OpenCode переключаться между ними — одна команда /models.
С чего начать
Если OpenCode у вас ещё не стоит, начните со статьи «OpenCode: что это и как пользоваться бесплатно». А если не можете выбрать инструмент вообще, есть схема выбора ИИ для программирования.
Больше практики
Какие локальные модели я пробовал, что с ними получилось и где они реально полезны, рассказываю в Telegram-канале. Там же анонсы курсов по вайбкодингу.
Частые вопросы
Можно ли использовать OpenCode с локальными моделями?
Да: через Ollama, LM Studio или llama.cpp. Они запускают модель на вашем компьютере, а OpenCode подключается к ней как к обычному провайдеру.
Как подключить Ollama к OpenCode?
Ollama умеет настроиться для OpenCode автоматически. Вручную — добавьте в opencode.json провайдера с адресом http://localhost:11434/v1 и пакетом @ai-sdk/openai-compatible.
Почему локальная модель в OpenCode не читает файлы?
Чаще всего не хватает контекста. Увеличьте num_ctx в Ollama — OpenCode советует начинать с 16–32 тысяч.
Локальные модели бесплатные?
Да, вы платите только за электричество и железо. Но нужен мощный компьютер, а качество обычно ниже сильных облачных моделей.
Что лучше: локальная или облачная модель?
Облачные сильнее и быстрее, локальные — приватнее и без лимитов. Удобная схема: локальная для рутины с закрытыми данными, облачная для сложных задач.