skillfed

azure-search-documents

Microsoft Corporation Azure Search Documents Client Library for Python

azure-search-documents v12.0.0 6.7M downloads/30d#1,873 on PyPI5,588
License unclear Active released

What it is and what it does

Azure Search Documents is the official Python client for Azure AI Search, an enterprise information retrieval platform. It provides three main client types: SearchClient for querying indexed documents, SearchIndexClient for managing indexes, and SearchIndexerClient for setting up data ingestion pipelines. The library supports vector, keyword, and hybrid search queries, filtered queries with metadata and geospatial constraints, faceted navigation, and semantic ranking.

The package integrates with Azure's AI enrichment pipeline, allowing you to attach skillsets for OCR, entity recognition, key phrase extraction, language detection, and sentiment analysis during data ingestion. It handles authentication via API keys or Azure role-based access control (RBAC), and depends on azure-core for common Azure SDK patterns. It is actively maintained and production-ready, supporting Python 3.9 and later.

Use it for:

  • Build a search interface over consolidated enterprise documents (PDFs, images, web content) indexed in Azure AI Search.
  • Implement vector similarity search for semantic document retrieval using embeddings alongside traditional keyword queries.
  • Set up an automated data ingestion pipeline that pulls data from Azure sources and enriches it with OCR and NLP during indexing.
  • Create a faceted search experience with filtered navigation and geospatial queries over large document collections.
  • Develop a chat-style application that combines large language models with enterprise data via hybrid search queries.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Client library for querying, indexing, and managing documents in Azure AI Search, with support for vector, keyword, and hybrid search queries.

Yes. The package is production-stable, actively maintained, has low install friction, and is the official client for a major Azure service. Install it if you need to integrate Azure AI Search into a Python application. The only caveat is that it requires an Azure subscription and a configured search service instance—it is not useful without external Azure infrastructure.

Install

azure-search-documents on PyPI

pip

pip install azure-search-documents

uv

uv add azure-search-documents

poetry

poetry add azure-search-documents

Installing azure-search-documents

Before you install

Low install friction with three lightweight runtime dependencies (isodate, azure-core, typing-extensions). Active maintenance with a recent release on 2026-05-01 and continued repository activity.

Quickstart

from azure.core.credentials import AzureKeyCredential
from azure.search.documents import SearchClient

search_client = SearchClient(
    service_endpoint="https://<service>.search.windows.net",
    index_name="my-index",
    credential=AzureKeyCredential("<api-key>")
)

Requires an active Azure AI Search service instance and valid API key or Azure credentials; Python 3.9 or later.

Verify before relying

  • Whether the package supports all query types (vector, keyword, hybrid) equally or with different maturity levels.
  • Performance characteristics for large-scale indexing or high-volume query workloads.
  • Specific AI enrichment capabilities and whether they require additional Azure AI Services configuration.

Package facts

License not declared (unclear)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 3 — isodate, azure-core, typing-extensions
Maintenance actively maintained — 105 days since the last release
Last repo commit
First released
Downloads 6,675,459/month — #1,873 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: azure_search_documents-12.0.0-py3-none-any.whl

Keywords: azure, azure sdk

Development Status :: 5 - Production/StableProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9

Tags

azure search client libraryvector and keyword searchazure ai search indexingdocument search and retrievalazure search index managementhybrid search queriesazure cognitive search python
azure-sdksearch-indexingvector-search

More Dynamic Content packages

MarkupSafe

MarkupSafe provides a text object that escapes…

permissive · top 100 on PyPI

Jinja2

Jinja2 is a templating engine that renders…

permissive · top 100 on PyPI

soupsieve

Soupsieve is a CSS selector library designed to…

permissive · top 100 on PyPI

Werkzeug

Werkzeug is a WSGI utility library providing…

permissive · top 1,000 on PyPI

Flask

Flask is a lightweight WSGI web application…

permissive · top 1,000 on PyPI

Mako

Mako compiles Python-embedded templates into…

permissive · top 1,000 on PyPI

agent-framework-azure-ai-search

Provides RAG (Retrieval Augmented Generation)…

permissive · top 15,000 on PyPI

azure-ai-documentintelligence

Python client for Azure AI Document…

permissive · top 5,000 on PyPI

azure-mgmt-search

Manages Azure Cognitive Search services through…

permissive · top 5,000 on PyPI

azure-ai-translation-document

Translates documents stored in Azure Blob…

permissive · top 15,000 on PyPI

azure-ai-agents

Build and deploy AI agents on Azure using…

permissive · top 5,000 on PyPI

azure-ai-formrecognizer

Extracts text, structure, and key-value pairs…

permissive · top 5,000 on PyPI

algoliasearch

A Python HTTP client for interacting with…

permissive · top 5,000 on PyPI

azure-ai-language-questionanswering

Python client library for Azure's Question…

permissive · top 15,000 on PyPI

brave-search

Wrapper for the Brave Search API that provides…

unclear · top 15,000 on PyPI

azure-search

Provides a Python client library for…

permissive · top 15,000 on PyPI