Автоответчик с использованием ИИ

В настоящее время с помощью плагина Discourse Automation можно генерировать ответы на темы на основе обнаруженных ключевых слов. Эта опция доступна в составе скрипта Auto Responder и настраивается через параметр Список пар слов/ответов. Кроме того, можно использовать AI-триаж для предоставления шаблонных ответов на темы на основе промптов LLM, их результатов и контекста поста.

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

Интересно узнать, заинтересованы ли другие люди в подобном решении и как бы вы его использовали. Примеры сценариев использования всегда приветствуются!

10 лайков

Можете привести несколько примеров того, как это работает, — либо текстом здесь, либо ссылками на реальные случаи использования. Спасибо.

3 лайка

:sunflower:

  • Возможность выбора автором темы автоответа от ИИ
  • Автоматические ответы для конкретных подразделов
  • Автоматические ответы на основе тегов (например, «Домашнее задание»)
  • Автоматические ответы на вопросы без ответов спустя 3 дня
3 лайка

Это делает часть из этого:

2 лайка

Абсолютно! Для этого существует бесчисленное множество сценариев использования. Представьте простого бота поддержки: пользователь публикует сообщение в категории «Помощь», потому что не знает, как использовать ту или иную функцию Discourse. Затем может быть создан специальный персонаж, который автоматически отвечает на каждую новую тему в этой категории. Сочетая это с RAG, инструментами и детальной настройкой промптов, можно проявить большую креативность.

Гипотетически у каждой категории может быть свой «экспертный бот по категории».

2 лайка

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

2 лайка

Это находится в процессе реализации здесь:

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

8 лайков

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

Для меня примером было бы мягкое напоминание пользователям публиковать сообщения в нужном месте. То есть, если тема кажется неподходящей для данной категории, вместо автоматического изменения, возможно, стоит ответить в теме с предложением других категорий.

5 лайков

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

Мне очень нравится идея наличия эксперта по каждой категории на базе ИИ.

6 лайков

Это уже в эфире… небольшой спойлер:

Документацию начнём оформлять завтра. У нас уже реализованы режимы 1 и 2:

  1. Сверхпростой: выбираете цель и отвечаете без условий (категория / тег / группа личных сообщений и т.д.)
  2. Триаж + Ответчик: позволяет проводить сортировку, а затем динамически отвечать с помощью ИИ-триажа

Также я реализовал (3) мега-сложный режим — он пока находится в разработке и отключён.

  1. Триаж с использованием ИИ-инструмента

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

Завтра займёмся документацией.

10 лайков

Лично мне не нравится идея автоматических ответов из-за риска слишком сильно надоесть нашим пользователям (хотя, возможно, нас избаловала decentная частота ответов от наших пользователей на новые темы).

Однако мне больше всего нравится этот вариант использования:

У нас уже несколько лет есть нечто подобное, автоматизированное через API: мы отправляем шаблонный ответ, если в течение 24 часов на тему не было получено ни одного ответа. Было бы замечательно, если бы этот шаблонный ответ можно было дополнять с помощью LLM (при условии, что будет возможность включить/выключить отправку таких ответов только для unanswered-тем через X часов).

3 лайка

Один из способов обойти это — использовать Whisper (это режим, который мы поддерживаем) для помощи модераторам.

Также я считаю, что некоторые продвинутые сценарии могут значительно снизить риски здесь (но для этого понадобятся соответствующие инструменты):

  • Сформулировать ответ
  • Попросить LLM оценить ценность ответа по шкале от 1 до 10
  • Если оценка 8 или выше, опубликовать ответ

Мне очень нравится эта идея. Для её реализации потребуется новый тип триггера автоматизации, над этим нужно будет подумать. Такой триггер «срабатывать на темы в категории X, которые не получили ни одного ответа в течение дня — проверять каждые 10 минут» у нас сейчас отсутствует… нам нужно понять, как добавить его в систему автоматизации.

У нас есть триггер «зависшая тема», но, насколько я знаю, у него нет возможности «пропускать» темы, «имеющие ответ». Возможно, нам нужно расширить его функционал.


Кроме того, для интеграций через API действие «просто ответь на эту тему от имени этого персонажа» было бы просто потрясающим и при этом очень-очень простым в реализации.

6 лайков

Теперь это доступно здесь

5 лайков

@hel_Sinki, @loginerror, Falco только что выпустил этот PR:

4 лайка

Я добавил триггер «зависшая тема» в скрипты AI в FEATURE: Add stalled_topic trigger to AI automation scripts by xfalcox · Pull Request #37728 · discourse/discourse · GitHub.

В сочетании с ai_tool_action он может выполнять многие из обсуждаемых рабочих процессов.

4 лайка

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

Одна вещь, которую я заметил: невозможно задать параметры AI Tool. Вместо этого значения должны быть прописаны напрямую (или должны быть встроенные значения по умолчанию, когда параметры не заданы). Не критично, но стоит отметить.

В любом случае, ещё раз спасибо за эту функцию!

2 лайка

У меня есть идея: разрешить новой функции секретов передавать информацию в инструменты. Я считаю, что это смежная область.

2 лайка