File size: 1,625 Bytes
5dd1bb4 35095ac 5dd1bb4 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 | [build-system]
requires = ["setuptools>=45", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "sql-env"
version = "0.1.0"
description = "Interactive SQL exploration RL environment for the OpenEnv Challenge"
requires-python = ">=3.11,<3.13"
dependencies = [
# Core OpenEnv runtime (provides FastAPI server + HTTP client types)
"openenv-core[core]>=0.2.1",
# Environment-specific dependencies
"pydantic>=2.0.0",
"fastapi>=0.104.0",
"uvicorn>=0.24.0",
"torch==2.2.2",
"transformers<5",
"numpy<2",
"requests>=2.31.0",
"sqlalchemy>=2.0.47",
]
[project.optional-dependencies]
dev = [
"pytest>=8.0.0",
"pytest-cov>=4.0.0",
"ruff>=0.4.0",
"jupyter>=1.1.1",
"notebook>=7.5.5",
]
training = [
"trl>=0.14.0,<0.15.0",
"accelerate>=0.34.0",
"matplotlib>=3.7.0",
]
[project.scripts]
# Server entry point — enables: uv run server
server = "sql_env.server.app:main"
[tool.setuptools]
include-package-data = true
packages = [
"sql_env",
"sql_env.server",
"sql_env.data",
"sql_env.data.databases",
]
package-dir = { "sql_env" = ".", "sql_env.server" = "server", "sql_env.data" = "data", "sql_env.data.databases" = "data/databases" }
[tool.ruff]
line-length = 88
exclude = ["scripts/"]
[tool.ruff.lint]
select = ["E", "F", "W"]
[tool.ruff.lint.per-file-ignores]
# SQL schema strings and LLM prompts are intentionally long
"server/sql_environment.py" = ["E501"]
[tool.pytest.ini_options]
testpaths = ["tests"]
pythonpath = ["."]
addopts = "--import-mode=importlib"
markers = [
"slow: integration or long-running tests",
]
|