fastapi>=0.110.0
uvicorn[standard]>=0.27.0
pydantic>=2.6.0
python-multipart>=0.0.9
numpy<2.0.0,>=1.24.0
pyyaml>=6.0
python-dotenv>=1.0.0
requests>=2.31.0

[all]
gamepilot[companion,control,ml,screen,vision,voice]

[companion]
gamepilot[llm-anthropic,llm-openai,llm-watsonx]

[control]
pynput>=1.7.6

[dev]
pytest>=8.0.0
pytest-cov>=4.1.0
pytest-asyncio>=0.23.0
httpx>=0.27.0
black>=24.0.0
ruff>=0.3.0
mypy>=1.8.0

[llm-anthropic]
anthropic>=0.18.0

[llm-openai]
openai>=1.12.0

[llm-watsonx]
ibm-watsonx-ai>=1.0.0

[ml]
torch<3.0.0,>=2.0.0
torchvision>=0.15.0

[screen]
mss>=9.0.0

[training]
gamepilot[ml,vision]
wandb>=0.16.0
tensorboard>=2.16.0
scikit-learn>=1.4.0
matplotlib>=3.8.0

[vision]
opencv-python>=4.9.0
ultralytics>=8.1.0
easyocr>=1.7.0
pillow>=10.2.0

[voice]
SpeechRecognition>=3.10.0
gTTS>=2.5.0
pygame>=2.5.0
