griptape

Форк
0
/
pyproject.toml 
200 строк · 5.5 Кб
1
[tool.poetry]
2
name = "griptape"
3
version = "0.25.1"
4
description = "Modular Python framework for LLM workflows, tools, memory, and data."
5
authors = ["Griptape <hello@griptape.ai>"]
6
license = "Apache 2.0"
7
readme = "README.md"
8
repository = "https://github.com/griptape-ai/griptape"
9

10
packages = [
11
    {include = "griptape"}
12
]
13

14
[tool.poetry.dependencies]
15
python = "^3.9"
16
openai = "^1.1.1"
17
attrs = ">=22"
18
jinja2 = ">=3.1.3"
19
marshmallow = ">=3"
20
marshmallow-enum = ">=1.5"
21
tiktoken = ">=0.7"
22
rich = ">=13"
23
schema = ">=0.7"
24
pyyaml = ">=6"
25
tenacity = ">=8.0"
26
numpy = ">=1"
27
stringcase = "^1.2.0"
28
docker = "^6.1.3"
29
sqlalchemy = "~=1.0"
30
dateparser = "^1.1.8"
31
requests = "^2"
32

33
# drivers
34
cohere = { version = ">=4", optional = true }
35
anthropic = { version = "^0.20.0", optional = true }
36
transformers = { version = "^4.30", optional = true }
37
huggingface-hub = { version = ">=0.13", optional = true }
38
boto3 = { version = "^1.28.2", optional = true }
39
sqlalchemy-redshift = { version = "*", optional = true }
40
snowflake-sqlalchemy = { version = "^1.4.7", optional = true }
41
pinecone-client = { version = "^3", optional = true }
42
pymongo = { version = "*", optional = true }
43
marqo = { version = ">=1.1.0", optional = true }
44
redis = { version = "^4.6.0", optional = true }
45
opensearch-py = { version = "^2.3.1", optional = true }
46
pgvector = { version = "^0.2.3", optional = true }
47
psycopg2-binary = { version = "^2.9.9", optional = true }
48
google-generativeai = { version = "^0.4.1", optional = true }
49
trafilatura = {version = "^1.6", optional = true}
50
playwright = {version = "^1.42", optional = true}
51
beautifulsoup4 = {version = "^4.12.3", optional = true}
52
markdownify = {version = "^0.11.6", optional = true}
53
voyageai = {version = "^0.2.1", optional = true}
54
elevenlabs = {version = "^1.1.2", optional = true}
55
torch = {version = "^2.3.0", optional = true}
56

57
# loaders
58
pandas = {version = "^1.3", optional = true}
59
pypdf = {version = "^3.9", optional = true}
60
pillow = {version = "^10.2.0", optional = true}
61
mail-parser = {version = "^3.15.0", optional = true}
62

63
[tool.poetry.extras]
64
drivers-prompt-cohere = ["cohere"]
65
drivers-prompt-anthropic = ["anthropic"]
66
drivers-prompt-huggingface = ["huggingface-hub", "transformers"]
67
drivers-prompt-huggingface-pipeline = ["huggingface-hub", "transformers", "torch"]
68
drivers-prompt-amazon-bedrock = ["boto3", "anthropic"]
69
drivers-prompt-amazon-sagemaker = ["boto3", "transformers"]
70
drivers-prompt-google = ["google-generativeai"]
71

72
drivers-sql-redshift = ["sqlalchemy-redshift", "boto3"]
73
drivers-sql-snowflake = ["snowflake-sqlalchemy", "snowflake", "snowflake-connector-python"]
74
drivers-sql-postgres = ["pgvector", "psycopg2-binary"]
75

76
drivers-memory-conversation-amazon-dynamodb = ["boto3"]
77
drivers-memory-conversation-redis = ["redis"]
78

79
drivers-vector-marqo = ["marqo"]
80
drivers-vector-pinecone = ["pinecone-client"]
81
drivers-vector-mongodb = ["pymongo"]
82
drivers-vector-redis = ["redis"]
83
drivers-vector-opensearch = ["opensearch-py"]
84
drivers-vector-amazon-opensearch = ["opensearch-py", "boto3"]
85
drivers-vector-postgresql = ["pgvector", "psycopg2-binary"]
86

87
drivers-embedding-amazon-bedrock = ["boto3"]
88
drivers-embedding-amazon-sagemaker = ["boto3"]
89
drivers-embedding-huggingface = ["huggingface-hub", "transformers"]
90
drivers-embedding-voyageai = ["voyageai"]
91
drivers-embedding-google = ["google-generativeai"]
92

93
drivers-web-scraper-trafilatura = ["trafilatura"]
94
drivers-web-scraper-markdownify = ["playwright", "beautifulsoup4", "markdownify"]
95

96
drivers-event-listener-amazon-sqs = ["boto3"]
97
drivers-event-listener-amazon-iot = ["boto3"]
98

99
loaders-dataframe = ["pandas"]
100
loaders-pdf = ["pypdf"]
101
loaders-image = ["pillow"]
102
loaders-email = ["mail-parser"]
103

104
all = [
105
    # drivers
106
    "cohere",
107
    "anthropic",
108
    "hugginface-hub",
109
    "transformers",
110
    "sqlalchemy-redshift",
111
    "boto3",
112
    "snowflake-sqlalchemy",
113
    "snowflake",
114
    "marqo",
115
    "pinecone-client",
116
    "pymongo",
117
    "redis",
118
    "opensearch-py",
119
    "pgvector",
120
    "psycopg2-binary",
121
    "google-generativeai",
122
    "trafilatura",
123
    "playwright",
124
    "beautifulsoup4",
125
    "markdownify",
126
    "voyageai",
127
    "elevenlabs",
128
    "torch",
129

130
    # loaders
131
    "pandas",
132
    "pypdf",
133
    "pillow",
134
    "mail-parser",
135
]
136

137
[tool.poetry.group.test]
138
optional = true
139

140
[tool.poetry.group.test.dependencies]
141
pytest = "~=7.1"
142
pytest-mock = "*"
143
mongomock = "*"
144

145
twine = ">=4"
146
moto = {extras = ["dynamodb", "iotdata", "sqs"], version = "^4.2.13"}
147
pytest-xdist = "^3.3.1"
148
pytest-cov = "^5.0.0"
149
pytest-env = "^1.1.1"
150
fuzzywuzzy = "^0.18.0"
151
pytest-clarity = "^1.0.1"
152

153

154
[tool.poetry.group.dev]
155
optional = true
156

157
[tool.poetry.group.dev.dependencies]
158
ruff = "^0.4.4"
159
pyright = "^1.1.363"
160
pre-commit = "^3.7.1"
161
boto3-stubs = {extras = ["bedrock", "iam", "opensearch", "s3", "sagemaker"], version = "^1.34.105"}
162

163

164
[tool.poetry.group.docs]
165
optional = true
166

167
[tool.poetry.group.docs.dependencies]
168
mkdocs = "^1.5.2"
169
mkdocs-material = "^9.2.8"
170
mkdocs-glightbox = "^0.3.4"
171
mkdocstrings = {extras = ["python"], version = "^0.23.0"}
172
mkdocs-gen-files = "^0.5.0"
173
mkdocs-literate-nav = "^0.6.0"
174
mkdocs-section-index = "^0.3.6"
175
pymdown-extensions = "^10.3"
176

177
[tool.ruff]
178
line-length = 120
179

180
[tool.ruff.format]
181
skip-magic-trailing-comma = true
182

183
[tool.pyright]
184
venvPath = "."
185
venv = ".venv"
186
include = ["griptape"]
187
exclude = [
188
    "**/__pycache__",
189
]
190
pythonVersion = "3.9"
191
reportOptionalMemberAccess = "none"
192
reportIncompatibleVariableOverride = "none" # see thread: https://github.com/microsoft/pyright/issues/5933 
193

194
[tool.pytest_env]
195
OPENAI_API_KEY = {value = "api-key", skip_if_set = true}
196
AZURE_OPENAI_API_KEY = { value = "api-key", skip_if_set = true}
197

198
[build-system]
199
requires = ["poetry-core"]
200
build-backend = "poetry.core.masonry.api"
201

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.