Skip to main content

Administration tool for Azure AI Search indexes

Project description

ai-search-adm

⚠️ PRERELEASE SOFTWARE: This is beta software. Features may change and bugs may exist. Use with caution in production environments.

Administration tool for Azure AI Search indexes.

Features

  • duplicate: Duplicate an index definition (schema only, no documents)
  • clear: Clear all documents from an index (preserves schema)
  • list: List all indexes in a search service
  • stats: Show index statistics (document count, storage usage)
  • Uses DefaultAzureCredential for authentication (or API key as fallback)
  • Pretty terminal output with Rich
  • Cross-service index duplication support

Installation

Note: This is currently in beta. uvx works seamlessly with beta versions. For pip and pipx, you may need to use --pre flag or specify exact versions.

Using uvx (Recommended)

Run directly without installation:

uvx ai-search-adm --help
uvx ai-search-adm list --endpoint https://myservice.search.windows.net

Or install globally:

uvx install ai-search-adm
ai-search-adm --help

Using uv

Install as a tool:

uv tool install ai-search-adm
ai-search-adm --help

Run without installation:

uv tool run ai-search-adm --help
uv tool run ai-search-adm list --endpoint https://myservice.search.windows.net

Using pip (Traditional)

# For beta versions, use --pre flag
pip install --pre ai-search-adm

# Or specify exact version
pip install ai-search-adm==0.9.0b1

ai-search-adm --help

Using pipx

# For beta versions, use --pip-args with --pre
pipx install --pip-args="--pre" ai-search-adm

# Or run directly without installing (specify exact version for beta)
pipx run --spec ai-search-adm==0.9.0b2 ai-search-adm --help

Note: All methods work identically. uvx and uv tool run are fastest and avoid dependency conflicts by running in isolated environments.

Usage

List indexes

List all indexes in a search service:

ai-search-adm list --endpoint https://your-service.search.windows.net

Clear an index

Remove all documents from an index while preserving its structure:

ai-search-adm clear \
  --endpoint https://your-service.search.windows.net \
  --index index-name

⚠️ WARNING: This is a destructive operation that cannot be undone. You will be prompted to type "DELETE" to confirm.

Get index statistics

Display document count and storage usage for an index:

ai-search-adm stats \
  --endpoint https://your-service.search.windows.net \
  --index index-name

Duplicate an index

Duplicate an index within the same search service:

ai-search-adm duplicate \
  --endpoint https://your-service.search.windows.net \
  --source source-index-name \
  --target new-index-name

Duplicate an index across different search services:

ai-search-adm duplicate \
  --endpoint https://target-service.search.windows.net \
  --from-endpoint https://source-service.search.windows.net \
  --source source-index-name \
  --target new-index-name

Authentication

By default, the tool uses DefaultAzureCredential which supports:

  • Environment variables (service principal)
  • Managed Identity
  • Azure CLI authentication
  • Visual Studio Code authentication
  • And more...

You can also use API keys:

ai-search-adm duplicate \
  --endpoint https://your-service.search.windows.net \
  --api-key your-admin-api-key \
  --source source-index \
  --target target-index

Options

  • --overwrite: Delete target index if it exists (DANGEROUS)
  • --api-key: Use API key authentication instead of DefaultAzureCredential
  • --source-api-key: Use different API key for source service in cross-service scenarios

Requirements

  • Python 3.11+
  • Azure AI Search service
  • Appropriate permissions (Search Service Contributor role or API keys)

Development

This project uses modern Python packaging with pyproject.toml and supports Python 3.11+.

# Install in development mode
pip install -e ".[dev]"

# Run tests
pytest

# Format code
black src/ tests/

# Lint code  
ruff check src/ tests/

# Type check
mypy src/

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

ai_search_adm-0.9.0b3.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

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

ai_search_adm-0.9.0b3-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file ai_search_adm-0.9.0b3.tar.gz.

File metadata

  • Download URL: ai_search_adm-0.9.0b3.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for ai_search_adm-0.9.0b3.tar.gz
Algorithm Hash digest
SHA256 a78bab3b89a4d78c290c05ba6aed9456bb9eb7347a0824884a401740fe3582b6
MD5 cdf82d32d41373ba09f58bd56e437e4c
BLAKE2b-256 b3b8205804950704a8dad66f2f95c05646059c9aefbe71d367d7a871dfbaecbd

See more details on using hashes here.

File details

Details for the file ai_search_adm-0.9.0b3-py3-none-any.whl.

File metadata

File hashes

Hashes for ai_search_adm-0.9.0b3-py3-none-any.whl
Algorithm Hash digest
SHA256 d26c6e31eb1eeebb70d7963cfd5d398e2ef3afbc06552465e0e7e07ef075e38c
MD5 dd89cd272fc2bd0b3d83e15f0a7b3714
BLAKE2b-256 cae7d0e647ac402fe6c7941cee857081c53fee2479cb8f6599c7f8b62f27eb4d

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