Наш кейс: ассистент по базе материалов академии, которым мы пользуемся сами.
У академии за годы набралось больше тысячи материалов — курсы, разборы, ответы на вопросы. Ни один человек в команде уже не держит это всё в голове, а искать ответ точным словом бесполезно: один и тот же вопрос формулируют по-разному, и обычный поиск по совпадению слов половину релевантного просто не находит. Нужен был не поиск по ключевым словам, а ассистент, который понимает вопрос и честно отвечает по документам — вместо того, чтобы правдоподобно придумать ответ, которого в базе нет.
Фундамент — своя база данных (В4 в справочнике): вся академия и так годами жила на одном Postgres, поэтому переезжать на отдельную платформу под ассистента не пришлось — тот же Postgres просто научился ещё одному способу использования. Поверх базы посчитаны эмбеддинги (В5) — смысловые координаты каждого куска текста, чтобы вопрос «как купить курс» находил материалы про оплату, даже если слово «купить» там не встречается буквально.
Сама сборка ответа — RAG (В6): агент находит в базе куски текста, которые относятся к вопросу, подкладывает их в разговор перед тем, как отвечать, и формулирует ответ, опираясь именно…