Skip to main content

Retrieval provider bundle for NLWeb - includes all vector database and search providers

Project description

nlweb-retrieval

Bundle package containing all retrieval providers for NLWeb.

Included Providers

This package includes clients for:

  • Azure AI Search - Azure's vector search service with managed identity support
  • Elasticsearch - Popular open-source search and analytics engine
  • Milvus - Open-source vector database
  • Qdrant - Vector similarity search engine
  • PostgreSQL (pgvector) - PostgreSQL with vector extension
  • OpenSearch - Open-source search and analytics suite
  • Snowflake Cortex Search - Snowflake's vector search
  • Shopify MCP - Shopify Model Context Protocol
  • Cloudflare AutoRAG - Cloudflare's RAG service
  • Bing Search - Microsoft Bing web search

Installation

pip install nlweb-core nlweb-retrieval

Configuration Example

Create config.yaml:

retrieval:
  provider: elasticsearch
  import_path: nlweb_retrieval.elasticsearch_client
  class_name: ElasticsearchClient
  api_endpoint_env: ELASTICSEARCH_URL
  index_name: my_index
  use_knn: true

Azure AI Search Example

retrieval:
  provider: azure_ai_search
  import_path: nlweb_retrieval.azure_search_client
  class_name: AzureSearchClient
  api_endpoint_env: AZURE_SEARCH_ENDPOINT
  auth_method: azure_ad  # or api_key
  index_name: my-search-index

Qdrant Example

retrieval:
  provider: qdrant
  import_path: nlweb_retrieval.qdrant
  class_name: QdrantVectorClient
  database_path: ./data/qdrant_db  # for local storage
  # OR for remote:
  # api_endpoint_env: QDRANT_URL
  # api_key_env: QDRANT_API_KEY

Usage

import nlweb_core

# Initialize with config
nlweb_core.init(config_path="./config.yaml")

# Use retrieval
from nlweb_core import retriever

# Search
results = await retriever.search(
    query="example query",
    site="example.com",
    num_results=10
)

Provider Import Paths

Use these in your config file:

Provider import_path class_name
Azure AI Search nlweb_retrieval.azure_search_client AzureSearchClient
Elasticsearch nlweb_retrieval.elasticsearch_client ElasticsearchClient
Milvus nlweb_retrieval.milvus_client MilvusVectorClient
Qdrant nlweb_retrieval.qdrant QdrantVectorClient
PostgreSQL nlweb_retrieval.postgres_client PgVectorClient
OpenSearch nlweb_retrieval.opensearch_client OpenSearchClient
Snowflake nlweb_retrieval.snowflake_client SnowflakeCortexSearchClient
Shopify MCP nlweb_retrieval.shopify_mcp ShopifyMCPClient
Cloudflare nlweb_retrieval.cf_autorag_client CloudflareAutoRAGClient
Bing Search nlweb_retrieval.bing_search_client BingSearchClient

License

MIT License - Copyright (c) 2025 Microsoft Corporation

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nlweb_retrieval-0.5.3.post1.tar.gz (30.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nlweb_retrieval-0.5.3.post1-py3-none-any.whl (38.8 kB view details)

Uploaded Python 3

File details

Details for the file nlweb_retrieval-0.5.3.post1.tar.gz.

File metadata

  • Download URL: nlweb_retrieval-0.5.3.post1.tar.gz
  • Upload date:
  • Size: 30.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for nlweb_retrieval-0.5.3.post1.tar.gz
Algorithm Hash digest
SHA256 656c0d76fc68b8b337b2561b33d38ea3d165976e05267de12b65ce431ea091f3
MD5 3398f647420033e5b8d5fa7ef7966ccc
BLAKE2b-256 63e5d7aa77ca515b7d7493b93b5ab1df541168bf9241738eb6c421bb2e468b3f

See more details on using hashes here.

File details

Details for the file nlweb_retrieval-0.5.3.post1-py3-none-any.whl.

File metadata

File hashes

Hashes for nlweb_retrieval-0.5.3.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 97eb71386208d63a449df749e45867093ef92a5f9dfd9c7cde3621389aee3c59
MD5 f352d5f5536987e0db169e9542153df7
BLAKE2b-256 77026012183bf1d8c72636fb5ec293b0fa6826058431c3921244487e774dc503

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page