alita-sdk 0.3.371__py3-none-any.whl → 0.3.373__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.

Potentially problematic release.


This version of alita-sdk might be problematic. Click here for more details.

@@ -30,10 +30,18 @@ from enum import Enum
30
30
 
31
31
 
32
32
  class LoaderProperties(Enum):
33
- LLM = 'llm'
33
+ LLM = 'use_llm'
34
+ PROMPT_DEFAULT = 'use_default_prompt'
34
35
  PROMPT = 'prompt'
35
- PROMPT_DEFAULT = 'prompt_default'
36
36
 
37
+ DEFAULT_ALLOWED_BASE = {'max_tokens': 512}
38
+
39
+ DEFAULT_ALLOWED_WITH_LLM = {
40
+ **DEFAULT_ALLOWED_BASE,
41
+ LoaderProperties.LLM.value: False,
42
+ LoaderProperties.PROMPT_DEFAULT.value: False,
43
+ LoaderProperties.PROMPT.value: "",
44
+ }
37
45
 
38
46
  # Image file loaders mapping
39
47
  image_loaders_map = {
@@ -42,66 +50,42 @@ image_loaders_map = {
42
50
  'mime_type': 'image/png',
43
51
  'is_multimodal_processing': True,
44
52
  'kwargs': {},
45
- 'allowed_to_override': [
46
- 'max_tokens', LoaderProperties.LLM.value,
47
- LoaderProperties.PROMPT.value,
48
- LoaderProperties.PROMPT_DEFAULT.value
49
- ],
53
+ 'allowed_to_override': DEFAULT_ALLOWED_WITH_LLM,
50
54
  },
51
55
  '.jpg': {
52
56
  'class': AlitaImageLoader,
53
57
  'mime_type': 'image/jpeg',
54
58
  'is_multimodal_processing': True,
55
59
  'kwargs': {},
56
- 'allowed_to_override': [
57
- 'max_tokens', LoaderProperties.LLM.value,
58
- LoaderProperties.PROMPT.value,
59
- LoaderProperties.PROMPT_DEFAULT.value
60
- ]
60
+ 'allowed_to_override': DEFAULT_ALLOWED_WITH_LLM
61
61
  },
62
62
  '.jpeg': {
63
63
  'class': AlitaImageLoader,
64
64
  'mime_type': 'image/jpeg',
65
65
  'is_multimodal_processing': True,
66
66
  'kwargs': {},
67
- 'allowed_to_override': [
68
- 'max_tokens', LoaderProperties.LLM.value,
69
- LoaderProperties.PROMPT.value,
70
- LoaderProperties.PROMPT_DEFAULT.value
71
- ]
67
+ 'allowed_to_override': DEFAULT_ALLOWED_WITH_LLM
72
68
  },
73
69
  '.gif': {
74
70
  'class': AlitaImageLoader,
75
71
  'mime_type': 'image/gif',
76
72
  'is_multimodal_processing': True,
77
73
  'kwargs': {},
78
- 'allowed_to_override': [
79
- 'max_tokens', LoaderProperties.LLM.value,
80
- LoaderProperties.PROMPT.value,
81
- LoaderProperties.PROMPT_DEFAULT.value
82
- ]
74
+ 'allowed_to_override': DEFAULT_ALLOWED_WITH_LLM
83
75
  },
84
76
  '.bmp': {
85
77
  'class': AlitaImageLoader,
86
78
  'mime_type': 'image/bmp',
87
79
  'is_multimodal_processing': True,
88
80
  'kwargs': {},
89
- 'allowed_to_override': [
90
- 'max_tokens', LoaderProperties.LLM.value,
91
- LoaderProperties.PROMPT.value,
92
- LoaderProperties.PROMPT_DEFAULT.value
93
- ]
81
+ 'allowed_to_override': DEFAULT_ALLOWED_WITH_LLM
94
82
  },
95
83
  '.svg': {
96
84
  'class': AlitaImageLoader,
97
85
  'mime_type': 'image/svg+xml',
98
86
  'is_multimodal_processing': True,
99
87
  'kwargs': {},
100
- 'allowed_to_override': [
101
- 'max_tokens', LoaderProperties.LLM.value,
102
- LoaderProperties.PROMPT.value,
103
- LoaderProperties.PROMPT_DEFAULT.value
104
- ]
88
+ 'allowed_to_override': DEFAULT_ALLOWED_WITH_LLM
105
89
  }
106
90
  }
107
91
 
@@ -114,7 +98,7 @@ document_loaders_map = {
114
98
  'kwargs': {
115
99
  'autodetect_encoding': True
116
100
  },
117
- 'allowed_to_override': ['max_tokens']
101
+ 'allowed_to_override': DEFAULT_ALLOWED_BASE
118
102
  },
119
103
  '.yml': {
120
104
  'class': AlitaTextLoader,
@@ -123,7 +107,7 @@ document_loaders_map = {
123
107
  'kwargs': {
124
108
  'autodetect_encoding': True
125
109
  },
126
- 'allowed_to_override': ['max_tokens']
110
+ 'allowed_to_override': DEFAULT_ALLOWED_BASE
127
111
  },
128
112
  '.yaml': {
129
113
  'class': AlitaTextLoader,
@@ -132,7 +116,7 @@ document_loaders_map = {
132
116
  'kwargs': {
133
117
  'autodetect_encoding': True
134
118
  },
135
- 'allowed_to_override': ['max_tokens']
119
+ 'allowed_to_override': DEFAULT_ALLOWED_BASE
136
120
  },
137
121
  '.groovy': {
138
122
  'class': AlitaTextLoader,
@@ -141,14 +125,14 @@ document_loaders_map = {
141
125
  'kwargs': {
142
126
  'autodetect_encoding': True
143
127
  },
144
- 'allowed_to_override': ['max_tokens']
128
+ 'allowed_to_override': DEFAULT_ALLOWED_BASE
145
129
  },
146
130
  '.md': {
147
131
  'class': AlitaMarkdownLoader,
148
132
  'mime_type': 'text/markdown',
149
133
  'is_multimodal_processing': False,
150
134
  'kwargs': {},
151
- 'allowed_to_override': ['max_tokens']
135
+ 'allowed_to_override': DEFAULT_ALLOWED_BASE
152
136
  },
153
137
  '.csv': {
154
138
  'class': AlitaCSVLoader,
@@ -159,7 +143,7 @@ document_loaders_map = {
159
143
  'raw_content': True,
160
144
  'cleanse': False
161
145
  },
162
- 'allowed_to_override': ['max_tokens']
146
+ 'allowed_to_override': DEFAULT_ALLOWED_BASE
163
147
  },
164
148
  '.xlsx': {
165
149
  'class': AlitaExcelLoader,
@@ -171,11 +155,7 @@ document_loaders_map = {
171
155
  'raw_content': True,
172
156
  'cleanse': False
173
157
  },
174
- 'allowed_to_override': [
175
- 'max_tokens', LoaderProperties.LLM.value,
176
- LoaderProperties.PROMPT.value,
177
- LoaderProperties.PROMPT_DEFAULT.value
178
- ]
158
+ 'allowed_to_override': DEFAULT_ALLOWED_WITH_LLM
179
159
  },
180
160
  '.xls': {
181
161
  'class': AlitaExcelLoader,
@@ -186,22 +166,14 @@ document_loaders_map = {
186
166
  'raw_content': True,
187
167
  'cleanse': False
188
168
  },
189
- 'allowed_to_override': [
190
- 'max_tokens', LoaderProperties.LLM.value,
191
- LoaderProperties.PROMPT.value,
192
- LoaderProperties.PROMPT_DEFAULT.value
193
- ]
169
+ 'allowed_to_override': DEFAULT_ALLOWED_WITH_LLM
194
170
  },
195
171
  '.pdf': {
196
172
  'class': AlitaPDFLoader,
197
173
  'mime_type': 'application/pdf',
198
174
  'is_multimodal_processing': False,
199
175
  'kwargs': {},
200
- 'allowed_to_override': [
201
- 'max_tokens', LoaderProperties.LLM.value,
202
- LoaderProperties.PROMPT.value,
203
- LoaderProperties.PROMPT_DEFAULT.value
204
- ]
176
+ 'allowed_to_override': DEFAULT_ALLOWED_WITH_LLM
205
177
  },
206
178
  '.docx': {
207
179
  'class': AlitaDocxMammothLoader,
@@ -211,58 +183,42 @@ document_loaders_map = {
211
183
  'kwargs': {
212
184
  'extract_images': True
213
185
  },
214
- 'allowed_to_override': [
215
- 'max_tokens', 'mode', LoaderProperties.LLM.value,
216
- LoaderProperties.PROMPT.value,
217
- LoaderProperties.PROMPT_DEFAULT.value
218
- ]
186
+ 'allowed_to_override': {**DEFAULT_ALLOWED_WITH_LLM, 'mode': 'paged'}
219
187
  },
220
188
  '.json': {
221
189
  'class': AlitaJSONLoader,
222
190
  'mime_type': 'application/json',
223
191
  'is_multimodal_processing': False,
224
192
  'kwargs': {},
225
- 'allowed_to_override': ['max_tokens']
193
+ 'allowed_to_override': DEFAULT_ALLOWED_BASE
226
194
  },
227
195
  '.jsonl': {
228
196
  'class': AirbyteJSONLoader,
229
197
  'mime_type': 'application/jsonl',
230
198
  'is_multimodal_processing': False,
231
199
  'kwargs': {},
232
- 'allowed_to_override': ['max_tokens']
200
+ 'allowed_to_override': DEFAULT_ALLOWED_BASE
233
201
  },
234
202
  '.htm': {
235
203
  'class': UnstructuredHTMLLoader,
236
204
  'mime_type': 'text/html',
237
205
  'is_multimodal_processing': False,
238
206
  'kwargs': {},
239
- 'allowed_to_override': [
240
- 'max_tokens', LoaderProperties.LLM.value,
241
- LoaderProperties.PROMPT.value,
242
- LoaderProperties.PROMPT_DEFAULT.value
243
- ]
207
+ 'allowed_to_override': DEFAULT_ALLOWED_WITH_LLM
244
208
  },
245
209
  '.html': {
246
210
  'class': UnstructuredHTMLLoader,
247
211
  'mime_type': 'text/html',
248
212
  'is_multimodal_processing': False,
249
213
  'kwargs': {},
250
- 'allowed_to_override': [
251
- 'max_tokens', LoaderProperties.LLM.value,
252
- LoaderProperties.PROMPT.value,
253
- LoaderProperties.PROMPT_DEFAULT.value
254
- ]
214
+ 'allowed_to_override': DEFAULT_ALLOWED_WITH_LLM
255
215
  },
256
216
  '.xml': {
257
217
  'class': UnstructuredXMLLoader,
258
218
  'mime_type': 'text/xml',
259
219
  'is_multimodal_processing': False,
260
220
  'kwargs': {},
261
- 'allowed_to_override': [
262
- 'max_tokens', LoaderProperties.LLM.value,
263
- LoaderProperties.PROMPT.value,
264
- LoaderProperties.PROMPT_DEFAULT.value
265
- ]
221
+ 'allowed_to_override': DEFAULT_ALLOWED_WITH_LLM
266
222
  },
267
223
  '.ppt': {
268
224
  'class': AlitaPowerPointLoader,
@@ -271,11 +227,7 @@ document_loaders_map = {
271
227
  'kwargs': {
272
228
  'mode': 'paged'
273
229
  },
274
- 'allowed_to_override': [
275
- 'max_tokens', 'mode', LoaderProperties.LLM.value,
276
- LoaderProperties.PROMPT.value,
277
- LoaderProperties.PROMPT_DEFAULT.value
278
- ]
230
+ 'allowed_to_override': {**DEFAULT_ALLOWED_WITH_LLM, 'mode': 'paged'}
279
231
  },
280
232
  '.pptx': {
281
233
  'class': AlitaPowerPointLoader,
@@ -285,20 +237,19 @@ document_loaders_map = {
285
237
  'kwargs': {
286
238
  'mode': 'paged'
287
239
  },
288
- 'allowed_to_override': [
289
- 'max_tokens', 'mode', LoaderProperties.LLM.value,
290
- LoaderProperties.PROMPT.value,
291
- LoaderProperties.PROMPT_DEFAULT.value,
292
- "pages_per_chunk",
293
- "extract_images"
294
- ]
240
+ 'allowed_to_override': {
241
+ **DEFAULT_ALLOWED_WITH_LLM,
242
+ 'mode': 'paged',
243
+ 'pages_per_chunk': 5,
244
+ 'extract_images': False,
245
+ }
295
246
  },
296
247
  '.py': {
297
248
  'class': AlitaPythonLoader,
298
249
  'mime_type': 'text/x-python',
299
250
  'is_multimodal_processing': False,
300
251
  'kwargs': {},
301
- 'allowed_to_override': ['max_tokens']
252
+ 'allowed_to_override': DEFAULT_ALLOWED_BASE
302
253
  }
303
254
  }
304
255
 
@@ -335,10 +286,16 @@ default_loader_config = {
335
286
  'mime_type': 'text/plain',
336
287
  'is_multimodal_processing': False,
337
288
  'kwargs': {},
338
- 'allowed_to_override': ['max_tokens']
289
+ 'allowed_to_override': DEFAULT_ALLOWED_BASE
339
290
  }
340
291
 
341
292
  code_loaders_map = {ext: default_loader_config for ext in code_extensions}
342
293
 
343
294
  # Combined mapping for backward compatibility
344
295
  loaders_map = {**image_loaders_map, **document_loaders_map, **code_loaders_map}
296
+
297
+ loaders_allowed_to_override = {
298
+ extension: config.get('allowed_to_override')
299
+ for extension, config in loaders_map.items()
300
+ if 'allowed_to_override' in config
301
+ }
@@ -177,6 +177,37 @@ class VectorStoreWrapperBase(BaseToolApiWrapper):
177
177
  except Exception as e:
178
178
  logger.error(f"Failed to initialize PGVectorSearch: {str(e)}")
179
179
 
180
+ def _similarity_search_with_score(self, query: str, filter: dict = None, k: int = 10):
181
+ """
182
+ Perform similarity search with proper exception handling for DataException.
183
+
184
+ Args:
185
+ query: Search query string
186
+ filter: Optional filter dictionary
187
+ k: Number of results to return
188
+
189
+ Returns:
190
+ List of (Document, score) tuples
191
+
192
+ Raises:
193
+ ToolException: When DataException occurs or other search errors
194
+ """
195
+ try:
196
+ return self.vectorstore.similarity_search_with_score(
197
+ query, filter=filter, k=k
198
+ )
199
+ except DataException as dimException:
200
+ exception_str = str(dimException)
201
+ if 'different vector dimensions' in exception_str:
202
+ logger.error(f"Data exception: {exception_str}")
203
+ raise ToolException(f"Global search cannot be completed since collections were indexed using "
204
+ f"different embedding models. Use search within a single collection."
205
+ f"\nDetails: {exception_str}")
206
+ raise ToolException(f"Data exception during search. Possibly invalid filter: {exception_str}")
207
+ except Exception as e:
208
+ logger.error(f"Error during similarity search: {str(e)}")
209
+ raise ToolException(f"Search failed: {str(e)}")
210
+
180
211
  def list_collections(self) -> List[str]:
181
212
  """List all collections in the vectorstore."""
182
213
 
@@ -311,7 +342,7 @@ class VectorStoreWrapperBase(BaseToolApiWrapper):
311
342
  }
312
343
 
313
344
  try:
314
- document_items = self.vectorstore.similarity_search_with_score(
345
+ document_items = self._similarity_search_with_score(
315
346
  query, filter=document_filter, k=search_top
316
347
  )
317
348
  # Add document results to unique docs
@@ -324,15 +355,6 @@ class VectorStoreWrapperBase(BaseToolApiWrapper):
324
355
  if doc_id not in unique_docs or score > chunk_type_scores.get(doc_id, 0):
325
356
  unique_docs[doc_id] = doc
326
357
  chunk_type_scores[doc_id] = score
327
- except DataException as dimException:
328
- exception_str = str(dimException)
329
- if 'different vector dimensions' in exception_str:
330
- logger.error(f"Data exception: {exception_str}")
331
- raise ToolException(f"Global search cannot be completed since collections were indexed using "
332
- f"different embedding models. Use search within a single collection."
333
- f"\nDetails: {exception_str}")
334
- raise ToolException(f"Data exception during search. Possibly invalid filter: {exception_str}")
335
-
336
358
  except Exception as e:
337
359
  logger.warning(f"Error searching for document chunks: {str(e)}")
338
360
 
@@ -353,18 +375,16 @@ class VectorStoreWrapperBase(BaseToolApiWrapper):
353
375
  }
354
376
 
355
377
  try:
356
- chunk_items = self.vectorstore.similarity_search_with_score(
378
+ chunk_items = self._similarity_search_with_score(
357
379
  query, filter=chunk_filter, k=search_top
358
380
  )
359
-
360
- logger.debug(f"Chunk items for {chunk_type}: {chunk_items[0]}")
361
-
381
+
362
382
  for doc, score in chunk_items:
363
383
  # Create unique identifier for document
364
384
  source = doc.metadata.get('source')
365
385
  chunk_id = doc.metadata.get('chunk_id')
366
386
  doc_id = f"{source}_{chunk_id}" if source and chunk_id else str(doc.metadata.get('id', id(doc)))
367
-
387
+
368
388
  # Store document and its score
369
389
  if doc_id not in unique_docs:
370
390
  unique_docs[doc_id] = doc
@@ -384,9 +404,9 @@ class VectorStoreWrapperBase(BaseToolApiWrapper):
384
404
  doc_filter = {
385
405
  "$and": doc_filter_parts
386
406
  }
387
-
407
+
388
408
  try:
389
- fetch_items = self.vectorstore.similarity_search_with_score(
409
+ fetch_items = self._similarity_search_with_score(
390
410
  query, filter=doc_filter, k=1
391
411
  )
392
412
  if fetch_items:
@@ -400,7 +420,7 @@ class VectorStoreWrapperBase(BaseToolApiWrapper):
400
420
  else:
401
421
  # Default search behavior (unchanged)
402
422
  max_search_results = 30 if search_top * 3 > 30 else search_top * 3
403
- vector_items = self.vectorstore.similarity_search_with_score(
423
+ vector_items = self._similarity_search_with_score(
404
424
  query, filter=filter, k=max_search_results
405
425
  )
406
426
 
@@ -418,7 +438,7 @@ class VectorStoreWrapperBase(BaseToolApiWrapper):
418
438
  doc_map = OrderedDict(
419
439
  sorted(doc_map.items(), key=lambda x: x[1][1], reverse=True)
420
440
  )
421
-
441
+
422
442
  # Process full-text search if configured
423
443
  if full_text_search and full_text_search.get('enabled') and full_text_search.get('fields'):
424
444
  language = full_text_search.get('language', 'english')
@@ -431,7 +451,7 @@ class VectorStoreWrapperBase(BaseToolApiWrapper):
431
451
  for field_name in full_text_search.get('fields', []):
432
452
  try:
433
453
  text_results = self.pg_helper.full_text_search(field_name, query)
434
-
454
+
435
455
  # Combine text search results with vector results
436
456
  for result in text_results:
437
457
  doc_id = result['id']
@@ -7,8 +7,10 @@ from typing import Any, Optional, List, Dict, Generator
7
7
  from langchain_core.documents import Document
8
8
  from pydantic import create_model, Field, SecretStr
9
9
 
10
+ from .utils import make_json_serializable
10
11
  from .utils.content_parser import file_extension_by_chunker, process_document_by_type
11
12
  from .vector_adapters.VectorStoreAdapter import VectorStoreAdapterFactory
13
+ from ..runtime.langchain.document_loaders.constants import loaders_allowed_to_override
12
14
  from ..runtime.tools.vectorstore_base import VectorStoreWrapperBase
13
15
  from ..runtime.utils.utils import IndexerKeywords
14
16
 
@@ -93,7 +95,7 @@ BaseIndexDataParams = create_model(
93
95
  description="Optional flag to enforce clean existing index before indexing new data")),
94
96
  progress_step=(Optional[int], Field(default=10, ge=0, le=100,
95
97
  description="Optional step size for progress reporting during indexing")),
96
- chunking_config=(Optional[dict], Field(description="Chunking tool configuration", default_factory=dict)),
98
+ chunking_config=(Optional[dict], Field(description="Chunking tool configuration", default=loaders_allowed_to_override)),
97
99
  )
98
100
 
99
101
 
@@ -352,6 +354,9 @@ class BaseIndexerToolkit(VectorStoreWrapperBase):
352
354
  filter.update({"collection": {
353
355
  "$eq": collection_suffix.strip()
354
356
  }})
357
+
358
+ if filter:
359
+ # Exclude index meta documents from search results
355
360
  filter = {
356
361
  "$and": [
357
362
  filter,
@@ -361,6 +366,11 @@ class BaseIndexerToolkit(VectorStoreWrapperBase):
361
366
  ]},
362
367
  ]
363
368
  }
369
+ else:
370
+ filter = {"$or": [
371
+ {"type": {"$exists": False}},
372
+ {"type": {"$ne": IndexerKeywords.INDEX_META_TYPE.value}}
373
+ ]}
364
374
  return filter
365
375
 
366
376
  def search_index(self,
@@ -97,3 +97,20 @@ def check_connection_response(check_fun):
97
97
  else:
98
98
  return f"Service Unreachable: return code {response.status_code}"
99
99
  return _wrapper
100
+
101
+
102
+ def make_json_serializable(obj):
103
+ if isinstance(obj, BaseModel):
104
+ return obj.model_dump()
105
+ if isinstance(obj, dict):
106
+ return {k: make_json_serializable(v) for k, v in obj.items()}
107
+ if isinstance(obj, list):
108
+ return [make_json_serializable(i) for i in obj]
109
+ if isinstance(obj, bool):
110
+ return bool(obj)
111
+ if isinstance(obj, (str, int, float)) or obj is None:
112
+ return obj
113
+ # Fallback: handle objects that look like booleans but were not caught above
114
+ if str(obj) in ("True", "False"):
115
+ return str(obj) == "True"
116
+ return str(obj)
@@ -262,18 +262,18 @@ def process_content_by_type(content, filename: str, llm=None, chunking_config=No
262
262
  loader_kwargs = loader_config['kwargs']
263
263
  # Determine which loader configuration keys are allowed to be overridden by user input.
264
264
  # If 'allowed_to_override' is specified in the loader configuration, use it; otherwise, allow all keys in loader_kwargs.
265
- allowed_to_override = loader_config.get('allowed_to_override', list(loader_kwargs.keys()))
265
+ allowed_to_override = loader_config.get('allowed_to_override', loader_kwargs)
266
266
  # If a chunking_config is provided and contains custom configuration for the current file extension,
267
- # update loader_kwargs with user-supplied values, but only for keys explicitly permitted in allowed_to_override.
267
+ # update loader_kwargs with user-supplied values, but only for keys explicitly permitted in allowed_to_override and if value differs from default.
268
268
  # This ensures that only safe and intended parameters can be customized, preventing accidental or unauthorized changes
269
269
  # to critical loader settings.
270
270
  if chunking_config and (users_config_for_extension := chunking_config.get(extension, {})):
271
- for key in set(users_config_for_extension.keys()) & set(allowed_to_override):
272
- loader_kwargs[key] = users_config_for_extension[key]
273
- if LoaderProperties.LLM.value in loader_kwargs:
274
- loader_kwargs[LoaderProperties.LLM.value] = llm
275
- if LoaderProperties.PROMPT_DEFAULT.value in loader_kwargs:
276
- loader_kwargs.pop(LoaderProperties.PROMPT_DEFAULT.value)
271
+ for key in set(users_config_for_extension.keys()) & set(allowed_to_override.keys()):
272
+ if users_config_for_extension[key] != allowed_to_override[key]:
273
+ loader_kwargs[key] = users_config_for_extension[key]
274
+ if LoaderProperties.LLM.value in loader_kwargs and loader_kwargs.pop(LoaderProperties.LLM.value):
275
+ loader_kwargs['llm'] = llm
276
+ if LoaderProperties.PROMPT_DEFAULT.value in loader_kwargs and loader_kwargs.pop(LoaderProperties.PROMPT_DEFAULT.value):
277
277
  loader_kwargs[LoaderProperties.PROMPT.value] = image_processing_prompt
278
278
  loader = loader_cls(file_path=temp_file_path, **loader_kwargs)
279
279
  yield from loader.load()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: alita_sdk
3
- Version: 0.3.371
3
+ Version: 0.3.373
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
@@ -70,7 +70,7 @@ alita_sdk/runtime/langchain/document_loaders/AlitaTableLoader.py,sha256=EO1nJDRP
70
70
  alita_sdk/runtime/langchain/document_loaders/AlitaTextLoader.py,sha256=EiCIAF_OxSrbuwgOFk2IpxRMvFbctITt2jAI0g_atpk,3586
71
71
  alita_sdk/runtime/langchain/document_loaders/ImageParser.py,sha256=RQ4zGdSw42ec8c6Eb48uFadayWuiT4FbwhGVwhSw60s,1065
72
72
  alita_sdk/runtime/langchain/document_loaders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
73
- alita_sdk/runtime/langchain/document_loaders/constants.py,sha256=XUNC63S7U2HjE_1sxyDTUcwCVMeE4KBuW_G9wU5IQmw,10462
73
+ alita_sdk/runtime/langchain/document_loaders/constants.py,sha256=L8sgQsD5LH8kMSWEnGkc00j5FsC2VZQcUV95jpnbQlQ,9007
74
74
  alita_sdk/runtime/langchain/document_loaders/utils.py,sha256=9xghESf3axBbwxATyVuS0Yu-TWe8zWZnXgCD1ZVyNW0,2414
75
75
  alita_sdk/runtime/langchain/interfaces/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
76
76
  alita_sdk/runtime/langchain/interfaces/kwextractor.py,sha256=kSJA9L8g8UArmHu7Bd9dIO0Rrq86JPUb8RYNlnN68FQ,3072
@@ -123,7 +123,7 @@ alita_sdk/runtime/tools/router.py,sha256=p7e0tX6YAWw2M2Nq0A_xqw1E2P-Xz1DaJvhUstf
123
123
  alita_sdk/runtime/tools/sandbox.py,sha256=WNz-aUMtkGCPg84dDy_0BPkyp-6YjoYB-xjIEFFrtKw,11601
124
124
  alita_sdk/runtime/tools/tool.py,sha256=lE1hGi6qOAXG7qxtqxarD_XMQqTghdywf261DZawwno,5631
125
125
  alita_sdk/runtime/tools/vectorstore.py,sha256=8vRhi1lGFEs3unvnflEi2p59U2MfV32lStpEizpDms0,34467
126
- alita_sdk/runtime/tools/vectorstore_base.py,sha256=WF-v3sGQKo9q8D8ULyuBo5dPdFcx79X0DCRjyoOd7DI,27844
126
+ alita_sdk/runtime/tools/vectorstore_base.py,sha256=wixvgLrC2tQOeIjFMCD-7869K7YfERzk2Tzmo-fgsTE,28350
127
127
  alita_sdk/runtime/utils/AlitaCallback.py,sha256=E4LlSBuCHWiUq6W7IZExERHZY0qcmdjzc_rJlF2iQIw,7356
128
128
  alita_sdk/runtime/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
129
129
  alita_sdk/runtime/utils/constants.py,sha256=Xntx1b_uxUzT4clwqHA_U6K8y5bBqf_4lSQwXdcWrp4,13586
@@ -135,7 +135,7 @@ alita_sdk/runtime/utils/toolkit_runtime.py,sha256=MU63Fpxj0b5_r1IUUc0Q3-PN9VwL7r
135
135
  alita_sdk/runtime/utils/toolkit_utils.py,sha256=I9QFqnaqfVgN26LUr6s3XlBlG6y0CoHURnCzG7XcwVs,5311
136
136
  alita_sdk/runtime/utils/utils.py,sha256=BVEVLkYiiotcUD0XsHyx-wACpHfALsQg7PLZpObqvK8,1008
137
137
  alita_sdk/tools/__init__.py,sha256=jUj1ztC2FbkIUB-YYmiqaz_rqW7Il5kWzDPn1mJmj5w,10545
138
- alita_sdk/tools/base_indexer_toolkit.py,sha256=LDiz9J8hxbRnZhc_3PekuR5PtktzDxDmh3jwqGH7loo,26638
138
+ alita_sdk/tools/base_indexer_toolkit.py,sha256=R8PQ1FZijtCT6LPuma68B1X6x0umH7gyROKwtp0xabw,27044
139
139
  alita_sdk/tools/code_indexer_toolkit.py,sha256=6QvI1by0OFdnKTx5TfNoDJjnMrvnTi9T56xaDxzeleU,7306
140
140
  alita_sdk/tools/elitea_base.py,sha256=up3HshASSDfjlHV_HPrs1aD4JIwwX0Ug26WGTzgIYvY,34724
141
141
  alita_sdk/tools/non_code_indexer_toolkit.py,sha256=B3QvhpT1F9QidkCcsOi3J_QrTOaNlTxqWFwe90VivQQ,1329
@@ -328,9 +328,9 @@ alita_sdk/tools/testio/__init__.py,sha256=NEvQtzsffqAXryaffVk0GpdcxZQ1AMkfeztnxH
328
328
  alita_sdk/tools/testio/api_wrapper.py,sha256=BvmL5h634BzG6p7ajnQLmj-uoAw1gjWnd4FHHu1h--Q,21638
329
329
  alita_sdk/tools/testrail/__init__.py,sha256=Xg4nVjULL_D8JpIXLYXppnwUfGF4-lguFwKHmP5VwxM,4696
330
330
  alita_sdk/tools/testrail/api_wrapper.py,sha256=tQcGlFJmftvs5ZiO4tsP19fCo4CrJeq_UEvQR1liVfE,39891
331
- alita_sdk/tools/utils/__init__.py,sha256=W9rCCUPtHCP5nGAbWp0n5jaNA84572aiRoqKneBnaS4,3330
331
+ alita_sdk/tools/utils/__init__.py,sha256=xB9OQgW65DftadrSpoAAitnEIbIXZKBOCji0NDe7FRM,3923
332
332
  alita_sdk/tools/utils/available_tools_decorator.py,sha256=IbrdfeQkswxUFgvvN7-dyLMZMyXLiwvX7kgi3phciCk,273
333
- alita_sdk/tools/utils/content_parser.py,sha256=TuKAPUzIZx9F-pzHiVyrCFpI5emrGaOF8DgWHJP2cM4,15235
333
+ alita_sdk/tools/utils/content_parser.py,sha256=7ohj8HeL_-rmc-Fv0TS8IpxIQC8tOpfuhyT3XlWx-gQ,15368
334
334
  alita_sdk/tools/vector_adapters/VectorStoreAdapter.py,sha256=p_9Cu5eausnfiKNsitbVxwu5eimZHRv3R-OMw7lBrts,19173
335
335
  alita_sdk/tools/vector_adapters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
336
336
  alita_sdk/tools/xray/__init__.py,sha256=eOMWP8VamFbbJgt1xrGpGPqB9ByOTA0Cd3LCaETzGk4,4376
@@ -352,8 +352,8 @@ alita_sdk/tools/zephyr_scale/api_wrapper.py,sha256=kT0TbmMvuKhDUZc0i7KO18O38JM9S
352
352
  alita_sdk/tools/zephyr_squad/__init__.py,sha256=0ne8XLJEQSLOWfzd2HdnqOYmQlUliKHbBED5kW_Vias,2895
353
353
  alita_sdk/tools/zephyr_squad/api_wrapper.py,sha256=kmw_xol8YIYFplBLWTqP_VKPRhL_1ItDD0_vXTe_UuI,14906
354
354
  alita_sdk/tools/zephyr_squad/zephyr_squad_cloud_client.py,sha256=R371waHsms4sllHCbijKYs90C-9Yu0sSR3N4SUfQOgU,5066
355
- alita_sdk-0.3.371.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
356
- alita_sdk-0.3.371.dist-info/METADATA,sha256=WP9MwZivEJP78MqLbiZNALJ_lgrPTKik1hfNddFJI-Y,19071
357
- alita_sdk-0.3.371.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
358
- alita_sdk-0.3.371.dist-info/top_level.txt,sha256=0vJYy5p_jK6AwVb1aqXr7Kgqgk3WDtQ6t5C-XI9zkmg,10
359
- alita_sdk-0.3.371.dist-info/RECORD,,
355
+ alita_sdk-0.3.373.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
356
+ alita_sdk-0.3.373.dist-info/METADATA,sha256=vQ5k6GviISnUnBtw9mvNReIJl5AWR4pT0---RvUQA_A,19071
357
+ alita_sdk-0.3.373.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
358
+ alita_sdk-0.3.373.dist-info/top_level.txt,sha256=0vJYy5p_jK6AwVb1aqXr7Kgqgk3WDtQ6t5C-XI9zkmg,10
359
+ alita_sdk-0.3.373.dist-info/RECORD,,