[build-system] requires = ["setuptools>=78"] build-backend = "setuptools.build_meta" [project] name = "prompt-builder-pipeline" version = "0.2.0" description = "Pipeline NLP Bahasa Indonesia — PII, NER, Word Quality, Profanity, Konten Berisiko, Filler, Special Char, Syntax, Field-Fit" requires-python = ">=3.10" dependencies = [] # semua paket bersifat opsional, pilih grup sesuai kebutuhan [project.optional-dependencies] # Model transformer untuk NER, Syntax, dan Field-Fit (ML layer) # Model diunduh otomatis dari HuggingFace Hub saat pertama dijalankan (~278–600 MB) ml = [ "transformers>=4.40", "torch>=2.2", # CPU sudah cukup, GPU opsional "sentencepiece>=0.2", # tokenizer XLM-RoBERTa "accelerate>=0.29", # dibutuhkan transformers pipeline "protobuf>=4.25", # dibutuhkan sentencepiece "huggingface-hub>=0.22", # download & cache model ] # Deteksi kata slang, alay, dan typo (Word Quality Detector) nlp = [ "wordfreq>=3.1", # kosakata Indonesia dari multi-corpus "symspellpy>=6.9", # spell checker O(1) ] # Semua dependensi sekaligus (rekomendasi untuk menjalankan pipeline penuh) full = ["prompt-builder-pipeline[ml,nlp]"] # Tools pengembangan dev = [ "pytest>=8", "pytest-cov>=5", "ruff>=0.4", ] [tool.setuptools.packages.find] where = ["src"] [tool.ruff] line-length = 100 target-version = "py310"