Compendium Keeper-это инструмент, который индексирует данные Compendium (генерируемые сбором Scendium) в векторную базу данных (например, PineCone) для рабочих процессов для получения энергии (RAG).
.compendium.pickle и .compendium.xml . git clone https://github.com/yourusername/compendiumkeeper.git
cd compendiumkeeperУбедитесь, что у вас установлен PDM. Затем беги:
pdm install Создайте файл .env в корневом каталоге проекта для хранения ваших клавиш API и конфигурации. Вы можете использовать предоставленный .env.example в качестве шаблона.
.env Файл # .env.example
# OpenAI API Key for generating embeddings
OPENAI_API_KEY = sk-your-openai-api-key
# Pinecone API Key and Environment
PINECONE_API_KEY = your-pinecone-api-key
PINECONE_ENVIRONMENT = us-east-1-aws Переименовать .env.example to .env и замените значения заполнителей своими фактическими клавишами API.
compendium-scribe-create-compendium --domain " Cell Biology " Это создает такие файлы, как cell_biology_2024-12-05.compendium.pickle и cell_biology_2024-12-05.compendium.xml .
Используйте опцию --compendium-file , чтобы указать файл сборника (Pickle или XML).
Вы также должны указать имя индекса векторной базы данных, используя опцию --index-name .
Убедитесь, что ваш файл .env правильно настроен с необходимыми клавишами API.
pdm run compendium-keeper index --compendium-file cell_biology_2024-12-05.compendium.pickle --index-name my_knowledge_indexpdm run compendium-keeper index --compendium-file cell_biology_2024-12-05.compendium.xml --index-name my_knowledge_indexПосле успешного выполнения вы должны увидеть подтверждающее сообщение, указывающее количество индексированных концепций.
Indexed 25 concepts from domain 'Cell Biology' into index 'my_knowledge_index'.
Indexing complete!
Чтобы создать единую базу знаний, которая охватывает несколько сборников, повторите процесс индексации для каждого сборника, используя одно и то же --index-name .
Например:
pdm run compendium-keeper index --compendium-file django_2024-12-10.compendium.pickle --index-name all_python_knowledge
pdm run compendium-keeper index --compendium-file flask_2024-12-10.compendium.xml --index-name all_python_knowledgeЭто объединит знания из множества сборников в один и тот же индекс базы данных векторных векторных данных.
vector_db/ .utils.py для настройки того, как генерируются или обрабатываются внедрения. Настройка переменных среды
Создайте файл .env как описано выше.
Генерировать сборник
Используйте Scendium Scribe, чтобы генерировать сборник в формате Pickle или XML.
Индекс с Compendium Keeper
Запустите команду индексации, чтобы загрузить встраиваемые вкладыши в выбранную вами векторную базу данных.
Отсутствуют ключи API
Убедитесь, что ваш файл .env содержит все необходимые клавиши API. CLI уведомит вас, если таковые имеются.
Неподдерживаемый вектор дБ
В настоящее время поддерживается только Pinecone. Чтобы добавить поддержку другой векторной базы данных, реализуйте новый класс в vector_db/ придерживаться абстрактного базового класса VectorDatabase .
Вопросы формата файла
Убедитесь, что --compendium-file вы предоставляете, заканчивается в .compendium.pickle или .compendium.xml . Файлы с другими расширениями не поддерживаются.
Ограничения скорости API
Будьте внимательны к ограничениям API Openai при индексации крупных сборников. Рассмотрите возможность реализации партии или ограничения ставок, если это необходимо.
Взносы приветствуются! Не стесняйтесь открывать проблему или отправить запрос на привлечение.
Компендиум -хранитель выпускается по лицензии MIT.