Skip to content
Get App

Урок по Субагентам

Урок о субагентах в AI-агентах: параллельные и последовательные цепочки, экономия контекста главного агента и пример генерации лендинга через Codex с помощью скилла и JSON-контракта.

Key Takeaways

  • Субагенты эффективны для параллельных задач и экономии контекста главного агента
  • Главный агент должен координировать, а не выполнять всю работу сам
  • Структурированный JSON-контракт обеспечивает точную передачу данных между агентами
  • Скиллы позволяют переносимо описывать пайплайны субагентов

What the video covers

  • Субагенты позволяют запускать задачи параллельно или последовательно и агрегировать результаты
  • Главная польза субагентов — экономия контекстного окна главного агента
  • Главный агент должен выступать координатором: ставить задачи, проверять и собирать результат
  • Субагенты-ревьюеры также могут делегироваться
  • Пример: создание лендинга для продажи кепки через Codex с помощью скилла
  • Скилл — MD-файл с инструкциями и промптами для субагентов
  • Два субагента: один генерирует изображения, другой пишет секции сайта
  • Для надёжной коммуникации между агентами используется JSON-контракт вместо передачи текстом
  • Контракт фиксирует секции, их содержимое и расположение ассетов
  • Сохранение артефактов повышает прозрачность пайплайна

Answers

Questions about this video

Зачем использовать субагентов вместо одного большого агента?

Субагенты позволяют экономить контекстное окно главного агента, так как объёмные промежуточные данные (например, HTML-источники) обрабатываются отдельно, а главный агент получает только готовый результат. Это также даёт возможность параллельной работы.

Почему в пайплайне используется JSON, а не передача текстом?

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

Что такое скилл в описанном подходе?

Скилл — это MD-файл с инструкциями для агента, который может содержать инструменты, промпты для субагентов и шаблоны, например landing contract.

Full Transcript — Download SRT & Markdown

00:00
Speaker A
Здравствуйте. Сегодня обсуждаем тему агентов, субагентов и разных применений вот этого интересного решения, которое у нас есть внутри различных харнесов.
00:12
Speaker A
Давайте я сразу начну, запущу презентацию. У нас с вами будет сегодня и некоторая теоретическая часть, и я покажу несколько примеров, как я использую субагентов, и поделюсь с вами тем, что уже успел тут придумать и нагенерировать.
00:29
Speaker A
Так. Окей, погнали. Смотрите, по результатам занятия мы с вами должны начать понимать, из чего вообще состоит работа с субагентами, какие здесь важно учитывать принципы и нюансы, как это всё собирать и, главное, как сделать это переносимым, чтобы это работало
00:55
Speaker A
у вас практически в любом, ну, даже не практически, в любом агенте. Бывает достаточно несколько форматов работы с субагентами.
01:06
Speaker A
Самый, наверное, понятный — это когда мы запускаем какого-то субагента или несколько для того, чтобы они работали параллельно. У нас есть несколько задач, которые можно решить не последовательно, а одновременно. И это как раз прекрасная возможность и та самая опция,
01:24
Speaker A
когда нам нужно запустить несколько субагентов, чтобы они пошли. Например, один делает ресерч по такой теме, другой делает ресерч по такой теме.
01:30
Speaker A
Потом мы это всё агрегируем и получаем большой объёмный результат. Самый простой пример. Помимо этого, конечно, мы можем запускать их последовательно, если у нас есть некоторая зависимость от результатов. Один агент сделал, другой агент взял результаты этого ресерча и по
01:45
Speaker A
результатам сделал, например. Есть варианты, когда мы запускаем более сложные, обширные цепочки: сначала запускаем в параллельную работу несколько агентов, потом они продолжают работать, дают задачи другим агентам.
01:59
Speaker A
Получается, что мы объединяем и параллельную работу, и последовательную. И потом это всё опять же смыкается с нашим главным агентом.
02:08
Speaker A
Важно понимать, что когда мы работаем с субагентами, один из главных смыслов использования субагентов изначально был в том, что мы можем таким образом экономить контекстное окно главного агента. Потому что если задача объёмная и мы хотим и выполнить ресерч по теме, и посмотреть по разным источникам какую-то информацию, и потом написать определённое количество кода, потом всё это ещё проверить, возможно, потянуть какие-то инструменты, то если мы будем всё запускать в
02:26
Speaker A
рамках одного агента, то у него контекстное окно ограничено, до миллиона токенов. У китайских моделей и у Codex, ну, там тоже вроде как есть миллион, но в основном по 270 000 токенов.
02:43
Speaker A
Поэтому, если мы хотим выполнять большие объёмные задачи, даже в рамках единой сессии, имеет смысл запускать субагентов. Это может быть просто инструмент экономии вашего контекстного окна. Главный агент не пойдёт смотреть кучу источников, не будет заполнять свой
02:55
Speaker A
контекст огромным количеством HTML-файлов с кучей всякой метадаты, которая абсолютно никак не применима. Он просто всё это делегирует субагенту, и тот вернёт ему уже результат.
03:11
Speaker A
Когда же мы начинаем строить системы из субагентов, этот принцип остаётся и сохраняется.
03:24
Speaker A
Если мы хотим делать качественные системы, то нужно, чтобы главный агент был действительно координатором. То есть мы должны минимизировать количество задач, которые он будет выполнять самостоятельно, и предложить ему работу уже с точки зрения проверки, с точки зрения координации, постановки
03:32
Speaker A
задач. Ну, возможно, сборки финального результата. Хотя субагентов-ревьюеров тоже можно делать и тоже всё это делегировать. И главный агент будет просто именно менеджерить такой воркфлоу, который состоит из большого количества элементов по постановке задач. Ну, это сейчас мы с
03:52
Speaker A
вами посмотрим на примерах. Давайте, собственно, к примерам и перейдём. Смотрите, я покажу сейчас несколько своих примеров. Мы их с вами обсудим. Я покажу основные принципы. Потом, возможно, наши Сергеи тоже подключатся и порассказывают свои примеры. Такой опыт
04:14
Speaker A
у нас есть. Поэтому у нас получится насыщенный урок опытом разных людей, разработчиков и агентных разработчиков. Так, смотрите. Что я хотел вам показать. Я тут накануне собрал интересный скилл, который позволяет мне создавать сайты при помощи субагентов
04:31
Speaker A
внутри Codex с генерацией картинок. Я хочу создать сайт, который будет являться своего рода презентационным сайтом некоего продукта. Например, кепки EBNP, которую мы с Игорьяном когда-то сделали. Так пока никак это и не развили. Хочу сделать лендинг,
04:53
Speaker A
который будет продавать эту кепку. Всё достаточно просто. Для того чтобы в целом сделать хоть сколько-то интересный, небанальный и нешаблонный сайт, нам нужно большое количество референсов и изначального планирования того, как всё это будет выглядеть. Я здесь заранее
05:15
Speaker A
зашёл на Pinterest и нашёл вот такие примеры лейаутов, секций, которые я хочу использовать сегодня. Например, мне нравится вот такая картиночка, такой пример лейаута веб-сайта. Давайте его скопируем и тоже закинем сюда. Дальше я буду это
05:34
Speaker A
всё промптить и скажу ему: "Давай сделаем лендинг для продажи моей кепки. Бренд называется EBNP. И возьми пример лейаута со второй картинки и используй скилл".
05:55
Speaker A
Скилл мы сейчас ему укажем. Скилл у меня называется landing version 4 UXP EBNP. В принципе, у него должно получиться. Сейчас мы с вами это всё попробуем, запустим, посмотрим на результат. Теперь расскажу про скилл, что он из
06:17
Speaker A
себя представляет. Мне нужно попасть вот сюда, вот сюда. Смотрите, по сути, когда я начинаю делать какие-то агентные пайплайны и процессы, я использую скиллы, потому что скилл может в себе содержать большое количество
06:41
Speaker A
инструментов, которые наши агенты и субагенты тоже могут использовать. Собственно, сам скилл — это MD-файл, который инструктирует агента выполнять определённые задачи. Сюда же я кладу промпты для субагентов. Вот здесь у меня лежат промпты. То есть у меня будет запускаться два субагента. Один субагент
07:10
Speaker A
будет генерировать мне необходимые картинки. Другой субагент будет, собственно, писать сами секции. То есть в этом пайплайне я разделил написание секций по отдельным субагентам. К каждому субагенту будет привязана определённая секция моего будущего сайта.
07:27
Speaker A
Здесь же в разделе templates есть вот такой файлик landing contract. Когда мы начинаем работать с агентами, субагентами, нам важно, чтобы у них была очень чёткая коммуникация друг с другом.
07:45
Speaker A
Если они будут передавать друг другу информацию просто в тексте, то это может привести к тому, что контекстное окно у главного агента закончится, и в целом они могут эту информацию достаточно сильно коверкать.
07:59
Speaker A
Поэтому нам важно создать систему, которая будет максимально точно и детерминированно организовывать эту коммуникацию между агентами. Проще всего это сделать через JSON, JavaScript Object Notation.
08:12
Speaker A
Но я думаю, к этому этапу почти все, наверное, знакомы с тем, что такое JSON. Это просто удобный формат записи информации, и он машиночитаемый, то есть агентам очень легко с ним работать. Здесь у нас есть определённые ключи и определённая
08:31
Speaker A
информация, которая этим ключам принадлежит. Получается, что когда я запускаю этот пайплайн, давайте посмотрим, что он тут творит. А, он задаёт вопрос. Какая цена кепки? Что уже известно о размере, материале, доставке?
08:48
Speaker A
Давайте, 10 000 рублей будет стоить наша кепка. Так, и ещё один вопрос на канал.
09:02
Speaker A
Вот когда мой агент начинает работу, в его окружении, где я его запустил, создаётся вот такой контракт. Здесь он прописывает секции, которые мы с ним определили, и их наполнение, и прописывает ассеты, которые мы с ним сгенерировали.
09:24
Speaker A
Соответственно, потом, когда он будет передавать задачи субагентам для генерации секций, у него здесь будет вся необходимая информация. У него
09:45
Speaker A
Соответственно, потом, когда он будет передавать задачи субагентам для генерации секций, у него здесь есть вся необходимая информация. У него есть точное расположение всех асетов, сгенерированных, у него есть точное наполнение тех секций, которые тоже нужно сгенерировать. И важно, он сможет
10:04
Speaker A
точно передать только нужные элементы. То есть мой субагент не пойдёт смотреть в какую-нибудь папку или в Markфайл весь тот текст, который будет на сайте и который ему знать не нужно, потому что ему нужно знать только его единственный кусочек.
10:21
Speaker A
Поэтому очень важно создавать вот такие контракты. То есть при помощи такого контракта главный агент и будет распределять дальше все задачи.
10:31
Speaker A
Что ещё важно? Э, в Skill MD я всегда, когда работаю с агентами, субагентами, я прописываю прописываю такие два поля.
10:38
Speaker A
Ожидаемый input и ожидаемый output. Ожидаемый input - это то, соответственно, что я либо как пользователь, либо другой агент будет передавать на входную информацию этому агенту. Ожидаемый output, соответственно, что я от него хочу получить. Ну и дальше там порядок работы
10:55
Speaker A
для главного агента. Сейчас это прямо читать не будем. У субагентов это абсолютно такая же история. У него есть инпут, который он должен получить. Главный агент, вот давайте на асркера посмотрим. Главный агент передаёт задание ID секции, её абсолютный и абсолютный путь к её
11:10
Speaker A
фрагменту, да, ат к её фрагменту согласованного макета. Дальше ID асе перечень ID комплекта секции точно количество отдельных элементов фай файлов, которые нужно сгенерировать. стиль, композицию, пропорций, абсолютные пути ээ референсов, абсолютные рабочие директории, папок, в которых ему нужно работать и так далее, и так далее. То
11:34
Speaker A
есть я очень чётко фиксирую вот именно входную информацию, которую э должны получать субагенты, потому что в противном случае, как я уже сказал, они могут самостоятельно полезть куда-нибудь, посмотреть весь контракт, запутаться, чего нам не нужно. То есть весь контракт нам передавать и не нужно
11:51
Speaker A
совершенно. И точно также output я передаю в Jсо, точнее прошу агента передать в Jсорирует в каком-то конкретном файлики папки, в папке генерирует необходимые сеты и потом отчитывается о том, что он сгенерировал. Опять же, он не эправляет обратно главному агенту результаты своей
12:10
Speaker A
деятельности, он отправляет пути к этим результатам. И главный агент это уже смотрит, валидирует и дальше принимает решение. [откашливается] Вот давайте посмотрим, что получилось.
12:21
Speaker A
Значит, здесь по моему промкту я сначала генерирую именно макет будущего сайта. То есть это не сайт, это только макет. И э здесь, на этом этапе, я могу это утвердить, могу ээ что-то добавить, и пайплайн будет двигаться дальше. Значит, у нас здесь
12:46
Speaker A
достаточно сложная история, потому что вот здесь вот нужно будет сгенерировать этого человечка. который будет находиться на переднем плане, а буквы будут сзади.
12:56
Speaker A
И я не знаю, честно говоря, справится он с этим или нет, но сейчас мы проверим. В целом у меня всё устраивает, да? То есть пока что работает только главный агент.
13:03
Speaker A
У него в скеле прописано: "Сначала собери всю необходимую информацию, разберись со своим окружением, пойми, где ты работаешь, сгенерируй лендинг JSON contract и потом сгенерируй мне макет". Давайте, кстати, тоже откроем э- эту папку и посмотрим, насколько он справился вот с этим этапом работы.
13:23
Speaker A
Тын-тын-тын-тын-тын. Открыть source. Вот смотрите, он уже сгенерировал все необходимые артефакты, которые дальше помогут ему работать с субагентами. Вот он Ling Jon. Видите? Он всё прописал. Он прописал те сеты, которые уже нужны.
13:43
Speaker A
он прописал те секции и наполнение этих секций. То есть здесь уже есть просто всё, что нам нужно для того, чтобы сгенерировать дальнейший сайт, что прекрасно.
13:55
Speaker A
Он сгенерировал э структуру этой директории. Он сгенерировал папки, где куда будут субагенты складывать свои артефакты. То есть он является именно таким организатором и куратором всего этого действа. И я не прошу субагентов генерировать папки самостоятельно, потому что это тоже должно быть очень
14:16
Speaker A
чётко и детерминировано. Субагенты могут накосячить, напортачить и сгенерировать что-то там, где нам этого не хочется.
14:23
Speaker A
Поэтому это всё я программирую заранее. И вот вы можете тоже обратить внимание, вот он сюда и поместил между поместил изображения. И по идее здесь должно быть ещё где-то где-то, да, вот он тоже сохранил. То есть все артефакты я сохраняю на случай,
14:39
Speaker A
если, например, я там продолжу работу с этим пайплайном, с другим агентом в другой сессии, у меня уже есть вся структура которая будет доступна для того, чтобы продолжать работу.
14:52
Speaker A
О'кей, нам всё нравится. Давайте его запустим, скажем всё круто, приступай. И сейчас мы посмотрим с вами и на особенности того, как кодекс работает с субагентами. Что мне нравится, что не нравится, я прокомментирую и на результат тоже посмотрим.
15:11
Speaker A
Да, Дань, там вопрос по поводу, что такое артефакты, потому что в разных агентах оно по-разному называлось, в разных харднесах. Вот можешь тоже дополнить.
15:21
Speaker A
Да, артефактами я здесь называю все те промежуточные элементы, которые генерируют агенты по пути к финальному результату.
15:29
Speaker A
То есть это и картинки, и какие-то, ну вот, и вот этот вот макап макет, и отдельные картинки, которые он сгенерирует, и отдельные возможные документы, которые он напишет. То есть это абсолютно любая единица контента, текстовая, кодовая или визуальная, которая создаётся на пути к конечному
15:49
Speaker A
результату. Следующий вопрос от Павла. Скилл вручную писал или же через и сколько времени ушло на правке, как я понимаю, скила?
15:58
Speaker A
Ну, как вы могли заметить, это уже четвёртая версия скила. Вот я его ещё правлю, и он далеко не идеальный. У него есть большое количество ограничений, про которые я тоже расскажу.
16:10
Speaker A
Так, сейчас я тут в чатик тоже пытаюсь открыть. Ээ, тын-тын. Так, скил, а писал я скилл вручную. Ну вот я писал его, я его дорабатывал вручную. Тут тоже я, кстати, хочу создать агенты, которые будут мне писать грамотные скилы под
16:22
Speaker A
субагентов, потому что они очень неправильно это делают. Но тем не менее я его писал черезку, а потом просто редактировал руками то, что мне не нравилось. Почему для такой задачи Astra exстraй? Потому что Astra, чем у вас круче модель, тем лучше она
16:38
Speaker A
генерирует картинки. Как правило, мне нужно сгенерировать достаточно качественный макет. Если будет модели послабже то э, они сгенерируют картинки не такие прикольные. То есть со генерирует картинки хуже, чем мастер 100%. Вот поэтому для вот такого для этого этапа я использую Астр.
16:58
Speaker A
Я хотел чуть-чуть добавить, там не то чтобы хуже или лучше, они картинки генерируют одной моделью, но в зависимости от того, какая выбрана здесь модель, она сгенерирует описание того, что она хочет, и Astra генерирует более детально и подробно из это картинки
17:14
Speaker A
получается на выходе лучше. А так модель одна генерирует картинки. Да, всё верно. Он использует её тут. Он, причём, как скил, по-моему, использует этот imaginн или как tool в Да, да, да.
17:26
Speaker A
Вот. И да, просто астра пишет более качественные подробные промты. Смотрите, что происходит. Вот у меня начали запускаться субагенты.
17:36
Speaker A
Он что он тут сделал? Вот посмотрел ещё самостоятельно картинки. Вот что дальше? Что прикольно, он дальше вот этот макет начинает делить по секциям. То есть он это всё дело разделил на соответствующей секции, порезал, и это начинает отправлять моим субагентам. Значит, как
17:52
Speaker A
это выглядит? Вот у меня здесь в кодексе видно что субагентики начали работать. Что мне в кодексе катастрофически не нравится?
18:00
Speaker A
Может, кто-то знает, сейчас мне поправят, но ээ где промт от главного агента? Я этого не вижу. То есть я не вижу в субагентах, как главный агент отправляет промт. Я вижу только уже то, как начинает работать субагент.
18:13
Speaker A
Кто-нибудь в курсе? Ну, то есть это катастрофический бред, как по мне. Если кто-то разберётся, расскажите мне, где это смотреть. Но я этого нигде не видел, не нашёл, и это меня сильно бесит. Поэтому в целом мне не нравится кодекс вот из-за вот этой
18:27
Speaker A
глупости. Тем не менее, мы можем дальше с вами вот открыть такую панель, где мы видим то, что он сейчас параллельно запускает генерацию картинок для соответствующих секций. И вот в целом мы всё равно можем посмотреть, что здесь происходит.
18:41
Speaker A
Например, давайте Asset Hero. Вот он дал какой-то промт, и я не знаю какой, но тем не менее вижу, что он передал моему субагенту две картинки. Э картинку, видите, именно хиросекции и картинку кепки. И попросил всё это дело сгенерировать. Причём он просит, можно
19:00
Speaker A
генерировать картинки без фона, что тоже замечательно внутри GPT image. И видите, он начинает генерировать картинки. То есть он, очевидно, передал, что нужно генерировать только человека, кто же других асетов для heroxции здесь нет в этой кепке. Ну и в принципе всё. И он
19:15
Speaker A
дальше отправляет, видите, message to parent, отправляет сообщение главному агенту, возвращая результат. И также, а, вот смотрите, он записывает свой промт. Ещё у меня здесь такую штуку сделал, чтобы я видел те промты, которые они, э, используют. Ну, тоже потом,
19:34
Speaker A
чтобы маленечко это всё чуть более отслеживаемо было. Так, где это у меня интересно находится?
19:41
Speaker A
Assets Hero Prompt. Вот я могу посмотреть тот промт, который использовал субагент для того, чтобы сгенерировать картинку. И могу посмотреть саму картинку сгенерированную тоже. Он кладёт её в нужную конкретно папочку и передаёт пути моему главному агенту. Вот тут мы с вами видим и последу, и
20:02
Speaker A
параллельную работу, и последовательную работу. То есть вот asset Hero, э-э, Asset Editorial, Asset Details, asset ещё какой-то пакшот он запустил. Эти уже два закончили работать. Эти два работают. После того, как они завершат свою деятельность, они передадут всё это
20:16
Speaker A
чудо для того, чтобы создавать секции. Как-то так. Все ли артефакты должны сохраняться где-то или это временные файлы? Скажи, что тоже думаешь по этому поводу?
20:26
Speaker A
Смотрите. Я считаю, что все, потому что это увеличивает прозрачность. в работе и внутри пайплайна, внутри одной сессии и за рамками этой сессии.
20:40
Speaker A
Потому что опять же, если, например, будет компакctionн контекстного окна, у нас будет слишком большое количество общения и коммуникации с главным агентом, у него не хватит контекстного окна, он его закомпактирует и как бы и как бы всё, да? Тогда у нас весь
20:59
Speaker A
прогресс, он может удалиться из-за контекстного окна. Поэтому мы не полагаемся на контекстной окно. Мы всегда это сохраняем и для будущих сессий, и для вот такой вот неприятной неожиданности.
21:15
Speaker A
И в любой момент можем к этому вернуться. И опять же, это увеличивает прозрачность. Мы понимаем, что происходит, мы понимаем, как работает pipйpelйн и можем потом это всё анализировать.
21:27
Speaker A
Значит, что смотрите, вот я упомянул то, что в кодексе тут вот эта вот странная история с тем, что он не показывает промты главного агента. И это странно. Я когда ещё работал над этим скилом и над этим пайплайном, я
21:45
Speaker A
использовал тоже, разумеется, кодекс и говорил: "Ну-ка, проверь, насколько вот в этой сессии всё прошло так, как задумано, всё так, как мы как мы предполагали и какие инструкции писали в скиле. и находил разные ошибки. И он там смотрел логи и читал сессии. И тоже он
22:01
Speaker A
там не видел полной картин. Как раз-таки, по-моему, он не мог найти нигде системные инструкции, которые промты, которые продадутся субагентам.
22:09
Speaker A
Это не действительно для всех харнесов. То есть для в других харнесах, в Openкоде, например, вы отлично можете посмотреть на те инструкции, которые были переданы субагенты. Вот где-то здесь я сейчас, мне кажется, как раз новости собирал какие-то. Вот здесь у меня есть
22:24
Speaker A
пайплайн, тоже кучу раз его показывал. Я закидываю просто новость ссылку на новости, говорю: "Работаем над новостями". Он запускает двух субагентов. Один субагент скачивает ээ один субагент читает новость и делает её summary, а другой субагент скачивает все необходимые медиафайлы. И после этого
22:40
Speaker A
главный бент, он ничего не делает, на самом деле. Он просто как бы такой: "Ну всё, мы мы поработали, мы всё сделали". И вот здесь вот, если мы с вами попытаемся перейти так, сейчас вот они, да, вот смотрите, хоп, мы можем здесь увидеть тот промт,
22:59
Speaker A
который главный агент отправляет субагенту и гораздо более прозрачнее мы можем понимать, не отправляет ли каких-то лишних инструкций главный агент внутри нашего процесса. То есть это прямо хорошо. Поэтому в целом я OpenCд даже предпочёл бы кодексу, если вы будете что-то такое строить. Но вот в
23:20
Speaker A
моём примере мне нужно картинки генерировать. Я не уверен, насколько получится удобно ещё генерировать картинки, если я подключу там кодекс через Open Cod, поэтому я это оставил внутри кодекса. Ещё один архитектурный момент, который нужно понимать здесь. Я Давайте вернёмся к скилу.
23:43
Speaker A
Так, запутался. Так, hero modeles. Куда у меня всё подевалось-то? Вот здесь, смотрите, здесь я вам, как вам уже упоминал ранее, я промты субагентов сохраняю внутри скила. То есть кодекс может вызывать субагентов и может передавать им необходимые инструкции. Поэтому я здесь его в
24:05
Speaker A
основном скиле инструктирую. Вот здесь я прописываю, что возьми, где-то мне это написано, подготовь референс, отдельно сеты, спланируй страницу. В общем, где-то я ему прописываю, что возьми проompт из prompts и соответствующего файлика и отправту. То есть он таким образом
24:26
Speaker A
вызывает субагентов. Венко-коде том же вы можете создавать отдельно субагентов. То есть вы можете создать субагента под каждую задачу, у него уже будет записанпромт. И тогда, опять же, у главного агента не будет этого, ну, по сути, лишнего шага, когда он должен
24:41
Speaker A
взять определённые инструкции из файлика и перетащить его в контекстное окно другому агенту. То есть это тоже чуть-чуть более удобно для создания вот таких пайплайнов, но это работает в любом случае неплохо. В Гермесие тоже я использовал вот такой формат, когда я
24:57
Speaker A
внутри скила записывал промты для субагентов, и он использовал просто инструмент вызов субагента или там продолжить сессию с субагентом и использовал промт из его скила. Тоже в целом текущей модели не сильно от этого страдают, но контекстное окно, ну, чуточку, чуточку от этого как бы
25:15
Speaker A
сбивается. Так, э, что здесь у нас происходит? Смотрите, он уже начал генерировать секции. Вот мы тоже можем посмотреть на то, что здесь творится. Section Hero.
25:28
Speaker A
Как это выглядит? Давайте глянем. Поработал. Он ему отдал э референс секции и должен был отдать ему ещё картинку. Вот и отдал ему картинку, да, чтобы её использовать, соответственно, на переднем плане. Хира готов в коде. Ну и, собственно, работку
25:52
Speaker A
он всю сделал и тоже вернул это информацию в таком Jon формате с указанием того, что он сделал и как он это сделал.
26:04
Speaker A
Я думаю, нам осталось прямо чуть-чуть. Это у нас был макет страницы. Ну, посмотрим, что получится. Надеюсь, не катастрофы.
26:14
Speaker A
Ну, по хиру секции вроде всё неплохо. Он додумался, что нужно сгенерировать отдельный персонажа, сделать его с прозрачным фоном, поставить на передний план. В общем, глянем. То есть я в скиле инструктирую, что не запускаю мне астры на субагентов, ну, потому что мне такие
26:26
Speaker A
уже как бы интеллектуально ёмкие задачи, скажем так. И поэтому он мне запускает вот 61й.
26:33
Speaker A
А я буду защищать, извини быстренько, а я буду защищать кодекс и просто я помолюсь, чтобы в следующем обновлении они сделали вывод ээ этого прода для субагентов и чтобы все были довольны.
26:47
Speaker A
Пойду свечку поставлю. Я тоже думаю, что они допильят, но в целом опять же он предложил в Agence MD тебе добавить маленькие инструкции, чтобы перед запуском субагентов он сам прописывал инструкции и что он как их запускает.
27:03
Speaker A
Ну да. То есть на самом деле можно тоже вот как я здесь сохраняю промпты не здесь, а вот здесь вот как я сохраняю промпты, э которые генерируют картинки, да, вот как я здесь сохраняю. В принципе, тоже, наверное, там можно
27:16
Speaker A
сохранять и просто как бы у меня он будет внутри проекта. Думаю, тоже это можно так сделать. Так, основная графика готова. Секции собираются. Ну вот, осталось у нас две секции: Details и Buy секция. То есть мы с вами запустили, смотрите, 1 2 3 4 6 и
27:33
Speaker A
восемь субагентов суммарно у нас отработано такую задачку. То есть если бы сам я это всё чудо собирал, ну, ну сильно дольше. Ну, то есть не один промт, очевидно, прямо сложно. Это было бы долго. Я в целом так нашидосы
27:46
Speaker A
предыдущие собирал и вот немножечко устал. И решил такую штуку сделать. Давайте, пока он ещё допиливает, я вам расскажу.
27:54
Speaker A
А, ну ещё, да, что я оставляю за главным агентом - это генерация анимаций и переходов между секциями. А, то есть агенты, которые генерируют секции, они также генерируют анимации внутри секции, то есть появление текста, какое-то ещё движение, которое там предполагается.
28:13
Speaker A
Это всё, опять же, режиссура всего этого дела проходит от главного агента. Он он это записывает в этот endндиing Jon файлик, но это генерирует агенты, которые на каждую секцию выделены. Потом главный агент всё это дело собирает и допиливает переходы
28:32
Speaker A
между секциями. Здесь большое количество ещё доработок и возможности есть у этого процесса, если правильно его инструктировать, чтобы он использовал классные библиотеки, всякие GSпы и так далее, он будет делать гораздо более нетривиальные и неишные сайты. То есть сейчас мы с вами всё-таки скорее получим
28:52
Speaker A
такое что-то более или менее статичное, ну, не сильно мозговзрывательное с точки зрения вот переходов и анимаций.
29:00
Speaker A
Он не способен делать э истории, которые вот так называемый сролтел или срол триггер веб-сайты, когда от вашего скрола происходят динамичные изменения сцены. Ээ, как это ещё называется? Паралакс. Может, кто-то слышал тамкс movв это называется. То есть вот такие штуки этот скилл делать
29:23
Speaker A
не позволяет, потому что для этого нужно генерировать либо ээ отдельные, ну, такие 2,5D, так называемые ээ форматы страниц, когда у вас много разных асетов, э которые там друг на друга наплывают. То есть нужно генерировать много картинок для одной секции или
29:40
Speaker A
вообще нужно генерировать видео, которое вставляется как бэкграунд, как фоновое, и просто привязывается к скролу. И тогда происходит вот эта вот как бы динамика, наплывание и так далее. Такие скилы тоже есть. Они в целом, не знаю, вообще нужны ли там субагенты. Возможно, тоже можно
29:55
Speaker A
это быстро всё автоматизировать при помощи суббагентных пайплайнов. Но вот этот ээ скилл и вот этот workflow, он не позволяет такую штуку сделать. Что ещё он делает плохо? Он достаточно плохо делает, если нужно сделать, э, вот давайте на макет посмотрим. Если нужно
30:15
Speaker A
сделать, чтобы макет был не рваный и не заканчивался, ну, то есть не разделялся по секциям. А если мы хотим сделать так, чтобы, ну, кстати, это уже это уже сайт, по-моему, да? Если мы хотим сделать так, чтобы у нас была какая-то более плавная
30:29
Speaker A
изменяемость и одна секция перетекала в другую, то есть там нужно генерировать опять же картинки, которые будут либо наслаиваться друг на друга, либо одна из другой выходить. То есть я пытался при помощи этого скилайта тоже реализовать.
30:40
Speaker A
Э не очень. Вот он сгенерировал сайт. [фыркает] Давайте посмотрим. Ну, даже какая-то анимация, появление есть.
30:56
Speaker A
Просто носи схуди с пальто с чем захочешь. [смех] Ээ, ну, в целом прикольно, да? То есть это уже что-то он очень даже качественно, мне кажется, тут выполнил человечка нам.
31:14
Speaker A
Вот можно добавить всяких интересных анимаций, наплывов, разлётов и так далее. Но вот что мы с вами сделали, ну, буквально по одному промту купить кепку Ебнп.
31:25
Speaker A
Такие дела. Что он ещё делает? Ну, что-то там ещё проверяет. Я не первый раз пытаюсь реализовать вот такую вот историю. Я знал, что у нас получится, ну, что-то более или менее то, что можно показать.
31:39
Speaker A
Вот у меня был ещё другой пример. Давайте глянем. Тут я использовал другой макет, и он тоже вполне себе достойно вот нагенерировал такой сатец. Ну, я в конце вам ещё добавил наши чудные лица.
32:00
Speaker A
Короткое философское отступление, чтобы обратить ваше внимание на то, что весь этот скил и весь этот пайплайн я создавал внутри так называемого Agent Skills. Это open sourceный формат, который позволяет читать информацию не только кодексу из этой папочки, но и
32:15
Speaker A
вообще разным агентам. Я считаю, что это очень важный принцип, когда мы начинаем работать с иагентами - это делать всё переносимым, чтобы вы могли все свои наработки забрать в любого провайдера интеллекта и абсолютно в любой харнес.
32:29
Speaker A
Ну и, надеюсь, вы уже в целом впечатлились немножко теми результатами, которые можно достигать, и поняли, что большое количество интересных персонализаций можно создавать при помощи и агентов. Если вы захотите в эту тему дальше погрузиться, то я приглашаю вас на наш интенсив под названием и
32:46
Speaker A
агенты на практике. Он начнётся совсем скоро, уже 26 октября. И там мы как раз-таки будем учиться создавать эффективные масштабируемые переносимые и приватные и системы. Вот можете остановить, почитать, почему вообще мы считаем, что создавать собственную и экосистему - это лучше, чем пользоваться
33:05
Speaker A
разными готовыми решениями от тех же Open AI, друкботы, досы и вот это всё. Много здесь есть достаточно важных моментов, как мне кажется. Ну и коротко расскажу вам про программу, чтобы вы понимали, из чего она состоит и чего вы
33:19
Speaker A
сможете достичь. По итогу в первую неделю мы будем работать именно с выбором стека. Мы не будем предлагать вам работать исключительно в кодексе или в Openкоде. Выбирайте то, что вам нравится больше, потому что мы будем давать фундаментальные знания, как своих
33:34
Speaker A
и агентов настраивать, и что вообще для этого важно. Поговорим и про все известные намхарнесы типа клодкода, кодекса Openкода, Гермеса, Openкло, в том числе. В чём отличие обычных локальных и агентов от серверных? Всё это установим, первые команды в них
33:51
Speaker A
введём, попробуем, как это работает, и начнём выстраивать свою экосистему. И вот со второй недели как раз-таки будет много практических занятий, как это всё улучшить и как это всё персонализировать, какие скилы, инструменты выбрать, как настроить, браться ли за субагентов и разные вот
34:09
Speaker A
такие пайплайны, которые описываю вам здесь, или начать с чего-то более простого. Стоит ли размещать на сервере, если да, то как? и как это объединить с вашими локальными агентами, например, настроить общую память для них и создать такой буквально рой агентов. И уже с
34:24
Speaker A
третьей недели под ваши конкретной задаче мы будем этот и агентный стек применять. э при разработке продуктов, если вы разработчик, при дизайне, если вы работаете с маркетингом, при создании контента, аналитики на вашей деятельности, на вашем рабочем месте, разные личные автоматизации, интересные
34:45
Speaker A
решения. Покажу собственные, как создавать собственные дашборды. Ну и, конечно, как внедрять всё это в бизнес. То есть мы не просто создадим с вами и экосистему, а мы действительно начнём её использовать и экономить огромное количество времени и свою технологическую продуктивность
35:02
Speaker A
развивать. Ссылочку мы оставим на сайт, можете почитать подробнее, выбрать тариф. Сейчас, я думаю, пока вы этот ролик ещё смотрите, если вы были оперативны, то цены сейчас самые низкие, какие только возможны и будут. Ну и в итоге вы станете и продукт-менеджером.
35:18
Speaker A
Вот так сейчас это в своих кругах внутри компании называем, потому что в целом это уже не и разработка, это именно э менеджмент вашего флота и агентов, который понимает вас с одного слова, и вам не нужно их промтить каждый
35:37
Speaker A
раз, переписывать разные инструкции и путаться самим и путать своих и агентов. Ссылка будет под этим роликом. приходите на программу. Может ли главный агент изменить модель или усилие, если, э, он сам понимает, что для данной задачи надо бы усилить субагента?
35:59
Speaker A
Аэ, то есть вы имеете в виду, чтобы он, да, то, смотрите, в скиле я запрограммировал, чтобы он использовал конкретно GPT61 SH.
36:10
Speaker A
Это можно не инструктировать так чётко. Можно сказать ему: "Выбери субагента под задачу". Но это, в общем, я бы на это не очень полагался, потому что я не вижу смысла. Ну, то есть сол всегда нужно использовать сол для какой-то вот
36:26
Speaker A
такой томарной работы нужно использовать сол для чего-то более сложного Астру. Всё. Ну вот он может переключить на АстроУ ультра, если его в этом не ограничить.
36:41
Speaker A
Вопрос, может ли он переключить на Аструль, если он так решил? Он может в целом, если дать ему свободу действий, он может, наверное, это сделать, но как бы вам этого не нужно совершенно, поэтому лучше это ограничить. [фыркает] Если я правильно помню, то ультра - это
36:58
Speaker A
не предполагает там какой-то супер-пупер эфт высокий. Он, по-моему, запускает на обычном high или x, но распараллеливает на субагентах. То есть ультра, она просто говорит, что используй субагентов без, скажем, нашего личного упоминания об этом. А эф усилия там, по-моему, Xха
37:17
Speaker A
запускается. Да да возможно возможно. Поэтому вряд ли субагент сам по себе, ну, точнее ваш основной запустит субагента с Астро ультра, потому что ты получит такой уже субагент с субагентами.
37:31
Speaker A
Что ещё я хотел вам показать? Какой-то ещё у меня был пример здесь. Я думал по нему пробежаться.
37:41
Speaker A
А вот, например, тоже у меня был пример. Вот могу вам показать, что тоже сработало не очень хорошо. Э, тут такая у меня была идея. Работаем над созданием новой страницы на моём веб-сайте Дашборд аналитики. Возьми этот референс как референс лей-аута дашборда,
37:58
Speaker A
расположения страниц. Э, главный элемент и вот эта картинка как референс стиля. И вот он сгенерировал изначально вот такой вот макет, что в целом сносно.
38:12
Speaker A
Мозг он немножечко здесь как-то урезал и получилось криво. И потом он всё это делал, делал, передавал. И у нас в итоге получилось, давайте попросим запустить.
38:32
Speaker A
И получилось, ну вот можно прямо на этой картинке посмотреть, то есть получилось не достаточно далеко от макета, потому что, например, вот эти вот линии, которые он писал кодом, но просто границы этих коробочек, они очень-очень скучные. На макете они
38:49
Speaker A
выглядят чуть более интересно. Мозг он тоже сделал тут кривоватенький, поэтому есть определённые ограничения у такого подхода.
39:07
Speaker A
не хочет. Ну вот те сайты, которые пример, которые создание, которое вам показал в таком вот стиле, делаются достаточно неплохо.
39:20
Speaker A
Я у тебя хотел спросить один момент. Я помню, ты раньше на Openкоде много работал и писал свои вот эти вот с AGM MD для субагентов. И вот сейчас тоже ты это упомянул. Ты сейчас продолжаешь эту практику? И если да, то что обычно ты
39:37
Speaker A
вообще прописываешь в этих файликах? Какие инструкции? Я могу показать. Я я сейчас мало очень пользуюсь Openкодом всё-таки, но я вот там создавал один пайплайн.
39:51
Speaker A
Угу. А для кодекса ты таких штук не пробовал делать или вообще есть смысл? Ко? Сейчас скажу, в кодексе. В кодексе это можно делать, то есть можно прописывать тоже в конфигах и создавать отдельных субагентов.
40:07
Speaker A
Ээ я не делал, потому что в целом и, как я объяснил, неплохо работает, когда просто он из скила вытягивает эту штуку.
40:15
Speaker A
Здесь, да, вот смотрите, и в кодексе, и в Опенкоде можно создавать отдельных субагентов. Вот у меня здесь есть несколько субагентов. И вот я здесь создавал пайплайн по субагентам, которые мне пишут. Нет, не помнне этот медиа вот такого или section action. В общем,
40:36
Speaker A
было мне, да, мне кажется, вот этот, наверное, субагент. Э, значит, в чём здесь преимущество, когда вы создаёте отдельные файлики под субагентов. Они, во-первых, у вас всегда видны вашему главному агенту. И вы если у вас часто эта задача повторяется,
40:54
Speaker A
вы всегда може главный агент всегда может к нему обратиться, ему не нужно откуда-то тягать этот промт, вот как у меня есть скила. И более того, здесь опять же вы прописываете сначала какое-то количество информации, инструкции, что ему нужно делать, как с этим, как с этой задачей
41:11
Speaker A
работать. Но, наверное, более интересное, что вы здесь можете сделать, вы можете здесь добавить большое количество разных ограничений, пермишенов и других настроек, которые будут влиять на поведение агента. Вот в OpenКОде это очень обширная история. То есть здесь вы можете, во-первых, ограничить те тулы,
41:32
Speaker A
которые он может использовать, те инструменты можете выдать конкретно те инструменты, которые вы ему разрешаете использовать.
41:39
Speaker A
Вы можете здесь, не знаю, есть у меня это где-то или нет. Наверное, а вот steps, да, шаги. То есть вы можете здесь запрограммировать, какое количество агентных шагов он будет использовать. Насколько я помню, шаги - это именно когда он вызвал какой-то инструмент и
41:58
Speaker A
получил ответ. То есть это тем самым вы можете настраивать либо глубину поиска, либо глубину там работы с тем или иным инструментом.
42:10
Speaker A
Ну, в первую очередь, мне кажется, это глубину поиска. То есть часто бывает, что собакенты у меня уходили прямо какой-то гигантский ресрчи по 30 минут там сидели и не могли оттуда вылезти.
42:21
Speaker A
Это можно настраивать вот при помощи таких вот штуковин, типа steps или где-то ещё concurrency, concurrency, мне кажется, называется. То есть там много-много много нюансов. Если захотите в это залезть, то можно в Openкоде шире набор настроек, которые позволяют вам с
42:37
Speaker A
субагентами работать. И модель тоже можно прописывать. Здесь, например, в Openкоде у меня есть agent relationships agent, ну, на по аналогии с Human Relationship с агентом, который у меня живёт на конкретно на вот такой вот модельке.
42:55
Speaker A
Чип у меня здесь живёт тоже вот только на такой модельке. Вот у этого субагента есть куча-куча разрешений, которые только на чтение файлов, но не на их редактирование, если я не ошибаюсь.
43:12
Speaker A
Вот примерно так. Так, ну, получается что-то больше под узко специализированные такие регулярные задачи, чтобы это как-то Да. Да. Ну, я даже, видишь, я это почти перестал использовать, потому что в целом, ну, в этом всё меньше смысла их как-то
43:33
Speaker A
сильно ограничивать, потому что хорошо работают модели. То есть, ну, меня они никогда не стирали меня весь компьютер, и я достаточно, ээ, спокойно к этому сейчас отношусь и не очень этого побаиваюсь. Может, когда я наткнусь на такую проблему, я буду более аккуратен,
43:50
Speaker A
но пока что вот и модели без всяких очень жёстких настроек и рамок работают чудесно.
43:57
Speaker A
СUгентом можно даже присуждать скилы. тоже в Openкоде есть такие возможности, когда вы прописываете вот в этом фронтматере, так называемом, вот здесь вот, вот в этой части вы прописываете что-то вроде Skills по-моему и прописываете сюда конкретно те скилы, которые у вас есть, и они сразу будут
44:19
Speaker A
подгружаться в контекстное окно вашего субагента. То есть это, знаете, это больше вот если, ну, вам хочется как-то вот поковырять всё это дело, вот прямо поразвлекаться, то есть кто-то там упарывается в настройки всяких приложений Обсидиана, например, и всякие плагины туда
44:36
Speaker A
накачивает. Кто-то вот занимается тем, что ну вот субагент, субагент все создаёт под задачу нужный и ненужные. Вот. Ну, в принципе, да, в этом всё меньше и меньше смысла, мне кажется, только вот в рамках там вот какой-то работы типа по созданию
44:49
Speaker A
сайта. Я прямо в это в этом вижу много потенциала, потому что это просто ускоряет работу.
44:56
Speaker A
Можно я быстренько вклинюсь? То есть по факту мы говорим о чём? Что когда субагенты появились, было две проблемы.
45:02
Speaker A
Первая - это контекст, вторая - это скорость работы модели. Учитывая, что сейчас и контекст, и скорость работы модели, и в целом мозги моделей становятся быстрее, лучше и сильнее, а необходимость в субагентах, она как таковая становится всё меньше и меньше. Условно, сейчас ещё
45:20
Speaker A
какую-нибудь модельку выпустят, которая в два раза быстрее будет, и как бы уже даже смысла передавать в отдельные сессии как будто бы, может быть, даже дольше, чем она сама бы это всё выполнила. Если мы говорим про такую метрику, как скорость, условно,
45:34
Speaker A
да. Да. Ну вот почему опять же я немножко это разделяю на примере того же сайта, потому что если попросить кодекса генерировать все эти картинки один за другим, ну там больше вероятность, что он запутается и он там начнёт артефакты
45:46
Speaker A
ещё делать. Вот, кстати, с кодексом тоже есть такой нюанс, когда он много раз одну и ту же картинку видит и перегенерирует.
45:53
Speaker A
Давайте его уже остановим. Вот он начинает её очень сильно искажать. Это вот эта дебильная термарка, которая в картинках у у этой модели появляется.
46:04
Speaker A
Это отвратительно, поэтому это нужно прямо разделять реально по сессиям. В противном случае он может очень сильно их искажать. Вот поэтому, ну, тут везде есть такие небольшие нюансы. Здесь-то работает, как мне кажется, хорошо. Вот ещё важная история достаточно.
46:20
Speaker A
В кодексе вы можете запускать не только субагентов внутри сессии, вы можете просить главного агента запустить отдельную сессию. И это может быть полезно.
46:33
Speaker A
Я, честно говоря, до конца не знаю, чем это может быть более полезно, нежели запускать субагентов. Тут как раз я готов призвать на помощь одного из других.
46:42
Speaker A
Это мы можем рассказать. Я на самом деле чаще всего пользуюсь именно вот этой логикой, о которую сейчас мы говорим.
46:48
Speaker A
Потому что когда у тебя у сессии, допустим, ты ведёшь какую-то разработку и у этой сессии есть полноценный большой контекст задачи, он понимает, с чем ты уже столкнулся, с какими проблемами, что там учитывать, не учитывать в твоей задаче, которую ты делаешь. И ты
47:04
Speaker A
понимаешь, что у тебя появляется много задач, как бы ответлений параллельных, которые ты хочешь запустить в работу. И чтобы не заниматься тем, что ты создаёшь отдельную сессию, просишь её провести аудиты там, да, той задачи, которую тебе необходимо сделать или погрузиться,
47:19
Speaker A
изучить код твой заново, изучить все артефакты или ещё что-то в этом духе, а ты просто просишь своего основного агента по сути за тебя это всё реализовать. Ты просто ему говоришь: "Давай мы создадим в параллельно несколько сессий, которые будут 1 2 3че
47:35
Speaker A
там какие-то задачи решать". И это очень круто срабатывает, потому что он неплохо передаёт контекст необходимый для каждой задачи. Может, ну, примерно то же самое, что мы сейчас видели на этапе, как дела по субагентам, да, то есть примерно всё
47:50
Speaker A
в таком же [фыркает] контексте передаётся. А, но вы получаете весь контроль над теми новыми вот этими созданными сессиями. Вы можете, получается, в них продолжать работу после того, как они закончат. То есть, если, к примеру, функционал, который вы разрабатываете, он длинный
48:07
Speaker A
или там, возможно, большое количество правок после того, как вы это сделаете, потому что у вас нет большого технического задания, условно.
48:14
Speaker A
[тяжело вздыхает] Вот. И вот это мне очень нравится. И я очень редко в последнее время создаю сессии с нуля, [вздыхает][тяжело вздыхает] а, особенно в больших проектах. Ну вот, к примеру, у меня сегодняшний кейс был.
48:29
Speaker A
Мне нужно было из задачи, где мы обсуждали проект, где мы разбирали там один GitHub репозиторий, э, и уже там был весь контекст того, что мне необходимо было, я попросил создать новую сессию у агента, который мне уже туда перекинул нужную информацию. И мы в
48:47
Speaker A
новой сессии обсуждали одну конкретную задачу по презентации этого продукта. То есть нет смысла это обсуждать в основной сессии. просто всё передал и спокойно работаешь над задачей. Вот. То есть вот вот эту штуковину я использую лично у себя буквально постоянно, без вообще
49:04
Speaker A
безостановочно, скажем так. Мне очень нравится, как кодекс это делает, как он создаёт эти задачи и как потом с ними в сессиях удобно работать.
49:14
Speaker A
И, кстати, ещё кто не знал, можно так вот брать сессии и забрасывать в контекстное окно. Тоже достаточно удобно, когда вот там в одной сессии пообщались. Нужно контекст подтянуть.
49:25
Speaker A
Взяли, забросили, дальше задали свой вопрос, и он как бы всё это дело прочитал и начал обрабатывать. Кстати, я этого кого не знал. Я обычно правой кнопочкой копилин и потом уже вставил его чат.
49:39
Speaker A
Всё проще. Пум. Класс. А в целом я точно так же, как Сергей писал, использою, но я я походу использую и то, и другое. У меня и субагенты, которые внутри одного, одной сессии, и параллельно плюс ещё, э, создаются отдельные сессии через от
49:58
Speaker A
главного агента. Как и Серёга сказал, вот бывает так, что ты сидишь, что-то обсуждаешь, вы что-то делаете, и там хоба он нашёл там какой-то баг или какую-то там идею подкинул. Ты понимаешь, что вот она классная, её нужно дальше развить, но ты не можешь,
50:12
Speaker A
потому что здесь ты решаешь другую задачу, и ты просто ему говоришь, что слушка закинь это вот обсуждение в соседнюю сессию, и он её кидает и получается отдаёт контроль уже полностью тебе. Ты просто в неё как в обычно переключаешься и работаешь. В целом тут
50:26
Speaker A
подход такой, что когда ты, когда тебе нужен результат в главной сессии, то тогда ты, ну, запускаешь вот этих субагентов в ней. То есть они вот что-то там поделали, какой-то сch, не знаю, код поискали и назад тебе в контекст в
50:42
Speaker A
главную вернули результат. Это вот для этого сделано. А когда ты хочешь что-то стороннее обсудить и тебе для этой сессии результат этого работы не нужен, тогда ты просто в параллель кидаешь и идёшь уже там дальше дорабатываешь.
50:57
Speaker A
Ну и плюс вот это очень удобно, как Серёга сказал, что тебе не нужно там создавать новую сессию, что-то там объяснять. Он сразу весь контекст там задачу поставил. И ещё что классно мне нравится, я когда в орке сейчас работаю
51:11
Speaker A
с что с кодексом в C, что с клод-кодом, а там есть удобный функционал по быстрому созданию и управлению ээ ветками и деревьями в в GT, чтобы самому не ходить там создай мне, пожалуйста, какую-то ветку, там создай такое-то дерево, это всё помести, там какие-то
51:31
Speaker A
инит скрипты, скрипты запусти. Ты просто говоришь: "Вот подготовь мне под эту задачу отдельно ветку и отдельно сессию". И он только тык-тык-тык, 5 секунд у тебя всё готово, ты переключаешься, а там уже работа кипит.
51:45
Speaker A
А так вручную прямо много шагов приходится делать. Давайте быстро на примере это покажем. Вот можем сказать: "Сделай отдельный Gitw 3, чтобы я продолжил ээ разработку этого лендинга в отдельной сессии".
52:02
Speaker A
Я думаю, у него получится. Кстати, ещё вот один из примеров суб не субагентов, а параллельных сессий. Это мы в одной задаче сначала просто обсуждали техническое техническую задачу для того, чтобы сделать там генерацию 3D-моделей через блендер.
52:20
Speaker A
Просто обсуждали, обсуждали, обсуждали там форматы, дизайн, техническое задание и всё остальное. И потом уже передали в параллельные сессии генерации нескольких разных моделей. Там были там для телефонов различные аксессуары. И вот он начал их уже генерировать как бы отдельно. Вот. И в этих задачах я
52:42
Speaker A
передавал э специально прямо просил главную м главную сессию, а чтобы он использовал астру, потому что, ну, типа, для блендера лучше астру использовать.
52:54
Speaker A
Вот. и он сожрал там нормально токенов, но сделал результат вполне себе хороший. Дальше по презентации пробежимся. У нас тут немного осталось. Ну, про конфликты, ээ, в целом мы проговорили. Я объяснил важность этого лендинг Jon, этого единого контракта.
53:14
Speaker A
Может быть такое, что субагенты начали ковырять один и тот же файл, тогда будут проблемы и будут конфликты. Ну, это уже, собственно, решается либо тем, что вы задаёте им очень чётко инструкции, просите их работать в разных файлах, либо вы действительно создаёте отдельный
53:33
Speaker A
gitw 3, где агенты работают, возможно, над одной из задачей в нескольких версиях, в нескольких видениях, и тогда с этим проблем не должно быть.
53:47
Speaker A
Тут можно немножко просто по терминам ребятам рассказать, что в гите есть ветки и есть деревья. И тут немножко разница такая, которую я тоже сначала сидел, что-то долго не мог понять, а потом как понял, такой думаю, как я раньше без этого жил. Получается, у вас,
54:05
Speaker A
когда вы свой репозиторий забираете к себе на компьютер, э вы храните его в каком-то там папочке и работаете на какой-то ветоке, например, main. Потом вы понимаете, я хочу сделать там новую страничку или добавить какую-то новую фичу, но я не хочу, чтобы у меня главная
54:24
Speaker A
моя мей ветка была заблокирована, пока я что-то делаю. Мало ли, надо будет там баг какой-то пофиксить или мало я там какие-то серьёзные изменения зател.
54:31
Speaker A
Пускай она лежит нетронутой, я делаю отдельную ветку. Ну вот, соответственно, у нас ветки они как будто бы такие виртуальные достаточно. То есть вы в той же папке переключаетесь на новую ветку и получаете её версию файлов. А вот когда
54:49
Speaker A
вы создаёте дерево, то это как раз-таки физически на вашем жёстком диске создаётся ещё одна папка, в которую забирается вот физическая копия вашего проекта.
55:00
Speaker A
И, соответственно, по-моему, в одно в одно дерево может точнее одно дерево забирает одну какую-то конкретную ветку.
55:07
Speaker A
То есть нельзя открыть там в двух места, в двух папках разные деревья, но на одной ветке.
55:14
Speaker A
Вот поэтому то, что здесь, когда Даня сказал: "Создай мне новое дерево", это как раз-таки он попросил, чтобы кодекс сделал новую физическую папку у него на диске. Туда получается создаются копии его проекта, плюс создаётся ветка.
55:33
Speaker A
Вот тут очень запутано немножко, да, немножечко тут всё это сложно к восприятию и осмыслению. Ну, в общем, вот он его сделал. Видите? То есть мы с вами отправили из этой сессии, то, что то, что Серёжа рассказывал, из этой
55:47
Speaker A
сессии мы отправили ему по сути он сам отправил промпт в новую сессию. Вот его промт мы можем здесь прочитать.
55:58
Speaker A
Ну хоть здесь показал, да? Вот здесь он показывает, кстати говоря, промт. Я об этом вспомнил вот в процессе лекции, что он таким образом он промты показывает. Но тоже сомнительно, зачем генерировались столько сессии, чтобы посмотреть промты. Ну да ладно.
56:14
Speaker A
О'кей. Спасибо большое, друзья, что сегодня с нами были. Увидимся в будущих эфирах. Пока-пока. M.
Topics:субагентыAI-агентыCodexконтекстное окнооркестрация агентовJSON-контрактскиллыгенерация лендингаOpenCodeмультиагентные системы

Get More with the SozAI App

Transcribe recordings, audio files, and YouTube videos — with AI summaries and speaker detection. 30 minutes free.

Or transcribe another YouTube video here →