mirror of
https://github.com/onyx-dot-app/onyx.git
synced 2026-02-16 23:35:46 +00:00
218 lines
5.6 KiB
TOML
218 lines
5.6 KiB
TOML
[build-system]
|
|
requires = ["setuptools>=61"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "onyx"
|
|
version = "0.0.0"
|
|
requires-python = ">=3.11"
|
|
# Shared dependencies between backend and model_server
|
|
dependencies = [
|
|
"aioboto3==15.1.0",
|
|
"cohere==5.6.1",
|
|
"fastapi==0.128.0",
|
|
"google-cloud-aiplatform==1.121.0",
|
|
"google-genai==1.52.0",
|
|
"litellm==1.81.6",
|
|
"openai==2.14.0",
|
|
"pydantic==2.11.7",
|
|
"prometheus_client>=0.21.1",
|
|
"prometheus_fastapi_instrumentator==7.1.0",
|
|
"retry==0.9.2", # This pulls in py which is in CVE-2022-42969, must remove py from image
|
|
"sentry-sdk==2.14.0",
|
|
"uvicorn==0.35.0",
|
|
"voyageai==0.2.3",
|
|
"brotli>=1.2.0",
|
|
"claude-agent-sdk>=0.1.19",
|
|
"agent-client-protocol>=0.7.1",
|
|
"discord-py==2.4.0",
|
|
"kubernetes>=31.0.0",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
# Main backend application dependencies
|
|
backend = [
|
|
"aiohttp==3.13.3",
|
|
"alembic==1.10.4",
|
|
"asyncpg==0.30.0",
|
|
"atlassian-python-api==3.41.16",
|
|
"beautifulsoup4==4.12.3",
|
|
"boto3==1.39.11",
|
|
"boto3-stubs[s3]==1.39.11",
|
|
"celery==5.5.1",
|
|
"chardet==5.2.0",
|
|
"chonkie==1.0.10",
|
|
"dask==2026.1.1",
|
|
"ddtrace==3.10.0",
|
|
"discord.py==2.4.0",
|
|
"distributed==2026.1.1",
|
|
"fastapi-users==15.0.4",
|
|
"fastapi-users-db-sqlalchemy==7.0.0",
|
|
"fastapi-limiter==0.1.6",
|
|
"fastmcp==2.14.2",
|
|
"filelock==3.20.3",
|
|
"google-api-python-client==2.86.0",
|
|
"google-auth-httplib2==0.1.0",
|
|
"google-auth-oauthlib==1.0.0",
|
|
# GPT4All library has issues running on Macs and python:3.11.4-slim-bookworm
|
|
# will reintroduce this when library version catches up
|
|
# "gpt4all==2.0.2",
|
|
"httpcore==1.0.9",
|
|
"httpx[http2]==0.28.1",
|
|
"httpx-oauth==0.15.1",
|
|
"huggingface-hub==0.35.3",
|
|
"inflection==0.5.1",
|
|
"jira==3.10.5",
|
|
"jsonref==1.1.0",
|
|
"kubernetes==31.0.0",
|
|
"trafilatura==1.12.2",
|
|
"langchain-core==1.2.11",
|
|
"lazy_imports==1.0.1",
|
|
"lxml==5.3.0",
|
|
"Mako==1.2.4",
|
|
"markitdown[pdf, docx, pptx, xlsx, xls]==0.1.2",
|
|
"mcp[cli]==1.25.0",
|
|
"msal==1.34.0",
|
|
"msoffcrypto-tool==5.4.2",
|
|
"Office365-REST-Python-Client==2.5.9",
|
|
"oauthlib==3.2.2",
|
|
# NOTE: This is frozen to avoid https://foss.heptapod.net/openpyxl/openpyxl/-/issues/2147
|
|
"openpyxl==3.0.10",
|
|
"opensearch-py==3.0.0",
|
|
"passlib==1.7.4",
|
|
"playwright==1.55.0",
|
|
"psutil==7.1.3",
|
|
"psycopg2-binary==2.9.9",
|
|
"puremagic==1.28",
|
|
"pyairtable==3.0.1",
|
|
"pycryptodome==3.19.1",
|
|
"PyGithub==2.5.0",
|
|
"pympler==1.1",
|
|
"python-dateutil==2.8.2",
|
|
"python-gitlab==5.6.0",
|
|
"python-pptx==0.6.23",
|
|
"pypandoc_binary==1.16.2",
|
|
"pypdf==6.6.2",
|
|
"pytest-mock==3.12.0",
|
|
"pytest-playwright==0.7.0",
|
|
"python-docx==1.1.2",
|
|
"python-dotenv==1.1.1",
|
|
"python-multipart==0.0.22",
|
|
"pywikibot==9.0.0",
|
|
"redis==5.0.8",
|
|
"requests==2.32.5",
|
|
"requests-oauthlib==1.3.1",
|
|
"rfc3986==1.5.0",
|
|
"simple-salesforce==1.12.6",
|
|
"slack-sdk==3.20.2",
|
|
"SQLAlchemy[mypy]==2.0.15",
|
|
"starlette==0.49.3",
|
|
"supervisor==4.3.0",
|
|
"RapidFuzz==3.13.0",
|
|
"tiktoken==0.7.0",
|
|
"timeago==1.0.16",
|
|
"types-openpyxl==3.0.4.7",
|
|
"unstructured==0.18.27",
|
|
"unstructured-client==0.42.6",
|
|
"zulip==0.8.2",
|
|
"hubspot-api-client==11.1.0",
|
|
"asana==5.0.8",
|
|
"dropbox==12.0.2",
|
|
"shapely==2.0.6",
|
|
"stripe==10.12.0",
|
|
"urllib3==2.6.3",
|
|
"mistune==3.2.0",
|
|
"sendgrid==6.12.5",
|
|
"exa_py==1.15.4",
|
|
"braintrust==0.3.9",
|
|
"langfuse==3.10.0",
|
|
"nest_asyncio==1.6.0",
|
|
"openinference-instrumentation==0.1.42",
|
|
"opentelemetry-proto>=1.39.0",
|
|
"python3-saml==1.15.0",
|
|
"xmlsec==1.3.14",
|
|
]
|
|
|
|
# Dev tools
|
|
dev = [
|
|
"black==25.1.0",
|
|
"celery-types==0.19.0",
|
|
"faker==40.1.2",
|
|
"hatchling==1.28.0",
|
|
"ipykernel==6.29.5",
|
|
"manygo==0.2.0",
|
|
"matplotlib==3.10.8",
|
|
"mypy-extensions==1.0.0",
|
|
"mypy==1.13.0",
|
|
"onyx-devtools==0.5.7",
|
|
"openapi-generator-cli==7.17.0",
|
|
"pandas-stubs~=2.3.3",
|
|
"pre-commit==3.2.2",
|
|
"pytest-alembic==0.12.1",
|
|
"pytest-asyncio==1.3.0",
|
|
"pytest-dotenv==0.5.2",
|
|
"pytest-repeat==0.9.4",
|
|
"pytest-xdist==3.8.0",
|
|
"pytest==8.3.5",
|
|
"release-tag==0.4.3",
|
|
"reorder-python-imports-black==3.14.0",
|
|
"ruff==0.12.0",
|
|
"types-beautifulsoup4==4.12.0.3",
|
|
"types-html5lib==1.1.11.13",
|
|
"types-oauthlib==3.2.0.9",
|
|
"types-passlib==1.7.7.20240106",
|
|
"types-Pillow==10.2.0.20240822",
|
|
"types-psutil==7.1.3.20251125",
|
|
"types-psycopg2==2.9.21.10",
|
|
"types-python-dateutil==2.8.19.13",
|
|
"types-PyYAML==6.0.12.11",
|
|
"types-pytz==2023.3.1.1",
|
|
"types-regex==2023.3.23.1",
|
|
"types-requests==2.32.0.20250328",
|
|
"types-retry==0.9.9.3",
|
|
"types-setuptools==68.0.0.3",
|
|
"zizmor==1.18.0",
|
|
]
|
|
|
|
# Enterprise Edition features
|
|
ee = [
|
|
"posthog==3.7.4",
|
|
]
|
|
|
|
# Model server specific dependencies (ML packages)
|
|
model_server = [
|
|
"accelerate==1.6.0",
|
|
"einops==0.8.1",
|
|
"numpy==2.4.1",
|
|
"safetensors==0.5.3",
|
|
"sentence-transformers==4.0.2",
|
|
"torch==2.9.1",
|
|
"transformers==4.53.0",
|
|
"sentry-sdk[fastapi,celery,starlette]==2.14.0",
|
|
]
|
|
|
|
[tool.uv.workspace]
|
|
members = ["backend", "tools/ods"]
|
|
|
|
[tool.basedpyright]
|
|
include = ["backend"]
|
|
exclude = ["backend/generated", "backend/onyx/server/features/build/sandbox/kubernetes/docker/skills/pptx", "backend/onyx/server/features/build/sandbox/kubernetes/docker/templates/venv"]
|
|
typeCheckingMode = "off"
|
|
|
|
[tool.ruff]
|
|
line-length = 130
|
|
target-version = "py311"
|
|
|
|
[tool.ruff.lint]
|
|
ignore = []
|
|
select = [
|
|
"ARG",
|
|
"E",
|
|
"F",
|
|
"W",
|
|
]
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["backend"]
|
|
include = ["onyx*", "tests*"]
|