OpenCode + Ollama: попробовал локального AI-агента для разработки

OpenCode + Ollama: попробовал локального AI-агента для разработки

Недавно я решил попробовать связку OpenCode + Ollama и посмотреть, насколько реально сегодня использовать локальную нейросеть не просто как чат, а как AI-агента для разработки.

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

Чтобы эксперимент не был совсем скучным, я попросил агента сделать лендинг для продажи огурчиков.

Да, именно огурчиков.

С одной стороны, задача шуточная. С другой — технически это вполне нормальная проверка: нужно создать структуру проекта, написать HTML, CSS, JavaScript, сделать страницу адаптивной и получить результат, который можно открыть в браузере.

Сразу спойлер: результат получился, мягко говоря, спорный. Формально это был лендинг. Но назвать его коммерческим результатом, который можно брать и использовать в реальном проекте, я бы точно не стал.

Что я хотел проверить

Мне было интересно не просто “может ли нейросеть написать код”. Это уже давно не новость.

Хотелось проверить другое: может ли локальная LLM работать через агентский инструмент и помогать прямо внутри проекта.

Обычный чат работает примерно так:

“Напиши мне код для лендинга”.

В ответ вы получаете кусок HTML, CSS или JavaScript, а дальше сами создаёте файлы, вставляете код, проверяете, исправляете ошибки и приводите всё в порядок.

С агентом процесс немного другой.

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

В теории звучит хорошо. Вопрос только в том, насколько это применимо на практике.

Что такое OpenCode

OpenCode — это AI-инструмент для разработки, который работает в терминале и позволяет использовать модель как помощника внутри проекта.

То есть это не просто отдельная вкладка с чатом, куда вы копируете куски кода. Агент может видеть файлы проекта и вносить изменения.

Если упрощать, OpenCode отвечает за “агентскую” часть:

  • работает в контексте проекта;
  • принимает задачу;
  • может создавать и менять файлы;
  • помогает выполнять итерации;
  • позволяет использовать разные модели и провайдеры.

В этом смысле такие инструменты уже ближе не к “нейросеть написала мне пример кода”, а к формату “нейросеть помогает мне работать с проектом”.

Хотя важно сразу сказать: это всё ещё помощник, а не полноценная замена разработчику.

Зачем здесь Ollama

Ollama нужна для запуска модели локально.

То есть модель работает не в облаке, а на вашем компьютере или сервере. Это удобно, если хочется поэкспериментировать с open-source моделями, не отправлять код во внешний сервис и попробовать полностью локальный сценарий разработки.

В такой связке роли примерно такие:

Ollama запускает локальную модель OpenCode работает с проектом Модель генерирует код и ответы Агент применяет изменения к файлам

В результате получается локальный AI-агент для разработки.

Звучит заманчиво: без облака, без внешнего API, без оплаты за каждый запрос. Но, конечно, есть нюансы.

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

На чём я проверял

Эксперимент я запускал на видеокарте RTX 4070 Ti Super с 16 ГБ видеопамяти.

Проверял две локальные модели через Ollama:

  • Gemma 4 26B — модель примерно на 26 миллиардов параметров;
  • Gemma 4 4B — модель примерно на 4 миллиарда параметров.

Основной интерес был именно в том, насколько отличается работа большой и маленькой модели в такой агентской задаче.

И разница по времени получилась очень заметная.

Gemma 4 26B на моей 4070 Ti Super с 16 ГБ работала примерно 36 минут над простой задачей генерации лендинга.

Gemma 4 4B справилась примерно за 1,5–2 минуты.

То есть маленькая модель отработала намного быстрее. Но вопрос, конечно, не только во времени, а ещё и в качестве результата.

Эксперимент: лендинг для огурчиков

Для теста я дал агенту задачу создать простой лендинг.

Смысл был такой:

Создай простой лендинг на HTML, CSS и JavaScript для продажи фермерских огурчиков. На странице должны быть: - первый экран с оффером; - блок преимуществ; - карточки товаров; - форма заявки; - FAQ; - адаптивная верстка. Сделай проект без сборщиков: - index.html - style.css - script.js

Задача намеренно простая.

Я не хотел проверять агента на сложной архитектуре, авторизации, очередях, API-интеграциях или бизнес-логике. Для начала было интересно посмотреть, как он справится с базовой фронтенд-задачей.

И вот здесь агентский подход действительно ощущается.

Он не просто выдаёт код в сообщении. Он создаёт файлы, раскладывает структуру и пытается собрать страницу как небольшой проект.

Что получилось на практике

Формально результат получился.

Результат работы Gemma4 26b
Результат работы Gemma4 26b

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

Но если оценивать честно, результат был не совсем юзабельный.

Это выглядело скорее как черновик, который показывает: “да, модель поняла, что нужно сделать лендинг”. Но сказать, что это готовая страница, которую можно использовать для коммерческого проекта, — нет.

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

И это важный вывод.

Локальный AI-агент действительно может что-то собрать. Но между “что-то собралось” и “получился нормальный коммерческий результат” — большая разница.

Результаты работы выложил в своем телеграм канале t.me/codeworkshop_ru

Сравнение моделей по ощущениям

После эксперимента у меня осталось примерно такое впечатление.

Gemma 4 26B работает заметно дольше. На моей видеокарте простая задача заняла около 36 минут. Это уже слишком долго для такого уровня результата.

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

Gemma 4 4B отработала быстро — примерно за 1,5–2 минуты. Это уже похоже на нормальный интерактивный режим.

Но маленькая модель ожидаемо слабее по качеству. Для простых черновиков и экспериментов — окей. Для результата, который хочется использовать без серьёзной ручной доработки, — нет.

В итоге получилось странное соотношение:

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

Где это может быть полезно

Несмотря на спорный результат, я не считаю эксперимент бесполезным.

Такие связки могут быть полезны для небольших и понятных задач:

  • быстро накидать HTML-страницу;
  • собрать черновой интерфейс;
  • сделать первый прототип;
  • сгенерировать структуру проекта;
  • попробовать идею;
  • поправить простые стили;
  • добавить небольшой JavaScript;
  • разобрать чужой код;
  • получить стартовый вариант решения.

То есть это не история про “нажал кнопку и получил готовый продукт”. Скорее это история про быстрые черновики, эксперименты и локальное прототипирование.

Где начинаются ограничения

Ограничения становятся заметны довольно быстро.

Во-первых, локальная модель не всегда хорошо держит контекст. Если проект большой, файлов много, а задача не очень простая, агент может начать терять детали.

Во-вторых, качество сильно зависит от модели. Одна модель лучше пишет код, другая лучше объясняет ошибки, третья вроде бы хорошо начинает, но потом делает странные архитектурные решения.

В-третьих, локальный запуск требует ресурсов. Большие модели могут работать медленно даже на неплохой видеокарте.

В моём случае 4070 Ti Super с 16 ГБ — это не офисный ноутбук, а вполне нормальная видеокарта. Но даже на ней модель на 26 миллиардов параметров работала над простой задачей около 36 минут.

И главное — агент может ошибаться.

Он может изменить не тот файл, написать лишний код, неправильно понять задачу или сделать “почти рабочее” решение, в котором потом придётся разбираться вручную.

Поэтому использовать такие инструменты лучше через Git и обязательно смотреть diff.

Это замена разработчику?

Нет.

И этот эксперимент как раз хорошо показывает почему.

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

Но это ещё не значит, что получился хороший продукт.

Для коммерческой разработки важны не только файлы и код. Важны:

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

Нейросеть может помочь написать часть кода. Но она не отвечает за итоговую систему.

Ответственность всё равно остаётся на человеке.

Что понравилось в связке OpenCode + Ollama

Больше всего понравилось ощущение локального эксперимента.

Ты запускаешь модель у себя, открываешь проект и пробуешь работать без облачных сервисов. Это интересно само по себе.

Плюс такой подход хорошо показывает, куда движутся инструменты разработки.

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

OpenCode + Ollama — один из вариантов такого подхода, только с акцентом на локальный запуск.

Что не понравилось

Не понравилось соотношение времени и результата.

Когда модель на 26 миллиардов параметров работает 36 минут над простым лендингом, а результат всё равно приходится воспринимать как черновик, начинаешь трезвее смотреть на идею локальных AI-агентов.

Да, это интересно.Да, это можно использовать для экспериментов.Да, оно действительно может писать код.

Но пока это не выглядит как инструмент, который просто берёшь и применяешь для получения готового коммерческого результата.

Скорее это помощник для черновиков, прототипов и изучения возможностей локальных моделей.

Вывод

Связка OpenCode + Ollama — интересный вариант для локальной AI-разработки.

OpenCode даёт агентский подход: работа с файлами, проектом и задачами.Ollama позволяет запускать модель локально, без облачного API.Вместе они дают возможность попробовать сценарий, где нейросеть не просто отвечает в чате, а действительно помогает писать код внутри проекта.

Но мой эксперимент с Gemma 4 26B и Gemma 4 4B показал, что пока к этому стоит относиться спокойно.

Модель на 26 миллиардов параметров работала около 36 минут на RTX 4070 Ti Super с 16 ГБ видеопамяти. Модель на 4 миллиарда параметров справилась примерно за 1,5–2 минуты.

Результат в обоих случаях был скорее демонстрационным, чем коммерческим. Формально лендинг получился. Практически — использовать его как готовую страницу я бы не стал.

Но как эксперимент — полезно.

Он хорошо показывает текущее состояние локальных AI-агентов: они уже могут помогать, но всё ещё требуют контроля, доработки и нормального разработчика рядом.На примере лендинга для огурчиков это выглядит немного смешно, но вывод вполне серьёзный: локальные AI-инструменты становятся интереснее, но до “сделай мне готовый продукт без участия человека” им пока далеко.
Telegram: https://t.me/codeworkshop_ru
Смотреть видео: