[project] name = "ray-serve-apps" version = "1.0.0" description = "Ray Serve deployments for GPU-shared AI inference" requires-python = ">=3.11" license = { text = "MIT" } authors = [{ name = "Davies Tech Labs" }] dependencies = [ # Ray Serve "ray[serve]>=2.53.0", # HTTP client "httpx>=0.27.0", # Numerical computing "numpy>=1.26.0", ] [project.optional-dependencies] # LLM inference (for vLLM deployments) llm = [ "vllm>=0.6.0", ] # Embeddings and reranking embeddings = [ "sentence-transformers>=2.2.0", ] # Speech-to-text stt = [ "faster-whisper>=1.0.0", ] # Text-to-speech tts = [ "TTS>=0.22.0", ] # Development dev = [ "pytest>=8.0.0", "pytest-asyncio>=0.23.0", "ruff>=0.4.0", ] [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.hatch.build.targets.wheel] # Map the ray-serve directory to ray_serve package name packages = ["ray_serve"] [tool.hatch.build.targets.sdist] include = [ "ray_serve/**/*.py", "ray_serve/py.typed", ] [tool.ruff] line-length = 100 target-version = "py311" [tool.ruff.lint] select = ["E", "F", "I", "W", "UP", "B", "C4", "SIM"] ignore = ["E501"] [tool.ruff.lint.isort] known-first-party = ["ray_serve"] # trigger