[project] name = "papertrail" version = "0.1.0" description = "Add your description here" readme = "README.md" requires-python = ">=3.11" dependencies = [ "gradio>=4.0.0", # Image / document processing "opencv-python-headless", "pdf2image", "Pillow", "pytesseract", # Augmentation / synthetic data "albumentations", "reportlab", "pandas", "numpy", "huggingface_hub", # OpenAI-compatible client for the llama-server endpoint "openai", ] [project.optional-dependencies] inference = [ "llama-cpp-python", ] # Modal fine-tune job — pinned versions required for Nemotron finetune = [ "torch==2.7.1", "triton>=3.3.0", "transformers==4.56.2", "torchvision>=0.22.0", "datasets==4.3.0", "mamba_ssm==2.2.5", "causal_conv1d==1.5.2", "unsloth", "unsloth_zoo", "peft", "trl", "accelerate", "evaluate", "scikit-learn", ] # Dev tooling dev = [ "ruff", "pytest", "pytest-asyncio", ] [project.scripts] papertrail-serve-app = "papertrail.app.main:main" papertrail-serve-llm = "papertrail.inference.server.server:main" [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.ruff] line-length = 100 target-version = "py311"