This release is a pre-release and may not be stable for production use.
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
DefaultAzureCredentialfor authentication (or API key as fallback) - Pretty terminal output with Rich
- Cross-service index duplication support
Installation
Note: This is currently in beta.
uvxworks seamlessly with beta versions. Forpipandpipx, you may need to use--preflag 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/
Metadata
Release files for ai-search-adm 0.9.0b3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| ai_search_adm-0.9.0b3.tar.gz | 10.8 kB | Without provenance | Details for ai_search_adm-0.9.0b3.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| ai_search_adm-0.9.0b3-py3-none-any.whl | Python 3 | none | any | Details for ai_search_adm-0.9.0b3-py3-none-any.whl |
Total release size: 19.5 kB
Release files / ai_search_adm-0.9.0b3.tar.gz
| Download URL | ai_search_adm-0.9.0b3.tar.gz |
|---|---|
| Size | 10.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a78bab3b89a4d78c290c05ba6aed9456bb9eb7347a0824884a401740fe3582b6
|
|
BLAKE2b-256 checksum How to use checksums |
b3b8205804950704a8dad66f2f95c05646059c9aefbe71d367d7a871dfbaecbd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.13
|
Release files / ai_search_adm-0.9.0b3-py3-none-any.whl
| Download URL | ai_search_adm-0.9.0b3-py3-none-any.whl |
|---|---|
| Size | 8.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d26c6e31eb1eeebb70d7963cfd5d398e2ef3afbc06552465e0e7e07ef075e38c
|
|
BLAKE2b-256 checksum How to use checksums |
cae7d0e647ac402fe6c7941cee857081c53fee2479cb8f6599c7f8b62f27eb4d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.13
|
Security for ai-search-adm 0.9.0b3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.