-
Notifications
You must be signed in to change notification settings - Fork 56
/
Copy pathpyproject.toml
142 lines (114 loc) · 4.4 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
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
[tool.poetry]
name = "sycamore-monorepo"
version = "0.0.1"
description = "Sycamore is an LLM-powered semantic data preparation system for building search applications."
authors = ["aryn.ai <[email protected]>"]
readme = "README.md"
repository = "https://github.com/aryn-ai/sycamore.git"
# Once all supported OSes we use default to poetry 1.8.x, we can enable this line to remove the
# warning. Until then people will have to specify --no-root
# package-mode = false
[tool.poetry.urls]
"Repository" = "https://github.com/aryn-ai/sycamore.git"
"Documentation" = "https://sycamore.readthedocs.io"
[tool.poetry.dependencies]
# streamlit in query-ui disallows 3.9.7
# cryptography in sycamore-ai disallows 3.9.1, 3.9.0, need >44.0.1 due to CVE-2024-12797: https://github.com/aryn-ai/sycamore/security/dependabot/327
python = ">=3.9.2,<3.9.7 || >3.9.7,<3.13"
sycamore-ai = "^0.1.13"
# Dependencies for building docs. Defined as an extra
# so they can be installed using pip on RTD.
furo = { version = "^2023.9.10", optional = true }
myst-parser = { version = "^2.0.0", optional = true }
sphinx = { version = "^7.2.5", optional = true }
enum-tools = { extras = ["sphinx"], version = "^0.12.0", optional = true }
sphinx-toolbox = { version = "^3.9.0", optional = true }
rouge = "^1.0.1"
structlog = "^24.4.0"
[tool.poetry.group.test.dependencies]
flake8 = "4.0.1"
pytest = "^7.4"
pytest-mock = "^3.11"
[tool.poetry.group.dev.dependencies]
sycamore-ai = { path = "lib/sycamore", develop = true, extras = [
"eval",
"duckdb",
"elasticsearch",
"neo4j",
"opensearch",
"pinecone",
"weaviate",
"local-inference",
"legacy-partitioners",
"anthropic",
"google-genai",
] }
remote-processors = { path = "lib/remote-processors", develop = true }
integration = { path = "apps/integration", develop = true }
sycamore-poetry-lock = { path = "lib/poetry-lock", develop = true }
aryn-sdk = { path = "lib/aryn-sdk", develop = true }
ruff = "^0.0.287"
black = "^24.4"
pre-commit = "^3.4.0"
mypy = "^1.11.0"
nbmake = "^1.4.5"
pip = "^24.2"
devtools = "^0.12"
[tool.poetry.group.notebook.dependencies]
jupyterlab = "^4.0.11"
jupyter-lsp = "^2.2.2"
ipywidgets = "^8.1.0"
notebook = "^7.1.2"
s3contents = "^0.11"
[tool.poetry.extras]
docs = ["furo", "myst-parser", "sphinx", "enum-tools", "sphinx-toolbox"]
[tool.ruff]
line-length = 120
[tool.black]
line-length = 120
[tool.mypy]
exclude = ["notebooks", "docs"]
ignore_missing_imports = true
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.pytest.ini_options]
pythonpath = ["."]
log_cli = true
log_cli_level = "INFO"
[tool.poetry-autolock.dependents]
integration = "apps/integration"
### These are here so that docker containers can do poetry install --only <thing> and get it installed.
### Using multiple pyproject.toml files and symlinking the virtual envs together caused packages to
### be installed and uninstalled when moving between directories. Not symlinking the virtual envs
### causes duplication.
### BEGIN Auto-generated by autogen-groups.py
[tool.poetry.group.docs.dependencies]
sycamore-ai = { path = "lib/sycamore", develop = true, extras = ["docs"] }
[tool.poetry.group.duckdb.dependencies]
sycamore-ai = { path = "lib/sycamore", develop = true, extras = ["duckdb"] }
[tool.poetry.group.elasticsearch.dependencies]
sycamore-ai = { path = "lib/sycamore", develop = true, extras = [
"elasticsearch",
] }
[tool.poetry.group.eval.dependencies]
sycamore-ai = { path = "lib/sycamore", develop = true, extras = ["eval"] }
[tool.poetry.group.legacy-partitioners.dependencies]
sycamore-ai = { path = "lib/sycamore", develop = true, extras = [
"legacy-partitioners",
] }
[tool.poetry.group.local-inference.dependencies]
sycamore-ai = { path = "lib/sycamore", develop = true, extras = [
"local-inference",
] }
[tool.poetry.group.neo4j.dependencies]
sycamore-ai = { path = "lib/sycamore", develop = true, extras = ["neo4j"] }
[tool.poetry.group.opensearch.dependencies]
sycamore-ai = { path = "lib/sycamore", develop = true, extras = ["opensearch"] }
[tool.poetry.group.pinecone.dependencies]
sycamore-ai = { path = "lib/sycamore", develop = true, extras = ["pinecone"] }
[tool.poetry.group.qdrant.dependencies]
sycamore-ai = { path = "lib/sycamore", develop = true, extras = ["qdrant"] }
[tool.poetry.group.weaviate.dependencies]
sycamore-ai = { path = "lib/sycamore", develop = true, extras = ["weaviate"] }
# END Auto-generated by autogen-groups.py