TGStat
TGStat
Введите текст для поиска
Расширенный поиск каналов
  • Язык сайта
    flag Russian flag English flag Uzbek
  • Вход на сайт
  • Каталог
    Каталог каналов и чатов Региональные подборки Тематические подборки Платные каналы Поиск каналов
    Добавить канал/чат
  • Рейтинги
    Рейтинг каналов Рейтинг чатов Рейтинг публикаций
    Рейтинги брендов и персон
  • Аналитика
  • Поиск по публикациям
  • Мониторинг Telegram
  • Продвижение
    Реклама через Яндекс Бизнес Реклама в каналах через TGStat Agency Реклама на сайте TGStat.ru
AiHub ✨ Приручаем ИИ | Вайб-кодинг | Ai-first development

24 Apr, 13:35

Открыть в Telegram Поделиться Пожаловаться

Мелкая, но супер полезная строчка в конфиге OpenCode

Вайбкодил некоторого агента, в качестве ядра был выбран OpenCode cli в режиме serve. Главная задача была - добиться максимально быстрой генерации документов.

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

По умолчанию, что Claude Code cli, что OpenCode, могут в процессе выполнения запроса запускать сабагентов, даже если вы не добавляли их в систему специально. Они сами решают, когда задачу стоит разбить на этапы и часть этапов отдать в работу сабагентам. Когда это надо было делать на 200к токенах контекстного окна Claude, я бы еще понял, зачем сабагент для сбора информации по проекту - собрать весь контекст и предоставить основному агенту концентрированную выжимку данных по проекту без лишнего шума, и без мусора в контексте. Зачем мне делает это Opencode на 1миллионе контекста GPT модели - не понятно.
(если что, обсуждаем именно агентную работу с четко прописанными инструкциями в правилах агента с конкретными этапами и действиями, когда у вас есть некоторый пейплайн по обработке контента, где каждый шаг должен строго выполняться)

Начал разбираться, как с этим бороться и что заметил:
1. Например, задача агента - собрать информацию по интернету, сгенерировать документ и сохранить.
2. Агент запускает поиск информации, но не сам, а часто это делает сабагентом, чтобы весь информационный шум не собирать. Как это выглядит: основной агент пишет промпт сабагенту, какую информацию надо собрать и что с ней делать, затем сабагент после сбора информации возвращает основному агенту в его контекст уже подготовленную информацию.
3. Но, даже на умнейших моделях, сабагенты иногда ведут себя не так, как задумано, потому что они опираются не на наши промпты, а на тот, что написал ему основной агент. Например сабагент может начать пытаться генерировать документ который его не просили, и этот же документ всё равно будет генерировать потом основной агент. Да и в целом, важные тонкие детали из правил агента при передаче информации от агента к сабагенту и обратно часто либо теряются, либо снижается "сила" некоторых инструкций, что может оказаться критичным для автономных систем с долгими многоэтапными пейплайнами. Не забываем еще что передача информации между агентами тоже тратит время и токены.

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

В общем, выполняется совершенно неэффективная и бесполезная работа, на умных моделях с 200+к моделях контекста это надо срочно выключать. Я давний противник сабагентов в их общепринятом понимании (в некоторых задачах они оправданы, но мало кто их правда использует по назначению). А теперь моё мнение еще сильнее укрепилось. Берем модель в ежовые руковицы и не даем ей никакого ни морального, ни физического права больше рождать себе подобных без нашего разрешения.

1. Идем в глобальный конфиг OpenCode (обычно лежит по адресу ~/.config/opencode/opencode.json
2. Добавляем запрет на инструмент "task": "deny" в блоке разрешений, например так:
"permission": {
"task": "deny"
},
3. Радумемся качественной работе агента.

453 4 13 9 7
Каталог
Каталог каналов и чатов Подборки каналов Поиск каналов Добавить канал/чат
Рейтинги
Рейтинг каналов Telegram Рейтинг чатов Telegram Рейтинг публикаций Рейтинги брендов и персон
API
API статистики API поиска публикаций API Callback
Наши каналы
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Почитать
Академия TGStat Исследование Telegram 2019 Исследование Telegram 2021 Исследование Telegram 2023
Контакты
Справочный центр Поддержка Почта Вакансии
Всякая всячина
Пользовательское соглашение Политика конфиденциальности Публичная оферта
Наши боты
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot