| [build-system] |
| requires = ["hatchling"] |
| build-backend = "hatchling.build" |
|
|
| [project] |
| name = "demo-agent-service" |
| version = "0.1.0" |
| description = "DEMO Agentic Service Data Eyond — Multi-Agent AI Backend" |
| requires-python = ">=3.12,<3.13" |
|
|
| dependencies = [ |
| |
| "fastapi[standard]==0.115.6", |
| "uvicorn[standard]==0.32.1", |
| "python-multipart==0.0.12", |
| "starlette==0.41.3", |
| "sse-starlette==2.1.3", |
| |
| "langchain==0.3.13", |
| "langchain-core==0.3.28", |
| "langchain-community==0.3.13", |
| "langchain-openai==0.2.14", |
| "langchain-postgres>=0.0.13", |
| "langgraph==0.2.60", |
| "langgraph-checkpoint-postgres==2.0.9", |
| |
| "openai==1.58.1", |
| "tiktoken==0.8.0", |
| |
| "sqlalchemy[asyncio]==2.0.36", |
| "asyncpg==0.30.0", |
| "psycopg[binary,pool]==3.2.3", |
| "pgvector==0.3.6", |
| "alembic==1.14.0", |
| |
| "azure-storage-blob==12.23.1", |
| "azure-identity==1.19.0", |
| "azure-ai-documentintelligence==1.0.0", |
| |
| "pydantic==2.10.3", |
| "pydantic-settings==2.7.0", |
| |
| "langfuse==2.57.4", |
| "structlog==24.4.0", |
| "prometheus-client==0.21.1", |
| |
| "passlib[bcrypt]==1.7.4", |
| "cryptography==44.0.0", |
| |
| "slowapi==0.1.9", |
| "redis==5.2.1", |
| |
| "tenacity==9.0.0", |
| |
| "pypdf==5.1.0", |
| "python-docx==1.1.2", |
| "openpyxl==3.1.5", |
| "pandas==2.2.3", |
| |
| "matplotlib==3.9.3", |
| "plotly==5.24.1", |
| "kaleido==0.2.1", |
| |
| "mcp==1.2.0", |
| |
| "rank-bm25==0.2.2", |
| "sentence-transformers==3.3.1", |
| |
| "presidio-analyzer==2.2.355", |
| "presidio-anonymizer==2.2.355", |
| "spacy==3.8.3", |
| |
| "httpx==0.28.1", |
| "anyio==4.7.0", |
| "python-dotenv==1.0.1", |
| "orjson==3.10.12", |
| "cachetools==5.5.0", |
| "apscheduler==3.10.4", |
| "jsonpatch>=1.33", |
| "pymongo>=4.14.0", |
| "psycopg2>=2.9.11", |
| ] |
|
|
| [project.optional-dependencies] |
| dev = [ |
| "pytest==8.3.4", |
| "pytest-asyncio==0.24.0", |
| "pytest-cov==6.0.0", |
| "httpx==0.28.1", |
| "ruff==0.8.4", |
| "mypy==1.13.0", |
| "pre-commit==4.0.1", |
| ] |
|
|
| [tool.uv] |
| dev-dependencies = [ |
| "pytest==8.3.4", |
| "pytest-asyncio==0.24.0", |
| "pytest-cov==6.0.0", |
| "ruff==0.8.4", |
| "mypy==1.13.0", |
| "pre-commit==4.0.1", |
| ] |
|
|
| [tool.hatch.build.targets.wheel] |
| packages = ["src/agent_service"] |
|
|
| [tool.ruff] |
| target-version = "py312" |
| line-length = 100 |
|
|
| [tool.ruff.lint] |
| select = ["E", "F", "I", "N", "UP", "S", "B", "A", "C4", "T20"] |
| ignore = [ |
| "S101", |
| "S105", |
| "S106", |
| "B008", |
| ] |
|
|
| [tool.ruff.lint.per-file-ignores] |
| "tests/**" = ["S101", "S105", "S106"] |
|
|
| [tool.mypy] |
| python_version = "3.12" |
| strict = true |
| ignore_missing_imports = true |
| plugins = ["pydantic.mypy"] |
|
|
| [tool.pytest.ini_options] |
| asyncio_mode = "auto" |
| testpaths = ["tests"] |
| filterwarnings = [ |
| "ignore::DeprecationWarning", |
| ] |
|
|