Milvus와 함께 NLWeb 사용
Microsoft의 NLWeb은 Schema.org, RSS와 같은 형식 및 새로운 MCP 프로토콜을 사용하여 웹사이트를 위한 자연어 인터페이스를 가능하게 하는 제안된 프레임워크입니다.
Milvus는 자연어 처리 애플리케이션을 위한 강력한 컨텍스트 검색을 가능하게 하는 임베딩 스토리지 및 효율적인 벡터 유사성 검색을 위해 NLWeb 내에서 벡터 데이터베이스 백엔드로 지원됩니다.
이 문서는 주로 공식 빠른 시작 설명서를 기반으로 작성되었습니다. 오래되었거나 일관성이 없는 내용을 발견하면 공식 문서를 우선적으로 참조하시고 언제든지 문제를 제기해 주세요.
사용법
NLWeb은 Milvus를 검색 엔진으로 사용하도록 구성할 수 있습니다. 다음은 Milvus에서 NLWeb을 설정하고 사용하는 방법에 대한 가이드입니다.
설치
리포지토리를 복제하고 환경을 설정합니다:
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 디렉토리에서 실행합니다:
python app-file.py
이제 웹 UI(http://localhost:8000/)를 사용하거나 MCP 호환 REST API를 통해 직접 자연어를 통해 콘텐츠를 쿼리할 수 있습니다.