[tool.poetry] name = "sentinel" version = "2.0.0" description = "A Python library for local, contrastive semantic scoring of text to identify affinity towards predefined critical harm patterns." authors = ["Younes Abouelnagah "] readme = "README.md" license = "Apache-2.0" packages = [{include = "sentinel", from = "src"}] classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Text Processing :: Linguistic" ] [tool.poetry.dependencies] python = ">=3.10,<4.0" numpy = ">=1.21,<2.0" safetensors = ">=0.4.0" smart_open = ">=6.4.0" sentence-transformers = { version = ">=3.0.1,<4.0", optional = true } torch = { version = ">=2.3.0,<3.0.0" } pillow = ">=11.3.0" transformers = ">=4.52.1" [tool.poetry.urls] "Homepage" = "https://github.com/Roblox/sentinel" "Bug Tracker" = "https://github.com/Roblox/sentinel/issues" [tool.poetry.extras] sbert = ["sentence-transformers"] [tool.poetry.group.dev.dependencies] pytest = "^8.3.5" pytest-cov = "^6.1.1" black = {version = "^25.1.0", allow-prereleases = true} flake8 = "^7.2.0" mypy = "^1.15.0" pre-commit = "^4.2.0" pytest-timeout = "^2.4.0" [tool.poetry.group.docs.dependencies] furo = "^2024.8.6" sphinx-copybutton = "^0.5.2" sphinx = ">=7.0.0,<8.0.0" [tool.poetry.group.examples.dependencies] datasets = "^2.14.0" jupyter = "^1.0.0" ipykernel = "^6.0.0" matplotlib = "^3.0.0" pandas = "^2.0.0" beautifulsoup4 = "^4.10.0" markdownify = "^0.11.0" python-slugify = "^8.0.0" pyarrow = "^15.0.0" [build-system] requires = ["poetry-core>=2.0.0,<3.0.0"] build-backend = "poetry.core.masonry.api" [tool.flake8] exclude = ["examples/*"]