Дёшево как DeepSeek, умно как Sonnet? Проверяю Step 3.5 Flash на боте для своего канала
$0.10 за миллион input-токенов и $0.30 за output — самая агрессивная цена на рынке среди моделей с поддержкой tool use. Взял реальную задачу: Telegram-бот на C# под Ubuntu, который пинает меня когда меняется счётчик подписчиков канала. Подключил через Cline. Делюсь логом, кодом и фейлами.
Зачем вообще это всё
У меня свой канал в Telegram. Хочу видеть, когда приходят и уходят подписчики — не чтобы тревожиться, а чтобы понимать, какие посты дают приток, а какие — отток. Telegram такой статистики ботом не отдаёт, а лезть в TGStat ради цифры раз в день мне лень.
Задача звучит так: бот раз в N минут опрашивает счётчик подписчиков, и если он изменился — присылает мне в личку сообщение 📊 Подписчики: 1247 (+3). Всё. На C#, потому что я на нём пишу, и на Ubuntu, потому что у меня там сервер.
Писать самому — час работы. Но мне было интересно другое: справится ли с этим самая дешёвая нейросеть на рынке под управлением агента, который сам пишет код и запускает команды. Если справится — это меняет экономику любого pet-проекта.
Почему Step 3.5 Flash
Если коротко — это китайская модель от StepFun, выпущенная в начале 2026 года. Под капотом MoE-архитектура: всего 196B параметров, но активны на каждый токен только 11B. Из-за этого она работает быстро и стоит копейки, но по бенчмаркам тащит на уровне моделей предыдущего поколения от больших игроков. На SWE-bench Verified — 74.4%, на LiveCodeBench — 86.4%, контекст 256К токенов.
Модель Input ($/1M) Output ($/1M)
Step 3.5 Flash $0.10 $0.30
DeepSeek V4 Flash ~$0.14~$0.28
Claude Sonnet 4.6 $3.00 $15.00
GPT-5 mini~$0.25~$1.00
То есть Step 3.5 Flash примерно в 30–60 раз дешевле Sonnet по эффективной цене. Если она при этом пишет приемлемый код — это меняет всё для любителей вроде меня, которые гоняют ИИ-ассистента в личных проектах за свой счёт.
Стек теста
- Агент: Cline (VS Code), режим Plan/Act
- Модель: Step 3.5 Flash, подключена как OpenAI-совместимый endpoint через OpenRouter
- Язык: C# (.NET 8)
- БД: SQLite (одна табличка)
- Целевая ОС: Ubuntu (деплой будет в следующей статье)
Подготовка к сессии
Перед тем как запустить Cline, я:
- Создал бота через @BotFather, получил токен
- Добавил бота админом в свой канал — без этого getChatMemberCount падает с ошибкой доступа
- Узнал свой Telegram user ID через @userinfobot
- Сделал скрин дашборда StepFun «нулевой расход» — буду сравнивать
- Подключил Step 3.5 Flash в Cline: API Provider: OpenAI Compatible, Base URL провайдера, Model ID step-3.5-flash
Промпт писал заранее, с чёткими критериями готовности и явным списком «чего не делать». Я знаю, как ведут себя слабые модели на C# без ограничений — оверинжинирят на ровном месте. Поэтому в промпт пошло: «не делай EF Core, не делай Docker, не пиши тесты, не тащи Serilog/AutoMapper/MediatR, плоская структура файлов».
Сессия. Что было хорошо
Модель сразу выдала разумный план в Plan Mode: создать Worker Service, поставить пакеты, описать конфиг, разнести логику по сервисам, добавить README. План был внятный и без воды — никаких «давайте обсудим архитектуру». Запросила переключение в Act Mode и пошла писать.
Скорость работы — приятная. Step 3.5 Flash выдаёт 100–250 токенов в секунду, и в Cline это ощущается как «модель не тупит». Файлы создавались бодро.
Через минут пять dotnet build прошёл без warning'ов. Бот собрался, конфиг читается, валидация на placeholder в токене работает. По формальным критериям готовности задача выполнена.
Сессия. Где модель села в лужу
А теперь интересное. Я полез смотреть код руками — и нашёл три проблемы, которые модель не заметила, хотя они влияют на работу бота.
Фейл 1. Оверинжиниринг вопреки запрету
В промпте: плоская структура, никаких лишних слоёв. Модель всё равно развела папку с интерфейсами и реализациями — в проекте, где никаких моков не предвидится. На C# модели среднего уровня тащат корпоративный код по умолчанию: видят язык — лезет энтерпрайз. Чтобы получить лаконично, надо буквально показать целевую структуру файлов.
Фейл 2. Реальный баг в инициализации БД
Модель «оптимизировала» создание таблицы: если файл базы существует — пропустить. Логика ошибочная, файл может быть пустым (прерванный запуск, бэкап). На свежей машине работает, в проде упадёт при первом сохранении. Классическая ошибка ускорения: вместо безвредного запроса — хрупкая проверка.
Фейл 3. Установленный пакет не используется
Указал в промпте библиотеку Telegram.Bot. Cline её поставил — а в коде написал всё с нуля через голый HttpClient. «Расщеплённость внимания»: в плане библиотека была, в реализации модель про неё забыла. Работает, но теряется обработка ретраев и лимитов, которую за тебя сделали мейнтейнеры.
Что получилось в итоге
На выходе — рабочий Telegram-бот на C# (.NET 8): консольный сервис, который раз в N минут дёргает счётчик подписчиков канала, сравнивает с предыдущим значением в SQLite и шлёт мне в личку сообщение 📊 Подписчики: 1247 (+3) при изменении. Конфиг в appsettings.json — токен, ID канала, ID владельца, интервал.
Структура — пять файлов: воркер с таймером, сервис работы с БД, сервис работы с Telegram, точка входа и README. Собирается без warning'ов, после правок устойчив к сетевым ошибкам — не падает, ждёт и пробует снова.
Код работает. Три бага, которые я разобрал выше, поправил руками за пять минут — это быстрее, чем писать всё с нуля. Дальше — деплой на Ubuntu через systemd, об этом в следующей статье.
Сколько это стоило
Полная сессия — создание проекта с нуля, README, потом несколько раундов правок (добавить устойчивость к падениям, обсудить деплой). По дашборду StepFun смешная сумма:
- Итого: $0.056
Для сравнения, та же сессия на Claude Sonnet 4.6 при тех же объёмах стоила бы в 30–50 раз больше — примерно $5–20.
Вердикт
Кому подойдёт Step 3.5 Flash в Cline:
- Pet-проекты, где важнее цена, чем идеальный код
- Прототипирование, где код всё равно будут переписывать
- Задачи на популярных стеках с типовой логикой
- Любители, для которых $20/мес за подписку Claude — много
Кому не стоит:
- Прод, где код пойдёт в долгую поддержку без рефакторинга
- Сложные архитектурные задачи, где нужно держать контекст всего проекта
- Языки и фреймворки за пределами мейнстрима (думаю, на Rust/Zig будет хуже)
Главное наблюдение для меня: дешёвая модель пишет код, который выглядит правильно, но содержит мелкие подковыристые баги. Тот же баг с if (fi.Exists) return; я бы пропустил, если бы не полез в код руками. С Claude Sonnet такие штуки тоже бывают, но реже. То есть экономия в 30 раз есть, но она частично оплачивается твоим временем на ревью. Для pet-проекта это норм, для прода — вопрос.
Больше про LLM и AI — в нашем Telegram-канале (@devgeek_sh). Разбираем новые модели, делимся опытом и полезными находками.