pydantic<3.0.0,>=2.0.0
httpx<1.0.0,>=0.24.0
openai<3.0.0,>=1.0.0
anthropic<1.0.0,>=0.25.0
tiktoken<1.0.0,>=0.5.0
requests<3.0.0,>=2.25.0
beautifulsoup4<5.0.0,>=4.12.0
lxml<6.0.0,>=4.9.0
psutil<8,>=5.9
Pillow<13.0.0,>=10.0.0
pypdf<7.0.0,>=6.0.0
unstructured[docx,odt,pptx,rtf,xlsx]<1.0.0,>=0.10.0
pandas<3.0.0,>=1.0.0
fastapi<1.0.0,>=0.100.0
uvicorn[standard]<1.0.0,>=0.23.0
python-multipart<1.0.0,>=0.0.6
sse-starlette<2.0.0,>=1.6.0
abstractvoice>=0.13.2
abstractvision>=0.3.33

[3d]

[:python_version < "3.10"]
duckduckgo-search<4.0.0,>=3.8.0

[:python_version >= "3.10"]
ddgs<10.0.0,>=9.10.0
abstractmusic>=0.1.15
abstract3d>=0.1.0

[all]
abstractcore[embeddings,huggingface]
omnivoice>=0.1.5
mlx<1.0.0,>=0.32.2
mlx-lm<1.0.0,>=0.31.3
mlx-vlm<0.8.0,>=0.7.1
vllm<1.0.0,>=0.6.0

[all-apple]
abstractcore[apple]

[all-gpu]
abstractcore[gpu]

[all-non-mlx]
abstractcore[embeddings,huggingface]
omnivoice>=0.1.5

[anthropic]

[apple]
mlx<1.0.0,>=0.32.2
mlx-lm<1.0.0,>=0.31.3
mlx-vlm<0.8.0,>=0.7.1
outlines>=0.1.0
transformers<6.0.0,>=5.3.0
torch<3.0.0,>=2.7.1
torchvision>=0.17.0
torchaudio>=2.1.0
sentencepiece<1.0.0,>=0.1.99
llama-cpp-python<1.0.0,>=0.3.23
accelerate>=1.0.0
sentence-transformers<6.0.0,>=5.1.0
numpy<3.0.0,>=2.1.0
Pillow<13.0.0,>=12.1.1
abstractvoice[all-apple]>=0.13.2
omnivoice>=0.1.5
abstractvision[all-apple]>=0.3.33
abstractmusic[all-apple]>=0.1.15
playwright<2.0.0,>=1.49.0

[audio]

[browser]
playwright<2.0.0,>=1.49.0

[compression]

[dev]
pytest>=7.0.0
pytest-asyncio>=0.21.0
pytest-mock>=3.10.0
black>=23.0.0
isort>=5.12.0
mypy>=1.5.0
ruff>=0.1.0
pre-commit>=3.0.0

[docs]
mkdocs>=1.5.0
mkdocs-material>=9.0.0
mkdocstrings[python]>=0.22.0
mkdocs-autorefs>=0.4.0

[embeddings]
sentence-transformers<6.0.0,>=5.1.0

[embeddings:python_version < "3.13"]
numpy<3.0.0,>=1.20.0

[embeddings:python_version >= "3.13"]
numpy<3.0.0,>=2.1.0

[full-dev]
abstractcore[all,dev,docs,test]

[gpu]
outlines>=0.1.0
transformers<6.0.0,>=4.57.1
torch<3.0.0,>=2.6.0
torchvision>=0.17.0
torchaudio>=2.1.0
sentencepiece<1.0.0,>=0.1.99
sentence-transformers<6.0.0,>=5.1.0
abstractvoice[all-gpu]>=0.13.2
omnivoice>=0.1.5
abstractvision[all-gpu]>=0.3.33
abstractmusic[all-gpu]>=0.1.15
playwright<2.0.0,>=1.49.0

[gpu:python_version < "3.13"]
numpy<3.0.0,>=1.20.0

[gpu:python_version >= "3.13"]
numpy<3.0.0,>=2.1.0

[gpu:sys_platform != "win32"]
llama-cpp-python<1.0.0,>=0.3.23

[gpu:sys_platform == "linux"]
vllm<1.0.0,>=0.6.0

[huggingface]
transformers<6.0.0,>=4.57.1
torch<3.0.0,>=2.6.0
torchvision>=0.17.0
torchaudio>=2.1.0
sentencepiece<1.0.0,>=0.1.99
llama-cpp-python<1.0.0,>=0.3.23
outlines>=0.1.0

[lmstudio]

[media]

[mlx]
abstractcore[apple]

[mlx-bench]
matplotlib<4.0.0,>=3.8.0

[mlx-vision]
abstractcore[apple]

[music]

[ollama]

[openai]

[openai-compatible]

[openrouter]

[pdf-pymupdf-commercial]
pymupdf4llm<1.0.0,>=0.0.20
pymupdf-layout<2.0.0,>=1.26.6

[portkey]

[remote]

[scene3d]

[server]

[test]
pytest>=7.0.0
pytest-asyncio>=0.21.0
pytest-mock>=3.10.0
pytest-cov>=4.0.0
responses>=0.23.0
jinja2<4.0.0,>=3.0.0

[test:python_version < "3.11"]
tomli>=2.0.0

[tokens]

[tool]

[tools]

[vision]

[vision-diffusers]
abstractvision[huggingface]>=0.3.31

[vision-local]
abstractvision[local]>=0.3.31

[vision-sdcpp]
abstractvision[sdcpp]>=0.3.31

[vllm]
abstractcore[gpu]

[voice]
