Skip to main content

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

Metadata

Release files for nlweb-retrieval 0.5.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nlweb-retrieval 0.5.6
File Size Uploaded
nlweb_retrieval-0.5.6.tar.gz 30.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nlweb-retrieval 0.5.6
File Interpreter ABI Platform
nlweb_retrieval-0.5.6-py3-none-any.whl Python 3 none any Details

Total release size: 68.9 kB

Release files / nlweb_retrieval-0.5.6.tar.gz

Download URL nlweb_retrieval-0.5.6.tar.gz
Size 30.2 kB
Tags Source
SHA-256 checksum
How to use checksums
0c69a98c58289cc6c404477b21c7bf3fe369f9c3546070e01e6de55d8301f504
BLAKE2b-256 checksum
How to use checksums
81c5e2c6f3cc5ae03188b7b26c18e81096aea9213af6b4cb0d0f849a2215f6c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.7

Release files / nlweb_retrieval-0.5.6-py3-none-any.whl

Download URL nlweb_retrieval-0.5.6-py3-none-any.whl
Size 38.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
73739298d71ca82cf4b5baf433bf96bc3cde72e7b2d2b947189a659e51859f77
BLAKE2b-256 checksum
How to use checksums
e4b80fa4da0bf0bd56f51f140adce798208aa52f43cfa753bfd97fdd20fd783d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.7

Release history Release notifications | RSS feed

This release

0.5.6 This release

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page