@@ -8,53 +8,64 @@ packages = [{include = "semantic_kernel"}]
8
8
9
9
[tool .poetry .dependencies ]
10
10
python = " ^3.10,<3.13"
11
+
12
+ # main dependencies
11
13
aiohttp = " ^3.8"
14
+ pydantic = " ^2"
15
+ pydantic-settings = " ^2"
16
+ defusedxml = " ^0.7.1"
17
+
18
+ # embeddings
12
19
numpy = [
13
20
{ version = " >=1.25" , python = " <3.12" },
14
21
{ version = " >=1.26" , python = " >=3.12" },
15
22
]
16
- scipy = [
17
- { version = " >=1.5.0" , python = " <3.12" },
18
- { version = " >=1.12.0" , python = " >=3.12" }
19
- ]
20
- grpcio = [
21
- { version = " >=1.50.0" , python = " <3.12" },
22
- { version = " >=1.60.0" , python = " >=3.12" }
23
- ]
23
+
24
+ # openai connector
24
25
openai = " >=1.0"
25
- regex = " >=2023.6.3,<2025.0.0"
26
+
27
+ # openapi and swagger
26
28
openapi_core = " >=0.18,<0.20"
27
29
prance = " ^23.6.21.0"
28
- pydantic = " ^2"
29
- pydantic-settings = " ^2.2.1"
30
- motor = " ^3.3.2"
31
- defusedxml = " ^0.7.1"
30
+
31
+ # templating
32
32
pybars4 = " ^0.9.13"
33
33
jinja2 = " ^3.1.3"
34
34
nest-asyncio = " ^1.6.0"
35
35
36
- # Optional dependencies
37
- ipykernel = { version = " ^6.21.1" , optional = true }
36
+ # ## Optional dependencies
37
+ # azure
38
+ azure-ai-inference = {version = " ^1.0.0b1" , allow-prereleases = true , optional = true }
39
+ azure-search-documents = {version = " 11.6.0b4" , allow-prereleases = true , optional = true }
40
+ azure-core = { version = " ^1.28.0" , optional = true }
41
+ azure-identity = { version = " ^1.13.0" , optional = true }
42
+ azure-cosmos = { version = " ^4.7.0" , optional = true }
43
+ # chroma
44
+ chromadb = { version = " >=0.4.13,<0.6.0" , optional = true }
45
+ # google
38
46
google-generativeai = { version = " >=0.1" , markers = " python_version >= '3.9'" , optional = true }
39
- grpcio-status = { version = " ^1.53.0 " , markers = " python_version >= '3.9' " , optional = true }
40
- transformers = { version = " ^4.28.1" , optional = true }
47
+ # hugging face
48
+ transformers = { version = " ^4.28.1" , extras =[ " torch " ], optional = true }
41
49
sentence-transformers = { version = " ^2.2.2" , optional = true }
42
- torch = { version = " ^2.2.0" , optional = true }
43
- qdrant-client = { version = ' ^1.9' , optional = true }
44
- chromadb = { version = " >=0.4.13,<0.6.0" , optional = true }
50
+ # mongo
51
+ motor = { version = " ^3.3.2" , optional = true }
52
+ # notebooks
53
+ ipykernel = { version = " ^6.21.1" , optional = true }
54
+ # milvus
45
55
pymilvus = { version = " >=2.3,<2.4.4" , optional = true }
46
56
milvus = { version = " >=2.3,<2.3.8" , markers = ' sys_platform != "win32"' , optional = true }
47
- weaviate-client = { version = " >=3.18,<5.0 " , optional = true }
57
+ # pinecone
48
58
pinecone-client = { version = " >=3.0.0" , optional = true }
59
+ # postgres
49
60
psycopg = { version =" ^3.1.9" , extras =[" binary" ," pool" ], optional = true }
61
+ # qdrant
62
+ qdrant-client = { version = ' ^1.9' , optional = true }
63
+ # redis
50
64
redis = { version = " ^4.6.0" , optional = true }
51
- azure-ai-inference = {version = " ^1.0.0b1" , allow-prereleases = true , optional = true }
52
- azure-search-documents = {version = " 11.6.0b4" , allow-prereleases = true , optional = true }
53
- azure-core = { version = " ^1.28.0" , optional = true }
54
- azure-identity = { version = " ^1.13.0" , optional = true }
55
- azure-cosmos = { version = " ^4.7.0" , optional = true }
65
+ # usearch
56
66
usearch = { version = " ^2.9" , optional = true }
57
67
pyarrow = { version = " >=12.0.1,<17.0.0" , optional = true }
68
+ weaviate-client = { version = " >=3.18,<5.0" , optional = true }
58
69
59
70
# Groups are for development only (installed through Poetry)
60
71
[tool .poetry .group .dev .dependencies ]
@@ -78,51 +89,63 @@ azure-ai-inference = {version = "^1.0.0b1", allow-prereleases = true}
78
89
azure-search-documents = {version = " 11.6.0b4" , allow-prereleases = true }
79
90
azure-core = " ^1.28.0"
80
91
azure-cosmos = " ^4.7.0"
81
- transformers = " ^4.28.1"
92
+ transformers = { version = " ^4.28.1" , extras =[ " torch " ]}
82
93
sentence-transformers = " ^2.2.2"
83
- torch = " ^2.2.0"
84
94
85
95
[tool .poetry .group .tests ]
86
96
optional = true
87
97
88
98
[tool .poetry .group .tests .dependencies ]
99
+ # azure
100
+ azure-ai-inference = {version = " ^1.0.0b1" , allow-prereleases = true }
101
+ azure-search-documents = {version = " 11.6.0b4" , allow-prereleases = true }
102
+ azure-core = " ^1.28.0"
103
+ azure-identity = " ^1.13.0"
104
+ azure-cosmos = " ^4.7.0"
105
+ msgraph-sdk = " ^1.2.0"
106
+ # chroma
107
+ chromadb = " >=0.4.13,<0.6.0"
108
+ # google
89
109
google-generativeai = { version = " >=0.1,<0.4" }
90
- grpcio-status = " ^1.53.0 "
91
- transformers = " ^4.28.1"
110
+ # hugging face
111
+ transformers = { version = " ^4.28.1" , extras =[ " torch " ]}
92
112
sentence-transformers = " ^2.2.2"
93
- torch = " ^2.2.0"
94
- qdrant-client = ' ^1.9'
95
- chromadb = " >=0.4.13,<0.6.0"
113
+ # milvus
96
114
pymilvus = " >=2.3,<2.4.4"
97
115
milvus = { version = " >=2.3,<2.3.8" , markers = ' sys_platform != "win32"' }
98
- weaviate-client = " >=3.18,<5.0"
116
+ # mongodb
117
+ motor = " ^3.3.2"
118
+ # pinecone
99
119
pinecone-client = " >=3.0.0"
120
+ # postgres
100
121
psycopg = { version =" ^3.1.9" , extras =[" binary" ," pool" ]}
122
+ # qdrant
123
+ qdrant-client = ' ^1.9'
124
+ # redis
101
125
redis = " ^4.6.0"
102
- azure-ai-inference = {version = " ^1.0.0b1" , allow-prereleases = true }
103
- azure-search-documents = {version = " 11.6.0b4" , allow-prereleases = true }
104
- azure-core = " ^1.28.0"
105
- azure-identity = " ^1.13.0"
106
- azure-cosmos = " ^4.7.0"
126
+ # usearch
107
127
usearch = " ^2.9"
108
128
pyarrow = " >=12.0.1,<17.0.0"
109
- msgraph-sdk = " ^1.2.0"
129
+ # weaviate
130
+ weaviate-client = " >=3.18,<5.0"
110
131
111
132
# Extras are exposed to pip, this allows a user to easily add the right dependencies to their environment
112
133
[tool .poetry .extras ]
113
- google = [" google-generativeai" , " grpcio-status " ]
114
- hugging_face = [ " transformers " , " sentence-transformers " , " torch " ]
115
- qdrant = [" qdrant-client " ]
134
+ all = [" google-generativeai" , " transformers " , " sentence-transformers " , " qdrant-client " , " chromadb " , " pymilvus " , " milvus " , " weaviate-client " , " pinecone-client " , " psycopg " , " redis " , " azure-ai-inference " , " azure-search-documents " , " azure-core " , " azure-identity " , " azure-cosmos " , " usearch " , " pyarrow " , " ipykernel " , " motor " ]
135
+
136
+ azure = [" azure-ai-inference " , " azure-search-documents " , " azure-core " , " azure-identity " , " azure-cosmos " , " msgraph-sdk " ]
116
137
chromadb = [" chromadb" ]
138
+ google = [" google-generativeai" ]
139
+ hugging_face = [" transformers" , " sentence-transformers" ]
117
140
milvus = [" pymilvus" , " milvus" ]
118
- weaviate = [" weaviate-client" ]
141
+ mongo = [" motor" ]
142
+ notebooks = [" ipykernel" ]
119
143
pinecone = [" pinecone-client" ]
120
144
postgres = [" psycopg" ]
145
+ qdrant = [" qdrant-client" ]
121
146
redis = [" redis" ]
122
- azure = [" azure-ai-inference" , " azure-search-documents" , " azure-core" , " azure-identity" , " azure-cosmos" , " msgraph-sdk" ]
123
147
usearch = [" usearch" , " pyarrow" ]
124
- notebooks = [" ipykernel" ]
125
- all = [" google-generativeai" , " grpcio-status" , " transformers" , " sentence-transformers" , " torch" , " qdrant-client" , " chromadb" , " pymilvus" , " milvus" , " weaviate-client" , " pinecone-client" , " psycopg" , " redis" , " azure-ai-inference" , " azure-search-documents" , " azure-core" , " azure-identity" , " azure-cosmos" , " usearch" , " pyarrow" , " ipykernel" ]
148
+ weaviate = [" weaviate-client" ]
126
149
127
150
[tool .ruff ]
128
151
line-length = 120
0 commit comments