uipath-langchain 0.0.127__tar.gz → 0.0.129__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.
Potentially problematic release.
This version of uipath-langchain might be problematic. Click here for more details.
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/PKG-INFO +2 -2
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/pyproject.toml +2 -2
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/_runtime/_runtime.py +0 -13
- uipath_langchain-0.0.129/src/uipath_langchain/_cli/cli_eval.py +68 -0
- uipath_langchain-0.0.129/src/uipath_langchain/_cli/cli_run.py +63 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/middlewares.py +2 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/uv.lock +5 -5
- uipath_langchain-0.0.127/src/uipath_langchain/_cli/cli_run.py +0 -93
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.cursorrules +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.editorconfig +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.gitattributes +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/cd.yml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/ci.yml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/commitlint.yml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/integration_tests.yml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/lint-custom-version.yml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/lint.yml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/publish-dev.yml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/publish-docs.yml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/publish-prior-stable-version.yml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/slack.yml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/test-custom-version.yml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/test.yml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.gitignore +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.pre-commit-config.yaml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.python-version +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.vscode/extensions.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.vscode/settings.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/CONTRIBUTING.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/LICENSE +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/chat_models.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/context_grounding.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/human_in_the_loop.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/quick_start.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/quick_start_images/cloud_env_var_dark.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/quick_start_images/cloud_env_var_light.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/quick_start_images/invoke_output_dark.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/quick_start_images/invoke_output_light.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/click-storage-bucket.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/create-index-1.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/create-index-2.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/create-process.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/create-quiz-generator.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/create-storage-bucket-1.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/create-storage-bucket-2.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/folder-path.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/job-info.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/output.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/process-page.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/researcher-1.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/researcher-2.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/run-process-1.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/run-process-2.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/storage-bucket-content.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/multi-agent-distributed/coder-agent-package-overview.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/multi-agent-distributed/coder-agent-process-configuration.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/multi-agent-distributed/planner-agent-package-overview.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/multi-agent-distributed/planner-agent-process-configuration.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/multi-agent-distributed/researcher-agent-package-overview.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/multi-agent-distributed/researcher-agent-process-configuration.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/ticket-classification/activate-apps.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/ticket-classification/activate-deployment.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/ticket-classification/copy-folder-path.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/ticket-classification/deploy-solution-package-wizard.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/ticket-classification/deploy-solution-package.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/ticket-classification/monitor-agent.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/ticket-classification/navigate-to-solution-folder.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/ticket-classification/resume-condition.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/ticket-classification/run-agent.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/ticket-classification/solution-destination-folder.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/ticket-classification/start-job.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/ticket-classification/upload-solution-package.png +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/env.example +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/input.example/quiz-generator-debug-input.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/input.example/researcher-debug-input.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/quiz-generator-RAG-agent.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/researcher-RAG-agent.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/src/agents/quiz-generator-RAG-agent.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/src/agents/researcher-RAG-agent.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/chat-agent/.env.example +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/chat-agent/agent.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/chat-agent/graph.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/chat-agent/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/chat-agent/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/chat-agent/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/chat-agent/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/.env.example +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/agent.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/graph.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/.env.template +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/.python-version +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/.vscode/launch.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/agent.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/input.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/src/email_organizer/__init__.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/src/email_organizer/main.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/src/email_organizer/outlook_client.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/hitl-inbox-server/database.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/hitl-inbox-server/main.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/hitl-inbox-server/models.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/hitl-inbox-server/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/hitl-inbox-server/schemas.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/hitl-inbox-server/templates/index.html +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/hitl-inbox-server/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-planner-researcher-coder-distributed/.env.example +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-planner-researcher-coder-distributed/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-planner-researcher-coder-distributed/coder.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-planner-researcher-coder-distributed/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-planner-researcher-coder-distributed/planner.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-planner-researcher-coder-distributed/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-planner-researcher-coder-distributed/researcher.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-planner-researcher-coder-distributed/src/multi-agent-distributed/coder.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-planner-researcher-coder-distributed/src/multi-agent-distributed/planner.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-planner-researcher-coder-distributed/src/multi-agent-distributed/researcher.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-planner-researcher-coder-distributed/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-planner-researcher-coder-distributed/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-supervisor-researcher-coder/.env.example +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-supervisor-researcher-coder/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-supervisor-researcher-coder/agent.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-supervisor-researcher-coder/graph.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-supervisor-researcher-coder/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-supervisor-researcher-coder/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-supervisor-researcher-coder/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/multi-agent-supervisor-researcher-coder/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/retrieval-chain/.env.example +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/retrieval-chain/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/retrieval-chain/main.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/retrieval-chain/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/retrieval-chain/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/retrieval-chain/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-local-mcp/.env.example +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-local-mcp/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-local-mcp/agent.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-local-mcp/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-local-mcp/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-local-mcp/src/simple-local-mcp/graph.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-local-mcp/src/simple-local-mcp/math_server.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-local-mcp/src/simple-local-mcp/weather_server.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-local-mcp/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-local-mcp/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-remote-mcp/.env.example +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-remote-mcp/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-remote-mcp/agent.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-remote-mcp/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-remote-mcp/main.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-remote-mcp/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-remote-mcp/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/simple-remote-mcp/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/ticket-classification/.env.example +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/ticket-classification/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/ticket-classification/agent.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/ticket-classification/escalation_app_solution/generic-escalation-app-solution-1.0.0.zip +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/ticket-classification/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/ticket-classification/main.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/ticket-classification/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/ticket-classification/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/ticket-classification/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/__init__.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/__init__.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/_runtime/_context.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/_runtime/_conversation.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/_runtime/_exception.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/_runtime/_input.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/_runtime/_output.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/_templates/langgraph.json.template +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/_templates/main.py.template +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/_utils/_graph.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/cli_dev.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/cli_init.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/cli_new.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_utils/__init__.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_utils/_request_mixin.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_utils/_settings.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_utils/_sleep_policy.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/builder/agent_config.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/chat/__init__.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/chat/models.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/embeddings/__init__.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/embeddings/embeddings.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/retrievers/__init__.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/retrievers/context_grounding_retriever.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/tracers/AsyncUiPathTracer.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/tracers/__init__.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/tracers/_events.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/tracers/_instrument_traceable.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/tracers/_utils.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/vectorstores/__init__.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/vectorstores/context_grounding_vectorstore.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/Dockerfile +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/company-research-agent/.env.example +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/company-research-agent/agent.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/company-research-agent/input.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/company-research-agent/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/company-research-agent/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/company-research-agent/run.sh +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/company-research-agent/src/assert.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/company-research-agent/src/graph.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/company-research-agent/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/company-research-agent/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/multi-agent-supervisor-researcher-coder/.env.example +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/multi-agent-supervisor-researcher-coder/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/multi-agent-supervisor-researcher-coder/agent.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/multi-agent-supervisor-researcher-coder/input.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/multi-agent-supervisor-researcher-coder/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/multi-agent-supervisor-researcher-coder/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/multi-agent-supervisor-researcher-coder/run.sh +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/multi-agent-supervisor-researcher-coder/src/assert.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/multi-agent-supervisor-researcher-coder/src/graph.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/multi-agent-supervisor-researcher-coder/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/multi-agent-supervisor-researcher-coder/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/simple-local-mcp/.env.example +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/simple-local-mcp/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/simple-local-mcp/agent.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/simple-local-mcp/input.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/simple-local-mcp/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/simple-local-mcp/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/simple-local-mcp/run.sh +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/simple-local-mcp/src/assert.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/simple-local-mcp/src/simple-local-mcp/graph.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/simple-local-mcp/src/simple-local-mcp/math_server.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/simple-local-mcp/src/simple-local-mcp/weather_server.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/simple-local-mcp/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/simple-local-mcp/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/ticket-classification/.env.example +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/ticket-classification/README.md +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/ticket-classification/agent.mermaid +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/ticket-classification/input.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/ticket-classification/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/ticket-classification/pyproject.toml +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/ticket-classification/run.sh +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/ticket-classification/src/assert.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/ticket-classification/src/main.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/ticket-classification/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/testcases/ticket-classification/uv.lock +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/__init__.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/builder/test_config.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/cli/conftest.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/cli/mocks/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/cli/mocks/simple_agent.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/cli/mocks/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/cli/test_run.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/hitl/__init__.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/hitl/conftest.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/hitl/mocks/action_trigger_hitl.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/hitl/mocks/api_trigger_hitl.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/hitl/mocks/job_trigger_hitl.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/hitl/mocks/langgraph.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/hitl/mocks/uipath-default-escalation.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/hitl/mocks/uipath.json +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/hitl/test_action_trigger.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/hitl/test_hitl_api_trigger.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/hitl/test_hitl_default_escalation.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/hitl/test_hitl_job_trigger.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/test_dummy.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/tracers/__init__.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/tracers/test_async_uipath_tracer.py +0 -0
- {uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/tests/tracers/test_instrument_traceable.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: uipath-langchain
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.129
|
|
4
4
|
Summary: UiPath Langchain
|
|
5
5
|
Project-URL: Homepage, https://uipath.com
|
|
6
6
|
Project-URL: Repository, https://github.com/UiPath/uipath-langchain-python
|
|
@@ -25,7 +25,7 @@ Requires-Dist: openai>=1.65.5
|
|
|
25
25
|
Requires-Dist: openinference-instrumentation-langchain>=0.1.50
|
|
26
26
|
Requires-Dist: pydantic-settings>=2.6.0
|
|
27
27
|
Requires-Dist: python-dotenv>=1.0.1
|
|
28
|
-
Requires-Dist: uipath<2.2.0,>=2.1.
|
|
28
|
+
Requires-Dist: uipath<2.2.0,>=2.1.46
|
|
29
29
|
Provides-Extra: langchain
|
|
30
30
|
Description-Content-Type: text/markdown
|
|
31
31
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "uipath-langchain"
|
|
3
|
-
version = "0.0.
|
|
3
|
+
version = "0.0.129"
|
|
4
4
|
description = "UiPath Langchain"
|
|
5
5
|
readme = { file = "README.md", content-type = "text/markdown" }
|
|
6
6
|
requires-python = ">=3.10"
|
|
7
7
|
dependencies = [
|
|
8
|
-
"uipath>=2.1.
|
|
8
|
+
"uipath>=2.1.46, <2.2.0",
|
|
9
9
|
"langgraph>=0.5.0, <0.7.0",
|
|
10
10
|
"langchain-core>=0.3.34",
|
|
11
11
|
"langgraph-checkpoint-sqlite>=2.0.3",
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/src/uipath_langchain/_cli/_runtime/_runtime.py
RENAMED
|
@@ -50,8 +50,6 @@ class LangGraphRuntime(UiPathBaseRuntime):
|
|
|
50
50
|
"""
|
|
51
51
|
_instrument_traceable_attributes()
|
|
52
52
|
|
|
53
|
-
await self.validate()
|
|
54
|
-
|
|
55
53
|
if self.context.state_graph is None:
|
|
56
54
|
return None
|
|
57
55
|
|
|
@@ -196,17 +194,6 @@ class LangGraphRuntime(UiPathBaseRuntime):
|
|
|
196
194
|
async def validate(self) -> None:
|
|
197
195
|
"""Validate runtime inputs."""
|
|
198
196
|
"""Load and validate the graph configuration ."""
|
|
199
|
-
try:
|
|
200
|
-
if self.context.input:
|
|
201
|
-
self.context.input_json = json.loads(self.context.input)
|
|
202
|
-
except json.JSONDecodeError as e:
|
|
203
|
-
raise LangGraphRuntimeError(
|
|
204
|
-
"INPUT_INVALID_JSON",
|
|
205
|
-
"Invalid JSON input",
|
|
206
|
-
"The input data is not valid JSON.",
|
|
207
|
-
UiPathErrorCategory.USER,
|
|
208
|
-
) from e
|
|
209
|
-
|
|
210
197
|
if self.context.langgraph_config is None:
|
|
211
198
|
self.context.langgraph_config = LangGraphConfig()
|
|
212
199
|
if not self.context.langgraph_config.exists:
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import asyncio
|
|
2
|
+
from os import environ as env
|
|
3
|
+
from typing import List, Optional
|
|
4
|
+
|
|
5
|
+
from uipath._cli._evals._runtime import UiPathEvalContext, UiPathEvalRuntime
|
|
6
|
+
from uipath._cli._runtime._contracts import (
|
|
7
|
+
UiPathRuntimeFactory,
|
|
8
|
+
)
|
|
9
|
+
from uipath._cli._utils._eval_set import EvalHelpers
|
|
10
|
+
from uipath._cli.middlewares import MiddlewareResult
|
|
11
|
+
from uipath.eval._helpers import auto_discover_entrypoint
|
|
12
|
+
|
|
13
|
+
from uipath_langchain._cli._runtime._context import LangGraphRuntimeContext
|
|
14
|
+
from uipath_langchain._cli._runtime._runtime import LangGraphRuntime
|
|
15
|
+
from uipath_langchain._cli._utils._graph import LangGraphConfig
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def langgraph_eval_middleware(
|
|
19
|
+
entrypoint: Optional[str], eval_set: Optional[str], eval_ids: List[str], **kwargs
|
|
20
|
+
) -> MiddlewareResult:
|
|
21
|
+
# Add default env variables
|
|
22
|
+
env["UIPATH_REQUESTING_PRODUCT"] = "uipath-python-sdk"
|
|
23
|
+
env["UIPATH_REQUESTING_FEATURE"] = "langgraph-agent"
|
|
24
|
+
|
|
25
|
+
config = LangGraphConfig()
|
|
26
|
+
if not config.exists:
|
|
27
|
+
return MiddlewareResult(
|
|
28
|
+
should_continue=True
|
|
29
|
+
) # Continue with normal flow if no langgraph.json
|
|
30
|
+
|
|
31
|
+
eval_context = UiPathEvalContext.with_defaults(**kwargs)
|
|
32
|
+
eval_context.eval_set = eval_set or EvalHelpers.auto_discover_eval_set()
|
|
33
|
+
eval_context.eval_ids = eval_ids
|
|
34
|
+
|
|
35
|
+
try:
|
|
36
|
+
runtime_entrypoint = entrypoint or auto_discover_entrypoint()
|
|
37
|
+
|
|
38
|
+
def generate_runtime_context(
|
|
39
|
+
context_entrypoint: str, langgraph_config: LangGraphConfig, **context_kwargs
|
|
40
|
+
) -> LangGraphRuntimeContext:
|
|
41
|
+
context = LangGraphRuntimeContext.with_defaults(**context_kwargs)
|
|
42
|
+
context.langgraph_config = langgraph_config
|
|
43
|
+
context.entrypoint = context_entrypoint
|
|
44
|
+
return context
|
|
45
|
+
|
|
46
|
+
runtime_factory = UiPathRuntimeFactory(
|
|
47
|
+
LangGraphRuntime,
|
|
48
|
+
LangGraphRuntimeContext,
|
|
49
|
+
context_generator=lambda **context_kwargs: generate_runtime_context(
|
|
50
|
+
context_entrypoint=runtime_entrypoint,
|
|
51
|
+
langgraph_config=config,
|
|
52
|
+
**context_kwargs,
|
|
53
|
+
),
|
|
54
|
+
)
|
|
55
|
+
|
|
56
|
+
async def execute():
|
|
57
|
+
async with UiPathEvalRuntime.from_eval_context(
|
|
58
|
+
factory=runtime_factory, context=eval_context
|
|
59
|
+
) as eval_runtime:
|
|
60
|
+
await eval_runtime.execute()
|
|
61
|
+
|
|
62
|
+
asyncio.run(execute())
|
|
63
|
+
return MiddlewareResult(should_continue=False)
|
|
64
|
+
|
|
65
|
+
except Exception as e:
|
|
66
|
+
return MiddlewareResult(
|
|
67
|
+
should_continue=False, error_message=f"Error running evaluation: {str(e)}"
|
|
68
|
+
)
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import asyncio
|
|
2
|
+
import os
|
|
3
|
+
from os import environ as env
|
|
4
|
+
from typing import Optional
|
|
5
|
+
|
|
6
|
+
from uipath._cli.middlewares import MiddlewareResult
|
|
7
|
+
|
|
8
|
+
from ._runtime._exception import LangGraphRuntimeError
|
|
9
|
+
from ._runtime._runtime import ( # type: ignore[attr-defined]
|
|
10
|
+
LangGraphRuntime,
|
|
11
|
+
LangGraphRuntimeContext,
|
|
12
|
+
)
|
|
13
|
+
from ._utils._graph import LangGraphConfig
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
def langgraph_run_middleware(
|
|
17
|
+
entrypoint: Optional[str], input: Optional[str], resume: bool, **kwargs
|
|
18
|
+
) -> MiddlewareResult:
|
|
19
|
+
"""Middleware to handle LangGraph execution"""
|
|
20
|
+
config = LangGraphConfig()
|
|
21
|
+
if not config.exists:
|
|
22
|
+
return MiddlewareResult(
|
|
23
|
+
should_continue=True
|
|
24
|
+
) # Continue with normal flow if no langgraph.json
|
|
25
|
+
|
|
26
|
+
try:
|
|
27
|
+
# Add default env variables
|
|
28
|
+
env["UIPATH_REQUESTING_PRODUCT"] = "uipath-python-sdk"
|
|
29
|
+
env["UIPATH_REQUESTING_FEATURE"] = "langgraph-agent"
|
|
30
|
+
|
|
31
|
+
context = LangGraphRuntimeContext.with_defaults(**kwargs)
|
|
32
|
+
context.langgraph_config = config
|
|
33
|
+
context.entrypoint = entrypoint
|
|
34
|
+
context.input = input
|
|
35
|
+
context.resume = resume
|
|
36
|
+
|
|
37
|
+
async def execute():
|
|
38
|
+
async with LangGraphRuntime.from_context(context) as runtime:
|
|
39
|
+
if context.resume is False and context.job_id is None:
|
|
40
|
+
# Delete the previous graph state file at debug time
|
|
41
|
+
if os.path.exists(runtime.state_file_path):
|
|
42
|
+
os.remove(runtime.state_file_path)
|
|
43
|
+
await runtime.execute()
|
|
44
|
+
|
|
45
|
+
asyncio.run(execute())
|
|
46
|
+
|
|
47
|
+
return MiddlewareResult(
|
|
48
|
+
should_continue=False,
|
|
49
|
+
error_message=None,
|
|
50
|
+
)
|
|
51
|
+
|
|
52
|
+
except LangGraphRuntimeError as e:
|
|
53
|
+
return MiddlewareResult(
|
|
54
|
+
should_continue=False,
|
|
55
|
+
error_message=e.error_info.detail,
|
|
56
|
+
should_include_stacktrace=True,
|
|
57
|
+
)
|
|
58
|
+
except Exception as e:
|
|
59
|
+
return MiddlewareResult(
|
|
60
|
+
should_continue=False,
|
|
61
|
+
error_message=f"Error: {str(e)}",
|
|
62
|
+
should_include_stacktrace=True,
|
|
63
|
+
)
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
from uipath._cli.middlewares import Middlewares
|
|
2
2
|
|
|
3
3
|
from ._cli.cli_dev import langgraph_dev_middleware
|
|
4
|
+
from ._cli.cli_eval import langgraph_eval_middleware
|
|
4
5
|
from ._cli.cli_init import langgraph_init_middleware
|
|
5
6
|
from ._cli.cli_new import langgraph_new_middleware
|
|
6
7
|
from ._cli.cli_run import langgraph_run_middleware
|
|
@@ -12,3 +13,4 @@ def register_middleware():
|
|
|
12
13
|
Middlewares.register("run", langgraph_run_middleware)
|
|
13
14
|
Middlewares.register("new", langgraph_new_middleware)
|
|
14
15
|
Middlewares.register("dev", langgraph_dev_middleware)
|
|
16
|
+
Middlewares.register("eval", langgraph_eval_middleware)
|
|
@@ -2746,7 +2746,7 @@ wheels = [
|
|
|
2746
2746
|
|
|
2747
2747
|
[[package]]
|
|
2748
2748
|
name = "uipath"
|
|
2749
|
-
version = "2.1.
|
|
2749
|
+
version = "2.1.46"
|
|
2750
2750
|
source = { registry = "https://pypi.org/simple" }
|
|
2751
2751
|
dependencies = [
|
|
2752
2752
|
{ name = "azure-monitor-opentelemetry" },
|
|
@@ -2764,14 +2764,14 @@ dependencies = [
|
|
|
2764
2764
|
{ name = "tomli" },
|
|
2765
2765
|
{ name = "truststore" },
|
|
2766
2766
|
]
|
|
2767
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
2767
|
+
sdist = { url = "https://files.pythonhosted.org/packages/8f/86/e823002c93f7c6d6ada522f2ec9c4a8e4ee9a0afd3ff5f2b18bbebf2c0a0/uipath-2.1.46.tar.gz", hash = "sha256:61740af2465acf87ae0adcb5d0281bede4fdd373feef3ec1a1fe6b45145eb390", size = 1987698, upload-time = "2025-09-15T15:03:41.71Z" }
|
|
2768
2768
|
wheels = [
|
|
2769
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2769
|
+
{ url = "https://files.pythonhosted.org/packages/3e/e8/ce758af4c53851f48d5af99315ac5c5be80d1d784c8aa25b987f10bca0be/uipath-2.1.46-py3-none-any.whl", hash = "sha256:b54ef04dfbcf3cb75aef6c954204556eba3719301707c8ce94d81c7965826072", size = 215396, upload-time = "2025-09-15T15:03:39.738Z" },
|
|
2770
2770
|
]
|
|
2771
2771
|
|
|
2772
2772
|
[[package]]
|
|
2773
2773
|
name = "uipath-langchain"
|
|
2774
|
-
version = "0.0.
|
|
2774
|
+
version = "0.0.129"
|
|
2775
2775
|
source = { editable = "." }
|
|
2776
2776
|
dependencies = [
|
|
2777
2777
|
{ name = "httpx" },
|
|
@@ -2815,7 +2815,7 @@ requires-dist = [
|
|
|
2815
2815
|
{ name = "openinference-instrumentation-langchain", specifier = ">=0.1.50" },
|
|
2816
2816
|
{ name = "pydantic-settings", specifier = ">=2.6.0" },
|
|
2817
2817
|
{ name = "python-dotenv", specifier = ">=1.0.1" },
|
|
2818
|
-
{ name = "uipath", specifier = ">=2.1.
|
|
2818
|
+
{ name = "uipath", specifier = ">=2.1.46,<2.2.0" },
|
|
2819
2819
|
{ name = "uipath-langchain", marker = "extra == 'langchain'", specifier = ">=0.0.2" },
|
|
2820
2820
|
]
|
|
2821
2821
|
provides-extras = ["langchain"]
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import asyncio
|
|
2
|
-
import os
|
|
3
|
-
from os import environ as env
|
|
4
|
-
from typing import Optional
|
|
5
|
-
|
|
6
|
-
from dotenv import load_dotenv
|
|
7
|
-
from uipath._cli._runtime._contracts import UiPathTraceContext
|
|
8
|
-
from uipath._cli.middlewares import MiddlewareResult
|
|
9
|
-
|
|
10
|
-
from ._runtime._context import LangGraphRuntimeContext
|
|
11
|
-
from ._runtime._exception import LangGraphRuntimeError
|
|
12
|
-
from ._runtime._runtime import LangGraphRuntime
|
|
13
|
-
from ._utils._graph import LangGraphConfig
|
|
14
|
-
|
|
15
|
-
load_dotenv()
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
def langgraph_run_middleware(
|
|
19
|
-
entrypoint: Optional[str], input: Optional[str], resume: bool, **kwargs
|
|
20
|
-
) -> MiddlewareResult:
|
|
21
|
-
"""Middleware to handle langgraph execution"""
|
|
22
|
-
config = LangGraphConfig()
|
|
23
|
-
if not config.exists:
|
|
24
|
-
return MiddlewareResult(
|
|
25
|
-
should_continue=True
|
|
26
|
-
) # Continue with normal flow if no langgraph.json
|
|
27
|
-
|
|
28
|
-
try:
|
|
29
|
-
bool_map = {"true": True, "false": False}
|
|
30
|
-
tracing = env.get("UIPATH_TRACING_ENABLED", True)
|
|
31
|
-
if isinstance(tracing, str) and tracing.lower() in bool_map:
|
|
32
|
-
tracing = bool_map[tracing.lower()]
|
|
33
|
-
|
|
34
|
-
async def execute():
|
|
35
|
-
context: LangGraphRuntimeContext = LangGraphRuntimeContext.from_config(
|
|
36
|
-
env.get("UIPATH_CONFIG_PATH", "uipath.json"), **kwargs
|
|
37
|
-
)
|
|
38
|
-
context.entrypoint = entrypoint
|
|
39
|
-
context.input = input
|
|
40
|
-
context.resume = resume
|
|
41
|
-
context.langgraph_config = config
|
|
42
|
-
context.debug = kwargs.get("debug", False)
|
|
43
|
-
context.logs_min_level = env.get("LOG_LEVEL", "INFO")
|
|
44
|
-
context.job_id = env.get("UIPATH_JOB_KEY", None)
|
|
45
|
-
context.execution_id = env.get("UIPATH_JOB_KEY", None)
|
|
46
|
-
context.trace_id = env.get("UIPATH_TRACE_ID")
|
|
47
|
-
context.is_eval_run = kwargs.get("is_eval_run", False)
|
|
48
|
-
context.tracing_enabled = tracing
|
|
49
|
-
context.input_file = kwargs.get("input_file", None)
|
|
50
|
-
context.execution_output_file = kwargs.get("execution_output_file", None)
|
|
51
|
-
context.trace_context = UiPathTraceContext(
|
|
52
|
-
enabled=tracing,
|
|
53
|
-
trace_id=env.get("UIPATH_TRACE_ID"),
|
|
54
|
-
parent_span_id=env.get("UIPATH_PARENT_SPAN_ID"),
|
|
55
|
-
root_span_id=env.get("UIPATH_ROOT_SPAN_ID"),
|
|
56
|
-
job_id=env.get("UIPATH_JOB_KEY"),
|
|
57
|
-
org_id=env.get("UIPATH_ORGANIZATION_ID"),
|
|
58
|
-
tenant_id=env.get("UIPATH_TENANT_ID"),
|
|
59
|
-
process_key=env.get("UIPATH_PROCESS_UUID"),
|
|
60
|
-
folder_key=env.get("UIPATH_FOLDER_KEY"),
|
|
61
|
-
)
|
|
62
|
-
context.langsmith_tracing_enabled = env.get("LANGSMITH_TRACING", False)
|
|
63
|
-
|
|
64
|
-
# Add default env variables
|
|
65
|
-
env["UIPATH_REQUESTING_PRODUCT"] = "uipath-python-sdk"
|
|
66
|
-
env["UIPATH_REQUESTING_FEATURE"] = "langgraph-agent"
|
|
67
|
-
|
|
68
|
-
async with LangGraphRuntime.from_context(context) as runtime:
|
|
69
|
-
if context.resume is False and context.job_id is None:
|
|
70
|
-
# Delete the previous graph state file at debug time
|
|
71
|
-
if os.path.exists(runtime.state_file_path):
|
|
72
|
-
os.remove(runtime.state_file_path)
|
|
73
|
-
await runtime.execute()
|
|
74
|
-
|
|
75
|
-
asyncio.run(execute())
|
|
76
|
-
|
|
77
|
-
return MiddlewareResult(
|
|
78
|
-
should_continue=False,
|
|
79
|
-
error_message=None,
|
|
80
|
-
)
|
|
81
|
-
|
|
82
|
-
except LangGraphRuntimeError as e:
|
|
83
|
-
return MiddlewareResult(
|
|
84
|
-
should_continue=False,
|
|
85
|
-
error_message=e.error_info.detail,
|
|
86
|
-
should_include_stacktrace=True,
|
|
87
|
-
)
|
|
88
|
-
except Exception as e:
|
|
89
|
-
return MiddlewareResult(
|
|
90
|
-
should_continue=False,
|
|
91
|
-
error_message=f"Error: {str(e)}",
|
|
92
|
-
should_include_stacktrace=True,
|
|
93
|
-
)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/integration_tests.yml
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/lint-custom-version.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/.github/workflows/test-custom-version.yml
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
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/quick_start_images/cloud_env_var_dark.png
RENAMED
|
File without changes
|
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/quick_start_images/invoke_output_dark.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/create-index-1.png
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/create-index-2.png
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/create-process.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/folder-path.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/process-page.png
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/researcher-1.png
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/researcher-2.png
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/run-process-1.png
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/docs/sample_images/RAG/run-process-2.png
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/env.example
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/langgraph.json
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/pyproject.toml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/RAG-quiz-generator/uipath.json
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
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/.env.example
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/agent.mermaid
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/graph.py
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/langgraph.json
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/pyproject.toml
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/uipath.json
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/company-research-agent/uv.lock
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/.env.template
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/.python-version
RENAMED
|
File without changes
|
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/README.md
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/agent.mermaid
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/input.json
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/langgraph.json
RENAMED
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/pyproject.toml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/email-organizer-agent/uipath.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uipath_langchain-0.0.127 → uipath_langchain-0.0.129}/samples/hitl-inbox-server/pyproject.toml
RENAMED
|
File without changes
|
|
File without changes
|