Язык программирования Rust стоит ИИ-агенту на 14% больше токенов, но его код проще проверять
Rust-разработчик Никита ответил на Хабре на популярный тезис о выигрыше простого Go в эпоху нейросетей и перечислил возможности Rust, полезные даже при коде, написанном нейросетью.
Когда код пишет ИИ-агент (программа, которая сама вносит правки в проект по вашему заданию), язык выбирают под удобство проверки, а не под удобство набора. В эксперименте, на который ссылается автор, Rust потребовал от агента на 11% и 14% больше токенов, чем Go.
Поводом стала другая статья на Хабре: в ней намеренную простоту Go подали как решение, которое неожиданно пригодилось при работе с нейросетями. Никита возражает: Rust, язык программирования с непростым стартом, окупается тем, что его код удобнее читать и спокойнее менять. Сейчас код за автора пишет агент, а он читает изменения, просит переделать решения и возвращается к этому коду.
На Rust агент потратил на 14% больше токенов, чем на Go
Автор приводит эксперимент MiniGit: агент писал упрощённый Git (систему учёта версий кода) на разных языках, а потом добавлял новые команды. У модели Opus 4.6 на Rust ушло примерно на 14% больше выходных токенов (кусочков текста, за которые платят при работе с нейросетью), чем на Go. В повторе с GPT-5.4 разница составила 11%, с Python разрыв был заметнее.
Сам автор оговаривает, что это одна небольшая задача. Чтобы снизить расходы, он предлагает присмотреться к китайским моделям: по его данным, GLM-5.3 на отдельных тестах для кода близка к Opus 5. Миллион выходных токенов у GLM-5.3 стоит $4,4, у Opus 5 стоит $25.
Спор о простоте автор разбирает через доклад Роба Пайка, одного из авторов Go, Simplicity is Complicated («Простота сложна») 2015 года. Пайк называет простотой искусство прятать сложность и приводит в пример сборщик мусора (механизм, который сам убирает ненужные данные из памяти). Никита соглашается с такой простотой, но считает, что отсутствие нужной возможности задачу не отменяет.
Показательно, что претензии звучат и внутри сообщества Go. В опросе команды Go за 2025 год 28% ответивших назвали отсутствие нужной возможности из другого языка одним из главных раздражителей. В открытых ответах обсуждали обработку ошибок, перечисления с данными, защиту от пустых значений nil и многословность кода.
В посте об обработке ошибок команда Go показывает функцию, где из десяти строк реальную работу делают четыре. Синтаксис команда сохранила: к ошибке удобно добавлять контекст, на отдельную строку с проверкой ставить точку останова, а повторы дописывает редактор кода, в том числе с помощью большой языковой модели.
Что автору нравится в Rust, где компилятор (программа, которая переводит код в рабочую программу и заранее ловит ошибки) многое проверяет сам:
- переменные по умолчанию нельзя менять, изменяемость пишут явно через
mut; - перечисления вариантов с данными и
match, который требует разобрать все варианты: без общей ветки компилятор покажет, где обработать новый; - обычная ссылка не может быть пустой, для значения, которого может не быть, есть
Option<T>; Resultи?соединяют операции с ошибками без одинаковых проверок после каждого вызова;- итераторы от
map,filter,reduceдоmap_whileиtry_rfold, которые компилятор часто сводит к обычному циклу; - правила безопасного Rust исключают обращение к уже освобождённой памяти, двойное освобождение и гонки данных (когда две части программы одновременно меняют одни данные).
Что понадобится, чтобы писать на Rust вместе с ИИ?
- ИИ-агент для кода: в эксперименте фигурируют Opus 4.6 и GPT-5.4, по цене выгоднее GLM-5.3.
- Установленный Rust со штатным инструментом сборки cargo.
- Время на основы владения и заимствования, без них агент будет латать ошибки наугад.
- Готовность читать каждое изменение агента на ревью (проверке кода перед принятием).
Пять шагов, после которых код агента на Rust легко проверять
- Разберитесь, чего требует borrow checker, проверка заимствований (часть компилятора, которая следит, кто и когда пользуется одними данными). Автор признаёт, что работать стало понятнее, только когда он понял логику этих требований.
- Отдавайте агенту ошибки в JSON, машиночитаемом формате, с местами ошибок и подсказками:
cargo check --message-format=json
- Задайте стиль в промпте:
Пиши на Rust. Для ошибок используй Result и оператор ?, для отсутствующих значений Option. В match перечисляй все варианты явно, без общей ветки. Не добавляй .clone(), чтобы обойти ошибку заимствования: объясни причину ошибки.
- На ревью ищите лишние
.clone()и общие ветки вmatch, они прячут проблемы. - Сравните модели по цене выходных токенов и считайте попытки на своём проекте.
Ввод: в начале пути автор скармливал ChatGPT ошибки компилятора. Результат: в коде появлялись клоны, потом ещё клоны, и всё как-то работало, но почему, он не всегда понимал. Сам Никита называет себя вайбкодером (тем, кто пишет код нейросетью, не вникая в устройство) ещё до появления термина.
- Чинить ошибки заимствования копированием данных: программа соберётся, но вы не поймёте почему.
- Путать простоту языка с бедностью его средств, как формулирует автор.
- Переносить цифры MiniGit на любой проект: это одна небольшая задача.
- Выбирать модель только по цене токена: сколько понадобится попыток, заранее неизвестно.
Что делать с этим прямо сейчас, по ролям
Автору Дзена, который пишет о технологиях: спор Go и Rust хорошо ложится в формат «опыт против моды». Если учитесь программировать с нейросетью, берите правило автора: сначала понять ошибку, потом просить исправление.
Маркетологу: разница от 11 до 14% в токенах заметна на больших объёмах, а цена миллиона токенов отличается в разы, от $4,4 до $25. Закладывайте выбор модели в бюджет до старта проекта.
Предпринимателю в РФ и СНГ, который заказывает разработку: спросите подрядчика, кто читает код агента и на каком языке его потом сопровождать. Если зарубежные модели недоступны, из российских аналогов есть YandexGPT и GigaChat, но на Rust их автор не проверял.
Мне близок главный довод: агент пишет, а читать всё равно человеку, и пятнадцать строк проверок в функции из тридцати раздражают на каждом ревью. Честная оговорка: порог входа в Rust высокий, и нетехнарю без программиста проще начать с готовых инструментов. Но если вы уже отвечаете за код, выбирайте язык, который удобно проверять, а не тот, на котором агенту дешевле печатать.
Нейросети в работе автора
Подберите ИИ-инструменты для текстов и контента с практическими инструкциями от dzen.guru.
Перейти к инструментам
Основатель dzen.guru. Эксперт по монетизации и продвижению на Дзен. Автор курса «Старт на Дзен 2026».
Читайте также
Нейросеть для дизайна сайта: маркетолог переделала 22 страницы за день без бюджета
Маркетолог небольшой российской ИТ-компании переделала 22 страницы сайта с нейросетью за один рабочий день чистого времени, без дизайнера и бюджета, закрыв…

Владелец Akai и Moog откроет код инструментов: вот что такое вайб-кодинг для музыканта
Компания inMusic, владелец Akai, Moog и Native Instruments, откроет код своих инструментов и даст любителям набор для доработок, хотя пять недель назад такой…

The Verge: большие технологии проиграли на выборах 2026 года, Конгресс возьмётся за ИИ
Американские избиратели во вторник на выборах 2026 года массово проголосовали за демократов и против ИИ, а значит, крупным технокомпаниям предстоит борьба с…
Комментарии