Pull to refresh

Comments 45

Для визуализации компонентов и создания RAG, лично для себя нашел удобным визуализацию и быстрое построение систем в Flowise.

Хостить можно локально.
Весь проект можно переносить (export/import) в JSON формате.

А есть какие то функции для построения ROG или graphrog в микромасштабе? Например у меня вся база данных это 200 записей faq. Если просто их скормить llm, она уже начинает плохо работать. Хотелось бы использовать подход из статьи но без поднятия сложных и тяжёлых фреймворков

можно сделать vanilla rag на ленгчейн. это делается 30 стоками кода. если код писать не хочется - есть no code, low code rag платформы

Можете кинуть какой то пример?

UFO landed and left these words here

отчасти. РАГ используется как стандарт во всех подобных случаях в компаниях. до-обучение имеет смысл в отдельных задачах, но не заменяет РАГ, тк без него не возможно реализовать контроль доступа или ролевую модель, например.

"Это может звучать не очень впечатляюще, но на самом деле это огромный шаг вперед. Они буквально могут понять любую чепуху, которую вводят ваши пользователи, и превратить ее во что-то осмысленное".

"Это особенно верно для общедоступных моделей, таких как ChatGPT или Gemini. Они обучены с учётом множества сомнительных политик,". К описываемым в данной работе технологиям RAG это не имеет никакого отношения, т.к. используются локальные данные.

Такое ощущение, что сей труд - плод глюков слабенькой LLM

а что по Вашему тут не так?

"а что по Вашему тут не так?"

- а то не так, что Автор не понимает принципы работы RAG, что RAG работает только с локальными данными и процесс обучения "таких как ChatGPT или Gemini " не имеет никакого отношения к работе RAG;

  • а то не так, что Автор не разбирается в теме и не отвечает за свои слова. А если отвечает, то пусть объяснит конкретно, с примерами как "множества сомнительных политик" мешают работе RAG, какие политики Автор считает сомнительными

Я написал не один RAG и мешали мне не "сомнительные политики", а многое другое.

Всё, что мешает/затрудняет развёртыванию RAG уже хорошо и подробно описано на Хабре.

Если коротко:

Организационная - запутанная структура исходных данных;

Технологическая - отсутствие небольших LLM, хорошо работающих с нашим языком;

Техническая, она же финансовая - дорогие графические карточки

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

а почему вы непременно хотите развернуть РАГ локально?

Это не я хочу. Это правила такие, связанные с соблюдением конфиденциальности и актуальности данных. Корпоративные данные не должны покидать контролируемый и защищённый контур корпорации. Надо иметь возможность обновлять БД с режиме реального времени

Ажур private open AI (Azure AI Services)? вообще куча корпораций с вами в США не согласна, это какой то рудимент российского корпоративного мышления что все должно стоять непременно у нас в подвале

"рудимент российского корпоративного мышления" - а это уже не ко мне. Я решаю конкретные задачи по тем правилам, которые сформулированы здесь и сейчас и на остальное абсолютно наплевать. Остальное - словоблудие, не имеющее никакого отношения к RAG. На эти вопросы нет времени и нет желания желания

а кем они вам были сформированы?

Есть такое понятие как ТЗ

хорошо, переформулирую. какого типа компании вам это тз составляют и что там сказано?

"какого типа компании" Извините, не в моей компетенции обсуждать эти вопросы

"что там сказано?" Извините, с Вами прекращаю любой разговор

ответ похож на генерацию слабенькой LLM

Почитал ваш диалог. Вы знаете, тонна крупных российских компаний (ок, министерства и ОИВы/ФОИВы тоже компаниями считаем тут) сейчас (на декабрь 24 ситуация была такой же) старается разворачивать LLM (и использовать РАГи) внутри себя (тот самый подвальный рудимент). Я работал (до буквально последних дней марта) в одном таком министерстве и да, у нас внутри мы подняли Квен, к которому прикрутили РАГ-поиск. Притом, что это министерство в десна обнималось и с ребятами из Яндекса, и с ребятами из Сбера с их GigaLegal. Но вот поди ж ты - в интернет нельзя и все тут, хоть какими бумажками обложись по части соблюдения приватностей. Нельзя. Хоть бери и даже те же платные модели он-премис разворачивай (( Рудимент это или не рудимент - вопрос без вопроса, по сути, об этом вам и написали.

Ну, предположим, рудимент. И что теперь? Зарплату-то платит компания, а не облачный провайдер. И регулирование во многих индустриях есть не только корпоративное, но и государственное - и не только в России. И даже без санкций облако может быть запрещено.

И, кстати, я бы поспорил, дешевле ли облако, чем самохост.

Запрос к джемини флеш стоит меньше 5 копеек (в текстовом чате с историей ограниченной 10 запросами). Ответ приходит очень быстро. Сравнимого по качеству ответа по картинкам у открытых моделей нет даже близко. Локальное решение не только дороже но еще и неспособно дать нужного качества.

Запросы по картинкам - что то типа снимка автомобиля ночью в движении и вопроса какой у нее номер. Бесплатные модели а так же платные аутсайдеры(гига, яндекс итп) очень сильно заметно проигрывают мелкой модельке от гугла(и опенаи).

Интересно, что ни разу не видел, чтобы данные перед ретривалом пропускали через LLM. Так то выходит, что, фактически, LLM только агент вывода, и, если юзер плохо сформулировал запрос, что он не "зацепил" нужные чанки, то, все, никакой LLM не спасет. Как будто бы, если LLMом переформулировать запрос, чистить его от ошибок, разные варианты пробовать, то должно повышать вероятность того, что ретривал нужные данные вытянет (особенно, если пользователь плохо владеет языком, или терминологией сферы)?

Да, как будто можно попросить llm вычленить ключевые слова и пересобрать запрос в более строгой форме

"Интересно, что ни разу не видел, чтобы данные перед ретривалом пропускали через LLM " Если говорить о Базе Данных, то это embeddings.

"если юзер плохо сформулировал запрос, что он не "зацепил" нужные чанки, то, все, никакой LLM не спасет." Иногда в этой ситуации помогает MultiQueryRetriever.

Честно говоря, пора принять закон на планетарном уровне, чтобы запретить PDF формат.

А чем заменить?

А djvu текста ещё поболее будет...

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

вполне возможно например использовать html5

Большое спасибо за статью! Очень интересен ваш взгляд на регулярно попадающиеся запрос: хочу чат-бот, который будет консультировать клиентов на основе данных моего сайта. Сайт обычно - крупный интернет-магазин с десятками тысяч позиций и массой характеристик каждой позиции. Как вы думаете, можно в теории реализовать такой сервис набором имеющихся общедоступных инструментов? То есть по сути порядок примерно такой:

  1. ИИ понимает, чего хочет клиент

  2. Идёт на целевой сайт, идёт нужные данные

  3. Собирает внятный ответ и передает его клиенту

    Вроде все просто, но как реализовать п.2 пока не понятно.

А с п. 1 всё понятно??? Завидую!!!!

Просто экспериментируйте! Стройте, проверяйте и отбрасывайте гипотезы. Пару сотен итераций - и вы удивитесь, как просто объяснить ИИ что от него требуется. Как с дрессировкой собак - настойчивость и терпение - и у вас все получится!

Это сделать можно, мы неоднократно делали похожие системы. Пункт 2 обычно решается индексированием сайта в векторную базу

А есть пример использования GraphRAG на каком-то реальном кейсе?

есть, тут больше были общие размышления, я планирую написать более техническую статью с разбором

Примером может быть например бот который консультирует по ТК РФ, или налоговому кодексу. В этих документах есть структура, и многие подпункты не имеют смысла вне главных пунктов закона,и здесь важно учитывать структуру при ответах

Как раз думаю как реализовать бота в слак, который был бы обучен по истории ответов в канале. Но в тредах много нерелевантных ответов и кажется, так как там идут обсуждения. Это так? Если да, то как бы вы поступили если была бы такая задача? Может например как то отмечать правильный ответ или типа того, чтобы можно было генерировать эмбеддинги

Поэтому в программе минимум просто по Вики обучить. Ваш материал очень помог в понимании в какую сторону двигаться. Подскажите, какой фреймворк вы бы использовали? Я так понимаю надо всю вики сначала в векторную базу сгрузить и потом как то использовать llm, скормив ей релевантные документы?

LLamaIndex + GPT4o + Quadrant для прототипа. Нерелевантные ответы можно фильтровать на уровне ingestion (черз LLM например, ранжировать ответы по полезности и сохранять только то что имеет смысл), retreival с помошью re-ranking, и на уровне самой LLM при выдаче ответа. В целом LLM хорошо справляется с пониманием какой ответ был полезным

Нужно сделать прототип и итеративно улучшать его, я бы начал с этого. Дополнилельные данные типа вики тоже не помешают.

Спасибо, а если упростить задачу до обучения по wiki страницам? Weaviate и LLM хватит?

Можно ли научить нейросеть на документации к программе или API и задавать ей вопросы?
Например сделать специализированную нейросеть, которая ничего не знает кроме того что сказано в документации.

да, можно взять за базу опенсорс модель, ту же ламу, и сделать дообучение, например нагенерировав с помощью большей (ChatGPT) модели пар-вопрос-ответ по вашей документациии. Если цель - только отвечать по дукументации, вам скорее всего не потребуется даже большая модель

Можете чуть подробнее рассказать, что нужно делать с данными, чтобы поместить их в векторную ДБ? Рубить руками на чанки, вручную размечать и тегать?
И вопрос про версионность и противоречия: есть ли инструменты, которые проанализируют хранилище документов и скажут "тут несколько похожих, но разных документов, посмотри и грохни лишнее, пожалуйста"?

Sign up to leave a comment.

Information

Website
raftds.ru
Registered
Founded
Employees
101–200 employees
Location
Россия
Representative
Евгений Кокуйкин