О чем речь
У генеративных нейросетей есть одна особенность — их «знания» ограничены тем объемом информации, на котором они обучались. Например, если датасет ограничен условным 2021 годом, то искусственному интеллекту без доступа к интернету неоткуда взять данные за 2024 год. Поэтому результаты работы ИИ нужно перепроверять: вполне возможно, с момента их обучения что-то изменилось.
Совсем другое дело — генерация с дополненной выборкой. С использованием RAG нейросеть может оперировать данными, которые выходят за пределы того датасета, на котором она обучалась.
Может возникнуть вопрос: разве эту проблему не решает файн-тюнинг модели? Отчасти решает, особенно для компаний, которым нужна нейросеть, решающая одну специфическую задачу. Файн-тюнинг прекрасно справляется с ситуацией, когда чат-бот должен общаться на определенном языке, не слишком хорошо репрезентованном в изначальном датасете. С его помощью можно задать стилистику или конкретный формат ответов. При этом файн-тюнинг предполагает воздействие на саму структуру мышления языковой модели.
RAG не влияет на мышление нейросети, просто использует информацию из разных источников для того, чтобы сгенерированный ответ стал более релевантным и контекстуально корректным.
В принципе, их можно использовать последовательно: например, сначала RAG, потом файн-тюнинг. Однако для многих достаточно и просто RAG.
RAG и использование контекста
Всем нужен контекст. Без контекста даже человек не может дать продуманный ответ, что уж говорить про нейросеть.
У больших языковых моделей (LLM или БЯМ) есть так называется контекстуальное окно — тот объем информации, который нейросеть способна принять и обработать за один промпт. Окно ограничено по размеру, но увеличивается по мере развития БЯМ. Чем мощнее нейросеть, тем больше контекста она способна принять для обработки промпта и последующей генерации ответа. Именно поэтому, кстати, промпт-инжиниринг становится полноценной специальностью — пользователь должен очень хорошо понимать, какие данные «скормить» ИИ, чтобы получить максимально релевантный результат. Просто бросать в БЯМ информацию в надежде, что рано или поздно она сгенерирует нужный ответ, малоэффективно. Этот вопрос и некоторые другие мы обсуждаем на бесплатном вебинаре по промпт-инжинирингу, так что забегайте, если для вас это актуально.
Генерация с дополненной выборкой, в свою очередь, использует ряд источников для извлечения контекста. В качестве примера можно привести GitHub Copilot Chat — ассистента программиста, разработанного GitHub. Релевантный контекст он извлекает из индексируемых репозиториев, документации и интегрированных поисковых систем. Этакий быстрый поиск по источникам, который программист делегирует нейросети.
Семантический поиск
В «сердце» генерации с дополненной выборкой находится семантический поиск. Это не то же самое, что обычный поиск по ключевым словам. Будучи обученной на датасете, поисковая система может осознать взаимоотношения между ключевыми словами, понять, к чему они относятся, практически как человек. Например, она может показать в топе поисковой выдачи на запрос «кошки и котята» не статью из Википедии, а мемы или милые видеоролики.
- ТОП-подарки всем участникам лекции:Открытая лекция РЕГИСТРАЦИЯ пошаговая PDF-инструкция “Как сделать нейрофотосессию из своего фото бесплатно
- подборка из 3800+ нейросетей
- доступ в бот с безлимитным доступом к ChatGPT
- ТОП-подарки всем участникам лекции:Открытая лекция РЕГИСТРАЦИЯ пошаговая PDF-инструкция “Как сделать нейрофотосессию из своего фото бесплатно
- подборка из 3800+ нейросетей
- доступ в бот с безлимитным доступом к ChatGPT
Соответственно, использование RAG совместно с семантическим поиском еще сильнее улучшает показатели — просто за счет улучшения контекста.
Причем RAG может извлекать информацию из традиционной базы данных и даже из поисковой системы. Однако обычно извлечение информации происходит из векторной базы данных.
Итак, векторная база данных — новый тип БД, в которой данные сортируются в зависимости от характеристик и признаков. Каждый объект данных представляет из себя многомерный вектор, и этих измерений у него может быть сколько угодно — от пары штук до пары тысяч. Чем сложнее информация, тем больше у нее измерений. В векторы могут быть преобразованы тексты, видео, музыка, код, фактически что угодно, и за счет схожести определенных векторов нейросеть может не только находить информацию, но и сразу подбирать схожие по векторам данные. Так и производится семантический поиск.
Семантические значения векторных единиц данных закодированы в так называемых эмбеддингах, и в векторном пространстве чем ближе семантически два объекта, тем ближе они по расстоянию находятся. Например, близко будут расположены «собака» и «волк», просто потому что это родственные виды.
На примере того же GutHub Copilot работу такого поиска можно описать так: пока программист пишет код, алгоритмы создают эмбеддинги фрагментов, которые записываются в векторную базу данных. Затем нейросеть может проводить семантический поиск по БД, отыскивая схожие сниппеты, и предлагать варианты. Учитывая семантическое сходство фрагментов, сгенерированные нейросетью предложения будут, скорее всего, очень релевантны.
С помощью RAG человек может эффективно кастомизировать нейросети, в том числе добившись актуализации генерируемой информации. Также генерация с дополненной выборкой улучшает понимание искусственным интеллектом контекста, а это, в свою очередь, тоже влияет на генерацию.
- Пошаговая PDF-инструкция “Как сделать нейрофотосессию из своего фото бесплатно
- Подборка из 3800+ нейросетей
- Гайд “Как использовать ChatGPT для изучения любого из 50 языков
- Доступ в бот с безлимитным доступом к ChatGPT
- Как внедрение ИИ в бизнес-процессы помогает улучшить финансовые результаты компаний в 2025 году.
- Мы расскажем, кто такой промпт-инженер, чем он занимается и какие результаты можно ожидать от его работы.
- Также обсудим, где найти промпт-инженера, сколько стоят его услуги в России и за рубежом, и кто может стать промпт-инженером.