Downloads in the 30 and 7 days to October 10, 2026. Refreshed weekly.
Package Information
No reported malware or high/critical advisories · Details
The current version has no OSV.dev malware reports and no critical or high-severity vulnerabilities.
Package Insights
((week_daily_avg - month_daily_avg) / month_daily_avg) * 100More insights and metrics
Downloads by OS
Python Versions
Top Countries
Weekly Downloads
GitHub Stars
Dependencies
- colorama
- dspy >=3.3
- jinja2
- litellm !=1.82.7,!=1.82.8,>=1.98
- mcp <2,>=1.28
- numpy
- pydantic
- python-dotenv
- pyyaml
- requests
- rich
- typer
159 optional dependencies
-
accelerate[huggingface]extra == "huggingface"
-
agent-framework>=1.16[frameworks]extra == "frameworks"
-
agent-framework>=1.16[all]extra == "all"
-
agent-framework>=1.16[frameworks-microsoft]extra == "frameworks-microsoft"
-
agent-framework>=1.16[all-with-mlx]extra == "all-with-mlx"
-
arize-phoenix-otel>=0.15.0[phoenix]extra == "phoenix"
-
azure-identity[all]extra == "all"
-
azure-identity[all-with-mlx]extra == "all-with-mlx"
-
azure-identity[frameworks]extra == "frameworks"
-
azure-identity[frameworks-microsoft]extra == "frameworks-microsoft"
-
black[dev]extra == "dev"
-
chromadb[all-with-mlx]extra == "all-with-mlx"
-
chromadb[all]extra == "all"
-
chromadb>=1.5.5[chromadb]extra == "chromadb"
-
chromadb>=1.5.5[turboagents]extra == "turboagents"
-
chromadb>=1.5.5[vectordb]extra == "vectordb"
-
claude-agent-sdk>=0.2[frameworks]extra == "frameworks"
-
claude-agent-sdk>=0.2[frameworks-claude-sdk]extra == "frameworks-claude-sdk"
-
claude-agent-sdk>=0.2[all-with-mlx]extra == "all-with-mlx"
-
claude-agent-sdk>=0.2[all]extra == "all"
-
deepagents<0.8,>=0.7[all-with-mlx]extra == "all-with-mlx"
-
deepagents<0.8,>=0.7[frameworks]extra == "frameworks"
-
deepagents<0.8,>=0.7[frameworks-deepagents]extra == "frameworks-deepagents"
-
deepagents<0.8,>=0.7[all]extra == "all"
-
dspy>=3.3[all]extra == "all"
-
dspy>=3.3[all-with-mlx]extra == "all-with-mlx"
-
dspy>=3.4[typesafe]extra == "typesafe"
-
dspy>=3.3[frameworks]extra == "frameworks"
-
dspy>=3.3[frameworks-dspy]extra == "frameworks-dspy"
-
dspy>=3.4[jev]extra == "jev"
-
faiss-cpu[all-with-mlx]extra == "all-with-mlx"
-
faiss-cpu[vectordb]extra == "vectordb"
-
faiss-cpu[faiss]extra == "faiss"
-
faiss-cpu[all]extra == "all"
-
fastapi>=0.115.2[a2a]extra == "a2a"
-
fastapi[web]extra == "web"
-
fastapi>=0.115.2[protocols-a2a]extra == "protocols-a2a"
-
fastapi[huggingface]extra == "huggingface"
-
fastapi[all-with-mlx]extra == "all-with-mlx"
-
fastapi[all]extra == "all"
-
google-adk>=2.7[frameworks-google]extra == "frameworks-google"
-
google-adk>=2.7[all]extra == "all"
-
google-adk>=2.7[all-with-mlx]extra == "all-with-mlx"
-
google-adk>=2.7[frameworks]extra == "frameworks"
-
huggingface-hub[ml-cross-platform]extra == "ml-cross-platform"
-
huggingface-hub[all]extra == "all"
-
huggingface-hub[all-with-mlx]extra == "all-with-mlx"
-
huggingface-hub[huggingface]extra == "huggingface"
-
lancedb[all]extra == "all"
-
lancedb[all-with-mlx]extra == "all-with-mlx"
-
lancedb[lancedb]extra == "lancedb"
-
lancedb[vectordb]extra == "vectordb"
-
langfuse[all-with-mlx]extra == "all-with-mlx"
-
langfuse[observability]extra == "observability"
-
langfuse[all]extra == "all"
-
logfire[logfire]extra == "logfire"
-
mcp<2,>=1.28[mcp]extra == "mcp"
-
mkdocs[docs]extra == "docs"
-
mkdocs-material[docs]extra == "docs"
-
mkdocs-mermaid2-plugin[docs]extra == "docs"
-
mlflow[observability]extra == "observability"
-
mlflow[all-with-mlx]extra == "all-with-mlx"
-
mlflow[all]extra == "all"
-
mlx-lm[all-with-mlx]extra == "all-with-mlx"
-
mlx-lm[mlx]extra == "mlx"
-
mypy[dev]extra == "dev"
-
openai<3,>=2.54[frameworks-openai]extra == "frameworks-openai"
-
openai<3,>=2.54[all-with-mlx]extra == "all-with-mlx"
-
openai<3,>=2.54[all]extra == "all"
-
openai<3,>=2.54[frameworks]extra == "frameworks"
-
openai-agents<0.21,>=0.20[all]extra == "all"
-
openai-agents<0.21,>=0.20[frameworks-openai]extra == "frameworks-openai"
-
openai-agents<0.21,>=0.20[frameworks]extra == "frameworks"
-
openai-agents<0.21,>=0.20[all-with-mlx]extra == "all-with-mlx"
-
openinference-instrumentation>=0.1.44[phoenix]extra == "phoenix"
-
openinference-instrumentation-crewai[phoenix]extra == "phoenix"
-
openinference-instrumentation-dspy[phoenix]extra == "phoenix"
-
openinference-instrumentation-google-adk[phoenix]extra == "phoenix"
-
openinference-instrumentation-openai[phoenix]extra == "phoenix"
-
openinference-instrumentation-openai-agents[phoenix]extra == "phoenix"
-
openinference-instrumentation-pydantic-ai[phoenix]extra == "phoenix"
-
pandas[ui]extra == "ui"
-
pandas[all]extra == "all"
-
pandas[all-with-mlx]extra == "all-with-mlx"
-
pandas[observability]extra == "observability"
-
plotly[ui]extra == "ui"
-
plotly[all-with-mlx]extra == "all-with-mlx"
-
plotly[all]extra == "all"
-
plotly[observability]extra == "observability"
-
pre-commit[dev]extra == "dev"
-
pydantic[all]extra == "all"
-
pydantic[all-with-mlx]extra == "all-with-mlx"
-
pydantic[web]extra == "web"
-
pydantic-ai<2.32,>=2.31[frameworks]extra == "frameworks"
-
pydantic-ai<2.32,>=2.31[all]extra == "all"
-
pydantic-ai<2.32,>=2.31[frameworks-pydantic-ai]extra == "frameworks-pydantic-ai"
-
pydantic-ai<2.32,>=2.31[all-with-mlx]extra == "all-with-mlx"
-
pymdown-extensions[docs]extra == "docs"
-
pymilvus[all-with-mlx]extra == "all-with-mlx"
-
pymilvus[milvus]extra == "milvus"
-
pymilvus[vectordb]extra == "vectordb"
-
pymilvus[all]extra == "all"
-
pytest[dev]extra == "dev"
-
pytest[testing]extra == "testing"
-
pytest-asyncio[dev]extra == "dev"
-
pytest-asyncio[testing]extra == "testing"
-
pytest-cov[dev]extra == "dev"
-
pytest-cov[testing]extra == "testing"
-
pytest-mock[testing]extra == "testing"
-
qdrant-client[all]extra == "all"
-
qdrant-client[qdrant]extra == "qdrant"
-
qdrant-client[all-with-mlx]extra == "all-with-mlx"
-
qdrant-client[vectordb]extra == "vectordb"
-
redis[all]extra == "all"
-
redis[all-with-mlx]extra == "all-with-mlx"
-
redis[redis]extra == "redis"
-
responses[testing]extra == "testing"
-
ruff[dev]extra == "dev"
-
sentence-transformers[chromadb]extra == "chromadb"
-
sentence-transformers[all]extra == "all"
-
sentence-transformers[all-with-mlx]extra == "all-with-mlx"
-
sentence-transformers[faiss]extra == "faiss"
-
sentence-transformers[lancedb]extra == "lancedb"
-
sentence-transformers[milvus]extra == "milvus"
-
sentence-transformers[qdrant]extra == "qdrant"
-
sentence-transformers[surrealdb]extra == "surrealdb"
-
sentence-transformers[turboagents]extra == "turboagents"
-
sentence-transformers[vectordb]extra == "vectordb"
-
sentence-transformers[weaviate]extra == "weaviate"
-
sse-starlette[a2a]extra == "a2a"
-
sse-starlette[all]extra == "all"
-
sse-starlette[protocols-a2a]extra == "protocols-a2a"
-
streamlit[all]extra == "all"
-
streamlit[all-with-mlx]extra == "all-with-mlx"
-
streamlit[ui]extra == "ui"
-
surrealdb[all-with-mlx]extra == "all-with-mlx"
-
surrealdb[surrealdb]extra == "surrealdb"
-
surrealdb[vectordb]extra == "vectordb"
-
surrealdb[all]extra == "all"
-
torch[all-with-mlx]extra == "all-with-mlx"
-
torch[huggingface]extra == "huggingface"
-
torch[ml-cross-platform]extra == "ml-cross-platform"
-
torch[all]extra == "all"
-
transformers[huggingface]extra == "huggingface"
-
transformers[all]extra == "all"
-
transformers[all-with-mlx]extra == "all-with-mlx"
-
transformers[ml-cross-platform]extra == "ml-cross-platform"
-
turboagents>=0.1.0a2[vectordb]extra == "vectordb"
-
turboagents>=0.1.0a2[turboagents]extra == "turboagents"
-
uvicorn>=0.35.0[a2a]extra == "a2a"
-
uvicorn[all]extra == "all"
-
uvicorn[all-with-mlx]extra == "all-with-mlx"
-
uvicorn[huggingface]extra == "huggingface"
-
uvicorn>=0.35.0[protocols-a2a]extra == "protocols-a2a"
-
uvicorn[web]extra == "web"
-
weaviate-client[all]extra == "all"
-
weaviate-client[all-with-mlx]extra == "all-with-mlx"
-
weaviate-client[vectordb]extra == "vectordb"
-
weaviate-client[weaviate]extra == "weaviate"