Transcription
Добрый день. Согласитесь, непорядок, что мы такие разные, а пресловутый искусственный интеллект у нас один на всех. Ну, их несколько этих ботов всезнаек, но они примерно одинаково устроены и учились на одних и тех же данных. Пока мы обсуждаем с ботом новые для нас темы или аспекты, всё более или менее в порядке.
Ну, а если мы углубляем и развиваем свою профессиональную тему, если нужно, чтобы бот был в этой теме, знал основы не хуже, а лучше нас, помнил наш опыт, о котором мы забыли, оценивал применимость решений в наших условиях. Вот тут-то и требуется недостающие знания науки или профессии, долговременная память обо всём нашем опыте, модель мира, в котором будут применяться идеи и выводы. Но можно ли прямо сейчас создать такой персональный или групповой ИИ? Как это сделать, хотя бы в общих чертах? Какие трудности ждут на этом пути? Есть ли что-то такое в готовом виде? Вот об этом мы сегодня и поговорим, вернее, начнём разговор.
И снова я буду отталкиваться от продуктов и решений фирмы Open AI как наиболее массовых от того самого частей, идущих с ними в пакете. Я ни в коем случае не утверждаю, что продукты Open AI лучше, чем у конкурентов, но лично мне удобнее ими пользоваться по ряду причин, из которых привычка не последняя. Однако я думаю, что у конкурентов есть похожее решение, и у нас всегда есть выбор. И ещё я описываю возможные решения и оцениваю их умозрительно, рассказывая, как в принципе можно сделать. В этом и других моих видео нет подробных инструкций, что и как изготовить и запустить. Я рассказываю всё это для тех, кто в принципе рассматривает возможность создания персонального и показываю направление движения и самые явные ухабы на этом пути. Технические же детали потребуют от желающих освоения новых знаний или общения с профессионалами. Так вот, мне хочется думать, что после моих видео профессионалам будет несколько труднее вешать вам лапшу на уши.
Самое простой, доступный всем и каждому способ дать чат GPT долговременную память - это создать кастомный GPT и загрузить файлы в его секцию Knowledge. Я рассказывал о создании такого помощника. Посмотрите, если интересно. Не буду грузить вас цифрами о токенах и размерах файлов, но по моим прикидкам вноч кастомного GPT можно загрузить значительную часть моего архива за целых 30 лет, включая почту. Ну и что? Кастомный GPT сразу станет знать и помнить всё, что когда-то знал я. Отнюдь, как говорил поруч Ржевский, собственный рак кастомного GPT предельно прост, даже примитивен по нынешним временам. Напомню, при загрузке текст из файлов разбивается на так называемые чанки, упрощённо куски текста по нескольку сотен слов, несколько абзацев или даже небольших секций. Такие достаточно большие куски обычно осмыслены и относятся к одной теме. Каждый чанк превращается в вектор и хранится в векторной базе данных. Запроски пяти тоже превращается в вектор. И потом рак ищет в векторной базе векторы чанков, близкие к вектору запроса. Человеческим языком рак ищет в ваших данных куски текста размером примерно в страницу, релевантные вашему запросу и включает их в контекст. Если тема многое детально обсуждалась в ваших материалах, рак может найти хоть тыся релевантных чанков, но взять в контекст он может условно 100 из них, потому что контекст ограничен по размеру. Конечно, рак возьмёт самые подходящие фрагменты текста, но всё равно это будет только, к примеру, десятая часть того, что сказано в ваших файлах по этой теме. То есть пресловутая долговременная память будет использована не полностью и неточно. Если же запрос включает несколько тем, то рак вообще может перекосить в сторону одной из них, потому что по нескольким темам он найдёт несколько тысяч фрагментов, а взять в контекст сможет всё равно только часть. Вас такое устроит? Меня не очень.
Важно помнить, что кастомный GPT нужно проинструктировать, когда и как использовать ночдж. Например, мой упомянутый близнец проинструктирован искать ответы только и исключительно в ночь. А если в ней нет нужной информации, отвечать, что Александр не поделился мыслями по этому вопросу. К слову, такая настройка сделала моего близнеца очень чувствительным к содержанию запросов, но это уже нюансы, в которых можно утонуть. Без специальных инструкций кастомный GPT будет сам решать, когда использовать нодж, а когда воспользоваться собственными знаниями. Так что, если вам в самом деле нужна долговременная память, без инструкции не обойтись. Ну, тут всё опять же относительно просто. Расскажите чат GPT, что вам требуется, и он выдаст пресловутый системный промт для кастомного собрата. Напомню, речь о простейшем рак кастомного GPT. Это важно, потому что есть гораздо более совершенные алгоритмы, и о них речь дальше. Однако даже такой паллиатив не так просто получить. Для того, чтобы просто собрать всю вашу память по всем дискам, превратить её в тексты и нарезать файлами по 2 млн токенов, вам не хватит навыков обычного квалифицированного пользователя. Теоретически это можно сделать вручную средствами Windows и Office, но нужно знать некоторые хитрости, и сама работа потребует определённых усилий и времени. Есть готовые программы для этого, но их нужно будет установить и настроить, а это не всегда тривиально. Разбиение же на файлы нужного объёма может потребовать некоторого программирования, которое сейчас сильно легче с чем же чат GPT, но всё равно это новые знания и опыт.
Пусть, к примеру, вас устроит такой кривой рак, и пусть вы собрали всю вашу память в файлы. Однако вам нужно загрузить эту персональную информацию в knowledge, то есть в облако, где с ней смогут делать что угодно. Вы готовы поделиться неизвестно с кем всей своей информацией. Есть вариант, когда можно использовать простейший подход с кастомным GPT, но оставить информацию при себе, хотя уровень сложности снова повышается, и вам придётся научиться пользоваться разными, не всегда удобными программами и использовать AP. Самое простое, нужно создать собственную векторную базу на своём компьютере и подключить к ней кастомный GPT через так называемые actions. Эта работа включает тот же сбор текстов, но нужно сделать ещё и то, что GPT делает сам. Разбить текст начанки и превратить их в векторы. Потом нужно настроить удалённый доступ к базе и подключить кастомный GPT, используя IP и секцию Actions в его конфигурации. Эти задачи, если не для программиста в полном смысле слова, то уже для компьютерного специалиста. Важно, что в итоге вы получите долговременную память в виде того же примитивного и кривого раккастомного GPT, но зато ваши файлы будут при вас, и, к слову, вы сможете обновлять и оптимизировать свою векторную базу.
А вот теперь простые решения действительно закончились. Дада, это были простые решения. Дальше возможности банального продвинутого пользователя компьютера исчерпываются и начинаются опции для тех, кто может и хочет разобраться в архитектуре, настройках и программировании ботов. Однако не переключайтесь, потому что, во-первых, никто не помешает вам в этом разобраться и получить полезный навык. Во-вторых, есть специалисты, которые помогут вам за ваши деньги, и сказанное дальше поможет вам сориентироваться в общении с ними.
Последние 2 года рак стремительно развивается. В общем случае, это уже не встроенная функция LLM, а внешняя по отношению к ней система. Не модуль, а именно система, стоящая между пользователем человеком и языковой моделью. Современный рак - это агент или даже группа агентов, наученных общаться с LLM для выработки полного, точного, достоверного и непротиворечивого ответа. Субъективно мне показалось, что две из трёх статей на Arc Siv в этом году посвящены или касаются рака. Смысл современного рак в том, чтобы итерационно посылать запросы на основе её предыдущих ответов, дополняя каждый запрос максимально точной и полной информацией из доступных источников, именно источников, потому что, к примеру, сложный рак может дополнить запрос актуальной информации из векторной базы пользователя, затем дополнить ответ LLM данными из профессиональной уже базы знаний и попросить поискать противоречия, а затем на следующем шаге дополнить следующий ответ правилами и отношениями из симуляции модели мира и снова вернуть для окончательного заключения. Как обычно, многообещающая технология кажется универсальным средством. С помощью рак пытаются решать все проблемы LLM и даже вроде как имеют успех. Повышение точности ответов, о котором я говорил, борьба с галлюцинациями, персонализация, многошаговые рассуждение и сложные запросы, профессиональная подготовка или, по-научному, адаптация к доменам знаний, даже симуляция модели мира. В системы Рак включают малые языковые модели SLM, участвующие на всех этапах и часто выполняющие предварительный анализ вместо LLM. SLM в раксистеме работают как сервисный слой, отвечают за структурное, логическое и проверочное обеспечение процессов. LLM генерирует текст, а SLM следит, чтобы поиск был точным, шаги рассуждения последовательными, а ответы соответствовали фактам и доменным правилам. Обратите внимание, в самом простом случае кастомного GPT вы обращались прямо к LLM, и она применяла свой немудрённый рак. Вы же могли повлиять на процесс только через системный промпт. В более совершенных и универсальных случаях мы посылаем запрос рак агенту, а он уже сам более или менее сложным образом общается с LLM для получения лучшего ответа. То есть между нами и так называемым искусственным интеллектом появляется агент к слову на интеллект не претендующий. Интересно, правда? Обратите внимание, вспомните моё предыдущее видео. Этот агент Рак делает многое из того, что делал я в сотрудничестве с LLM. Это отдельная внешняя независимая от LLM-системы, которая, к слову, вполне может быть реализована локально. И если почитать статьи об её архитектуре, может дать те самые долговременную память, профессиональную ориентацию и даже модель мира. Так что ура, мы на пороге светлого будущего или уже в нём?
И снова не совсем. Однозначно правильно работающий рак может обеспечить долговременную память и оперативное информирование ИИ. Векторную информацию легко обновлять, она может быть структурирована, её можно выбирать итерационно. А вот с профессиональной подготовкой всё не так радужно. Дело в том, что рак не позволит применить профессиональные знания как существенную и неотъемлемую часть общих знаний модели. Рак не даёт знания предмета, а только снабжает информацией о нём. Поэтому все 3 с поно типа мышления и в отношении внешней информации едва ли работают как надо. Для так называемой доменной специализации, так сказать, профессиональной подготовки для стабильных фундаментальных знаний о науке или профессии, правильнее доучивать модель, делать пресловутый find tuning. Find tuning формирует системное владение предметом. Модель не только цитирует, но и умеет обобщать, применять принципы в новых контекстах. Доучивание решает вопрос с профессиональной специализацией. Может ли простой смертный доучить облачную модель, то есть взять какую-нибудь из моделей Open AI и вот так вот доучить? Вполне опять же нужны знания, как, но в этом при системном складе ума можно разобраться за несколько недель. Однако доучивание на пресловутых 200 книгах может стоить заметных денег по ценам облачного сервиса от нескольких сотен до пары тысяч долларов. Более того, в облаке есть модели с контекстным окном в целый миллион токенов. Тут уж, в самом деле, можно дать ей над чем поразмыслить.
Вот только с моделью мира всё, на мой взгляд, пока плохо. Есть такой графрак, который, как легко понять, использует графовое представление данных. Его можно использовать для выборки правил и даже сделать граф в его основе динамическим и многомерным. Но, говорят, это пока неэффективно. Нужно ещё и модель специальным образом доучить и добавить специальную малую языковую модель, отвечающую за логику. В общем, насколько я понимаю, даже фрагментарное моделирование мира- самое слабое звено в системе персонифицированного искусственного интеллекта. Можно включить враг граф символов связи и событий, можно научить моделями пользоваться, но в отличие от долговременной памяти и профессиональных знаний, результат будет спорным или вообще отрицательным. Пока будет. И это важная оговорка, потому что технология эта стремительно развивается.
[музыка]
Итак, есть решение, позволяющее построить систему на основе рак, обеспечивающее LLM долговременной памятью, доучить модель нужной профессии или науки, даже подключить слабую пока имитацию системы правил и отношений модели мира. Каждая статья на Arc, сообщающая об успехах в развитии этих компонентов, как правило, содержит ссылку на программный код, который можно скачать и развернуть у себя. Но почему нет готового приложения с кнопками, которые можно развернуть из инсталляции, просто выбрать архитектуру системы Рак, указать папки с данными для него, выбрать модель LLM и указать опять же папку с книгами, на которых её можно доучить. Ну, во-первых, дело это и в самом деле новое. Генеративный и вышел на рынок 3 года назад, а рак стал притчей во языцах только в этом году. Нашим любимым персоналкам потребовалось примерно 10 лет, чтобы сложились стандарты их устройства и использования. Идёт бурное развитие технологии именно рак и агентов, его использующих, но нет пока такого набора архитектур и алгоритмов, которые были бы признаны всеми. Более того, скорее развиваются протоколы связи между агентами, вроде MCP, чтобы нужные агентные системы можно было складывать как кубики.
А во-вторых, многим ли людям нужно такое приложение персонализирующее и вам нужно? Мне бы хотелось такое иметь, но я уже не работаю, так что смогу без него обойтись. И потом, на самом деле, любой человек, не боящийся компьютеров, может при желании такое решение себе собрать. Я при желании могу. Ну а если я в мои годы могу, почему не может любой из вас? И вот ещё один явный булыжник на пути. Облачные модели, доступные через АИ, обладают рядом ограничений. У одних большое контекстное окно, но их нельзя доучивать. Другие можно доучивать, но они слишком слабые, чтобы демонстрировать эмерджентные возможности. Но понятно, облачные сервисы ограничивают модели, чтобы экономить ресурсы. Мы уже знаем, что рак агента можно развернуть на своём компьютере. А можно ли саму LLM развернуть локально у себя и контролировать её параметры и дообучения? И вообще, при таком умном рагенте, не вырождается ли роль большой языковой модели как носителя пресловутого искусственного интеллекта? Вот об этом мы и поговорим в следующий раз. Так что не забудьте подписаться, чтобы не пропустить.