alita-sdk 0.3.271__tar.gz → 0.3.273__tar.gz

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.
Files changed (363) hide show
  1. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/PKG-INFO +1 -1
  2. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/__init__.py +10 -0
  3. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/ado.py +4 -2
  4. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/azure_search.py +1 -1
  5. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/bigquery.py +1 -1
  6. alita_sdk-0.3.273/alita_sdk/configurations/browser.py +18 -0
  7. alita_sdk-0.3.273/alita_sdk/configurations/carrier.py +19 -0
  8. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/delta_lake.py +1 -1
  9. alita_sdk-0.3.273/alita_sdk/configurations/google_places.py +17 -0
  10. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/postman.py +1 -1
  11. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/qtest.py +1 -3
  12. alita_sdk-0.3.273/alita_sdk/configurations/report_portal.py +19 -0
  13. alita_sdk-0.3.273/alita_sdk/configurations/salesforce.py +19 -0
  14. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/service_now.py +1 -12
  15. alita_sdk-0.3.273/alita_sdk/configurations/sharepoint.py +19 -0
  16. alita_sdk-0.3.273/alita_sdk/configurations/sonar.py +18 -0
  17. alita_sdk-0.3.273/alita_sdk/configurations/sql.py +20 -0
  18. alita_sdk-0.3.273/alita_sdk/configurations/testio.py +18 -0
  19. alita_sdk-0.3.273/alita_sdk/configurations/zephyr_essential.py +18 -0
  20. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaImageLoader.py +1 -1
  21. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaPDFLoader.py +19 -6
  22. alita_sdk-0.3.273/alita_sdk/runtime/langchain/document_loaders/ImageParser.py +17 -0
  23. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/vectorstore.py +25 -9
  24. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/vectorstore_base.py +4 -1
  25. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/aws/delta_lake/__init__.py +2 -2
  26. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/azure_ai/search/__init__.py +1 -1
  27. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/base_indexer_toolkit.py +8 -8
  28. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/bitbucket/__init__.py +1 -1
  29. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/browser/__init__.py +14 -10
  30. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/__init__.py +11 -11
  31. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/code/sonar/__init__.py +10 -7
  32. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/confluence/__init__.py +1 -1
  33. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/elitea_base.py +9 -8
  34. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/figma/__init__.py +1 -1
  35. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/github/__init__.py +2 -2
  36. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/gitlab_org/__init__.py +1 -1
  37. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/google/bigquery/__init__.py +1 -1
  38. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/google_places/__init__.py +10 -5
  39. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/jira/__init__.py +1 -1
  40. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/jira/api_wrapper.py +140 -99
  41. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/qtest/__init__.py +1 -1
  42. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/rally/__init__.py +1 -1
  43. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/report_portal/__init__.py +9 -8
  44. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/salesforce/__init__.py +9 -8
  45. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/servicenow/__init__.py +1 -1
  46. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/sharepoint/__init__.py +5 -7
  47. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/slack/__init__.py +1 -1
  48. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/sql/__init__.py +9 -11
  49. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/testio/__init__.py +9 -6
  50. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/utils/content_parser.py +59 -24
  51. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/xray/api_wrapper.py +60 -101
  52. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr_enterprise/__init__.py +1 -1
  53. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr_essential/__init__.py +5 -4
  54. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr_essential/api_wrapper.py +42 -10
  55. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr_scale/__init__.py +1 -1
  56. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk.egg-info/PKG-INFO +1 -1
  57. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk.egg-info/SOURCES.txt +11 -0
  58. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/pyproject.toml +1 -1
  59. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/LICENSE +0 -0
  60. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/README.md +0 -0
  61. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/__init__.py +0 -0
  62. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/community/__init__.py +0 -0
  63. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/community/utils.py +0 -0
  64. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/bitbucket.py +0 -0
  65. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/confluence.py +0 -0
  66. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/embedding.py +0 -0
  67. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/figma.py +0 -0
  68. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/github.py +0 -0
  69. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/gitlab.py +0 -0
  70. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/jira.py +0 -0
  71. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/pgvector.py +0 -0
  72. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/rally.py +0 -0
  73. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/slack.py +0 -0
  74. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/testrail.py +0 -0
  75. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/xray.py +0 -0
  76. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/zephyr.py +0 -0
  77. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/configurations/zephyr_enterprise.py +0 -0
  78. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/__init__.py +0 -0
  79. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/clients/__init__.py +0 -0
  80. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/clients/artifact.py +0 -0
  81. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/clients/client.py +0 -0
  82. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/clients/datasource.py +0 -0
  83. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/clients/prompt.py +0 -0
  84. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/__init__.py +0 -0
  85. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/agents/__init__.py +0 -0
  86. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/agents/xml_chat.py +0 -0
  87. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/assistant.py +0 -0
  88. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/chat_message_template.py +0 -0
  89. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/constants.py +0 -0
  90. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaBDDScenariosLoader.py +0 -0
  91. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaCSVLoader.py +0 -0
  92. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaConfluenceLoader.py +0 -0
  93. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaDirectoryLoader.py +0 -0
  94. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaDocxMammothLoader.py +0 -0
  95. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaExcelLoader.py +0 -0
  96. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaGitRepoLoader.py +0 -0
  97. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaJSONLoader.py +0 -0
  98. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaJiraLoader.py +0 -0
  99. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaPowerPointLoader.py +0 -0
  100. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaQtestLoader.py +0 -0
  101. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaTableLoader.py +0 -0
  102. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/AlitaTextLoader.py +0 -0
  103. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/__init__.py +0 -0
  104. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/constants.py +0 -0
  105. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/document_loaders/utils.py +0 -0
  106. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/indexer.py +0 -0
  107. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/interfaces/__init__.py +0 -0
  108. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/interfaces/kwextractor.py +0 -0
  109. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/interfaces/llm_processor.py +0 -0
  110. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/interfaces/loaders.py +0 -0
  111. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/interfaces/splitters.py +0 -0
  112. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/langraph_agent.py +0 -0
  113. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/mixedAgentParser.py +0 -0
  114. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/mixedAgentRenderes.py +0 -0
  115. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/retrievers/AlitaRetriever.py +0 -0
  116. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/retrievers/VectorstoreRetriever.py +0 -0
  117. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/retrievers/__init__.py +0 -0
  118. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/store_manager.py +0 -0
  119. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/tools/__init__.py +0 -0
  120. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/tools/bdd_parser/__init__.py +0 -0
  121. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_exceptions.py +0 -0
  122. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_parser.py +0 -0
  123. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/tools/bdd_parser/feature_types.py +0 -0
  124. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/tools/bdd_parser/parser.py +0 -0
  125. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/tools/git.py +0 -0
  126. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/tools/log.py +0 -0
  127. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/tools/quota.py +0 -0
  128. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/tools/state.py +0 -0
  129. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/tools/utils.py +0 -0
  130. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/tools/vector.py +0 -0
  131. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/langchain/utils.py +0 -0
  132. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/llms/__init__.py +0 -0
  133. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/llms/preloaded.py +0 -0
  134. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/toolkits/__init__.py +0 -0
  135. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/toolkits/application.py +0 -0
  136. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/toolkits/artifact.py +0 -0
  137. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/toolkits/configurations.py +0 -0
  138. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/toolkits/datasource.py +0 -0
  139. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/toolkits/prompt.py +0 -0
  140. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/toolkits/subgraph.py +0 -0
  141. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/toolkits/tools.py +0 -0
  142. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/toolkits/vectorstore.py +0 -0
  143. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/__init__.py +0 -0
  144. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/agent.py +0 -0
  145. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/application.py +0 -0
  146. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/artifact.py +0 -0
  147. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/datasource.py +0 -0
  148. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/echo.py +0 -0
  149. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/function.py +0 -0
  150. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/graph.py +0 -0
  151. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/indexer_tool.py +0 -0
  152. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/llm.py +0 -0
  153. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/loop.py +0 -0
  154. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/loop_output.py +0 -0
  155. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/mcp_server_tool.py +0 -0
  156. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/pgvector_search.py +0 -0
  157. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/prompt.py +0 -0
  158. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/router.py +0 -0
  159. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/tools/tool.py +0 -0
  160. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/utils/AlitaCallback.py +0 -0
  161. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/utils/__init__.py +0 -0
  162. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/utils/constants.py +0 -0
  163. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/utils/evaluate.py +0 -0
  164. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/utils/logging.py +0 -0
  165. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/utils/save_dataframe.py +0 -0
  166. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/utils/streamlit.py +0 -0
  167. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/utils/toolkit_runtime.py +0 -0
  168. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/utils/toolkit_utils.py +0 -0
  169. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/runtime/utils/utils.py +0 -0
  170. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/__init__.py +0 -0
  171. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/ado/__init__.py +0 -0
  172. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/ado/repos/__init__.py +0 -0
  173. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/ado/repos/repos_wrapper.py +0 -0
  174. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/ado/test_plan/__init__.py +0 -0
  175. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/ado/test_plan/test_plan_wrapper.py +0 -0
  176. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/ado/utils.py +0 -0
  177. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/ado/wiki/__init__.py +0 -0
  178. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/ado/wiki/ado_wrapper.py +0 -0
  179. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/ado/work_item/__init__.py +0 -0
  180. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/ado/work_item/ado_wrapper.py +0 -0
  181. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/advanced_jira_mining/__init__.py +0 -0
  182. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/advanced_jira_mining/data_mining_wrapper.py +0 -0
  183. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/aws/__init__.py +0 -0
  184. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/aws/delta_lake/api_wrapper.py +0 -0
  185. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/aws/delta_lake/schemas.py +0 -0
  186. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/aws/delta_lake/tool.py +0 -0
  187. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/azure_ai/__init__.py +0 -0
  188. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/azure_ai/search/api_wrapper.py +0 -0
  189. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/base/__init__.py +0 -0
  190. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/base/tool.py +0 -0
  191. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/bitbucket/api_wrapper.py +0 -0
  192. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/bitbucket/bitbucket_constants.py +0 -0
  193. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/bitbucket/cloud_api_wrapper.py +0 -0
  194. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/browser/crawler.py +0 -0
  195. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/browser/duck_duck_go_search.py +0 -0
  196. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/browser/google_search_rag.py +0 -0
  197. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/browser/utils.py +0 -0
  198. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/browser/wiki.py +0 -0
  199. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/api_wrapper.py +0 -0
  200. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/backend_reports_tool.py +0 -0
  201. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/backend_tests_tool.py +0 -0
  202. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/cancel_ui_test_tool.py +0 -0
  203. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/carrier_sdk.py +0 -0
  204. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/create_ui_excel_report_tool.py +0 -0
  205. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/create_ui_test_tool.py +0 -0
  206. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/excel_reporter.py +0 -0
  207. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/lighthouse_excel_reporter.py +0 -0
  208. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/run_ui_test_tool.py +0 -0
  209. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/tickets_tool.py +0 -0
  210. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/tools.py +0 -0
  211. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/ui_reports_tool.py +0 -0
  212. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/update_ui_test_schedule_tool.py +0 -0
  213. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/carrier/utils.py +0 -0
  214. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/__init__.py +0 -0
  215. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/__init__.py +0 -0
  216. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/codeparser.py +0 -0
  217. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/constants.py +0 -0
  218. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/__init__.py +0 -0
  219. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter.py +0 -0
  220. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter_c.py +0 -0
  221. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter_cpp.py +0 -0
  222. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter_cs.py +0 -0
  223. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter_go.py +0 -0
  224. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter_hs.py +0 -0
  225. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter_java.py +0 -0
  226. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter_js.py +0 -0
  227. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter_kt.py +0 -0
  228. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter_py.py +0 -0
  229. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter_rb.py +0 -0
  230. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter_registry.py +0 -0
  231. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter_rs.py +0 -0
  232. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/code/treesitter/treesitter_ts.py +0 -0
  233. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/models.py +0 -0
  234. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/sematic/__init__.py +0 -0
  235. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/sematic/base.py +0 -0
  236. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/sematic/json_chunker.py +0 -0
  237. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/sematic/markdown_chunker.py +0 -0
  238. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/sematic/proposal_chunker.py +0 -0
  239. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/sematic/statistical_chunker.py +0 -0
  240. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/chunkers/utils.py +0 -0
  241. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/cloud/__init__.py +0 -0
  242. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/cloud/aws/__init__.py +0 -0
  243. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/cloud/aws/api_wrapper.py +0 -0
  244. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/cloud/azure/__init__.py +0 -0
  245. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/cloud/azure/api_wrapper.py +0 -0
  246. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/cloud/gcp/__init__.py +0 -0
  247. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/cloud/gcp/api_wrapper.py +0 -0
  248. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/cloud/k8s/__init__.py +0 -0
  249. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/cloud/k8s/api_wrapper.py +0 -0
  250. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/code/__init__.py +0 -0
  251. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/code/linter/__init__.py +0 -0
  252. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/code/linter/api_wrapper.py +0 -0
  253. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/code/loaders/codesearcher.py +0 -0
  254. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/code/sonar/api_wrapper.py +0 -0
  255. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/confluence/api_wrapper.py +0 -0
  256. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/confluence/loader.py +0 -0
  257. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/confluence/utils.py +0 -0
  258. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/custom_open_api/__init__.py +0 -0
  259. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/custom_open_api/api_wrapper.py +0 -0
  260. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/elastic/__init__.py +0 -0
  261. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/elastic/api_wrapper.py +0 -0
  262. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/figma/api_wrapper.py +0 -0
  263. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/github/api_wrapper.py +0 -0
  264. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/github/github_client.py +0 -0
  265. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/github/graphql_client_wrapper.py +0 -0
  266. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/github/schemas.py +0 -0
  267. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/github/tool.py +0 -0
  268. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/github/tool_prompts.py +0 -0
  269. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/gitlab/__init__.py +0 -0
  270. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/gitlab/api_wrapper.py +0 -0
  271. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/gitlab/tools.py +0 -0
  272. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/gitlab/utils.py +0 -0
  273. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/gitlab_org/api_wrapper.py +0 -0
  274. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/gmail/__init__.py +0 -0
  275. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/gmail/gmail_wrapper.py +0 -0
  276. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/gmail/utils.py +0 -0
  277. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/google/__init__.py +0 -0
  278. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/google/bigquery/api_wrapper.py +0 -0
  279. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/google/bigquery/schemas.py +0 -0
  280. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/google/bigquery/tool.py +0 -0
  281. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/google_places/api_wrapper.py +0 -0
  282. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/keycloak/__init__.py +0 -0
  283. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/keycloak/api_wrapper.py +0 -0
  284. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/llm/__init__.py +0 -0
  285. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/llm/img_utils.py +0 -0
  286. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/llm/llm_utils.py +0 -0
  287. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/localgit/__init__.py +0 -0
  288. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/localgit/local_git.py +0 -0
  289. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/localgit/tool.py +0 -0
  290. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/memory/__init__.py +0 -0
  291. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/non_code_indexer_toolkit.py +0 -0
  292. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/ocr/__init__.py +0 -0
  293. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/ocr/api_wrapper.py +0 -0
  294. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/ocr/text_detection.py +0 -0
  295. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/openapi/__init__.py +0 -0
  296. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/__init__.py +0 -0
  297. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/api_wrapper.py +0 -0
  298. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/dataframe/__init__.py +0 -0
  299. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/dataframe/errors.py +0 -0
  300. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/dataframe/executor/__init__.py +0 -0
  301. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/dataframe/executor/code_environment.py +0 -0
  302. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/dataframe/executor/code_executor.py +0 -0
  303. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/dataframe/generator/__init__.py +0 -0
  304. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/dataframe/generator/base.py +0 -0
  305. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/dataframe/generator/code_cleaning.py +0 -0
  306. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/dataframe/generator/code_validator.py +0 -0
  307. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/dataframe/prompts.py +0 -0
  308. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/dataframe/serializer.py +0 -0
  309. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/dataframe/utils.py +0 -0
  310. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/statsmodels/__init__.py +0 -0
  311. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/statsmodels/base_stats.py +0 -0
  312. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/statsmodels/descriptive.py +0 -0
  313. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/statsmodels/hypothesis_testing.py +0 -0
  314. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pandas/statsmodels/regression.py +0 -0
  315. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/postman/__init__.py +0 -0
  316. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/postman/api_wrapper.py +0 -0
  317. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/postman/postman_analysis.py +0 -0
  318. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pptx/__init__.py +0 -0
  319. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/pptx/pptx_wrapper.py +0 -0
  320. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/qtest/api_wrapper.py +0 -0
  321. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/qtest/tool.py +0 -0
  322. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/rally/api_wrapper.py +0 -0
  323. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/report_portal/api_wrapper.py +0 -0
  324. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/report_portal/report_portal_client.py +0 -0
  325. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/salesforce/api_wrapper.py +0 -0
  326. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/salesforce/model.py +0 -0
  327. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/servicenow/api_wrapper.py +0 -0
  328. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/servicenow/servicenow_client.py +0 -0
  329. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/sharepoint/api_wrapper.py +0 -0
  330. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/sharepoint/authorization_helper.py +0 -0
  331. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/sharepoint/utils.py +0 -0
  332. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/slack/api_wrapper.py +0 -0
  333. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/sql/api_wrapper.py +0 -0
  334. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/sql/models.py +0 -0
  335. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/testio/api_wrapper.py +0 -0
  336. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/testrail/__init__.py +0 -0
  337. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/testrail/api_wrapper.py +0 -0
  338. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/utils/__init__.py +0 -0
  339. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/utils/available_tools_decorator.py +0 -0
  340. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/vector_adapters/VectorStoreAdapter.py +0 -0
  341. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/vector_adapters/__init__.py +0 -0
  342. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/xray/__init__.py +0 -0
  343. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/yagmail/__init__.py +0 -0
  344. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/yagmail/yagmail_wrapper.py +0 -0
  345. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr/Zephyr.py +0 -0
  346. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr/__init__.py +0 -0
  347. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr/api_wrapper.py +0 -0
  348. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr/rest_client.py +0 -0
  349. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr_enterprise/api_wrapper.py +0 -0
  350. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr_enterprise/zephyr_enterprise.py +0 -0
  351. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr_essential/client.py +0 -0
  352. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr_scale/api_wrapper.py +0 -0
  353. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr_squad/__init__.py +0 -0
  354. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr_squad/api_wrapper.py +0 -0
  355. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk/tools/zephyr_squad/zephyr_squad_cloud_client.py +0 -0
  356. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk.egg-info/dependency_links.txt +0 -0
  357. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk.egg-info/requires.txt +0 -0
  358. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/alita_sdk.egg-info/top_level.txt +0 -0
  359. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/setup.cfg +0 -0
  360. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/tests/test_ado_analysis.py +0 -0
  361. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/tests/test_github_analysis.py +0 -0
  362. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/tests/test_gitlab_analysis.py +0 -0
  363. {alita_sdk-0.3.271 → alita_sdk-0.3.273}/tests/test_jira_analysis.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: alita_sdk
3
- Version: 0.3.271
3
+ Version: 0.3.273
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 <lifedjik@gmail.com>, Artem Dubrovskiy <ad13box@gmail.com>
6
6
  License-Expression: Apache-2.0
@@ -41,8 +41,18 @@ _safe_import_configuration('bigquery', 'bigquery', 'BigQueryConfiguration')
41
41
  _safe_import_configuration('xray', 'xray', 'XrayConfiguration')
42
42
  _safe_import_configuration('zephyr', 'zephyr', 'ZephyrConfiguration')
43
43
  _safe_import_configuration('zephyr_enterprise', 'zephyr_enterprise', 'ZephyrEnterpriseConfiguration')
44
+ _safe_import_configuration('zephyr_essential', 'zephyr_essential', 'ZephyrEssentialConfiguration')
44
45
  _safe_import_configuration('figma', 'figma', 'FigmaConfiguration')
45
46
  _safe_import_configuration('rally', 'rally', 'RallyConfiguration')
47
+ _safe_import_configuration('sonar', 'sonar', 'SonarConfiguration')
48
+ _safe_import_configuration('sql', 'sql', 'SqlConfiguration')
49
+ _safe_import_configuration('google_places', 'google_places', 'GooglePlacesConfiguration')
50
+ _safe_import_configuration('salesforce', 'salesforce', 'SalesforceConfiguration')
51
+ _safe_import_configuration('browser', 'browser', 'BrowserConfiguration')
52
+ _safe_import_configuration('sharepoint', 'sharepoint', 'SharepointConfiguration')
53
+ _safe_import_configuration('carrier', 'carrier', 'CarrierConfiguration')
54
+ _safe_import_configuration('report_portal', 'report_portal', 'ReportPortalConfiguration')
55
+ _safe_import_configuration('testio', 'testio', 'TestIOConfiguration')
46
56
 
47
57
  # Log import summary
48
58
  available_count = len(AVAILABLE_CONFIGURATIONS)
@@ -10,7 +10,8 @@ class AdoConfiguration(BaseModel):
10
10
  "label": "Ado",
11
11
  "icon_url": None,
12
12
  "section": "credentials",
13
- "type": "ado"
13
+ "type": "ado",
14
+ "categories": ["project management"],
14
15
  }
15
16
  }
16
17
  )
@@ -26,7 +27,8 @@ class AdoReposConfiguration(BaseModel):
26
27
  "label": "ADO repos",
27
28
  "icon_url": "ado-repos-icon.svg",
28
29
  "section": "credentials",
29
- "type": "ado_repos"
30
+ "type": "ado_repos",
31
+ "categories": ["code repositories"],
30
32
  }
31
33
  }
32
34
  )
@@ -12,7 +12,7 @@ class AzureSearchConfiguration(BaseModel):
12
12
  "hidden": True,
13
13
  "section": "credentials",
14
14
  "type": "azure_search",
15
- "categories": ["search"],
15
+ "categories": ["other"],
16
16
  "extra_categories": ["azure", "cognitive search", "vector database", "knowledge base"],
17
17
  }
18
18
  }
@@ -12,7 +12,7 @@ class BigQueryConfiguration(BaseModel):
12
12
  "hidden": True,
13
13
  "section": "credentials",
14
14
  "type": "bigquery",
15
- "categories": ["database"],
15
+ "categories": ["other"],
16
16
  "extra_categories": ["google", "gcp", "data warehouse", "analytics"],
17
17
  }
18
18
  }
@@ -0,0 +1,18 @@
1
+ from pydantic import BaseModel, ConfigDict, Field, SecretStr
2
+
3
+
4
+ class BrowserConfiguration(BaseModel):
5
+ model_config = ConfigDict(
6
+ json_schema_extra={
7
+ "metadata": {
8
+ "label": "Browser",
9
+ "icon_url": "browser.svg",
10
+ "section": "credentials",
11
+ "type": "browser",
12
+ "categories": ["testing"],
13
+ "extra_categories": ["browser", "google", "search", "web"],
14
+ }
15
+ }
16
+ )
17
+ google_cse_id: str = Field(description="Google CSE id", default=None)
18
+ google_api_key: SecretStr = Field(description="Google API key", default=None, json_schema_extra={'secret': True})
@@ -0,0 +1,19 @@
1
+ from pydantic import BaseModel, ConfigDict, Field, SecretStr
2
+
3
+
4
+ class CarrierConfiguration(BaseModel):
5
+ model_config = ConfigDict(
6
+ json_schema_extra={
7
+ "metadata": {
8
+ "label": "Carrier",
9
+ "icon_url": "carrier.svg",
10
+ "section": "credentials",
11
+ "type": "carrier",
12
+ "categories": ["testing"],
13
+ "extra_categories": ["carrier", "security", "testing", "vulnerability"],
14
+ }
15
+ }
16
+ )
17
+ organization: str = Field(description="Carrier Organization")
18
+ url: str = Field(description="Carrier URL")
19
+ private_token: SecretStr = Field(description="Carrier Private Token")
@@ -12,7 +12,7 @@ class DeltaLakeConfiguration(BaseModel):
12
12
  "hidden": True,
13
13
  "section": "credentials",
14
14
  "type": "delta_lake",
15
- "categories": ["database"],
15
+ "categories": ["other"],
16
16
  "extra_categories": ["aws", "data lake", "analytics", "storage"],
17
17
  }
18
18
  }
@@ -0,0 +1,17 @@
1
+ from pydantic import BaseModel, ConfigDict, Field, SecretStr
2
+
3
+
4
+ class GooglePlacesConfiguration(BaseModel):
5
+ model_config = ConfigDict(
6
+ json_schema_extra={
7
+ "metadata": {
8
+ "label": "Google Places",
9
+ "icon_url": "google.svg",
10
+ "section": "credentials",
11
+ "type": "google_places",
12
+ "categories": ["other"],
13
+ "extra_categories": ["google", "places", "maps", "location", "geocoding"],
14
+ }
15
+ }
16
+ )
17
+ api_key: SecretStr = Field(description="Google Places API Key")
@@ -22,7 +22,7 @@ class PostmanConfiguration(BaseModel):
22
22
  },
23
23
  "section": "credentials",
24
24
  "type": "postman",
25
- "categories": ["api testing"],
25
+ "categories": ["other"],
26
26
  "extra_categories": ["postman", "api", "testing", "collection"],
27
27
  }
28
28
  }
@@ -1,5 +1,3 @@
1
- from typing import Optional
2
-
3
1
  from pydantic import BaseModel, ConfigDict, Field, SecretStr
4
2
 
5
3
 
@@ -17,5 +15,5 @@ class QtestConfiguration(BaseModel):
17
15
  }
18
16
  )
19
17
  base_url: str = Field(description="QTest base url")
20
- qtest_api_token: Optional[SecretStr] = Field(description="QTest API token", default=None)
18
+ qtest_api_token: SecretStr = Field(description="QTest API token", default=None)
21
19
 
@@ -0,0 +1,19 @@
1
+ from pydantic import BaseModel, ConfigDict, Field, SecretStr
2
+
3
+
4
+ class ReportPortalConfiguration(BaseModel):
5
+ model_config = ConfigDict(
6
+ json_schema_extra={
7
+ "metadata": {
8
+ "label": "Report Portal",
9
+ "icon_url": "report_portal.svg",
10
+ "section": "credentials",
11
+ "type": "report_portal",
12
+ "categories": ["testing"],
13
+ "extra_categories": ["report portal", "testing", "automation", "reports"],
14
+ }
15
+ }
16
+ )
17
+ project: str = Field(description="Report Portal Project Name")
18
+ endpoint: str = Field(description="Report Portal Endpoint URL")
19
+ api_key: SecretStr = Field(description="Report Portal API Key")
@@ -0,0 +1,19 @@
1
+ from pydantic import BaseModel, ConfigDict, Field, SecretStr
2
+
3
+
4
+ class SalesforceConfiguration(BaseModel):
5
+ model_config = ConfigDict(
6
+ json_schema_extra={
7
+ "metadata": {
8
+ "label": "Salesforce",
9
+ "icon_url": "salesforce.svg",
10
+ "section": "credentials",
11
+ "type": "salesforce",
12
+ "categories": ["other"],
13
+ "extra_categories": ["salesforce", "crm", "sales", "customer"],
14
+ }
15
+ }
16
+ )
17
+ client_id: str = Field(description="Salesforce Client ID")
18
+ client_secret: SecretStr = Field(description="Salesforce Client Secret")
19
+ base_url: str = Field(description="Salesforce Base URL")
@@ -9,20 +9,9 @@ class ServiceNowConfiguration(BaseModel):
9
9
  "metadata": {
10
10
  "label": "ServiceNow",
11
11
  "icon_url": "servicenow.svg",
12
- "sections": {
13
- "auth": {
14
- "required": True,
15
- "subsections": [
16
- {
17
- "name": "Username & Password",
18
- "fields": ["username", "password"]
19
- }
20
- ]
21
- },
22
- },
23
12
  "section": "credentials",
24
13
  "type": "service_now",
25
- "categories": ["service management"],
14
+ "categories": ["other"],
26
15
  "extra_categories": ["servicenow", "itsm", "service management", "incident"],
27
16
  }
28
17
  }
@@ -0,0 +1,19 @@
1
+ from pydantic import BaseModel, ConfigDict, Field, SecretStr
2
+
3
+
4
+ class SharepointConfiguration(BaseModel):
5
+ model_config = ConfigDict(
6
+ json_schema_extra={
7
+ "metadata": {
8
+ "label": "SharePoint",
9
+ "icon_url": "sharepoint.svg",
10
+ "section": "credentials",
11
+ "type": "sharepoint",
12
+ "categories": ["office"],
13
+ "extra_categories": ["sharepoint", "microsoft", "documents", "collaboration"],
14
+ }
15
+ }
16
+ )
17
+ client_id: str = Field(description="SharePoint Client ID")
18
+ client_secret: SecretStr = Field(description="SharePoint Client Secret")
19
+ site_url: str = Field(description="SharePoint Site URL")
@@ -0,0 +1,18 @@
1
+ from pydantic import BaseModel, ConfigDict, Field, SecretStr
2
+
3
+
4
+ class SonarConfiguration(BaseModel):
5
+ model_config = ConfigDict(
6
+ json_schema_extra={
7
+ "metadata": {
8
+ "label": "Sonar",
9
+ "icon_url": "sonar-icon.svg",
10
+ "section": "credentials",
11
+ "type": "sonar",
12
+ "categories": ["development"],
13
+ "extra_categories": ["code quality", "code security", "code coverage", "quality", "sonarqube"],
14
+ }
15
+ }
16
+ )
17
+ url: str = Field(description="SonarQube Server URL")
18
+ sonar_token: SecretStr = Field(description="SonarQube user token for authentication")
@@ -0,0 +1,20 @@
1
+ from pydantic import BaseModel, ConfigDict, Field, SecretStr
2
+
3
+
4
+ class SqlConfiguration(BaseModel):
5
+ model_config = ConfigDict(
6
+ json_schema_extra={
7
+ "metadata": {
8
+ "label": "SQL Database",
9
+ "icon_url": "sql.svg",
10
+ "section": "credentials",
11
+ "type": "sql",
12
+ "categories": ["development"],
13
+ "extra_categories": ["sql", "database", "data", "query"],
14
+ }
15
+ }
16
+ )
17
+ host: str = Field(description="Database host")
18
+ port: int = Field(description="Database port")
19
+ username: str = Field(description="Database username")
20
+ password: SecretStr = Field(description="Database password", json_schema_extra={'secret': True})
@@ -0,0 +1,18 @@
1
+ from pydantic import BaseModel, ConfigDict, Field, SecretStr
2
+
3
+
4
+ class TestIOConfiguration(BaseModel):
5
+ model_config = ConfigDict(
6
+ json_schema_extra={
7
+ "metadata": {
8
+ "label": "TestIO",
9
+ "icon_url": "testio.svg",
10
+ "section": "credentials",
11
+ "type": "testio",
12
+ "categories": ["testing"],
13
+ "extra_categories": ["testio", "testing", "crowd testing", "qa"],
14
+ }
15
+ }
16
+ )
17
+ endpoint: str = Field(description="TestIO endpoint")
18
+ api_key: SecretStr = Field(description="TestIO API Key")
@@ -0,0 +1,18 @@
1
+ from pydantic import BaseModel, ConfigDict, Field, SecretStr
2
+
3
+
4
+ class ZephyrEssentialConfiguration(BaseModel):
5
+ model_config = ConfigDict(
6
+ json_schema_extra={
7
+ "metadata": {
8
+ "label": "Zephyr Essential",
9
+ "icon_url": "zephyr.svg",
10
+ "section": "credentials",
11
+ "type": "zephyr-essential",
12
+ "categories": ["test management"],
13
+ "extra_categories": ["zephyr", "test automation", "test case management", "test planning"],
14
+ }
15
+ }
16
+ )
17
+ base_url: str = Field(description="Zephyr Essential Base URL", default=None)
18
+ token: SecretStr = Field(description="Zephyr Essential API Token")
@@ -151,5 +151,5 @@ class AlitaImageLoader(BaseLoader):
151
151
  """Load text from image using OCR or LLM if llm is provided, supports SVG."""
152
152
  text_content = self.get_content()
153
153
 
154
- metadata = {"source": str(self.file_path)} # Ensure source is always a string for metadata
154
+ metadata = {"source": str(self.file_path if hasattr(self, 'file_path') else self.file_name)} # Ensure source is always a string for metadata
155
155
  return [Document(page_content=text_content, metadata=metadata)]
@@ -1,5 +1,7 @@
1
1
  import pymupdf
2
2
  from langchain_community.document_loaders import PyPDFLoader
3
+
4
+ from .ImageParser import ImageParser
3
5
  from .utils import perform_llm_prediction_for_image_bytes, create_temp_file
4
6
  from langchain_core.tools import ToolException
5
7
 
@@ -54,10 +56,21 @@ class AlitaPDFLoader:
54
56
 
55
57
  def load(self):
56
58
  if not hasattr(self, 'file_path'):
57
- self.file_path = create_temp_file(self.file_content)
59
+ import tempfile
60
+
61
+ with tempfile.NamedTemporaryFile(mode='w+b', delete=True, suffix=".pdf") as temp_file:
62
+ temp_file.write(self.file_content)
63
+ temp_file.flush()
64
+ self.file_path = temp_file.name
65
+ return self._load_docs()
66
+ else:
67
+ return self._load_docs()
68
+
69
+ def _load_docs(self):
58
70
  return PyPDFLoader(file_path=self.file_path,
59
- password=self.password,
60
- headers=self.headers,
61
- extract_images=self.extract_images,
62
- extraction_mode=self.extraction_mode,
63
- extraction_kwargs=self.extraction_kwargs).load()
71
+ password=self.password,
72
+ headers=self.headers,
73
+ extract_images=self.extract_images,
74
+ extraction_mode=self.extraction_mode,
75
+ images_parser=ImageParser(llm=self.llm, prompt=self.prompt),
76
+ extraction_kwargs=self.extraction_kwargs).load()
@@ -0,0 +1,17 @@
1
+ from langchain_community.document_loaders.parsers.images import BaseImageBlobParser
2
+
3
+ from alita_sdk.runtime.langchain.document_loaders.AlitaImageLoader import AlitaImageLoader
4
+
5
+ class ImageParser(BaseImageBlobParser):
6
+
7
+ def __init__(self, **kwargs):
8
+ self.llm = kwargs.get('llm')
9
+ self.prompt = kwargs.get('prompt')
10
+
11
+ def _analyze_image(self, img) -> str:
12
+ from io import BytesIO
13
+
14
+ byte_stream = BytesIO()
15
+ img.save(byte_stream, format='PNG')
16
+ image_bytes = byte_stream.getvalue()
17
+ return AlitaImageLoader(file_content=image_bytes, file_name="image.png", prompt=self.prompt, llm=self.llm).get_content()
@@ -73,6 +73,10 @@ class StepBackSearchDocumentsModel(BaseModel):
73
73
  }""",
74
74
  default=None
75
75
  )
76
+ extended_search: Optional[List[str]] = Field(
77
+ description="List of chunk types to search for (title, summary, propositions, keywords, documents)",
78
+ default=None
79
+ )
76
80
  reranking_config: Optional[Dict[str, Dict[str, Any]]] = Field(
77
81
  description="""Reranking configuration. Example:
78
82
  {
@@ -87,10 +91,6 @@ class StepBackSearchDocumentsModel(BaseModel):
87
91
  }""",
88
92
  default=None
89
93
  )
90
- extended_search: Optional[List[str]] = Field(
91
- description="List of chunk types to search for (title, summary, propositions, keywords, documents)",
92
- default=None
93
- )
94
94
 
95
95
  STEPBACK_PROMPT = """Your task is to convert provided question into a more generic question that will be used for similarity search.
96
96
  Remove all not important words, question words, but save all names, dates and acronym as in original question.
@@ -212,10 +212,27 @@ class VectorStoreWrapper(BaseToolApiWrapper):
212
212
  """Get all indexed document IDs from vectorstore"""
213
213
  return self.vector_adapter.get_indexed_ids(self, collection_suffix)
214
214
 
215
- def list_collections(self) -> List[str]:
216
- """List all collections in the vectorstore."""
217
-
218
- return self.vector_adapter.list_collections(self)
215
+ def list_collections(self) -> Any:
216
+ """List all collections in the vectorstore.
217
+ Returns a list of collection names, or if no collections exist,
218
+ returns a dict with an empty list and a message."""
219
+ raw = self.vector_adapter.list_collections(self)
220
+ # Normalize raw result to a list of names
221
+ if not raw:
222
+ # No collections found
223
+ return {"collections": [], "message": "No indexed collections"}
224
+ if isinstance(raw, str):
225
+ # e.g., Chroma adapter returns comma-separated string
226
+ cols = [c for c in raw.split(',') if c]
227
+ else:
228
+ try:
229
+ cols = list(raw)
230
+ except Exception:
231
+ # Unexpected type, return raw directly
232
+ return raw
233
+ if not cols:
234
+ return {"collections": [], "message": "No indexed collections"}
235
+ return cols
219
236
 
220
237
  def _clean_collection(self, collection_suffix: str = ''):
221
238
  """
@@ -765,4 +782,3 @@ class VectorStoreWrapper(BaseToolApiWrapper):
765
782
  "args_schema": StepBackSearchDocumentsModel
766
783
  }
767
784
  ]
768
-
@@ -192,7 +192,10 @@ class VectorStoreWrapperBase(BaseToolApiWrapper):
192
192
  def list_collections(self) -> List[str]:
193
193
  """List all collections in the vectorstore."""
194
194
 
195
- return self.vector_adapter.list_collections(self)
195
+ collections = self.vector_adapter.list_collections(self)
196
+ if not collections:
197
+ return "No indexed collections"
198
+ return collections
196
199
 
197
200
  def _clean_collection(self, collection_suffix: str = ''):
198
201
  """
@@ -3,7 +3,7 @@ from functools import lru_cache
3
3
  from typing import List, Optional, Type
4
4
 
5
5
  from langchain_core.tools import BaseTool, BaseToolkit
6
- from pydantic import BaseModel, Field, SecretStr, computed_field, field_validator
6
+ from pydantic import BaseModel, Field, computed_field, field_validator
7
7
 
8
8
  from alita_sdk.configurations.delta_lake import DeltaLakeConfiguration
9
9
  from ...utils import TOOLKIT_SPLITTER, clean_string, get_max_toolkit_length
@@ -54,7 +54,7 @@ class DeltaLakeToolkitConfig(BaseModel):
54
54
  }
55
55
  }
56
56
 
57
- delta_lake_configuration: Optional[DeltaLakeConfiguration] = Field(description="Delta Lake Configuration", json_schema_extra={"configuration_types": ["delta_lake"]})
57
+ delta_lake_configuration: DeltaLakeConfiguration = Field(description="Delta Lake Configuration", json_schema_extra={"configuration_types": ["delta_lake"]})
58
58
  selected_tools: List[str] = Field(default=[], description="Selected tools", json_schema_extra={"args_schemas": get_available_tools()})
59
59
 
60
60
  @field_validator("selected_tools", mode="before", check_fields=False)
@@ -39,7 +39,7 @@ class AzureSearchToolkit(BaseToolkit):
39
39
  name,
40
40
  index_name=(str, Field(description="Azure Search index name")),
41
41
  azure_search_configuration=(
42
- Optional[AzureSearchConfiguration],
42
+ AzureSearchConfiguration,
43
43
  Field(description="Azure Search Configuration", json_schema_extra={'configuration_types': ['azure_search']})
44
44
  ),
45
45
  api_version=(Optional[str], Field(description="API version", default=None)),
@@ -66,22 +66,22 @@ BaseStepbackSearchParams = create_model(
66
66
  )),
67
67
  cut_off=(Optional[float], Field(description="Cut-off score for search results", default=0.5, ge=0, le=1)),
68
68
  search_top=(Optional[int], Field(description="Number of top results to return", default=10)),
69
- reranker=(Optional[dict], Field(
70
- description="Reranker configuration. Can be a dictionary with reranking parameters.",
71
- default={}
72
- )),
73
69
  full_text_search=(Optional[Dict[str, Any]], Field(
74
70
  description="Full text search parameters. Can be a dictionary with search options.",
75
71
  default=None
76
72
  )),
77
- reranking_config=(Optional[Dict[str, Dict[str, Any]]], Field(
78
- description="Reranking configuration. Can be a dictionary with reranking settings.",
79
- default=None
80
- )),
81
73
  extended_search=(Optional[List[str]], Field(
82
74
  description="List of additional fields to include in the search results.",
83
75
  default=None
84
76
  )),
77
+ reranker=(Optional[dict], Field(
78
+ description="Reranker configuration. Can be a dictionary with reranking parameters.",
79
+ default={}
80
+ )),
81
+ reranking_config=(Optional[Dict[str, Dict[str, Any]]], Field(
82
+ description="Reranking configuration. Can be a dictionary with reranking settings.",
83
+ default=None
84
+ )),
85
85
  )
86
86
 
87
87
  BaseIndexDataParams = create_model(
@@ -51,7 +51,7 @@ class AlitaBitbucketToolkit(BaseToolkit):
51
51
  repository=(str, Field(description="Repository", json_schema_extra={'max_toolkit_length': AlitaBitbucketToolkit.toolkit_max_length, 'configuration': True})),
52
52
  branch=(str, Field(description="Main branch", default="main")),
53
53
  cloud=(Optional[bool], Field(description="Hosting Option", default=None)),
54
- bitbucket_configuration=(Optional[BitbucketConfiguration], Field(description="Bitbucket Configuration", json_schema_extra={'configuration_types': ['bitbucket']})),
54
+ bitbucket_configuration=(BitbucketConfiguration, Field(description="Bitbucket Configuration", json_schema_extra={'configuration_types': ['bitbucket']})),
55
55
  pgvector_configuration=(Optional[PgVectorConfiguration], Field(default=None, description="PgVector Configuration", json_schema_extra={'configuration_types': ['pgvector']})),
56
56
  # embedder settings
57
57
  embedding_model=(Optional[str], Field(default=None, description="Embedding configuration.", json_schema_extra={'configuration_model': 'embedding'})),
@@ -1,7 +1,7 @@
1
1
  from typing import List, Optional, Literal
2
2
  from langchain_core.tools import BaseTool, BaseToolkit
3
3
 
4
- from pydantic import create_model, BaseModel, ConfigDict, Field, SecretStr, model_validator
4
+ from pydantic import create_model, BaseModel, ConfigDict, Field, model_validator
5
5
 
6
6
  from langchain_community.utilities.google_search import GoogleSearchAPIWrapper
7
7
  from langchain_community.utilities.wikipedia import WikipediaAPIWrapper
@@ -9,6 +9,7 @@ from .google_search_rag import GoogleSearchResults
9
9
  from .crawler import SingleURLCrawler, MultiURLCrawler, GetHTMLContent, GetPDFContent
10
10
  from .wiki import WikipediaQueryRun
11
11
  from ..utils import get_max_toolkit_length, clean_string, TOOLKIT_SPLITTER
12
+ from ...configurations.browser import BrowserConfiguration
12
13
  from logging import getLogger
13
14
 
14
15
  logger = getLogger(__name__)
@@ -19,8 +20,7 @@ name = "browser"
19
20
  def get_tools(tool):
20
21
  return BrowserToolkit().get_toolkit(
21
22
  selected_tools=tool['settings'].get('selected_tools', []),
22
- google_api_key=tool['settings'].get('google_api_key'),
23
- google_cse_id=tool['settings'].get("google_cse_id"),
23
+ browser_configuration=tool['settings']['browser_configuration'],
24
24
  toolkit_name=tool.get('toolkit_name', '')
25
25
  ).get_tools()
26
26
 
@@ -42,8 +42,9 @@ class BrowserToolkit(BaseToolkit):
42
42
 
43
43
  def validate_google_fields(cls, values):
44
44
  if 'google' in values.get('selected_tools', []):
45
- google_cse_id = values.get('google_cse_id') is not None
46
- google_api_key = values.get('google_api_key') is not None
45
+ browser_config = values.get('browser_configuration', {})
46
+ google_cse_id = browser_config.get('google_cse_id') is not None if browser_config else False
47
+ google_api_key = browser_config.get('google_api_key') is not None if browser_config else False
47
48
  if not (google_cse_id and google_api_key):
48
49
  raise ValueError("google_cse_id and google_api_key are required when 'google' is in selected_tools")
49
50
  return values
@@ -51,9 +52,7 @@ class BrowserToolkit(BaseToolkit):
51
52
  return create_model(
52
53
  name,
53
54
  __config__=ConfigDict(json_schema_extra={'metadata': {"label": "Browser", "icon_url": None, "categories": ["testing"], "extra_categories": ["web scraping", "search", "crawler"]}}),
54
- google_cse_id=(Optional[str], Field(description="Google CSE id", default=None)),
55
- google_api_key=(Optional[SecretStr],
56
- Field(description="Google API key", default=None, json_schema_extra={'secret': True})),
55
+ browser_configuration=(BrowserConfiguration, Field(description="Browser Configuration", json_schema_extra={'configuration_types': ['browser']})),
57
56
  selected_tools=(List[Literal[tuple(selected_tools)]],
58
57
  Field(default=[], json_schema_extra={'args_schemas': selected_tools})),
59
58
  __validators__={
@@ -65,6 +64,12 @@ class BrowserToolkit(BaseToolkit):
65
64
  def get_toolkit(cls, selected_tools: list[str] | None = None, toolkit_name: Optional[str] = None, **kwargs):
66
65
  if selected_tools is None:
67
66
  selected_tools = []
67
+
68
+ wrapper_payload = {
69
+ **kwargs,
70
+ **kwargs.get('browser_configuration', {}),
71
+ }
72
+
68
73
  tools = []
69
74
  prefix = clean_string(toolkit_name, cls.toolkit_max_length) + TOOLKIT_SPLITTER if toolkit_name else ''
70
75
  if not selected_tools:
@@ -88,8 +93,7 @@ class BrowserToolkit(BaseToolkit):
88
93
  elif tool == 'google':
89
94
  try:
90
95
  google_api_wrapper = GoogleSearchAPIWrapper(
91
- google_api_key=kwargs.get("google_api_key"),
92
- google_cse_id=kwargs.get("google_cse_id"),
96
+ **wrapper_payload
93
97
  )
94
98
  tool_entry = GoogleSearchResults(api_wrapper=google_api_wrapper)
95
99
  # rename the tool to avoid conflicts