Livrare LOT 1 - Didi

This commit is contained in:
Dezvoltari Evotech 2026-06-25 14:13:25 -07:00
commit 5380c3fc63
990 changed files with 133308 additions and 0 deletions

View file

@ -0,0 +1,82 @@
[project]
name = "llm-inference"
version = "0.1.0"
description = "Unified LLM inference with multiple backends (LiteLLM, vLLM, llama.cpp)"
requires-python = ">=3.10"
readme = "README.md"
dependencies = [
# Core dependencies (always installed)
"litellm>=1.50.0,<2.0",
"fastapi>=0.115.0,<0.116",
"uvicorn[standard]>=0.32.0",
"pydantic>=2.0,<3.0",
"pydantic-settings>=2.0,<3.0",
"httpx>=0.27.0,<1.0",
"sse-starlette>=2.0,<3.0",
"prometheus-client>=0.20.0",
"prometheus-fastapi-instrumentator>=7.0.0",
"opentelemetry-instrumentation-fastapi>=0.50b0",
"opentelemetry-exporter-otlp-proto-grpc>=1.30.0",
]
[project.optional-dependencies]
# vLLM backend (GPU inference via OpenAI-compatible API)
vllm = [
"openai>=1.50.0,<2.0",
]
# llama.cpp backend (CPU/Metal inference via OpenAI-compatible API)
llamacpp = [
"openai>=1.50.0,<2.0",
]
# All local inference backends
local = [
"llm-inference[vllm,llamacpp]",
]
# Development dependencies
dev = [
"pytest>=8.0",
"pytest-cov>=4.0",
"pytest-asyncio>=0.24.0",
"ruff>=0.8",
"mypy>=1.0",
"respx>=0.21.0",
]
[project.scripts]
llm-inference = "llm_inference.cli:main"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["src/llm_inference"]
[tool.ruff]
extend = "../../ruff.toml"
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]
addopts = "-v --tb=short"
markers = [
"e2e: End-to-end tests against real running server",
"slow: Tests that make real LLM API calls (cost money, slower)",
]
[tool.mypy]
python_version = "3.10"
strict = true
warn_return_any = true
warn_unused_ignores = true
[dependency-groups]
dev = [
"pytest>=9.0.2",
"pytest-asyncio>=1.3.0",
"ruff>=0.14.11",
]