alita-sdk 0.3.457b0__py3-none-any.whl → 0.3.459__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- alita_sdk/cli/__init__.py +10 -0
- alita_sdk/cli/__main__.py +17 -0
- alita_sdk/cli/agents.py +1055 -0
- alita_sdk/cli/cli.py +156 -0
- alita_sdk/cli/config.py +134 -0
- alita_sdk/cli/formatting.py +182 -0
- alita_sdk/cli/toolkit.py +330 -0
- alita_sdk/runtime/toolkits/artifact.py +5 -6
- alita_sdk/runtime/tools/function.py +3 -4
- alita_sdk/tools/qtest/api_wrapper.py +790 -14
- alita_sdk/tools/sharepoint/api_wrapper.py +22 -2
- alita_sdk/tools/sharepoint/authorization_helper.py +17 -1
- {alita_sdk-0.3.457b0.dist-info → alita_sdk-0.3.459.dist-info}/METADATA +6 -1
- {alita_sdk-0.3.457b0.dist-info → alita_sdk-0.3.459.dist-info}/RECORD +18 -10
- alita_sdk-0.3.459.dist-info/entry_points.txt +2 -0
- {alita_sdk-0.3.457b0.dist-info → alita_sdk-0.3.459.dist-info}/WHEEL +0 -0
- {alita_sdk-0.3.457b0.dist-info → alita_sdk-0.3.459.dist-info}/licenses/LICENSE +0 -0
- {alita_sdk-0.3.457b0.dist-info → alita_sdk-0.3.459.dist-info}/top_level.txt +0 -0
|
@@ -130,9 +130,24 @@ class SharepointApiWrapper(NonCodeIndexerToolkit):
|
|
|
130
130
|
if not limit_files:
|
|
131
131
|
limit_files = 100
|
|
132
132
|
#
|
|
133
|
+
site_segments = [seg for seg in self.site_url.strip('/').split('/') if seg][-2:]
|
|
134
|
+
full_path_prefix = '/'.join(site_segments)
|
|
135
|
+
#
|
|
133
136
|
for lib in all_libraries:
|
|
134
137
|
library_type = decode_sharepoint_string(lib.properties["EntityTypeName"])
|
|
135
|
-
target_folder_url =
|
|
138
|
+
target_folder_url = library_type
|
|
139
|
+
if folder_name:
|
|
140
|
+
folder_path = folder_name.strip('/')
|
|
141
|
+
expected_prefix = f'{full_path_prefix}/{library_type}'
|
|
142
|
+
if folder_path.startswith(full_path_prefix):
|
|
143
|
+
if folder_path.startswith(expected_prefix):
|
|
144
|
+
target_folder_url = folder_path.removeprefix(f'{full_path_prefix}/')
|
|
145
|
+
else:
|
|
146
|
+
# ignore full path folder which is not targeted to current library
|
|
147
|
+
continue
|
|
148
|
+
else:
|
|
149
|
+
target_folder_url = f"{library_type}/{folder_name}"
|
|
150
|
+
#
|
|
136
151
|
files = (self._client.web.get_folder_by_server_relative_path(target_folder_url)
|
|
137
152
|
.get_files(True)
|
|
138
153
|
.execute_query())
|
|
@@ -226,13 +241,18 @@ class SharepointApiWrapper(NonCodeIndexerToolkit):
|
|
|
226
241
|
'skip_extensions': (Optional[List[str]], Field(
|
|
227
242
|
description="List of file extensions to skip when processing: i.e. ['*.png', '*.jpg']",
|
|
228
243
|
default=[])),
|
|
244
|
+
'path': (Optional[str], Field(
|
|
245
|
+
description="Folder path. "
|
|
246
|
+
"Accepts either a full server-relative path (e.g., '/sites/SiteName/...') or a relative path. "
|
|
247
|
+
"If a relative path is provided, the search will be performed recursively under 'Shared Documents' and other private libraries.",
|
|
248
|
+
default=None)),
|
|
229
249
|
}
|
|
230
250
|
|
|
231
251
|
def _base_loader(self, **kwargs) -> Generator[Document, None, None]:
|
|
232
252
|
|
|
233
253
|
self._log_tool_event(message="Starting SharePoint files extraction", tool_name="loader")
|
|
234
254
|
try:
|
|
235
|
-
all_files = self.get_files_list(
|
|
255
|
+
all_files = self.get_files_list(kwargs.get('path'), kwargs.get('limit_files', 10000))
|
|
236
256
|
self._log_tool_event(message="List of the files has been extracted", tool_name="loader")
|
|
237
257
|
except Exception as e:
|
|
238
258
|
raise ToolException(f"Unable to extract files: {e}")
|
|
@@ -147,12 +147,28 @@ class SharepointAuthorizationHelper:
|
|
|
147
147
|
if limit_files is not None and len(result) + len(files) >= limit_files:
|
|
148
148
|
return files[:limit_files - len(result)]
|
|
149
149
|
return files
|
|
150
|
+
#
|
|
151
|
+
site_segments = [seg for seg in site_url.strip('/').split('/') if seg][-2:]
|
|
152
|
+
full_path_prefix = '/'.join(site_segments)
|
|
153
|
+
#
|
|
150
154
|
for drive in drives:
|
|
151
155
|
drive_id = drive.get("id")
|
|
152
156
|
drive_path = unquote(urlparse(drive.get("webUrl")).path) if drive.get("webUrl") else ""
|
|
153
157
|
if not drive_id:
|
|
154
158
|
continue # skip drives without id
|
|
155
|
-
|
|
159
|
+
#
|
|
160
|
+
sub_folder = folder_name
|
|
161
|
+
if folder_name:
|
|
162
|
+
folder_path = folder_name.strip('/')
|
|
163
|
+
expected_prefix = drive_path.strip('/')#f'{full_path_prefix}/{library_type}'
|
|
164
|
+
if folder_path.startswith(full_path_prefix):
|
|
165
|
+
if folder_path.startswith(expected_prefix):
|
|
166
|
+
sub_folder = folder_path.removeprefix(f'{expected_prefix}').strip('/')#target_folder_url = folder_path.removeprefix(f'{full_path_prefix}/')
|
|
167
|
+
else:
|
|
168
|
+
# ignore full path folder which is not targeted to current drive
|
|
169
|
+
continue
|
|
170
|
+
#
|
|
171
|
+
files = _recurse_drive(drive_id, drive_path, sub_folder, limit_files)
|
|
156
172
|
result.extend(files)
|
|
157
173
|
if limit_files is not None and len(result) >= limit_files:
|
|
158
174
|
return result[:limit_files]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: alita_sdk
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.459
|
|
4
4
|
Summary: SDK for building langchain agents using resources from Alita
|
|
5
5
|
Author-email: Artem Rozumenko <artyom.rozumenko@gmail.com>, Mikalai Biazruchka <mikalai_biazruchka@epam.com>, Roman Mitusov <roman_mitusov@epam.com>, Ivan Krakhmaliuk <lifedj27@gmail.com>, Artem Dubrovskiy <ad13box@gmail.com>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -25,6 +25,10 @@ Requires-Dist: httpcore==1.0.7
|
|
|
25
25
|
Requires-Dist: urllib3>=2
|
|
26
26
|
Requires-Dist: certifi==2024.8.30
|
|
27
27
|
Requires-Dist: aiohttp>=3.9.0
|
|
28
|
+
Provides-Extra: cli
|
|
29
|
+
Requires-Dist: click>=8.1.0; extra == "cli"
|
|
30
|
+
Requires-Dist: rich>=13.0.0; extra == "cli"
|
|
31
|
+
Requires-Dist: pyyaml>=6.0; extra == "cli"
|
|
28
32
|
Provides-Extra: runtime
|
|
29
33
|
Requires-Dist: streamlit>=1.28.0; extra == "runtime"
|
|
30
34
|
Requires-Dist: langchain_core<0.4.0,>=0.3.76; extra == "runtime"
|
|
@@ -138,6 +142,7 @@ Provides-Extra: all
|
|
|
138
142
|
Requires-Dist: alita-sdk[runtime]; extra == "all"
|
|
139
143
|
Requires-Dist: alita-sdk[tools]; extra == "all"
|
|
140
144
|
Requires-Dist: alita-sdk[community]; extra == "all"
|
|
145
|
+
Requires-Dist: alita-sdk[cli]; extra == "all"
|
|
141
146
|
Provides-Extra: dev
|
|
142
147
|
Requires-Dist: pytest; extra == "dev"
|
|
143
148
|
Requires-Dist: pytest-cov; extra == "dev"
|
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
alita_sdk/__init__.py,sha256=fxeNiqiVpIFAJls31Oomifyrtd5gT9iPUTdkWjDOB2Y,656
|
|
2
|
+
alita_sdk/cli/__init__.py,sha256=HiHHouMh0EHmK1qMVzvz6vfIOu8Pm6XXw0dd_hXZ288,278
|
|
3
|
+
alita_sdk/cli/__main__.py,sha256=dAhgWWWEOG1ZiwCs6wQoJwnD62cFRnxiyiAoiFqU8K4,420
|
|
4
|
+
alita_sdk/cli/agents.py,sha256=uMlKiWs85zExE7_Q6NBbw6frnUVK-Ei2KynIddMHXn0,42419
|
|
5
|
+
alita_sdk/cli/cli.py,sha256=k8jwaTKt3At9NfopOcp-BqXitqO0jcei1ACuyoUA9eY,4812
|
|
6
|
+
alita_sdk/cli/config.py,sha256=GiWe7K2RHC_PnH1nEUBodgi0d14oPbIdQhYl69Gbx1o,3978
|
|
7
|
+
alita_sdk/cli/formatting.py,sha256=ip95brhcFcx3Ub7PRLv1aDGniGW13RCGDgc1_8i9ZwM,6566
|
|
8
|
+
alita_sdk/cli/toolkit.py,sha256=IC1zCXiIRUh-swcBC5VhdREIaXGCu5-OfSWyGSUOx0Q,11693
|
|
2
9
|
alita_sdk/community/__init__.py,sha256=8N7wWwPhoyOq3p8wlV3-pb3l3nJCR8TUrtV9iIPLU88,2523
|
|
3
10
|
alita_sdk/community/utils.py,sha256=lvuCJaNqVPHOORJV6kIPcXJcdprVW_TJvERtYAEgpjM,249
|
|
4
11
|
alita_sdk/configurations/__init__.py,sha256=3_MlzyzAi1dog6MFQD_ICOZvaPfXf2UfhSZwlF1knnw,3983
|
|
@@ -100,7 +107,7 @@ alita_sdk/runtime/llms/preloaded.py,sha256=3AaUbZK3d8fvxAQMjR3ftOoYa0SnkCOL1Evdv
|
|
|
100
107
|
alita_sdk/runtime/models/mcp_models.py,sha256=rbWCAtF8Jjb7uNgQHhVWyDttXaqPNbRLL087Lf0AjNU,2301
|
|
101
108
|
alita_sdk/runtime/toolkits/__init__.py,sha256=IenSyI2SrXSFuiWT7c8YO_mRFLVE_zNge61U4bpoyPw,631
|
|
102
109
|
alita_sdk/runtime/toolkits/application.py,sha256=HHAKgwKOckxc7EQG-AV7rz4POOzQJKFRr7AGEjmLudE,2688
|
|
103
|
-
alita_sdk/runtime/toolkits/artifact.py,sha256=
|
|
110
|
+
alita_sdk/runtime/toolkits/artifact.py,sha256=HvunflqpLwrvpn8Jz8AKF_CIowIGEsfG96gqredMgO0,3251
|
|
104
111
|
alita_sdk/runtime/toolkits/configurations.py,sha256=kIDAlnryPQfbZyFxV-9SzN2-Vefzx06TX1BBdIIpN90,141
|
|
105
112
|
alita_sdk/runtime/toolkits/datasource.py,sha256=qk78OdPoReYPCWwahfkKLbKc4pfsu-061oXRryFLP6I,2498
|
|
106
113
|
alita_sdk/runtime/toolkits/mcp.py,sha256=wa-47obeWm8WrIiaUw5BR40dsR5sLdQKZHzG7MCRnRM,37105
|
|
@@ -114,7 +121,7 @@ alita_sdk/runtime/tools/application.py,sha256=RCGe-mRfj8372gTFkEX2xBvcYhw7IKdU1t
|
|
|
114
121
|
alita_sdk/runtime/tools/artifact.py,sha256=u3szFwZqguHrPZ3tZJ7S_TiZl7cxlT3oHYd6zbdpRDE,13842
|
|
115
122
|
alita_sdk/runtime/tools/datasource.py,sha256=pvbaSfI-ThQQnjHG-QhYNSTYRnZB0rYtZFpjCfpzxYI,2443
|
|
116
123
|
alita_sdk/runtime/tools/echo.py,sha256=spw9eCweXzixJqHnZofHE1yWiSUa04L4VKycf3KCEaM,486
|
|
117
|
-
alita_sdk/runtime/tools/function.py,sha256=
|
|
124
|
+
alita_sdk/runtime/tools/function.py,sha256=0O29IFs0ZupXxqXwGa4Pmm_QdxulUR3ZDGowXDPRgv8,6557
|
|
118
125
|
alita_sdk/runtime/tools/graph.py,sha256=7jImBBSEdP5Mjnn2keOiyUwdGDFhEXLUrgUiugO3mgA,3503
|
|
119
126
|
alita_sdk/runtime/tools/image_generation.py,sha256=Kls9D_ke_SK7xmVr7I9SlQcAEBJc86gf66haN0qIj9k,7469
|
|
120
127
|
alita_sdk/runtime/tools/indexer_tool.py,sha256=whSLPevB4WD6dhh2JDXEivDmTvbjiMV1MrPl9cz5eLA,4375
|
|
@@ -311,7 +318,7 @@ alita_sdk/tools/postman/postman_analysis.py,sha256=ckc2BfKEop0xnmLPksVRE_Y94ixuq
|
|
|
311
318
|
alita_sdk/tools/pptx/__init__.py,sha256=JP4523kvgcRbKevy9s7KllDbzHV9-ArKMNBuzeT97VI,3378
|
|
312
319
|
alita_sdk/tools/pptx/pptx_wrapper.py,sha256=yyCYcTlIY976kJ4VfPo4dyxj4yeii9j9TWP6W8ZIpN8,29195
|
|
313
320
|
alita_sdk/tools/qtest/__init__.py,sha256=IGObKF5m7vCE1Pq4cQ7iAMBckryZ5gowdBbnAey5DFQ,4384
|
|
314
|
-
alita_sdk/tools/qtest/api_wrapper.py,sha256=
|
|
321
|
+
alita_sdk/tools/qtest/api_wrapper.py,sha256=1zhIOePMGYJm0NwzyXkxh39DTTu0vnCEZ1CsQQxVcIA,95498
|
|
315
322
|
alita_sdk/tools/qtest/tool.py,sha256=kKzNPS4fUC76WQQttQ6kdVANViHEvKE8Kf174MQiNYU,562
|
|
316
323
|
alita_sdk/tools/rally/__init__.py,sha256=VESgUY_m0lQVyoSuuCRyLgURn7vHs-JIMS_0oH4e0LQ,3347
|
|
317
324
|
alita_sdk/tools/rally/api_wrapper.py,sha256=mouzU6g0KML4UNapdk0k6Q0pU3MpJuWnNo71n9PSEHM,11752
|
|
@@ -325,8 +332,8 @@ alita_sdk/tools/servicenow/__init__.py,sha256=rI8WrlA5mKxdSe7NYX6Ehd0NTfGx2CEbE6
|
|
|
325
332
|
alita_sdk/tools/servicenow/api_wrapper.py,sha256=WpH-bBLGFdhehs4g-K-WAkNuaD1CSrwsDpdgB3RG53s,6120
|
|
326
333
|
alita_sdk/tools/servicenow/servicenow_client.py,sha256=Rdqfu-ll-qbnclMzChLZBsfXRDzgoX_FdeI2WLApWxc,3269
|
|
327
334
|
alita_sdk/tools/sharepoint/__init__.py,sha256=mtBw8oBq2LWQpMAgidF7BDn3oOgD3QCWEQjBW80RN3M,4117
|
|
328
|
-
alita_sdk/tools/sharepoint/api_wrapper.py,sha256=
|
|
329
|
-
alita_sdk/tools/sharepoint/authorization_helper.py,sha256=
|
|
335
|
+
alita_sdk/tools/sharepoint/api_wrapper.py,sha256=wzwqEmsNRopGzOjOleSsrsfZON4zRyExYZpZqUdWp60,17809
|
|
336
|
+
alita_sdk/tools/sharepoint/authorization_helper.py,sha256=tlmsw3l2UGvVRZS3cHCKCy_arx_IkUuhBOCf9GZ9T6U,12818
|
|
330
337
|
alita_sdk/tools/sharepoint/utils.py,sha256=CO1PNRC5CpQaVo2Gdenj_jqm2bReSqUT92Bk5s37d8M,573
|
|
331
338
|
alita_sdk/tools/slack/__init__.py,sha256=AurOivHcpqvrrbg7rwTz8lrMfM6KPskWmHs6ml0jZVM,4057
|
|
332
339
|
alita_sdk/tools/slack/api_wrapper.py,sha256=5VrV7iSGno8ZcDzEHdGPNhInhtODGPPvAzoZ9W9iQWE,14009
|
|
@@ -361,8 +368,9 @@ alita_sdk/tools/zephyr_scale/api_wrapper.py,sha256=kT0TbmMvuKhDUZc0i7KO18O38JM9S
|
|
|
361
368
|
alita_sdk/tools/zephyr_squad/__init__.py,sha256=Gl1YAFaMMufTNjIpnuo_c_lbDsQkmproYdZz2ZppgJ4,3007
|
|
362
369
|
alita_sdk/tools/zephyr_squad/api_wrapper.py,sha256=kmw_xol8YIYFplBLWTqP_VKPRhL_1ItDD0_vXTe_UuI,14906
|
|
363
370
|
alita_sdk/tools/zephyr_squad/zephyr_squad_cloud_client.py,sha256=R371waHsms4sllHCbijKYs90C-9Yu0sSR3N4SUfQOgU,5066
|
|
364
|
-
alita_sdk-0.3.
|
|
365
|
-
alita_sdk-0.3.
|
|
366
|
-
alita_sdk-0.3.
|
|
367
|
-
alita_sdk-0.3.
|
|
368
|
-
alita_sdk-0.3.
|
|
371
|
+
alita_sdk-0.3.459.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
372
|
+
alita_sdk-0.3.459.dist-info/METADATA,sha256=7Oo76t6BYB0tv0jHbuloCQQrwMpcw7Ga_jqI1KVZeJ0,19298
|
|
373
|
+
alita_sdk-0.3.459.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
374
|
+
alita_sdk-0.3.459.dist-info/entry_points.txt,sha256=sSxsIZu9YjVGsgf-5mHC631FeBcT6f2vUjm0A_L9tcU,53
|
|
375
|
+
alita_sdk-0.3.459.dist-info/top_level.txt,sha256=0vJYy5p_jK6AwVb1aqXr7Kgqgk3WDtQ6t5C-XI9zkmg,10
|
|
376
|
+
alita_sdk-0.3.459.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|