Использование NLWeb с Milvus
NLWeb от Microsoft - это предлагаемый фреймворк, позволяющий создавать интерфейсы естественного языка для веб-сайтов, используя Schema.org, такие форматы, как RSS и новый протокол MCP.
Milvus поддерживается как бэкэнд векторной базы данных в NLWeb для встраивания хранения и эффективного поиска векторного сходства, обеспечивая мощный контекстный поиск для приложений обработки естественного языка.
Эта документация в основном основана на официальной документации по быстрому запуску. Если вы обнаружите устаревшее или несоответствующее содержание, пожалуйста, отдайте предпочтение официальной документации и не стесняйтесь поднимать вопрос для нас.
Использование
NLWeb может быть настроен на использование Milvus в качестве поискового механизма. Ниже приведено руководство по настройке и использованию NLWeb с Milvus.
Установка
Клонируйте репо и настройте ваше окружение:
git clone https://github.com/microsoft/NLWeb
cd NLWeb
python -m venv .venv
source .venv/bin/activate # or `.venv\Scripts\activate` on Windows
cd code
pip install -r requirements.txt
pip install pymilvus # Add Milvus Python client
Настройка Milvus
Чтобы использовать Milvus, обновите конфигурацию.
Обновите файлы конфигурации в code/config
Откройте файл config_retrieval.yaml и добавьте конфигурацию Milvus:
preferred_endpoint: milvus_local
endpoints:
milvus_local:
database_path: "../data/milvus.db"
# Set the collection name to use
index_name: nlweb_collection
# Specify the database type
db_type: milvus
Загрузка данных
После настройки загрузите контент с помощью RSS-каналов.
Из каталога code:
python -m tools.db_load https://feeds.libsyn.com/121695/rss Behind-the-Tech
Это позволит загрузить контент в коллекцию Milvus, сохранив как текстовые данные, так и векторные вкрапления.
Запуск сервера
Чтобы запустить NLWeb, из каталога code выполните команду run:
python app-file.py
Теперь вы можете запрашивать контент с помощью естественного языка, используя веб-интерфейс на http://localhost:8000/ или напрямую через MCP-совместимый REST API.
Дальнейшее чтение
- Документация Milvus
- Источник NLWeb
- Жизнь чат-запроса
- Модификация поведения путем изменения подсказок
- Изменение потока управления
- Изменение пользовательского интерфейса