pydantic<3.0.0,>=2.0.0
httpx<1.0.0,>=0.24.0

[all]
openai<2.0.0,>=1.0.0
anthropic<1.0.0,>=0.25.0
transformers<6.0.0,>=4.57.1
torch<3.0.0,>=2.6.0
torchvision>=0.17.0
torchaudio>=2.1.0
llama-cpp-python<1.0.0,>=0.2.0
outlines>=0.1.0
mlx<1.0.0,>=0.30.0
mlx-lm<1.0.0,>=0.30.0
vllm<1.0.0,>=0.6.0
sentence-transformers<6.0.0,>=5.1.0
numpy<2.0.0,>=1.20.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<6.0.0,>=5.9.0
Pillow<12.0.0,>=10.0.0
pymupdf4llm<1.0.0,>=0.0.20
pymupdf-layout<2.0.0,>=1.26.6
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
abstractvision>=0.2.0

[all-apple]
openai<2.0.0,>=1.0.0
anthropic<1.0.0,>=0.25.0
transformers<6.0.0,>=4.57.1
torch<3.0.0,>=2.6.0
torchvision>=0.17.0
torchaudio>=2.1.0
llama-cpp-python<1.0.0,>=0.2.0
outlines>=0.1.0
mlx<1.0.0,>=0.30.0
mlx-lm<1.0.0,>=0.30.0
sentence-transformers<6.0.0,>=5.1.0
numpy<2.0.0,>=1.20.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<6.0.0,>=5.9.0
Pillow<12.0.0,>=10.0.0
pymupdf4llm<1.0.0,>=0.0.20
pymupdf-layout<2.0.0,>=1.26.6
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
abstractvision>=0.2.0

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

[all-apple:python_version >= "3.10"]
ddgs<10.0.0,>=9.10.0

[all-gpu]
openai<2.0.0,>=1.0.0
anthropic<1.0.0,>=0.25.0
transformers<6.0.0,>=4.57.1
torch<3.0.0,>=2.6.0
torchvision>=0.17.0
torchaudio>=2.1.0
llama-cpp-python<1.0.0,>=0.2.0
outlines>=0.1.0
vllm<1.0.0,>=0.6.0
sentence-transformers<6.0.0,>=5.1.0
numpy<2.0.0,>=1.20.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<6.0.0,>=5.9.0
Pillow<12.0.0,>=10.0.0
pymupdf4llm<1.0.0,>=0.0.20
pymupdf-layout<2.0.0,>=1.26.6
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
abstractvision>=0.2.0

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

[all-gpu:python_version >= "3.10"]
ddgs<10.0.0,>=9.10.0

[all-non-mlx]
openai<2.0.0,>=1.0.0
anthropic<1.0.0,>=0.25.0
transformers<6.0.0,>=4.57.1
torch<3.0.0,>=2.6.0
torchvision>=0.17.0
torchaudio>=2.1.0
llama-cpp-python<1.0.0,>=0.2.0
outlines>=0.1.0
sentence-transformers<6.0.0,>=5.1.0
numpy<2.0.0,>=1.20.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<6.0.0,>=5.9.0
Pillow<12.0.0,>=10.0.0
pymupdf4llm<1.0.0,>=0.0.20
pymupdf-layout<2.0.0,>=1.26.6
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
abstractvision>=0.2.0

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

[all-non-mlx:python_version >= "3.10"]
ddgs<10.0.0,>=9.10.0

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

[all:python_version >= "3.10"]
ddgs<10.0.0,>=9.10.0

[anthropic]
anthropic<1.0.0,>=0.25.0

[compression]
Pillow<12.0.0,>=10.0.0

[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
numpy<2.0.0,>=1.20.0

[full-dev]
openai<2.0.0,>=1.0.0
anthropic<1.0.0,>=0.25.0
transformers<6.0.0,>=4.57.1
torch<3.0.0,>=2.6.0
torchvision>=0.17.0
torchaudio>=2.1.0
llama-cpp-python<1.0.0,>=0.2.0
outlines>=0.1.0
mlx<1.0.0,>=0.30.0
mlx-lm<1.0.0,>=0.30.0
vllm<1.0.0,>=0.6.0
sentence-transformers<6.0.0,>=5.1.0
numpy<2.0.0,>=1.20.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<6.0.0,>=5.9.0
Pillow<12.0.0,>=10.0.0
pymupdf4llm<1.0.0,>=0.0.20
pymupdf-layout<2.0.0,>=1.26.6
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
abstractvision>=0.2.0
pytest>=7.0.0
pytest-asyncio>=0.21.0
pytest-mock>=3.10.0
pytest-cov>=4.0.0
responses>=0.23.0
black>=23.0.0
isort>=5.12.0
mypy>=1.5.0
ruff>=0.1.0
pre-commit>=3.0.0
mkdocs>=1.5.0
mkdocs-material>=9.0.0
mkdocstrings[python]>=0.22.0
mkdocs-autorefs>=0.4.0

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

[full-dev:python_version >= "3.10"]
ddgs<10.0.0,>=9.10.0

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

[lmstudio]

[media]
Pillow<12.0.0,>=10.0.0
pymupdf4llm<1.0.0,>=0.0.20
pymupdf-layout<2.0.0,>=1.26.6
unstructured[docx,odt,pptx,rtf,xlsx]<1.0.0,>=0.10.0
pandas<3.0.0,>=1.0.0

[mlx]
mlx<1.0.0,>=0.30.0
mlx-lm<1.0.0,>=0.30.0
outlines>=0.1.0

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

[ollama]

[openai]
openai<2.0.0,>=1.0.0

[server]
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
abstractvision>=0.2.0

[test]
pytest>=7.0.0
pytest-asyncio>=0.21.0
pytest-mock>=3.10.0
pytest-cov>=4.0.0
responses>=0.23.0
httpx>=0.24.0

[tokens]
tiktoken<1.0.0,>=0.5.0

[tool]
requests<3.0.0,>=2.25.0
beautifulsoup4<5.0.0,>=4.12.0
lxml<6.0.0,>=4.9.0
psutil<6.0.0,>=5.9.0

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

[tool:python_version >= "3.10"]
ddgs<10.0.0,>=9.10.0

[tools]
requests<3.0.0,>=2.25.0
beautifulsoup4<5.0.0,>=4.12.0
lxml<6.0.0,>=4.9.0
psutil<6.0.0,>=5.9.0

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

[tools:python_version >= "3.10"]
ddgs<10.0.0,>=9.10.0

[vision]
abstractvision>=0.2.0

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

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

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

[vllm]
vllm<1.0.0,>=0.6.0
