Возможности RAG в discourse-ai

Итак, я только что закончил настройку discourse-ai. Интересно, каковы возможности RAG у ИИ?
Я вижу, что он может извлекать контент из постов, но мне приходится спрашивать его несколько раз, прежде чем он действительно поймёт, что информацию нужно искать внутри темы.
Остальные функции работают отлично!

У персонажа есть раздел загрузки, где вы можете загрузить несколько текстовых файлов для своего персонажа.

см.: AI bot - Agents

Однако для этого необходимо настроить эмбеддинги.

Спасибо, я видел этот раздел, это отлично, но у меня всё ещё есть несколько вопросов.

Немного контекста: мы используем Discourse как базу знаний и форум для ответов на технические вопросы, вся наша документация находится там.

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

Теперь о нашей технической документации, которая находится на форуме: мы хотели бы иметь возможность задавать вопросы по ней с помощью ИИ. Насколько я понимаю, чат Discourse-AI не предназначен для этого и, как настроено в инструментах персоны, он будет выполнять только поиск по форуму плюс некоторую обработку ИИ?

Планируется ли внедрение чат-бота с возможностями RAG непосредственно на форуме, включая работу с содержимым тем?

Сегодня это полностью поддерживается с множеством вариантов реализации.

  1. Инструмент поиска можно ограничить группой категорий или тегов (при создании нового персонажа и добавлении инструмента поиска).
  2. Пользовательские инструменты обеспечивают дополнительную гибкость: вы можете отправлять HTTP-запросы к тому же форуму и получать любые данные с форума в любом удобном формате, включая HTTP-запросы к поиску по эмбеддингам. См.: API access to the embedding(s) for a post - #3 by sam. При отправке HTTP-запросов через пользовательский инструмент вы можете указывать заголовки HTTP, чтобы использовать API-ключ, выданный на форуме.
  3. Инструмент чтения позволяет просматривать темы.
  4. Этот незавершённый PR позволит вам искать по загруженным файлам напрямую из инструмента (FEATURE: RAG search within tools by SamSaffron · Pull Request #802 · discourse/discourse-ai · GitHub), что является ещё одним вариантом.
  5. Вы можете управлять модальностью (ЛС против чата) в зависимости от ваших предпочтений.

Пример реализации можно увидеть на ask.discourse.com (который был разработан как бот поддержки для наших клиентов). Самое главное, что для этого не требуется никакого пользовательского плагина — всё работает на основе встроенного плагина Discourse AI.

Отказ от ответственности: я фактический конечный пользователь и даже не понимаю, как на самом деле работают ИИ. К тому же я использую OpenAI.

Есть несколько причин, по которым ИИ не даёт желаемого ответа.

  • Промпт определяет, где и как ИИ может искать информацию. Одно неудачное слово, и он начнёт делать всё, что ему вздумается.
  • ИИ — это не просто Google с ускорителями и навыками объяснения, даже если отчасти это так. Он может находить нужные результаты, причём так же плохо, как и Google. И на самом деле он не читает и не анализирует всё подряд, а просто… так думает.
  • RAG и эмбеддинги работают, но требуют исключительно точных промптов. Однако они дают лишь направление, и часто этого недостаточно для формирования устойчивого ответа. Сами по себе эмбеддинги требуют огромных ручных усилий, и часто тем, сами по себе, оказывается недостаточно. Тема или пост (а тем более пост) могут быть достаточно точными и логичными, но в реальной жизни? Нет. Вот почему ask.discourse.com часто терпит неудачу, если вопрос не задан очень узко и целенаправленно. «Как разрешить регистрацию только с определённых доменов электронной почты?» — и вот вам ответ. «Как получить уведомления, когда в групповом PM-ящике появились новые сообщения?» — и тут много галлюцинаций и неверных ссылок.

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

Это очень верно для компаний, но крайне плохо для отдельного пользователя.

ИИ может быть очень точным. Всё, что для этого нужно, — это значительные человеческие ресурсы для программирования и обслуживания, а также столько вычислительной мощности, что майнинг биткоинов станет дешёвым хобби.

Моя самая слабая сторона в том, что просто добавлять руководства в темы недостаточно.

Это очень важное наблюдение: с системами такого типа вы никогда по-настоящему не закончите.

Мы постоянно повторяем процесс:

  1. Пользователь задаёт вопрос ИИ и получает плохой ответ
  2. Мы проводим анализ
  3. Исправляем документацию, принимаем правильный ответ и удаляем «минные поля» в поиске
  4. Задаём тот же вопрос и получаем правильный ответ

Это не те системы, которые можно развернуть и забыть о них; они требуют постоянной настройки.

Обратите внимание: нам очень помогает, если вы ставите дизлайк плохим ответам.

Это очень верно. И есть действительно огромная вероятность, что мои промпты действительно плохи.

Но… конечные пользователи используют этих ботов, и они не умеют задавать высококачественные вопросы, направляя ИИ в правильном направлении для получения нужного результата. А затем знания, которые я получил сегодня, хотя и ложные, приведут к улучшению качества в какой-то момент, это не очень помогает.

Я не знаю, в чём моя главная мысль, кроме того, что создание/обучение/настройка ИИ с точностью выше 80% требует больше работы и курируемого контента, чем просто публикация тем. И эта работа стоит денег (так что, надеюсь, ваш бизнес будет расти, потому что я просто люблю вычитку, даже если эта функция сейчас сильно не по теме).