Создать базу знаний
С помощью этой инструкции вы создадите базу знаний для использования в RAG-пайплайне в сервисе Managed RAG.
Каждая база знаний представляет набор собственных версий. При создании базы знаний появляется первая версия.
Перед началом работы
Загрузите в бакет Evolution Object Storage документы для базы знаний.
Перейдите в ML/AI Инструменты → Managed RAG и нажмите Создать базу знаний.
Шаг 1. Заполните параметры базы знаний
Введите название базы знаний.
(Опционально) Заполните описание базы знаний.
в поле Путь к папке с документами на S3 введите путь до папки в бакете Object Storage, куда вы загрузили документы, или выберите их из списка.
В поле Расширения документов перечислите расширения тех файлов, которые будут обработаны и сохранены в базе знаний.
Например, если в вашем бакете есть txt- и JSON-файлы, вы можете выбрать только .json — тогда txt-файлы не будут затронуты.
(Опционально) Чтобы задать специальный экстрактор для извлечения данных из документов базы знаний и выбрать модель-эмбеддер, активируйте опцию Вручную настроить обработку данных и модель.
В этом случае необходимо выполнить шаги 2 и 3.
(Опционально) Для аутентификации пользователя при вызове модели через публичный URL активируйте опцию Аутентификация.
Шаг 2. Настройте параметры экстратора
Выберите и заполните параметры обработки документов для каждого экстрактора.
Simple File
Обработчик простых текстовых файлов с большим перечнем расширений.
Выберите Splitter — способ разбиения текста на чанки.
RecursiveCharacterTextSplitter — сплиттер, который разбивает текст последовательно сначала по первому, затем по второму и так далее разделителям.
CharacterTextSplitter — сплиттер, который разбивает текст по одному разделителю.
Введите Chunk size — размер чанка, измеряется в количестве символов.
Введите Chunk overlap — размер перекрытия, измеряется в количестве символов.
Введите Separators — список разделителей, по которому чанки отделяются друг от друга.
Вы можете искать по языкам программирования, например, ввести «Go» и получить пресет разделителей для него.
При необходимости активируйте опцию Разделители являются регулярным выражением.
Настройте параметр Keep separator — добавлять ли разделитель к чанку:
Не добавлять
Добавить к началу чанка
Добавить в конец чанка
Markdown
Выберите Splitter — способ разбиения текста на чанки.
MarkdownSplitter — стандартный сплиттер для markdown-файлов, который не требует ввода разделителей.
RecursiveCharacterTextSplitter — сплиттер, который разбивает текст последовательно сначала по первому, затем по второму и так далее разделителям.
CharacterTextSplitter — сплиттер, который разбивает текст по одному разделителю.
Введите Chunk size — размер чанка, измеряется в количестве символов.
Введите Chunk overlap — размер перекрытия, измеряется в количестве символов.
При необходимости активируйте опцию Разделители являются регулярным выражением.
Настройте параметр Keep separator — добавлять ли разделитель к чанку:
Не добавлять
Добавить к началу чанка
Добавить в конец чанка
JSON
(Опционально) Заполните Scheme jq — схему, используемую утилитой jq для извлечения данных или текста из JSON.
(Опционально) Заполните Content key — если jq-схема возвращает словарь, это ключ, по которому извлекается содержимое JSON.
(Опционально) Активируйте опцию Content key доступен для парсинга.
(Опционально) Активируйте опцию Содержимое JSON является строкой.
(Опционально) Активируйте опцию Документ имеет формат JSON Lines.
Выберите Splitter— способ разбиения текста на чанки.
RecursiveJsonSplitter — стандартный сплиттер для JSON-файлов, который не требует ввода разделителей.
RecursiveCharacterTextSplitter — сплиттер, который разбивает текст последовательно сначала по первому, затем по второму и так далее разделителям.
CharacterTextSplitter — сплиттер, который разбивает текст по одному разделителю.
Введите Chunk size — размер чанка, измеряется в количестве символов.
Введите Chunk overlap — размер перекрытия, измеряется в количестве символов.
Simple PDF
Выберите Splitter — способ разбиения текста на чанки.
RecursiveCharacterTextSplitter — сплиттер, который разбивает текст последовательно сначала по первому, затем по второму и так далее разделителям.
CharacterTextSplitter — сплиттер, который разбивает текст по одному разделителю.
Введите Chunk size — размер чанка, измеряется в количестве символов.
Введите Chunk overlap — размер перекрытия, измеряется в количестве символов.
Введите Separators — список разделителей, по которому чанки отделяются друг от друга.
Вы можете искать по языкам программирования, например, ввести «Go» и получить пресет разделителей для него.
При необходимости активируйте опцию Разделители являются регулярным выражением.
Настройте параметр Keep separator — добавлять ли разделитель к чанку:
Не добавлять
Добавить к началу чанка
Добавить в конец чанка
Шаг 3. Выберите модель-эмбеддер
Выберите одну из моделей Foundation Models или нажмите Показать все модели, чтобы посмотреть другие и выбрать из них.
Нажмите Создать.
База знаний перейдет в статус Разворачивается и начнет проходить индексацию.
При создании базы знаний автоматически будет создан сервисный аккаунт для управления вашими файлами в Object Storage.
Что дальше
Отправьте HTTP-запрос к вашей базе знаний.
- Перед началом работы
- Шаг 1. Заполните параметры базы знаний
- Шаг 2. Настройте параметры экстратора
- Шаг 3. Выберите модель-эмбеддер
- Что дальше