Текст в рамках волонтёрского проекта AI-репетитор и помощник в обучении
У компании LangChain есть три open-source фреймворка LangChain, LangGraph и LangSmith. Данные продукты имеют миллионные скачивания, значит это тиражные решения в которых скорее всего учтены типовые вопросы.
С помощью LangChain разработчики могут комбинировать несколько моделей, связывать шаги обработки (chain-of-thought), управлять промтами и подключать внешние источники данных или API. LangChain поддерживает Python.
LangGraph – это фреймворк оркестрации агентных систем. Нужен при значительном усложнении модели. Предоставляет графический интерфейс. Для изучения LangGraph есть уроки.
LangSmith - отвечает за логирование и хранение(?) логов работы агента. Нужен для отладки данных Поскольку мне нравится идея fine-tuning то этот инструмент возможно позволит минимизировать стоимость сбора данных. Для него также есть официальные уроки.
Изучение с точки зрения разработчика лучше начинать с LangChain. На первом этапе это знакомство с объектами которые он предоставляет для работы программисту. Возможно написание какого ни будь в рамках изучения простейшего бота, когда будет идея.
Изначально нравилась идея fine-tuning (до обучения) например GPT4o модели, на примерах правильных диалогов.
Для GPT при этом подходе надо накапливать данные, и по мере накопления, использовать весь объем данных для создания каждый раз новой дообученой модели.
У этого подхода есть требование к качественным данным. Основная ресурсоемкость это в получение качественных данных. Другой момент этого подхода, это некоторая непредсказуемость в получаемом результате. И судя по отзывам GPT 4o, который хотел бы дообучать, рассуждает хуже GROK.
Плюс этого подхода то что нужно только накопление качественных диалогов, которые можно в перспективе использовать для дообучения любой модели которая будет это дообучение поддерживать. LangSmith ожидаю что помимо отладки модели (при любой архитектуре), позволит копить такие диалоги для fine-tuning.
Варианты до настройки моделей:
- fine-tuning корректировка весов, по примерам диалогов.
- RAG (Retrieval-Augmented Generation) – добавление внешних знаний без изменения весов модели
- prompt engineering - оптимизация запросов
- Агентная архитектура
На созвоне прозвучало предложение от Андрея о том что это может быть набор LLM-агентов каждый из которых будет отвечать за свою функцию, например один из агентов будет отвечать за типизацию и т.д.. Продолжая рассуждения, другой будет отвечать за логику и далее по интеллект-стеку. То-есть мышление итогового AI-агента раскладываем на спектр методов его мышления, далее за каждый метод отвечает или группу методов отвечает отдельная модель, и другая модель собирает вместе или как-то учитывает их замечания. Роль методолог мышления AI-Агента.
У Андрея Анатольевича Телятникова была группа где экспериментировали с мультиагентными системами «Экзокортекс 22 века+». Например,
Спринт 4.1 Telegram’
“Шаг 1. Пусть бот-1 напишет вам текст на основе той базы знаний, на которой обучен на текущий момент.
Шаг 2. Пусть бот-2 покритикует написанное ботом-1 и предложит улучшения.
Шаг 3. Пусть бот-1 примет к сведению критику бота-2 (или и оспорит её).
Шаг 4. С учётом дискуссии, состоявшейся между ботами, пусть бот-1 и бот-2 перепишут текст, который выдал бот-1 на шаге 1.”
Здесь как понял идея использования ботов с различной экспертностью, что бы в итоге приходить к некоторому относительно согласованному решению.