alita-sdk 0.3.180__tar.gz → 0.3.181__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.
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/PKG-INFO +2 -2
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/clients/client.py +0 -2
- alita_sdk-0.3.181/alita_sdk/runtime/langchain/agents/react_agent.py +157 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/assistant.py +32 -75
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/langraph_agent.py +1 -1
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/llms/alita.py +4 -11
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/utils/streamlit.py +7 -2
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk.egg-info/PKG-INFO +2 -2
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk.egg-info/SOURCES.txt +1 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk.egg-info/requires.txt +1 -1
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/pyproject.toml +2 -2
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/LICENSE +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/README.md +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/ado_analyse/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/ado_analyse/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/github_analyse/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/github_analyse/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/gitlab_analyse/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/gitlab_analyse/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/jira_analyse/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/jira_analyse/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/clients/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/clients/artifact.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/clients/datasource.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/clients/prompt.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/agents/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/agents/xml_chat.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/chat_message_template.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/constants.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/AlitaBDDScenariosLoader.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/AlitaCSVLoader.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/AlitaConfluenceLoader.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/AlitaDirectoryLoader.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/AlitaDocxMammothLoader.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/AlitaExcelLoader.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/AlitaGitRepoLoader.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/AlitaImageLoader.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/AlitaJiraLoader.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/AlitaQtestLoader.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/AlitaTableLoader.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/constants.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/indexer.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/interfaces/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/interfaces/kwextractor.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/interfaces/llm_processor.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/interfaces/loaders.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/interfaces/splitters.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/mixedAgentParser.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/mixedAgentRenderes.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/retrievers/AlitaRetriever.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/retrievers/VectorstoreRetriever.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/retrievers/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/store_manager.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/bdd_parser/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_exceptions.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_parser.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/bdd_parser/feature_types.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/bdd_parser/parser.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/git.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/log.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/quota.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/state.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/vector.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/llms/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/llms/preloaded.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/toolkits/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/toolkits/application.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/toolkits/artifact.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/toolkits/datasource.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/toolkits/prompt.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/toolkits/subgraph.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/toolkits/tools.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/toolkits/vectorstore.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/agent.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/application.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/artifact.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/datasource.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/echo.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/function.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/indexer_tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/llm.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/loop.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/loop_output.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/mcp_server_tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/pgvector_search.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/prompt.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/router.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/tools/vectorstore.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/utils/AlitaCallback.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/utils/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/utils/constants.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/utils/evaluate.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/utils/logging.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/utils/save_dataframe.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/utils/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/ado/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/ado/repos/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/ado/repos/repos_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/ado/test_plan/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/ado/test_plan/test_plan_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/ado/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/ado/wiki/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/ado/wiki/ado_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/ado/work_item/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/ado/work_item/ado_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/advanced_jira_mining/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/advanced_jira_mining/data_mining_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/azure_ai/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/azure_ai/search/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/azure_ai/search/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/base/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/base/tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/bitbucket/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/bitbucket/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/bitbucket/bitbucket_constants.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/bitbucket/cloud_api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/bitbucket/tools.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/browser/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/browser/crawler.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/browser/duck_duck_go_search.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/browser/google_search_rag.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/browser/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/browser/wiki.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/backend_reports_tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/backend_tests_tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/cancel_ui_test_tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/carrier_sdk.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/create_ui_excel_report_tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/create_ui_test_tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/excel_reporter.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/lighthouse_excel_reporter.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/run_ui_test_tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/tickets_tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/tools.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/ui_reports_tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/update_ui_test_schedule_tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/carrier/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/codeparser.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/constants.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter_c.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter_cpp.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter_cs.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter_go.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter_hs.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter_java.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter_js.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter_kt.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter_py.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter_rb.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter_registry.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter_rs.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/code/treesitter/treesitter_ts.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/models.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/sematic/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/sematic/base.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/sematic/markdown_chunker.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/sematic/proposal_chunker.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/sematic/statistical_chunker.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/chunkers/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/cloud/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/cloud/aws/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/cloud/aws/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/cloud/azure/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/cloud/azure/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/cloud/gcp/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/cloud/gcp/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/cloud/k8s/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/cloud/k8s/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/code/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/code/linter/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/code/linter/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/code/loaders/codesearcher.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/code/sonar/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/code/sonar/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/confluence/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/confluence/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/confluence/loader.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/confluence/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/custom_open_api/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/custom_open_api/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/elastic/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/elastic/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/elitea_base.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/figma/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/figma/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/github/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/github/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/github/github_client.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/github/graphql_client_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/github/schemas.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/github/tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/github/tool_prompts.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/gitlab/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/gitlab/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/gitlab/tools.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/gitlab/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/gitlab_org/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/gitlab_org/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/gmail/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/gmail/gmail_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/gmail/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/google_places/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/google_places/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/jira/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/jira/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/keycloak/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/keycloak/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/llm/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/llm/img_utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/llm/llm_utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/localgit/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/localgit/local_git.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/localgit/tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/memory/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/ocr/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/ocr/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/ocr/text_detection.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/openapi/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/dataframe/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/dataframe/errors.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/dataframe/executor/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/dataframe/executor/code_environment.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/dataframe/executor/code_executor.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/dataframe/generator/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/dataframe/generator/base.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/dataframe/generator/code_cleaning.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/dataframe/generator/code_validator.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/dataframe/prompts.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/dataframe/serializer.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/dataframe/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/statsmodels/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/statsmodels/base_stats.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/statsmodels/descriptive.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/statsmodels/hypothesis_testing.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pandas/statsmodels/regression.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/postman/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/postman/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/postman/postman_analysis.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pptx/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/pptx/pptx_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/qtest/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/qtest/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/qtest/tool.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/rally/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/rally/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/report_portal/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/report_portal/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/report_portal/report_portal_client.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/salesforce/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/salesforce/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/salesforce/model.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/servicenow/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/servicenow/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/servicenow/servicenow_client.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/sharepoint/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/sharepoint/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/sharepoint/authorization_helper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/sharepoint/utils.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/sql/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/sql/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/sql/models.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/testio/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/testio/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/testrail/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/testrail/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/utils/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/utils/content_parser.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/xray/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/xray/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/yagmail/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/yagmail/yagmail_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/zephyr/Zephyr.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/zephyr/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/zephyr/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/zephyr/rest_client.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/zephyr_enterprise/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/zephyr_enterprise/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/zephyr_enterprise/zephyr_enterprise.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/zephyr_scale/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/zephyr_scale/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/zephyr_squad/__init__.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/zephyr_squad/api_wrapper.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/tools/zephyr_squad/zephyr_squad_cloud_client.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk.egg-info/dependency_links.txt +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk.egg-info/top_level.txt +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/setup.cfg +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/tests/test_ado_analysis.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/tests/test_github_analysis.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/tests/test_gitlab_analysis.py +0 -0
- {alita_sdk-0.3.180 → alita_sdk-0.3.181}/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.
|
3
|
+
Version: 0.3.181
|
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
|
@@ -32,7 +32,7 @@ Requires-Dist: langchain-openai~=0.3.0; extra == "runtime"
|
|
32
32
|
Requires-Dist: langgraph-checkpoint-sqlite~=2.0.0; extra == "runtime"
|
33
33
|
Requires-Dist: langgraph-checkpoint-postgres~=2.0.1; extra == "runtime"
|
34
34
|
Requires-Dist: langsmith>=0.3.45; extra == "runtime"
|
35
|
-
Requires-Dist: langgraph
|
35
|
+
Requires-Dist: langgraph>=0.5; extra == "runtime"
|
36
36
|
Requires-Dist: langchain_chroma~=0.2.2; extra == "runtime"
|
37
37
|
Requires-Dist: langchain-unstructured~=0.1.6; extra == "runtime"
|
38
38
|
Requires-Dist: langchain-postgres~=0.0.13; extra == "runtime"
|
@@ -218,8 +218,6 @@ class AlitaClient:
|
|
218
218
|
return LangChainAssistant(self, data, client,
|
219
219
|
chat_history, app_type,
|
220
220
|
tools=tools, memory=memory, store=store).runnable()
|
221
|
-
elif runtime == 'llama':
|
222
|
-
raise NotImplementedError("LLama runtime is not supported")
|
223
221
|
|
224
222
|
def datasource(self, datasource_id: int) -> AlitaDataSource:
|
225
223
|
url = f"{self.datasources}/{datasource_id}"
|
@@ -0,0 +1,157 @@
|
|
1
|
+
import logging
|
2
|
+
from typing import Any, Optional, Callable
|
3
|
+
from langchain_core.messages import BaseMessage, AIMessage, HumanMessage
|
4
|
+
from langchain_core.tools import BaseTool
|
5
|
+
from langgraph.prebuilt import create_react_agent
|
6
|
+
from langgraph.checkpoint.memory import MemorySaver
|
7
|
+
|
8
|
+
logger = logging.getLogger(__name__)
|
9
|
+
|
10
|
+
def create_react_agent_with_auto_continue(
|
11
|
+
prompt: Any,
|
12
|
+
model: Any,
|
13
|
+
tools: list[BaseTool],
|
14
|
+
memory: Optional[Any] = None,
|
15
|
+
debug: bool = False
|
16
|
+
) -> Any:
|
17
|
+
"""
|
18
|
+
Create a LangGraph React agent with auto-continue capability for when responses get truncated.
|
19
|
+
This provides better handling of length-limited responses compared to traditional AgentExecutor.
|
20
|
+
Uses simple in-memory checkpointing for auto-continue functionality.
|
21
|
+
|
22
|
+
Args:
|
23
|
+
prompt: The prompt template to use for the agent
|
24
|
+
model: The language model to use
|
25
|
+
tools: List of tools available to the agent
|
26
|
+
memory: Optional memory store for checkpointing (will create MemorySaver if None)
|
27
|
+
debug: Whether to enable debug mode
|
28
|
+
|
29
|
+
Returns:
|
30
|
+
A configured React agent with auto-continue capability
|
31
|
+
|
32
|
+
Note: Requires LangGraph 0.5.x or higher that supports post_model_hook.
|
33
|
+
"""
|
34
|
+
# Use simple in-memory checkpointer for auto-continue functionality if not provided
|
35
|
+
if memory is None:
|
36
|
+
memory = MemorySaver()
|
37
|
+
|
38
|
+
# Set up parameters for the agent
|
39
|
+
kwargs = {
|
40
|
+
"prompt": prompt,
|
41
|
+
"model": model,
|
42
|
+
"tools": tools,
|
43
|
+
"checkpointer": memory,
|
44
|
+
"post_model_hook": _create_auto_continue_hook() # Auto-continue hook
|
45
|
+
}
|
46
|
+
|
47
|
+
# Create the base React agent with langgraph's prebuilt function
|
48
|
+
base_agent = create_react_agent(**kwargs)
|
49
|
+
|
50
|
+
return base_agent
|
51
|
+
|
52
|
+
def _create_auto_continue_hook() -> Callable:
|
53
|
+
"""
|
54
|
+
Create a post-model hook for LangGraph 0.5.x that detects truncated responses
|
55
|
+
and adds continuation prompts.
|
56
|
+
This checks if the last AI message was truncated and automatically continues if needed.
|
57
|
+
"""
|
58
|
+
MAX_CONTINUATIONS = 3 # Maximum number of auto-continuations allowed
|
59
|
+
|
60
|
+
def post_model_hook(state):
|
61
|
+
messages = state.get("messages", [])
|
62
|
+
|
63
|
+
# Count how many auto-continue messages we've already sent
|
64
|
+
continuation_count = sum(
|
65
|
+
1 for msg in messages
|
66
|
+
if isinstance(msg, HumanMessage) and
|
67
|
+
"continue your previous response" in msg.content.lower()
|
68
|
+
)
|
69
|
+
|
70
|
+
# Don't continue if we've reached the limit
|
71
|
+
if continuation_count >= MAX_CONTINUATIONS:
|
72
|
+
return state
|
73
|
+
|
74
|
+
# Check if the last message is from AI and was truncated
|
75
|
+
if messages and isinstance(messages[-1], AIMessage):
|
76
|
+
last_ai_message = messages[-1]
|
77
|
+
|
78
|
+
# Check for truncation indicators
|
79
|
+
is_truncated = (
|
80
|
+
hasattr(last_ai_message, 'response_metadata') and
|
81
|
+
last_ai_message.response_metadata.get('finish_reason') == 'length'
|
82
|
+
) or (
|
83
|
+
# Fallback: check if message seems to end abruptly
|
84
|
+
last_ai_message.content and
|
85
|
+
not last_ai_message.content.rstrip().endswith(('.', '!', '?', ':', ';'))
|
86
|
+
)
|
87
|
+
|
88
|
+
# Add continuation request if truncated
|
89
|
+
if is_truncated:
|
90
|
+
logger.info("Detected truncated response, adding continuation request")
|
91
|
+
new_messages = messages.copy()
|
92
|
+
new_messages.append(HumanMessage(content="Continue your previous response from where you left off"))
|
93
|
+
return {"messages": new_messages}
|
94
|
+
|
95
|
+
return state
|
96
|
+
|
97
|
+
return post_model_hook
|
98
|
+
|
99
|
+
def get_langgraph_agent_with_auto_continue(
|
100
|
+
prompt: Any,
|
101
|
+
model: Any,
|
102
|
+
tools: list[BaseTool],
|
103
|
+
memory: Optional[Any] = None,
|
104
|
+
debug: bool = False
|
105
|
+
) -> Any:
|
106
|
+
"""
|
107
|
+
Create a LangGraph agent with auto-continue capability for when responses get truncated.
|
108
|
+
This provides better handling of length-limited responses compared to traditional AgentExecutor.
|
109
|
+
Uses simple in-memory checkpointing for auto-continue functionality.
|
110
|
+
|
111
|
+
Args:
|
112
|
+
prompt: The prompt template to use for the agent
|
113
|
+
model: The language model to use
|
114
|
+
tools: List of tools available to the agent
|
115
|
+
memory: Optional memory store for checkpointing (will create MemorySaver if None)
|
116
|
+
debug: Whether to enable debug mode
|
117
|
+
|
118
|
+
Returns:
|
119
|
+
A configured LangGraphAgentRunnable with auto-continue capability
|
120
|
+
|
121
|
+
Note: Requires LangGraph 0.5.x or higher that supports post_model_hook.
|
122
|
+
"""
|
123
|
+
from ...langchain.langraph_agent import LangGraphAgentRunnable
|
124
|
+
|
125
|
+
# Use simple in-memory checkpointer for auto-continue functionality if not provided
|
126
|
+
if memory is None:
|
127
|
+
memory = MemorySaver()
|
128
|
+
|
129
|
+
# Create the base React agent with auto-continue capability
|
130
|
+
base_agent = create_react_agent_with_auto_continue(
|
131
|
+
prompt=prompt,
|
132
|
+
model=model,
|
133
|
+
tools=tools,
|
134
|
+
memory=memory,
|
135
|
+
debug=debug
|
136
|
+
)
|
137
|
+
|
138
|
+
# Wrap the base agent in our custom LangGraphAgentRunnable to handle input properly
|
139
|
+
# This ensures that our invoke() input handling logic is applied
|
140
|
+
agent = LangGraphAgentRunnable(
|
141
|
+
builder=base_agent.builder,
|
142
|
+
config_type=base_agent.builder.config_schema,
|
143
|
+
nodes=base_agent.nodes,
|
144
|
+
channels=base_agent.channels,
|
145
|
+
input_channels=base_agent.input_channels,
|
146
|
+
stream_mode=base_agent.stream_mode,
|
147
|
+
output_channels=base_agent.output_channels,
|
148
|
+
stream_channels=base_agent.stream_channels,
|
149
|
+
checkpointer=memory,
|
150
|
+
interrupt_before_nodes=base_agent.interrupt_before_nodes,
|
151
|
+
interrupt_after_nodes=base_agent.interrupt_after_nodes,
|
152
|
+
debug=debug,
|
153
|
+
store=base_agent.store,
|
154
|
+
schema_to_mapper=base_agent.schema_to_mapper
|
155
|
+
)
|
156
|
+
|
157
|
+
return agent
|
@@ -12,6 +12,7 @@ from langgraph.store.base import BaseStore
|
|
12
12
|
# For checkpointing in traditional agents, you need to migrate to LangGraph.
|
13
13
|
|
14
14
|
from .agents.xml_chat import create_xml_chat_agent
|
15
|
+
from .agents.react_agent import get_langgraph_agent_with_auto_continue
|
15
16
|
from .langraph_agent import create_graph
|
16
17
|
from langchain_core.messages import (
|
17
18
|
BaseMessage, SystemMessage, HumanMessage, AIMessage
|
@@ -75,13 +76,31 @@ class Assistant:
|
|
75
76
|
self.tools = get_tools(data['tools'], alita_client=alita, llm=self.client, memory_store=self.store)
|
76
77
|
if app_type == "pipeline":
|
77
78
|
self.prompt = data['instructions']
|
79
|
+
elif app_type == "react":
|
80
|
+
self.tools += tools
|
81
|
+
messages = [SystemMessage(content=data['instructions'])]
|
82
|
+
# messages.append(HumanMessage("{{input}}"))
|
83
|
+
self.prompt = Jinja2TemplatedChatMessagesTemplate(messages=messages)
|
84
|
+
variables = {}
|
85
|
+
input_variables = []
|
86
|
+
for variable in data['variables']:
|
87
|
+
if variable['value'] != "":
|
88
|
+
variables[variable['name']] = variable['value']
|
89
|
+
else:
|
90
|
+
input_variables.append(variable['name'])
|
91
|
+
if input_variables:
|
92
|
+
self.prompt.input_variables = input_variables
|
93
|
+
if variables:
|
94
|
+
self.prompt.partial_variables = variables
|
95
|
+
try:
|
96
|
+
logger.info(f"Client was created with client setting: temperature - {self.client._get_model_default_parameters}")
|
97
|
+
except Exception as e:
|
98
|
+
logger.info(f"Client was created with client setting: temperature - {self.client.temperature} : {self.client.max_tokens}")
|
78
99
|
else:
|
79
100
|
self.tools += tools
|
80
101
|
messages = [SystemMessage(content=data['instructions'])]
|
81
102
|
messages.append(MessagesPlaceholder("chat_history"))
|
82
|
-
if app_type == "
|
83
|
-
messages.append(HumanMessage(REACT_ADDON))
|
84
|
-
elif app_type == "xml":
|
103
|
+
if app_type == "xml":
|
85
104
|
messages.append(HumanMessage(XML_ADDON))
|
86
105
|
elif app_type in ['openai', 'dial']:
|
87
106
|
messages.append(HumanMessage("{{input}}"))
|
@@ -93,7 +112,7 @@ class Assistant:
|
|
93
112
|
variables[variable['name']] = variable['value']
|
94
113
|
else:
|
95
114
|
input_variables.append(variable['name'])
|
96
|
-
if app_type in ["
|
115
|
+
if app_type in ["xml"]:
|
97
116
|
input_variables = list(set(input_variables + REACT_VARS))
|
98
117
|
|
99
118
|
if chat_history and isinstance(chat_history, list):
|
@@ -189,75 +208,13 @@ class Assistant:
|
|
189
208
|
|
190
209
|
Note: Requires LangGraph 0.5.x or higher that supports post_model_hook.
|
191
210
|
"""
|
192
|
-
|
193
|
-
from langgraph.prebuilt import create_react_agent
|
194
|
-
from langgraph.checkpoint.memory import MemorySaver
|
195
|
-
|
196
|
-
# Use simple in-memory checkpointer for auto-continue functionality
|
197
|
-
memory = MemorySaver()
|
198
|
-
|
199
|
-
# Filter tools to only include BaseTool instances
|
200
|
-
simple_tools = [t for t in self.tools if isinstance(t, BaseTool)]
|
201
|
-
|
202
|
-
# Set up parameters for the agent
|
203
|
-
kwargs = {
|
204
|
-
"prompt": self.prompt,
|
205
|
-
"model": self.client,
|
206
|
-
"tools": simple_tools,
|
207
|
-
"checkpointer": memory,
|
208
|
-
"post_model_hook": self._create_auto_continue_hook() # Auto-continue hook
|
209
|
-
}
|
210
211
|
|
211
|
-
#
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
Create a post-model hook for LangGraph 0.5.x that detects truncated responses
|
221
|
-
and adds continuation prompts.
|
222
|
-
This checks if the last AI message was truncated and automatically continues if needed.
|
223
|
-
"""
|
224
|
-
MAX_CONTINUATIONS = 3 # Maximum number of auto-continuations allowed
|
225
|
-
|
226
|
-
def post_model_hook(state):
|
227
|
-
messages = state.get("messages", [])
|
228
|
-
|
229
|
-
# Count how many auto-continue messages we've already sent
|
230
|
-
continuation_count = sum(
|
231
|
-
1 for msg in messages
|
232
|
-
if isinstance(msg, HumanMessage) and
|
233
|
-
"continue your previous response" in msg.content.lower()
|
234
|
-
)
|
235
|
-
|
236
|
-
# Don't continue if we've reached the limit
|
237
|
-
if continuation_count >= MAX_CONTINUATIONS:
|
238
|
-
return state
|
239
|
-
|
240
|
-
# Check if the last message is from AI and was truncated
|
241
|
-
if messages and isinstance(messages[-1], AIMessage):
|
242
|
-
last_ai_message = messages[-1]
|
243
|
-
|
244
|
-
# Check for truncation indicators
|
245
|
-
is_truncated = (
|
246
|
-
hasattr(last_ai_message, 'response_metadata') and
|
247
|
-
last_ai_message.response_metadata.get('finish_reason') == 'length'
|
248
|
-
) or (
|
249
|
-
# Fallback: check if message seems to end abruptly
|
250
|
-
last_ai_message.content and
|
251
|
-
not last_ai_message.content.rstrip().endswith(('.', '!', '?', ':', ';'))
|
252
|
-
)
|
253
|
-
|
254
|
-
# Add continuation request if truncated
|
255
|
-
if is_truncated:
|
256
|
-
logger.info("Detected truncated response, adding continuation request")
|
257
|
-
new_messages = messages.copy()
|
258
|
-
new_messages.append(HumanMessage(content="Continue your previous response from where you left off"))
|
259
|
-
return {"messages": new_messages}
|
260
|
-
|
261
|
-
return state
|
262
|
-
|
263
|
-
return post_model_hook
|
212
|
+
# Use the function from react_agent.py to create the agent
|
213
|
+
return get_langgraph_agent_with_auto_continue(
|
214
|
+
prompt=self.prompt,
|
215
|
+
model=self.client,
|
216
|
+
tools=self.tools,
|
217
|
+
memory=self.memory,
|
218
|
+
debug=True
|
219
|
+
)
|
220
|
+
|
@@ -12,7 +12,7 @@ from langchain_core.runnables import RunnableConfig
|
|
12
12
|
from langchain_core.tools import BaseTool
|
13
13
|
from langgraph.channels.ephemeral_value import EphemeralValue
|
14
14
|
from langgraph.graph import StateGraph
|
15
|
-
from langgraph.graph
|
15
|
+
from langgraph.graph import END, START
|
16
16
|
from langgraph.graph.state import CompiledStateGraph
|
17
17
|
from langgraph.managed.base import is_managed_value
|
18
18
|
from langgraph.prebuilt import InjectedStore
|
@@ -12,31 +12,24 @@
|
|
12
12
|
# See the License for the specific language governing permissions and
|
13
13
|
# limitations under the License.
|
14
14
|
|
15
|
-
|
16
|
-
#
|
17
|
-
# This is adoption of https://github.com/langchain-ai/langchain/blob/master/libs/community/langchain_community/chat_models/openai.py
|
18
|
-
#
|
19
|
-
|
20
15
|
import logging
|
21
16
|
import requests
|
22
17
|
from time import sleep
|
23
18
|
from traceback import format_exc
|
24
19
|
|
25
|
-
from typing import Any, List, Optional, AsyncIterator, Dict, Iterator
|
20
|
+
from typing import Any, List, Optional, AsyncIterator, Dict, Iterator
|
26
21
|
from tiktoken import get_encoding, encoding_for_model
|
27
22
|
from langchain_core.callbacks import (
|
28
23
|
AsyncCallbackManagerForLLMRun,
|
29
24
|
CallbackManagerForLLMRun,
|
30
25
|
)
|
31
|
-
from langchain_core.language_models import BaseChatModel
|
32
|
-
from langchain_core.messages import
|
33
|
-
FunctionMessageChunk, SystemMessageChunk, ToolMessageChunk, BaseMessageChunk,
|
34
|
-
AIMessage)
|
26
|
+
from langchain_core.language_models import BaseChatModel
|
27
|
+
from langchain_core.messages import AIMessageChunk, BaseMessage
|
35
28
|
from langchain_core.outputs import ChatGeneration, ChatGenerationChunk, ChatResult
|
36
29
|
from langchain_core.runnables import run_in_executor
|
37
30
|
from langchain_community.chat_models.openai import generate_from_stream, _convert_delta_to_message_chunk
|
38
31
|
from ..clients import AlitaClient
|
39
|
-
from pydantic import Field, model_validator
|
32
|
+
from pydantic import Field, model_validator
|
40
33
|
|
41
34
|
logger = logging.getLogger(__name__)
|
42
35
|
|
@@ -1038,9 +1038,14 @@ def run_streamlit(st, ai_icon=None, user_icon=None):
|
|
1038
1038
|
{"input": prompt, "chat_history": st.session_state.messages[:-1]},
|
1039
1039
|
{ 'callbacks': [st_cb], 'configurable': {"thread_id": st.session_state.thread_id}}
|
1040
1040
|
)
|
1041
|
-
|
1041
|
+
try:
|
1042
|
+
output =response["output"]
|
1043
|
+
except KeyError:
|
1044
|
+
logger.info(response)
|
1045
|
+
output = response['messages'][0].content
|
1046
|
+
st.write(output)
|
1042
1047
|
st.session_state.thread_id = response.get("thread_id", None)
|
1043
|
-
st.session_state.messages.append({"role": "assistant", "content":
|
1048
|
+
st.session_state.messages.append({"role": "assistant", "content": output})
|
1044
1049
|
|
1045
1050
|
elif st.session_state.llm and st.session_state.show_toolkit_testing and st.session_state.configured_toolkit:
|
1046
1051
|
# Toolkit Testing Main View
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: alita_sdk
|
3
|
-
Version: 0.3.
|
3
|
+
Version: 0.3.181
|
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
|
@@ -32,7 +32,7 @@ Requires-Dist: langchain-openai~=0.3.0; extra == "runtime"
|
|
32
32
|
Requires-Dist: langgraph-checkpoint-sqlite~=2.0.0; extra == "runtime"
|
33
33
|
Requires-Dist: langgraph-checkpoint-postgres~=2.0.1; extra == "runtime"
|
34
34
|
Requires-Dist: langsmith>=0.3.45; extra == "runtime"
|
35
|
-
Requires-Dist: langgraph
|
35
|
+
Requires-Dist: langgraph>=0.5; extra == "runtime"
|
36
36
|
Requires-Dist: langchain_chroma~=0.2.2; extra == "runtime"
|
37
37
|
Requires-Dist: langchain-unstructured~=0.1.6; extra == "runtime"
|
38
38
|
Requires-Dist: langchain-postgres~=0.0.13; extra == "runtime"
|
@@ -35,6 +35,7 @@ alita_sdk/runtime/langchain/mixedAgentRenderes.py
|
|
35
35
|
alita_sdk/runtime/langchain/store_manager.py
|
36
36
|
alita_sdk/runtime/langchain/utils.py
|
37
37
|
alita_sdk/runtime/langchain/agents/__init__.py
|
38
|
+
alita_sdk/runtime/langchain/agents/react_agent.py
|
38
39
|
alita_sdk/runtime/langchain/agents/xml_chat.py
|
39
40
|
alita_sdk/runtime/langchain/document_loaders/AlitaBDDScenariosLoader.py
|
40
41
|
alita_sdk/runtime/langchain/document_loaders/AlitaCSVLoader.py
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
4
4
|
|
5
5
|
[project]
|
6
6
|
name = "alita_sdk"
|
7
|
-
version = "0.3.
|
7
|
+
version = "0.3.181"
|
8
8
|
description = "SDK for building langchain agents using resources from Alita"
|
9
9
|
readme = "README.md"
|
10
10
|
requires-python = ">=3.10"
|
@@ -32,7 +32,7 @@ name = "Artem Dubrovskiy"
|
|
32
32
|
email = "ad13box@gmail.com"
|
33
33
|
|
34
34
|
[project.optional-dependencies]
|
35
|
-
runtime = [ "langchain_core==0.3.49", "langchain<=0.3.22", "langchain_community~=0.3.7", "langchain-openai~=0.3.0", "langgraph-checkpoint-sqlite~=2.0.0", "langgraph-checkpoint-postgres~=2.0.1", "langsmith>=0.3.45", "langgraph>=0.
|
35
|
+
runtime = [ "langchain_core==0.3.49", "langchain<=0.3.22", "langchain_community~=0.3.7", "langchain-openai~=0.3.0", "langgraph-checkpoint-sqlite~=2.0.0", "langgraph-checkpoint-postgres~=2.0.1", "langsmith>=0.3.45", "langgraph>=0.5", "langchain_chroma~=0.2.2", "langchain-unstructured~=0.1.6", "langchain-postgres~=0.0.13", "keybert==0.8.3", "charset_normalizer==3.3.2", "unstructured[local-inference]==0.16.23", "unstructured_pytesseract==0.3.13", "unstructured_inference==0.8.7", "python-pptx==1.0.2", "pdf2image==1.16.3", "pikepdf==8.7.1", "pypdf==4.3.1", "pdfminer.six==20240706", "opencv-python==4.11.0.86", "python-docx==1.1.2", "openpyxl==3.1.2", "markdown==3.5.1", "beautifulsoup4==4.12.2", "gensim==4.3.3", "chromadb==0.5.20", "pgvector==0.2.5", "scipy==1.13.1", "pytesseract==0.3.13", "reportlab==4.2.5", "svglib==1.5.1", "rlpycairo==0.3.0", "cairocffi==1.7.1", "docx2txt==0.8", "mammoth==1.9.0", "opentelemetry-exporter-otlp-proto-grpc==1.25.0", "opentelemetry_api==1.25.0", "opentelemetry_instrumentation==0.46b0", "grpcio_status==1.63.0rc1", "protobuf==4.25.7", "sentence-transformers==2.7.0",]
|
36
36
|
tools = [ "dulwich==0.21.6", "paramiko==3.3.1", "pygithub==2.3.0", "python-gitlab==4.5.0", "gitpython==3.1.43", "atlassian-python-api~=3.41", "atlassian_python_api==3.41.16", "jira==3.8.0", "qtest-swagger-client==0.0.3", "testrail-api==1.13.2", "azure-devops==7.1.0b4", "msrest==0.7.1", "python-graphql-client~=0.4.3", "zephyr-python-api==0.1.0", "pyral==1.6.0", "boto3>=1.37.23", "azure-core==1.30.2", "azure-identity==1.16.0", "azure-keyvault-keys==4.9.0", "azure-keyvault-secrets==4.8.0", "azure-mgmt-core==1.4.0", "azure-mgmt-resource==23.0.1", "azure-mgmt-storage==21.1.0", "azure-storage-blob==12.23.1", "azure-search-documents==11.5.2", "PyMySQL==1.1.1", "psycopg2-binary==2.9.10", "Office365-REST-Python-Client==2.5.14", "python-docx==1.1.2", "python-pptx==1.0.2", "pypdf2~=3.0.1", "FigmaPy==2018.1.0", "pandas==2.2.3", "factor_analyzer==0.5.1", "statsmodels==0.14.4", "tabulate==0.9.0", "tree_sitter==0.20.2", "tree-sitter-languages==1.10.2", "astor~=0.8.1", "markdownify~=1.1.0", "requests_openapi==1.0.5", "duckduckgo_search==5.3.0", "playwright>=1.52.0", "google-api-python-client==2.154.0", "wikipedia==1.4.0", "lxml==5.2.2", "beautifulsoup4", "pymupdf==1.24.9", "googlemaps==4.10.0", "yagmail==0.15.293", "pysnc==1.1.10", "shortuuid==1.0.13", "yarl==1.17.1", "langmem==0.0.27", "textract-py3==2.1.1",]
|
37
37
|
community = [ "retry-extended==0.2.3", "pyobjtojson==0.3", "elitea-analyse==0.1.2",]
|
38
38
|
all = [ "alita-sdk[runtime]", "alita-sdk[tools]", "alita-sdk[community]",]
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/ado_analyse/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/ado_analyse/api_wrapper.py
RENAMED
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/github_analyse/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/github_analyse/api_wrapper.py
RENAMED
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/gitlab_analyse/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/gitlab_analyse/api_wrapper.py
RENAMED
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/jira_analyse/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/community/analysis/jira_analyse/api_wrapper.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/chat_message_template.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/constants.py
RENAMED
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/document_loaders/utils.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/interfaces/kwextractor.py
RENAMED
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/interfaces/llm_processor.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/retrievers/AlitaRetriever.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/bdd_parser/__init__.py
RENAMED
File without changes
|
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_parser.py
RENAMED
File without changes
|
File without changes
|
{alita_sdk-0.3.180 → alita_sdk-0.3.181}/alita_sdk/runtime/langchain/tools/bdd_parser/parser.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|