Transcription
Добро пожаловать всем. Э-э, мы очень рады, что делаем это. Э-э, я подожду секунду, пока Девин и Джефф присоединятся к нам. Ум, и вот они. Хорошо. Итак, спасибо. Э-э, спасибо всем, кто присоединился. Спасибо Девину, Джеффу и Брейсу за то, что они здесь. Рад этому. Это был вебинар в последнюю минуту. Обычно мы стараемся делать это примерно за месяц, но это была такая горячая тема, что мы решили подготовить э-э, мы решили подготовить это в последнюю минуту, когда я э-э обедал с Девоном э-э на прошлой неделе, э-э, а затем переписывался с Джеффом. И поэтому я очень рад этому. Я думаю, что вики и э-э идея памяти или знаний хорошо, память и знания всегда были горячими с самых ранних дней RAG до памяти, и я думаю, что вики с э-э некоторыми вещами в области кодирования и с Карпати стали интересным способом представления этого, и поэтому я думаю, что все в этом звонке думали о э-э вики или памяти или управлении знаниями в той или иной форме некоторое время. И поэтому, э-э, я очень рад сделать это. И я думаю, что у нас есть некоторые разногласия и здесь. Девин сказал мне, что у него есть горячая мысль, что вики — это неправильная абстракция, и мы можем обсудить это позже. Ум, но для начала, ум, я подумал, что было бы хорошо, если бы все э-э поговорили о, э-э, /демонстрации того, над чем они работали, э-э, не более двух минут, э-э, каждый. Это будет жесткий стоп. Я буду, я буду на самом деле засекать время. Ум, но мы, давайте, давайте начнем. Э-э, давайте начнем. Брейс, Девон и Джефф, я думаю, в таком порядке. Ум, и если вы, ребята, могли бы представиться, а затем провести двухминутную или менее, как бы, прогулку по тому, что вы строите и как вы думаете о вики-памяти знаний. >> Брейс, твоя очередь. >> Звучит хорошо. Ум, привет всем. Я Брейс. Я руковожу платформой здесь, в LangChain. Я много думал о вики и памяти э-э в последнее время. Ум, так что позвольте мне сначала разобраться, как поделиться своим экраном. Э-э, а затем я смогу пройти через демонстрацию open wiki, которая является нашим новым агентом CLI для памяти э-э, э-э, который мы только что выпустили. Так что демонстрация экрана, мы сделаем это. Хорошо. Итак, open wiki — это новый CLI для памяти, который мы только что выпустили, и мы фактически выпустили новую версию 0.1 э-э, э-э сегодня утром с э-э модулем памяти общего назначения. Так что идея open wiki заключается в том, что мы думаем, что, знаете ли, или из нашего опыта, да, создание и поддержание воспоминаний очень сложно, э-э, и требует много времени и утомительно. Поэтому мы хотели абстрагировать все это в CLI, э-э, который очень легко настроить, а затем просто работает в фоновом режиме, без необходимости думать об этом. Поэтому мы создали вики. Это CLI, который вы можете установить через npm, а затем его настройка очень проста, э-э, и вы можете использовать его для документирования либо вашей собственной, как бы, личной работы и, как бы, памяти общего назначения, либо кодовых баз. Так что для этого я покажу наш модуль личной памяти, потому что это то, что мы только что выпустили сегодня утром. Настройка очень проста, да, вы просто запускаете open wiki personal init, а затем просто настраиваете, знаете ли, вашего поставщика модели, вашу модель, э-э, и затем мы просим вас установить промпт. Мы называем это вики-бриф. Э-э, это вы можете думать как о промпте, который вы бы дали своему агенту памяти. Так что он знает, на чем сосредоточиться, на чем не сосредоточиться, знаете ли, что вы хотите, чтобы он запомнил, и как вы хотите структурировать свои воспоминания. Мы предоставляем стандартный, как вы видите здесь. Так что я могу принять это. Ум, а затем приятная особенность open wiki, да, заключается в том, что он автоматически обновляется. Так что одна из самых утомительных частей поддержания или, как бы, воспоминаний и, как бы, документации заключается в том, что вам нужно постоянно обновлять их. Так что с open wiki мы просто запускаем cron-задачу каждый день. Так что мы предлагаем, как бы, 2 часа ночи, вы можете использовать это, а затем мы также можем сделать так, чтобы он мог, знаете ли, автоматически пробуждать ваш Mac посреди ночи. Вы делаете это, а затем подключаете свои, как бы, поставщики, такие как Notion, Gmail, Slack, он будет получать данные из всего этого. Ум, а затем, когда вы подключите все из них, и он запустится, он >> автоматически напишет документы. >> Хорошо, мы, мы строже, чем академия здесь. Я пытался включить музыку, чтобы вас развлечь, но не смог сделать это вовремя. Девин, хочешь пойти? >> Хорошо. Да. Спасибо, Харрисон. Спасибо всем, кто присоединился. Я Девон Стейн, генеральный директор и основатель DOSU. DOSU — это инфраструктура знаний для агентов и людей. Так что мы помогаем курировать и делиться знаниями, чтобы сделать агентов более эффективными по токенам и надежными. >> [хмыкает] Я проведу свою мощную демонстрацию. Давайте посмотрим. Видно ли мой экран? >> Да. Так что, знаете ли, с DOSU мы подключаемся прямо к вашему рабочему процессу агента кодирования, и это в основном через MCP. И поэтому, когда агенты работают над задачей, они будут использовать один из наших API или инструментов для чтения или записи знаний. Так что, если [очищает горло] мы просто берем пример задачи, скажем, мы собираемся создать новую таблицу базы данных для пользователей. Вы [очищает горло] знаете, что Клод сделает в этом случае, он будет работать. Он узнает о вашем проекте, вашей организации, пока он создает эту новую функцию. И затем с [очищает горло] DOSU он сможет захватить эти знания как постоянные знания для вашей организации. И [очищает горло] то, как это будет выглядеть, из-за экономии времени, вы получите такой звонок, где вы напишете знания обо всем, что он узнал, как в этом случае, как работает схема таблицы и, знаете ли, миграции базы данных в фоновом режиме, это запустит агент-библиотекарь DOSU для создания того, что мы называем индексом знаний или страницей темы, которая читаема человеком, что очень важно, но оптимизирована для агентов. Так что она очень лаконична, очень ссылочна и информационно насыщена. Так что, по сути, всякий раз, когда агент работает над такой темой, мы снова автоматически вставляем это в сеанс кода Клода. И также автоматически поддерживаем все эти знания в актуальном состоянии по мере изменения кода. И затем, наконец, знаете ли, самая сложная часть вики, о которой мы много поговорим, — это понимание влияния. И поэтому мы также предоставляем вам аналитику, чтобы понять, как ваши агенты фактически используют эту вики и какое влияние она оказывает на вашу организацию. >> Отлично. Точно в срок. Очень, очень оперативно. Спасибо, Девон. Хорошо, Джефф. >> Хорошо, отлично. У меня нет живой демонстрации, но я попытаюсь описать, почему нас интересует эта тема. Так что, краткая история, если вы зайдете на веб-сайт aigrant.com, вы увидите, что Chroma описана как программируемая память для ИИ. Это, я думаю, в 2023 году, когда мы это придумали. И поэтому я думаю об этой проблеме уже много лет. Вы можете знать Chroma как так называемую векторную базу данных. Я думаю, на самом деле проблема, которую мы решаем, заключается в том, что мы выяснили, как хранить огромные объемы неструктурированных данных и сделать их чрезвычайно доступными для запросов ИИ и людей. И это, как бы, ключевая задача. Мы также весной выпустили модель под названием Context One. Это модель, которая является передовой в задаче агентного поиска. И поэтому, я думаю, что, знаете ли, один из способов, которым мы думаем об этой вики-штуке, заключается в том, что это в некотором смысле новый вид индекса. Это способ обработки больших объемов неструктурированных данных и создания некоторого уровня карты поверх этих неструктурированных данных. Знаете ли, очень грубо, возможно, если у вас вообще нет индексации, это как большой блок данных, вы можете отправлять зонды и угадывать и проверять. А затем, как бы, если у вас есть вложения, разреженные или плотные вложения, у вас есть топология карты, но вы все еще угадываете и проверяете. А затем с вики это как бы добавляет дорожную сеть и добавляет все трубы и соединения между этими местами и позволяет агентам лучше перемещаться. И это позволяет избежать контекстного мошенничества и многих других вещей. Так что мы очень заинтересованы в этой идее вики как новой формы индексации. Мы сами, как наша команда, экспериментировали с созданием, как бы, нашей собственной командной организационной памяти, путем поглощения большого количества неструктурированных данных и создания одной из этих вещей. Мне очень интересно увидеть э-э э-э эти горячие мнения о том, правильные или неправильные вики. Мы, безусловно, обнаружили, что их очень трудно как создавать, так и поддерживать. И это как бы неочевидно, знаете ли, должны ли страницы быть длинными, должны ли страницы быть короткими. Как вы поддерживаете свежесть? Как вы поддерживаете согласованность? Это порождает много новых и сложных проблем, которые как бы частично решаются с помощью промптов и изменения промптов, но также, я думаю, многие из них на самом деле являются проблемами системной инженерии, где вам нужно думать о управлении параллелизмом и так далее. И это не простые проблемы для решения. Так что, мы посмотрим, что у нас получится в Chroma. Но это дает некоторый контекст, почему нас интересует эта тема. >> Отлично. Хорошо. Итак, отличные вступления от всех. Быстро, прежде чем мы начнем, есть раздел вопросов и ответов. Пожалуйста, задавайте туда любые вопросы, на которые вы хотите получить ответы. Мы, вероятно, потратим последние, как бы, 15 минут или около того на ответы на вопросы аудитории. Так что задавайте туда все, что вы хотите услышать. И если вам нравятся, как бы, если вам нравятся вопросы, голосуйте за них. Я, вероятно, буду сортировать их по количеству голосов. Так что, пожалуйста, используйте это, чтобы убедиться, что мы отвечаем на то, что находится на первом месте в ваших мыслях. Возможно, для начала, я думаю, было бы полезно просто попытаться даже определить, что такое вики. И поэтому, возможно, я сделаю первоначальную попытку, а затем вы каждый скажете мне, где я ошибаюсь или где я ошибаюсь или что я упускаю, или подобные вещи. Так что, когда я думаю о вики, наивно я думаю о чем-то вроде набора файлов в некоторой структуре каталогов, которая обычно генерируется агентом и обычно для агента. И, возможно, я остановлюсь здесь с этим кратким описанием. Есть ли что-то, что я упускаю? Как вы думаете о вики? >> Я думаю, что это определение вики перегружено технологией и перегружено вариантами использования в некотором смысле. Как Википедия хранит данные? В файловой системе? Нет. Для агентов? Тоже нет. Это вики? Да. Так что я бы попробовал более абстрактное определение вики, которое как бы примерно представляет собой некоторый уровень гиперссылок на страницы. Это в некотором смысле интернет. У вас есть куча страниц, и они связаны друг с другом. И они снова предназначены для информативности. Они предназначены для ясности. Есть своего рода, компоновка страницы предназначена для потребления информации. Там нет кучи отвлекающей рекламы. Но, да, я остановлюсь здесь. Это, как бы, некоторые мысли о том, что такое вики. >> Да, я, я как бы согласен с Джеффом, да? Это как коллекция файлов в сегодняшнем мире, как бы, файлов Markdown, которые документируют что-то, будь то фактические документы или, знаете ли, заметки или воспоминания. Но, как бы, в своей основе это просто, знаете ли, большая коллекция файлов, которые связаны друг с другом каким-то образом через, как бы, ссылки на страницы или индекс, который, знаете ли, содержит текст и документацию, которую агенты или люди могут затем потреблять. >> Да, я, я бы согласился. Я думаю, особенно для вики LLM, возможно, не вики. Я думаю, в целом я согласен с определением Джеффа, как бы, страницы, связанные друг с другом. Но я думаю, что для вики LLM, я думаю, твит Андрея Карпати хорошо это сделал, как бы, я действительно думаю об этом как о скомпилированном знании, как будто вы берете источники и создаете индекс. Я, я очень согласен с формулировкой Джеффа, где каждая страница действует, я предвзят, но как бы, кэш, по сути, она компилирует знания для будущего использования, чтобы вам не пришлось повторно исследовать эту информацию. >> Да, я думал, что это было действительно, когда мы обедали, Девон, я думал, что это была действительно интересная аналогия. Можете ли вы расширить, как бы, эту, как бы, формулировку кэша? >> Да, я думаю, так, я, я думаю, это становится мета, как бы, в, знаете ли, цели вики или, как бы, вики-абстракции. И поэтому мой, я думаю, то, что мне не нравится в вики сегодня, с точки зрения, как бы, реализаций, заключается в том, что если вы говорите агенту создать вики, он создает что-то, что, знаете ли, потому что он обучен на данных человеческих вики, будет выглядеть как вики для человека, и эти характеристики, и это, знаете ли, потому что это все, что существовало сегодня, да, и то, что обычно выглядит так, это некоторый уровень порядка, знаете ли, вы часто видите, как бы, руководство для начинающих, как в архитектуре, есть, как бы, общая структура, к которой LLM или агенты обращаются, когда вы говорите им создать вики, которая по своей сути, на мой взгляд, как бы, ориентирована на человека, где ожидается, что кто-то будет читать ее, как бы, от начала до конца, а затем [очищает горло] отдельно, это, знаете ли, когда вы начинаете думать о, как бы, почему иметь вики, да, если вы думаете с первых принципов для агентов, есть два типа знаний, которые будут жить в вики. Один — это то, что я называю необходимыми знаниями, которые, как бы, информация, которая больше нигде не существует, и поэтому, как бы, если вы знаете, что агент не имеет доступа к этой информации, если она не задокументирована в вики. Затем другие знания, те, которые больше похожи на скомпилированные знания, которые вы генерируете из источников, являются функциональными, да, они там, потому что они сделают агента более эффективным, где ему не придется повторно исследовать эту информацию, чтобы прийти к тому же выводу. Знаете ли, как бы, как бы, кэширование знаний — это, как я думаю, интересная аналогия, а затем, если вы возьмете эту аналогию дальше, да, это как, как кэш, вы не хотите, чтобы вся ваша база данных была кэшем, потому что это будет очень дорого, потому что вам придется поддерживать ее в актуальном состоянии с источником истины, и поэтому вы хотите кэшировать только то, что актуально и будет часто использоваться или дорого пересчитывать. И поэтому, да, я, я думаю, что концепция вики имеет смысл, но я думаю, что стандартная реализация слишком, как бы, с человеческой точки зрения. >> Возможно, вопрос для всех. Похоже, вы очень сильно думаете об этих вики LLM как о предназначенных для агентов. Вы, Джефф, Брейс, вы согласны с этим или вы думаете, что это и, как бы, да, вики, вики могут быть чем угодно, но когда люди говорят о вики LLM или когда вы думаете о том, что вы хотите построить в смежной области вики, вы в основном думаете о создании для агентов или для людей, и это одно и то же? >> Я думаю, что исторически этот термин использовался для описания документации, которую потребляют как люди, так и агенты. Если мы думаем о deep wiki от Cognition, которая, я думаю, была первой популяризированной вики, это был, знаете ли, веб-сайт, который мы, люди, можем посещать и просматривать. Но затем у них также есть сервер MCP для потребления агентами. И я думаю, что это не плохой способ думать об этом, но в будущем, если мы подумаем о том, куда движется разработка агентов. Большинство вещей переходят в агента. Вы, люди, делаете все меньше и меньше, как бы, мелких деталей. И это означает, что мы меньше читаем документы и больше, как бы, просим нашего агента общаться с документами и предоставлять нам информацию. Так что я думаю, что в будущем эти вики должны быть в первую очередь разработаны для чистого интерфейса агента, а затем вы используете своего агента, чтобы затем предоставить эту информацию вам. >> Я думаю, что, если говорить с венчурным капиталистом, очевидно, ответ — они все исключительно для агентов. Я думаю, на практике это не так. Так, например, мысленный эксперимент. Давайте предположим, что для вашего агента было бы оптимально хранить всю эту вики не на естественном языке или английском, а только в латентных векторах, которые полностью читаемы для людей, да? Таким образом, чтобы это было бы, о, здорово, что это существует. Однако это нарушает нашу способность как людей иметь какой-либо уровень контроля или управляемости над вики и, как бы, любой уровень читаемости и своего рода общего рабочего пространства. И поэтому, как я на самом деле думаю, очень важно, чтобы эти вики были на английском языке, а не в латентных векторах. И поэтому, на самом деле, что это, как бы, мотивирует или говорит вам, это то, что вики предназначены для обоих. Они предназначены как для агентов, так и для людей. >> Возможно, хорошо, возможно, углубимся в это. Поскольку вы все создаете продукты, как вы думаете о человеке в цикле, человеческой управляемости, где, какой правильный способ взаимодействия людей с этим процессом создания, курирования, как бы, вы ни называли это, процессом создания вики? Как выглядит этот процесс человека в цикле для вас? >> У меня две мысли. Во-первых, я думаю, есть различие, потому что я собирался сказать очень похожую вещь Джеффу, как бы, да, вы можете довести это до крайности, где, на самом деле, агенты имеют, как бы, свой собственный язык вики, который мы не понимаем, знаете ли, он просто в латентном пространстве, но я думаю, что с точки зрения, есть разница между тем, если люди, если это интерпретируемо человеком, что я думаю, на самом деле очень, очень важно, по сравнению с тем, является ли аудиторией человек. Является ли это тот же человек, который будет, знаете ли, читать эту страницу? И поэтому я думаю, что мы хотим оптимизировать для агентов как аудитории, но сохранить читаемость человеком. И, да, и затем, что касается, знаете ли, что, как бы, какой был вопрос? [смех] >> Как, как вы, когда люди используют цикл? >> Да. Да. Держите в цикле для. >> Хорошо. Так что мы, знаете ли, как часть продукта, да, мы держим людей в цикле, потому что большая часть этого связана с процессом обзора PR. Так что мы проводим обзоры знаний, аналогичные обзору кода. Так что люди как бы наблюдают, как меняются знания, но им не обязательно одобрять каждое изменение. Я думаю, я думаю, что мы слышали от наших клиентов, что, знаете ли, они уже перегружены обзором кода. Они не хотят, чтобы обзор знаний был бременем. Другая сторона — я люблю говорить, что знания в конечном итоге согласованы. То есть, если они неверны, пока вы строите механизмы самокоррекции, они, знаете ли, в конечном итоге будут исправлены в будущем. Так что, если вы, знаете ли, кэшируете или, как бы, записываете запись вики, которая неверна, и вы предоставляете механизмы для агента, который, знаете ли, читает это, а затем обнаруживает, что она неверна, он может просто исправить ее в будущем. Знаете ли, вы теряете некоторую эффективность токенов, но, знаете ли, в конечном итоге она будет исправлена, если это важно. Да, я как бы согласен с последним пунктом Девона о том, как бы, агенты исправляют себя. Как бы, способ, которым мы настраиваем вики, если это, как бы, режим кода, то эта вики живет в файлах Markdown в вашей кодовой базе. Так что там есть человеческий цикл, потому что он создает PR, и вам нужно просмотреть это, прежде чем оно будет объединено. Но для, как бы, памяти общего назначения, которая живет на вашем компьютере, и она просто записывает все, что хочет, без этапа обзора, потому что это было бы очень утомительно. Так что для нас, как бы, как мы сделали в вики, у нас есть способ для агента добавлять вопросы. Так что он может добавлять открытые вопросы, на которые он не знает ответа, а затем вы можете зайти и ответить на них, или в последующих запусках, если он думает, что нашел ответ, он может зайти и пометить это как отвеченное. Знаете ли, ссылаясь на фактическую вики, которую он использовал, или на часть вики, которая ответила на этот вопрос. И затем, как человек, вы также можете зайти туда и добавить вопросы, ответить на вопросы самостоятельно. И затем последнее, чего мы еще не сделали в агенте, но я хочу сделать сегодня или завтра, — это журнал изменений. Потому что вики просто изменяет себя без, знаете ли, вашего одобрения всех изменений, вы можете не захотеть одобрять каждое отдельное изменение, но вы, вероятно, захотите иметь некоторое представление о том, что изменилось, и если это все файлы Markdown, вы можете посмотреть diff, но это станет очень утомительным. Так что вместо этого я думаю о очень кратком журнале изменений: «Эй, я отредактировал этот файл, чтобы документировать, знаете ли, этот новый продукт, который вы добавили, или что-то в этом роде, а затем, знаете ли, вы можете ретроспективно зайти туда и сказать: «Эй, на самом деле эта часть журнала изменений не звучит правильно, можете ли вы углубиться в эту часть, я не знаю, нашего нового продукта, или можете ли вы исправить это, чтобы сделать XYZ?» Таким образом, вам не нужно читать отдельные изменения, но у вас есть, как бы, обзор высокого уровня того, что было изменено, а затем вы можете пообщаться со своим агентом, чтобы он исправил это. >> Что сейчас? О, извините, Харрисон. >> Нет, продолжайте. >> Я собирался сказать, что мы как бы находимся в, как бы, эре инженерии промптов этого, где мы даже не в инженерии каналов или инженерии циклов еще. Но в конечном итоге это будет инженерия циклов, не для того, чтобы быть совместимым с гудением, а просто потому, что это, вероятно, найдет отклик у некоторых людей в комнате. И поэтому прямо сейчас я думаю, что человеческое прикосновение в самих промптах все еще довольно важно. Точные сигналы для подъема, чтобы улучшить эти вещи, также сложны, я думаю, для автоматического определения. И поэтому человеческое суждение очень полезно. Знаете ли, я думаю, что, как бы, приятная часть, как бы, вики по сравнению с необработанным поиском по источникам заключается в том, что вы также можете ее исправить. Знаете ли, если что-то не так, если дата неверна, вы можете сказать: «Вы ошиблись с датой». И, как бы, возможно, он галлюцинировал, и вы исправляете галлюцинацию, но, возможно, на самом деле исходный материал был неверным, и, как бы, вы [очищает горло] как бы, исправляете исходный материал, обновляя сообщение в Slack трехмесячной давности, не имеет особого смысла. И поэтому я думаю, что этот аспект управляемости, управляемости вики действительно привлекателен. И, но горький, возможно, опять же, не для того, чтобы бросать здесь жаргонные слова, но история горького урока заключается в том, что в конечном итоге мы должны, в некоторой степени, научиться доверять агентам, чтобы они знали, когда обращаться к нам и говорить: «Эй, человек, мне нужна помощь с этим. Это, знаете ли, неоднозначно или это расплывчато, или я не думаю, что у меня достаточно опыта, чтобы принять решение, не могли бы вы помочь?» Эта идея, как бы, интервьюирования агентов, интервьюирования людей, очень интересна. И, возможно, мы просто очень рано во всем этом, так что, возможно, неправильно называть это в основном неисследованным, но по определению, возможно, в основном неисследованным. Что является самой сложной частью создания вики? Или все легко? Это просто так, это просто так легко. Нет ничего сложного, что нельзя было бы [смех] промптировать, чтобы сделать, или, как бы, промптировать для обновлений, я думаю, сейчас наиболее сложно. Они могут очень хорошо написать первый черновик. Но по мере расширения, если вы внесли 300 обновлений в свою вики, и ваша вики, знаете ли, имеет миллиард токенов, получить ее, чтобы определить, где в вики обновлять, когда она получает новую информацию или обновляет информацию, а затем лаконично обновлять или вставлять или удалять информацию. Я думаю, это, вероятно, самая сложная часть. Это то, что мы видели в, как бы, open wiki, а также в других агентах, которых мы создали, как бы, во флоте, где он может обновляться сам, и часто он хочет просто вставлять новые строки в промпт вместо того, чтобы изменять то, что он уже написал. И иметь этот баланс между изменением, удалением и вставкой новой информации — это сложная вещь, которую нужно правильно реализовать с агентами прямо сейчас, особенно когда они имеют дело с большим количеством контекста. >> Да, я бы сказал, возможно, три вещи, которые, я думаю, сложны. Я действительно думаю, что генерация сложна. Не на небольших репозиториях или проектах, а на, знаете ли, у некоторых наших клиентов есть десятки миллионов строк кода, и просто, как бы, крупные организации, и когда у вас есть что-то такого масштаба, выяснить, что важно, на самом деле является сложной проблемой. Потому что, если вы просто позволите агенту попытаться выяснить это самостоятельно, он сосредоточится на неправильных вещах. И поэтому определение того, что действительно важно, является первой проблемой в масштабе, по крайней мере. Я думаю, на небольших проектах агенты могут справляться довольно хорошо. И два — это, безусловно, знаете ли, обслуживание. Я думаю, проблема обслуживания действительно, действительно сложна. Как Брейс говорит, это просто промптинг — это одна часть этого. Но затем также делать это в масштабе и эффективно. Потому что, если вы, знаете ли, ваша вики становится огромной, и вы тратите тонны токенов на ее поддержание, получаете ли вы на самом деле ROI? Имеет ли смысл поддерживать все эти знания, даже если вы делаете это эффективно, что само по себе является проблемой? И затем последняя связанная часть — это наблюдаемость / знаете ли, получаете ли вы на самом деле понимание ROI? И я думаю, привлекательная часть вики заключается в том, что все интуитивно понимают это, знаете ли, с точки зрения ценности, но на самом деле измерение влияния прямо сейчас нелегко. >> Я согласен с тем, что сказали Брейсон и Девон, и я думаю, что, как бы, моя, как бы, мета-формулировка этого заключается в том, что самая сложная часть прямо сейчас — это, как бы, инженерия каналов, где цель — точность, но также и управление затратами. Вы, вероятно, не хотите тратить целое состояние на все ваши данные и все ваши обновления. Вы будете плакать. И поэтому, знаете ли, можете ли вы обойтись, как бы, общаясь с, я не знаю, это зависит от вашего промпта и зависит от всего остального, и как все это смешивается, и да, это многомерная оптимизационная задача, которую, я думаю, довольно сложно решить хорошо. >> Я думаю, я хочу добавить еще одну вещь. Плюс плюс один к тому, что сказал Девон в конце о измерении ROI на вики. Я думаю, что измерение ROI на многих случаях использования агентов действительно сложно, а на вики особенно сложно, потому что, знаете ли, ваш агент может читать из вашей вики, но, как бы, улучшило ли то, что он прочитал, его качество. Так что это то, над чем мы все еще думаем, и у нас пока нет хороших ответов, но я думаю, что это очень важная вещь, которую нужно сделать, особенно если вы хотите продать это людям. Вам нужно сказать им: «Эй, это действительно сделает вашу жизнь или вашего агента лучше». И я думаю, да, это очень сложно сделать хорошо. >> Я собирался спросить именно это. Как вы думаете об измерении влияния вики? Ваши агенты лучше благодаря ее существованию? Как вы это измеряете? Вы парень по оценке. Вы мне скажите, Харрисон. Вы знаете. >> Идеи, которые мы обсуждали для, как бы, open wiki на кодовых базах, были, знаете ли, запустить бенчмарк кодирования агента по, знаете ли, его задаче без документа, а затем повторно запустить его с документом, и, знаете ли, если это, как бы, SweetBench, эти бенчмарки, как бы, очень насыщены, так что, знаете ли, он будет работать хорошо или агенты будут работать хорошо с лучшей документацией или без нее, но то, на что мы собирались смотреть, это, знаете ли, более ли он эффективен, то есть, может ли он получить тот же правильный ответ, но быстрее и с меньшим количеством вызовов инструментов и меньшим количеством токенов. И, знаете ли, мы пробовали с готовыми бенчмарками, агенты, как бы, знаете ли, эти бенчмарки уже есть в обучающих данных этих агентов с обучающими данными этих моделей. Так что, как бы, это не имеет большого значения, потому что они просто знают, что делать. Так что я думаю, что требуется разработка внутренних оценок, но да, то, как мы думали об этом, это, как бы, может ли он получить правильный ответ с меньшим количеством вызовов инструментов и меньшим количеством потребляемых токенов, потому что теоретически он должен, он не должен искать так много, если вики содержит всю необходимую информацию. Он должен быть в состоянии найти этот лаконичный ответ, а затем использовать его для применения или применения к решению. >> Да, я согласен с этим. Мы провели некоторое внутреннее тестирование, и, знаете ли, для клиентов, у которых есть оценки, мы как бы работаем с ними над этим. Но, да, как бы, я думаю, что эффективность токенов — это действительно цель, с точки зрения внутренней оценки, когда мы называем это кэшем, по сути, вы работаете над темой, у которой есть запись вики, знаете ли, запуски могут стоить примерно вдвое дешевле, потому что он собирает меньше контекста, это, как бы, способ, которым вы увидите эффективность токенов. Другое интересное наблюдение было, которое, знаете ли, также имеет смысл интуитивно, но, как бы, выходные данные более последовательны. Интересно, как бы, если вы запустите тот же агент по той же задаче, как бы, 10 раз, вы получите вариации в выходных данных, как бы, знаете ли, даже если он получит правильный ответ, но если у вас есть та же отправная точка, которая является вики, так что у вас есть более последовательное семя, результаты также более надежны и последовательны. >> Возможно, два, я просто хочу поделиться, хочу поделиться, есть два способа думать об этом. Один — это подключение этой вики к вашим существующим рабочим процессам, в этом случае, знаете ли, надеюсь, вы увидите, как бы, дешевле, быстрее, потому что вы делаете меньше исследований, а затем также лучше, как бы, меньше человеческих вмешательств, когда вы думаете о, как бы, лучше для существующих рабочих процессов агентов, а затем второй вопрос, который не является, как бы, постингом, но на самом деле искренне, я не знаю, это то, какие новые виды вещей позволяет делать эта, как бы, предварительно созданная вещь, и эти вещи, вероятно, будут более основаны, как бы, все новое оценивается, и поэтому эта корзина работы, которую они даже не делают сегодня, но наличие этой вики позволяет вам делать, вероятно, сначала будет электронными письмами по ощущениям, а затем позже у нас будут, как бы, более строгие электронные письма. Но >> Есть ли хорошие примеры этого, последнего типа вещей, которые являются чисто новыми, которые вы можете делать с вики? Моя теория заключается в том, что вики в некотором смысле являются памятью агента, и, как бы, очень хорошая память, надеюсь, даст агентам возможность работать над задачами с более длительным горизонтом, и поэтому, как бы, очевидно, зависит от вашего контекста, но для организации любая задача, которую вы можете рассматривать как долгосрочную, вы можете фактически развернуть агента в этой задаче, где вы, возможно, даже не могли бы сделать это раньше, что-то вроде этого. Я думаю, я на самом деле не слишком много думал об этом, но одна вещь, о которой стоит подумать, это проактивные действия агента. Так что, как бы, с большинством систем памяти, которые, как бы, привязаны к вашему Клоду, они помнят, что вы им говорите, но они не помнят вещи проактивно, потому что они не подключают внешние источники и не могут, как бы, обновляться сами по себе. Но если ваш агент может, знаете ли, подключаться к этим источникам данных, таким как Slack, ваша электронная почта или Twitter, что бы это ни было, тогда он может проактивно запоминать вещи, например, из вашей ленты Twitter, которую вы еще не видели, о исследованиях, а затем он может, знаете ли, предлагать или предпринимать действия от вашего имени, без необходимости заставлять вас его запрашивать. Это очень мета. И я также хочу предварить это тем, что мы на самом деле еще не пробовали это внутренне. Но, знаете ли, это то, о чем я думаю, как бы, соединяя агентов с другими источниками, чтобы он мог сам находить вещи, которые, как он думает, вас могут заинтересовать или которые вы хотите запомнить, а затем, если это, как бы, инженерный агент, возможно, он может прототипировать новые функции или задачи для вас или, как бы, знаете ли, составлять новые, как бы, контент или, как бы, представлять вам идеи проактивно, а не реактивно. Другая идея, которую я добавлю, — это что-то, что я считаю действительно интересным, — это, как бы, агентское сотрудничество, по сути, знаете ли, если у вас есть агенты из разных команд, продукты в компании, имея вики как своего рода центральный репозиторий, в который они все вносят свой вклад и из которого читают и пишут, я думаю, это открывает, как бы, это, вероятно, долгосрочная задача, в конечном итоге, но я думаю, что этот слой сотрудничества действительно, действительно интересен. Я хочу скоро перейти к вопросам, поэтому я, напоминаю людям зайти в раздел вопросов и ответов и проголосовать за те, которые вы хотите услышать, или добавить свои собственные. Но прежде чем мы это сделаем, Девин, вы дали мне горячую мысль, что вы не думаете, что вики — это правильная абстракция, но вы здесь на вебинаре о вики. Так что, так что в чем нюанс? >> Ну, я, я, я как бы намекнул на это раньше, да? И я думаю, что просто способ, которым мы говорим о вики сегодня, очень ориентирован на человека. Но я думаю, что если мы пересмотрим проблему с точки зрения агента в первую очередь, вы получите, вы фактически пересмотрите как контент, так и структуру с точки зрения эффективности токенов. И я действительно думаю, что форма другая. Так что я думаю, что вики, как бы, в целом верно, но я думаю, что я действительно думаю, что я не думаю, что мы будем, если мы ускоримся на год, это будет, как бы, я думаю, мы будем думать об этом больше как о кэше или индексе, как Джефф упоминал раньше. >> Что это? Можете ли вы дать мне конкретный пример того, что это значит с точки зрения формы вики? Как, что не должно быть? Что должно быть? Я думаю, язык будет очень, я имею в виду, мы уже видим это, гораздо больше тур, как бы, вам не нужен проза в том же смысле для агентов, как и для людей, очень ссылочная, даже больше, чем существующие, как бы, статьи в стиле вики, потому что агенты очень хорошо справляются с тем, что вот вся информация, если ей нужно провести дополнительное исследование, вот где она может ссылаться. Я думаю, это более дружелюбно к агентам, чем для людей, вы не хотите копаться, но агенты очень хорошо справляются с этим. И затем [очищает горло] другая часть — это просто выселение. Как бы, вики для людей, вы как бы хотите сохранить вещи навсегда, потому что это может занять у вас пару часов или дней, чтобы прийти к тому же выводу. Но для агентов, я думаю, мы, вероятно, увидим что-то, где, если вики не используется, вы просто выселяете ее. Или и [очищает горло] как бы, более строго относитесь к тому, какая информация вообще имеет смысл записывать в вики, потому что, возможно, ее действительно легко и дешево пересчитать. Джефф, я думаю, вы описали вики как набор гиперссылок на страницы в начале. Так что я предполагаю, что вы согласны с, как бы, комментариями Девина относительно ссылок. Есть ли что-нибудь еще, что можно добавить в плане лучшего способа гиперссылки этих страниц друг на друга? >> Ум, я думаю, есть куча переменных, связанных с тем, как вы даете агентам возможность, как бы, делать постепенное раскрытие. И поэтому, как бы, какими должны быть ваши страницы, какими короткими должны быть ваши страницы, чтобы вы могли, как бы, сбрасывать заголовки и использовать это как, как бы, постепенное раскрытие, как ссылки, насколько агрессивно вы должны делать активные ссылки по сравнению с, как бы, пассивными ссылками, где они хотят использовать поисковый запрос для поиска корпуса и поиска другой страницы. Как вы очищаете обратные ссылки, когда они становятся устаревшими или удаляются. Да, есть много, как бы, этих, как бы, проблем с обслуживанием, связанных с агентом. И, да, я не думаю, что у меня есть ответы на них, и они, вероятно, варьируются в зависимости от вашего варианта использования. Это все, что я хочу сказать. >> Круто. Хорошо, переходим к некоторым вопросам и ответам. Мне было бы интересно узнать для организаций, которые не состоят из программистов и инженеров, а скорее из работников умственного труда, есть ли у вас значимая метрика для измерения ценности там? И я бы, возможно, добавил что-то еще, что является даже более базовым вопросом, как, видите ли вы, что вики используются для, как бы, работы с знаниями, или это в основном для кодирования на данный момент? >> Я думаю, да, для работы с знаниями. Я думаю, если вы можете создать вики общего назначения, то просто из, знаете ли, всех источников вашей компании, тогда, знаете ли, предполагая, что непрограммисты в вашей организации уже используют агентов для какой-либо задачи или, по крайней мере, ChatGPT для, как бы, задавания вопросов, если вы можете подключить эту вики к этому чат-интерфейсу, который они уже используют, надеюсь, вы сможете сделать их немного продуктивнее или отвечать на их вопросы быстрее, не заставляя их обращаться к людям. Для измерения ROI на этом, я думаю, это так же сложно, как, знаете ли, измерение для чего-либо еще. Как, знаете ли, являются ли они способны разрешить больше вопросов в своем агенте, когда он запрашивает вики, по сравнению с обращением к людям? Но я не знаю. Это все еще неизвестно для меня, кроме того, могут ли они получить ответы быстрее и быстрее, чем без вики? Я возьму крайнее мнение здесь, которое заключается в том, что я думаю, что я даже не обязательно буду использовать термин вики, но что по сути вики — это состояние организации, это своего рода слой состояния, да, организации или может быть. Я думаю, что этот инструмент сам по себе будет как коммуникационным, координационным, так и исполнительным уровнем для каждой компании на Земле. Так что это, знаете ли, безусловно, влияет на работников умственного труда, но всех. >> Да, я скажу, что у нас есть примеры клиентов, с которыми мы работаем, которые, я имею в виду, DOSU очень ориентирован на продуктовое инженерное знание, как бы, сторону организации, но у нас есть люди, которые строят это на стороне GTM или стороне поддержки клиентов, где, знаете ли, наличие записи вики для каждого клиента имеет большой смысл, потому что это очень распространенный запрос. Сказав это, я скажу, возвращаясь к проблемам вики, работа с знаниями, вики в организациях очень сложны с точки зрения RBAC, кто может видеть что. Как вики отличается от создания графа знаний / графа контекста и, возможно, другого варианта этого, почему вики вместо графа знаний? >> Я имею в виду, является ли вики типом графа знаний? Как, если вы думаете о, как бы, концепции вики Карпати, это куча файлов, которые ссылаются друг на друга, или, как бы, как Google, что, как бы, OKF Open Knowledge Format, где одна ключевая часть этого — это ссылки на страницы туда и обратно. Это своего рода граф. Так что это, это как бы другой способ хранения узлов вашего графа, но как бы, если они ссылаются друг на друга в этой паутине ссылок, это своего рода граф. >> Да, я просто скажу, как бы, извините, я собирался сказать, что RDF тройное хранилище Neo4j стиль, жесткая база данных графа, я думаю, просто слишком, слишком предвзято, и вы хотите, чтобы агент имел больше гибкости, и вики дает вам ссылки, и это то, что вы хотите, вы не хотите, на самом деле, существительное-глагол-существительное. >> Да, я собирался сказать то же самое. В основном, граф — это больше язык запросов, он гораздо более структурирован. Я также думаю, что вики, знаете ли, хорошо подходят для семантического пространства, которое, как бы, когда вы предоставляете информацию, вы обычно находитесь в похожем семантическом пространстве по сравнению с графовым запросом. >> Я собирался спросить Джеффа, поскольку у нас есть вы по вики, векторным базам данных, они хорошо сочетаются? Они отдельные? Как вы думаете о них? >> Я не знаю, что такое векторная база данных. Никто никогда не давал мне хорошего определения векторной базы данных. Это просто, насколько я могу судить, термин, который Андреас и Хоровиц придумали. [хмыкает] >> Да, ну, оказывается, каждая база данных — это векторная база данных, потому что каждая база данных теперь имеет векторный поиск. Так что, опять же, способ, которым мы думаем о проблеме, заключается в том, как хранить огромные объемы неструктурированных данных и как сделать их очень доступными для поиска, и поэтому, как бы, это проблема, которую мы хотим решить, и мы должны предположить, что мы решим все проблемы, связанные с этим. И поэтому я думаю, что именно поэтому мы заинтересованы в этом. >> Можете ли вы уточнить способы узнать, когда вики неверна или устарела? О, и есть продолжение. Извините, я не видел этого. Нам нужен прокси-сервер валидации? Допустим, агент будет брать интервью у человека. Каковы будут триггеры для агента? >> Я думаю, это сложно, да? Знать, когда это неправильно, — это проблема оценки, где, надеюсь, это никогда не будет неправильно, потому что вы можете исправить это до того, как оно достигнет этой точки. Когда оно устареет. Ну, первое, что приходит на ум, это, как бы, концепция open wiki, как бы, файл открытых вопросов. Он может иметь открытые вопросы, и, возможно, он может добавлять заметки, как бы, если он видит, если он добавляет некоторый контекст, который, по его мнению, может устареть, он может обновить эти открытые вопросы или, как бы, вернуться к файлу с, как бы, «эй, пересмотри это в, знаете ли, в эту дату, потому что это может устареть». Я, если мы предполагаем, что люди не смотрят на эти данные и не могут или не будут вручную изменять, потому что если люди это делают, то вы можете, знаете ли, сказать, что человек может аудировать это, но как бы, если это только для агента, как бы, попытка промптировать в это, идея о том, когда что-то может устареть, запишите это, а затем заставьте его пересмотреть этот файл «контекст может устареть» в будущем, чтобы затем просмотреть свой собственный контекст. Да, >> Я просто скажу то, что я сказал раньше, вокруг, как бы, я думаю, что знания в конечном итоге согласованы, пока вы строите, как бы, необходимые циклы для самокоррекции. >> Что это исправляет себя? >> Что представляют собой циклы? >> Простой цикл — это, знаете ли, агент читает его, он обнаруживает, что он неверен, у него есть инструмент для его исправления. Я имею в виду, это самый базовый цикл. [очищает горло] Каков лучший способ представить агенту вики? Операции файловой системы / bash инструменты поиска. Я могу пройтись по этому тоже. Я думаю, это, вероятно, смесь того и другого, да? Как, как мы обнаружили, это агентный поиск, где он просто использует инструменты файловой системы. Не специально для вики, а просто для, как бы, попытки заставить агентов находить определенный контекст в этих больших каталогах, как бы, кодовых базах. Они очень хорошо справляются с инструментами файловой системы. Это не всегда оптимальный путь, как бы, знаете ли, если вы можете, как бы, вы можете захотеть иметь смесь, знаете ли, агентного поиска плюс полнотекстовый поиск для простого поиска ключевых слов, или, возможно, есть, знаете ли, некоторая часть, как бы, семантического поиска. Но я, я не думаю, что здесь есть универсальное решение. Вы, вероятно, хотите смесь режимов извлечения. Но затем, позволяете ли вы агенту выбирать этот режим извлечения, или вы просто как бы бросаете все, знаете ли, n из них, когда агент задает вопрос, я думаю, это своего рода неизвестно для меня. И я могу вмешаться в это. Я думаю, было много, как бы, дезинформации о поиске, в основном распространяемой людьми, которые хотели бы, чтобы вы максимизировали токены, были бы рады, если бы вы каждый раз переоткрывали 85 файлов. И я думаю, что горький урок, примененный к поиску, заключается в том, что вы должны дать агенту все инструменты, а затем, как бы, доверять агенту использовать эти инструменты эффективно, чтобы обнаружить нужную информацию как можно быстрее. И поэтому я как бы просто повторяю то, что сказал Брейс, которое заключается в том, чтобы дать ему, да, дать ему возможность GP находить закономерности в данных с помощью reax, что очень полезно. Но также мы думаем, знаете ли, дайте ему разреженные векторы, дайте ему также плотный векторный семантический поиск и позвольте агенту решить правильное сочетание инструментов и правильный порядок этих инструментов, чтобы как можно быстрее получить нужную информацию и, надеюсь, найти ее вообще. Это одна из ключевых проблем — не просто найти ее быстро и дешево, но и найти ее вообще. Последнее, что я скажу, это то, что я не думаю, что файловые системы являются или будут, как бы, линди, как представление данных в состоянии покоя для этих данных. И я думаю, что есть, знаете ли, файловые системы очень хороши в некоторых вещах, которые, в частности, чрезвычайно быстрый доступ к файлам, который необходим для некоторых вещей, таких как линтинг, например, или другие, как бы, операции, ориентированные на код, но они также очень плохи во многих вещах. Они плохи в контроле версий. Они плохи или медленны в контроле версий. Они плохи в контроле доступа. Они плохи в обнаружении. Я просто не думаю, что, я имею в виду, мы просто снова изобретаем все заново. Есть причина, по которой были изобретены базы данных. Знаете ли, мы не просто максималисты файловых систем, знаете ли, с 50-х годов или что-то в этом роде. И поэтому я думаю, что мы как бы, как бы, заново открываем это снова, но как бы, это будет вновь открыто. >> Но есть разница между хранением файлов и тем, как они предоставляются LLM, верно? Конечно, но также есть, я думаю, идеальный способ хранения данных, чтобы он мог быть предоставлен LLM, который, я полагаю, зависит от идеального способа предоставления его LLM, что возвращает нас к тому, как агенты должны получать доступ, и нужно ли им получать чтение, запись, нужно ли им давать им поиск? Каков правильный способ, как, если вам нужен семантический поиск, вы, вероятно, не будете хранить его в файловой системе, как очевидный пример в одном направлении. >> Да. Ум, круто. Я думаю, мы почти у времени. Так что спасибо. Спасибо всем, кто присоединился. Здесь также есть куча вопросов. Я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я,1, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, я, I'