UiPath LlamaIndex Python SDK
A Python SDK that enables developers to build and deploy LlamaIndex agents to the UiPath Cloud Platform. This package provides programmatic interaction with UiPath Cloud Platform services and human-in-the-loop (HITL) semantics through Action Center integration.
This package is an extension to the UiPath Python SDK.
Check out these sample projects to see the SDK in action.
Requirements
- Python 3.10 or higher
- UiPath Automation Cloud account
Installation
pip install uipath-llamaindex
using uv:
Configuration
Environment Variables
Create a .env file in your project root with the following variables:
UIPATH_URL=https://cloud.uipath.com/ACCOUNT_NAME/TENANT_NAME
UIPATH_ACCESS_TOKEN=YOUR_TOKEN_HERE
Command Line Interface (CLI)
The SDK provides a command-line interface for creating, packaging, and deploying LlamaIndex Agents:
Initialize a Project
Creates a uipath.json configuration file for your project. If [WORKFLOW] is omitted, it will create an entrypoint for each workflow specified in the llama_index.json file.
Authentication
This command opens a browser for authentication and creates/updates your .env file with the proper credentials.
Debug a Project
uipath run WORKFLOW [INPUT]
Executes the agent with the provided JSON input arguments.
Package a Project
Packages your project into a .nupkg file that can be deployed to UiPath.
Note: Your pyproject.toml must include:
- A description field (avoid characters: &, <, >, ", ', ;)
- Author information
Example:
description = "Your package description" authors = [{name = "Your Name", email = "your.email@example.com"}]
Publish a Package
Publishes the most recently created package to your UiPath Orchestrator.
Project Structure
To properly use the CLI for packaging and publishing, your project should include:
- A
pyproject.tomlfile with project metadata - A
llama_index.jsonfile - A
uipath.jsonfile (generated byuipath init) - Any Python files needed for your automation
Development
Setting Up a Development Environment
Please read our contribution guidelines before submitting a pull request.