This repository has been archived by the owner on Oct 2, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 7
/
pyproject.toml
118 lines (105 loc) · 3.94 KB
/
pyproject.toml
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
[tool.poetry]
name = "modelgauge"
version = "0.6.3"
description = "Automatically and uniformly measure the behavior of many AI Systems."
license = "Apache-2.0"
authors = ["MLCommons AI Safety <[email protected]>"]
readme = "README.md"
repository = "https://github.com/mlcommons/modelgauge"
keywords = [
"AI",
"GenAI",
"LLM",
"NLP",
"evaluate",
"measure",
"quality",
"testing",
"prompt",
"safety",
"compare",
"artificial",
"intelligence",
"Large",
"Language",
"Models",
]
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Intended Audience :: Information Technology",
"Intended Audience :: Science/Research",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3",
"Topic :: Scientific/Engineering",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: System :: Benchmark",
"Typing :: Typed",
]
[tool.poetry.dependencies]
python = "^3.10"
zstandard = ">=0.18.0,<0.19.0"
tqdm = ">=4.66.1"
types-tqdm = "^4.66.0.0"
pydantic = "^2.6.0"
sqlitedict = "^2.1.0"
gdown = ">=5.1.0"
modelgauge_demo_plugin = {version = "*", optional = true}
modelgauge_standard_tests = {version = "*", optional = true}
modelgauge_openai = {version = "*", optional = true}
modelgauge_huggingface = {version = "*", optional = true}
modelgauge_perspective_api = {version = "*", optional = true}
tomli = "^2.0.1"
click = "^8.1.7"
typing-extensions = "^4.10.0"
tenacity = "^8.3.0"
jsonlines = "^4.0.0"
diskcache = "^5.6.3"
starlette = "^0.37.2"
fastapi = "^0.111.1"
together = "^1.2.3"
[tool.poetry.group.dev.dependencies]
modelgauge_demo_plugin = {path = "demo_plugin", develop = true, optional=true}
modelgauge_standard_tests = {path = "plugins/standard_tests", develop = true, optional=true}
modelgauge_openai = {path = "plugins/openai", develop = true, optional=true}
modelgauge_huggingface = {path = "plugins/huggingface", develop = true, optional=true}
modelgauge_perspective_api = {path = "plugins/perspective_api", develop = true, optional=true}
pytest-datafiles = "^3.0.0"
pytest = "^8.3.1"
mypy = "^1.7.1"
pytest-mock = "^3.12.0"
pytest-timeout = "^2.3.1"
flaky = "^3.8.1"
nbmake = "^1.5.3"
tox = "^4.14.2"
black = {extras = ["jupyter"], version = "^24.8.0"}
[tool.pytest.ini_options]
# Ignore the main source that might have things named "test"
addopts="--ignore=modelgauge/ --ignore=demo_plugin/modelgauge/ --ignore=plugins/*/modelgauge/"
[tool.mypy]
# Using namespace packages to do plugins requires us not to have __init__.py files.
# However, by default mypy uses those to map file paths to modules. This override fixes that.
# https://mypy.readthedocs.io/en/stable/config_file.html#confval-explicit_package_bases
explicit_package_bases = true
mypy_path = "., demo_plugin, plugins/standard_tests, plugins/openai, plugins/huggingface, plugins/perspective_api"
[[tool.mypy.overrides]]
module = "modelgauge.tests.*,modelgauge.annotators.*,modelgauge.safety_model_response,plugins.*"
ignore_missing_imports = true
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.poetry.extras]
demo = ["modelgauge_demo_plugin"]
standard_tests = ["modelgauge_standard_tests"]
openai = ["modelgauge_openai"]
huggingface = ["modelgauge_huggingface"]
perspective_api = ["modelgauge_perspective_api"]
all_plugins = ["modelgauge_demo_plugin", "modelgauge_openai", "modelgauge_huggingface", "modelgauge_standard_tests", "modelgauge_perspective_api"]
[[tool.poetry_bumpversion.replacements]]
files = ["demo_plugin/pyproject.toml", "plugins/huggingface/pyproject.toml", "plugins/openai/pyproject.toml", "plugins/perspective_api/pyproject.toml", "plugins/standard_tests/pyproject.toml"]
search = 'version = "{current_version}"'
replace = 'version = "{new_version}"'
[tool.poetry.scripts]
modelgauge = "modelgauge.main:main"