UiPathでは、AIエージェントの構築と実行に関して、ユーザーのスキルセットや要件に応じた3つの種類を提供しています。
このテーブルは、それぞれの種類が 「Build(構築)」と「Run(実行)」 のどのフェーズをUiPathプラットフォーム上で行うかを示しており、最適なアプローチを理解するのに役立ちます。
種類 | Build (構築) | Run (実行) | 特徴 |
---|---|---|---|
Agent Builder (ローコード) | UiPath内で行う | UiPath内で行う | UiPathのGUI環境に慣れていれば、プログラミング知識が少なくても迅速に作成可能。 ドラッグ&ドロップのキャンバスを使用。 |
Coded Agents (Python SDK) | UiPath外部(Pythonなどのプログラミング環境) | UiPathプラットフォーム(Orchestrator)上で実行・管理 | 複雑なロジックや高度なカスタマイズに適する。Pythonの豊富なライブラリを活用可能。 |
External Agents (外部エージェント) | UiPath外部 | UiPath外部 | 既存の外部AIエージェントやアプリケーションを統合・管理可能。既存資産を最大限活用できる。 |
Agent Builderについては、以前UiPath AIエージェント活用ガイド ~ Agent Builder構成の詳解 開発編 と UiPath AIエージェント活用ガイド ~ Agent Builder構成の詳解 運用編で紹介していますので、ご参照ください。
このシリーズの記事では、Coded Agentsの開発・デプロイ・実行をご紹介します。
Coded Agentsについて
UiPathのCoded Agentsは、開発者が選択した IDE で直接コードを作成し、ロジックや外部システム連携を自由に制御できます。
作成したコードは UiPath SDK で .nupkg にパッケージ化し、任意のパッケージフィード経由で Orchestrator にデプロイします。
デプロイ後は、標準プロセスと同じガバナンスの下でスケジュールや監視が可能となり、他のオートメーションワークフローとも連携できます。
次の図は、Coded Agentsを UiPath Platform で作成、デプロイ、実行するプロセスの概要を示しています。
Coded Agentsを開発する際に、UiPathで利用可能な主なSDKは以下の通りです。
言語/フレームワーク | リポジトリ | 概要 |
---|---|---|
Python | uipath-python | エージェントの作成・パッケージ化・UiPath Cloud Platformへのデプロイを行うPython SDK。 UiPathリソース(プロセス、アセット、キュー等)の操作が可能。 |
LangGraph | uipath-langchain-python | LangGraphエージェントを構築・デプロイ可能なPython SDK。 |
LlamaIndex | uipath-llamaindex-python | LlamaIndexエージェントを構築・デプロイ可能なPython SDK。 |
今回の記事では、Coded Agentsを開発するための土台となるUiPath SDKの使い方をご紹介します。
ご紹介した内容は、SDKのバージョンアップなどにより、実行時にエラーが発生する可能性があります。エラーが発生した際は、以下の公式ページをご参照ください。
事前準備
Python開発のIDEを準備するため、VSCode/Python/uvの三つをインストールします。
VS Codeのインストール
以下のサイトよりVS Code(Windows版)をダウンロードし、インストールします。
Pythonのインストール
次にPythonを以下のサイトからダウンロードし、インストールしてください。
インストール後、コマンドプロンプトで Python のバージョンが確認できれば、インストールは成功です。
C:\Users\admin_1>python --version
Python 3.13.5
uvのパッケージ管理ツールのインストール
uv は、Python のパッケージ管理と依存関係解決において、「超高速な次世代ツール」 として設計されたツールです。pip や pip-tools の代替を目指し、Rust で書かれたことで生まれる速度と効率性が特徴です。
- 管理者権限で PowerShell を起動し、以下のコマンドを実行します。
powershell -ExecutionPolicy ByPass -c "irm https://docs.astral.sh/uv/install.ps1 | iex"
- 実行後、環境変数にも追加します。
$env:Path = "C:\Users\admin_1\.local\bin;$env:Path"
全てのコマンドは以下の通りです。最後に uv --version
を実行して、バージョンが確認できれば、インストールは成功です。
全てのコマンドは以下の通りです。
PS C:\Users\admin_1> powershell -ExecutionPolicy ByPass -c "irm https://docs.astral.sh/uv/install.ps1 | iex"
Downloading uv 0.8.3 (x86_64-pc-windows-msvc)
Installing to C:\Users\admin_1\.local\bin
uv.exe
uvx.exe
uvw.exe
everything's installed!
To add C:\Users\admin_1\.local\bin to your PATH, either restart your shell or run:
set Path=C:\Users\admin_1\.local\bin;%Path% (cmd)
$env:Path = "C:\Users\admin_1\.local\bin;$env:Path" (powershell)
PS C:\Users\admin_1> $env:Path = "C:\Users\admin_1\.local\bin;$env:Path"
PS C:\Users\admin_1> uv --version
uv 0.8.3 (7e78f54e7 2025-07-24)
uvに関するより詳細な紹介は以下のサイトをご参照ください。
Coded Agentの開発
インストールしたVS Codeを起動します。後ほどのコマンドを実行するため、VS CodeのTERMINALを開きます。
以降のCLIはすべて、VS CodeのTERMINAL(PowerShell)で実行されます。
1. UiPath CLI(コマンドラインインターフェース)を始めよう
最初に、PowerShell コマンドレットを使って、新しいフォルダを作成し、そのフォルダに移動します。
-
新しいフォルダー
uipath_coded_process
作成:New-Item -ItemType Directory -Path uipath_coded_process
-
そのフォルダに移動:
Set-Location uipath_coded_process
PS C:\Users\admin_1\Documents\PythonProject> New-Item -ItemType Directory -Path uipath_coded_process
ディレクトリ: C:\Users\admin_1\Documents\PythonProject
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2025/08/09 13:15 uipath_coded_process
PS C:\Users\admin_1\Documents\PythonProject> Set-Location uipath_coded_process
PS C:\Users\admin_1\Documents\PythonProject\uipath_coded_process>
次は、uvというPythonパッケージ管理ツールを使用して、新しいプロジェクトをセットアップし、uipathパッケージをインストールします。
-
現在のディレクトリに新しいuvプロジェクトの作成 :
uv init . --python 3.13.5
(Pythonのバージョンを3.13.5に指定) -
プロジェクト用の仮想環境の作成:
uv venv
-
仮想環境のアクティベート:
.venv\Scripts\activate
-
仮想環境にuipathパッケージのインストール:
uv add uipath
-
uipathパッケージの確認:
uipath --version
PS C:\Users\admin_1\Documents\PythonProject\uipath_coded_process> uv init . --python 3.13.5
Initialized project `uipath-coded-process` at `C:\Users\admin_1\Documents\PythonProject\uipath_coded_process`
PS C:\Users\admin_1\Documents\PythonProject\uipath_coded_process> uv venv
Using CPython 3.13.5 interpreter at: C:\Users\admin_1\AppData\Local\Programs\Python\Python313\python.exe
Creating virtual environment at: .venv
Activate with: .venv\Scripts\activate
PS C:\Users\admin_1\Documents\PythonProject\uipath_coded_process> .venv\Scripts\activate
(uipath_coded_process) PS C:\Users\admin_1\Documents\PythonProject\uipath_coded_process> uv add uipath
Resolved 67 packages in 2.00s
Prepared 5 packages in 1.66s
Installed 66 packages in 3.66s
+ annotated-types==0.7.0
<...こちらが省略した...>
+ zipp==3.23.0
(uipath_coded_process) PS C:\Users\admin_1\Documents\PythonProject\uipath_coded_process> uipath --version
uipath version 2.1.14
2. 認証
VS Codeで作成したCoded AgentsをUiPath Orchestratorへデプロイするために、UiPathでの認証が必要です。
以下のコマンドを実行すると、認証のための新しいブラウザウィンドウが開きます。
uipath auth
UiPath Automation Cloudの認証が成功すると、以下のような画面が表示されます。
次に、ターミナルに表示されるテナントの番号を入力して、使用するテナントを選択します。
(uipath_coded_process) PS C:\Users\admin_1\Documents\PythonProject\uipath_coded_process> uipath auth
⠦ Authenticating with UiPath ...
🔗 If a browser window did not open, please open the following URL in your browser: https://cloud.uipath.com/identity_/connect/authorize?...
👇 Select tenant:
0: DefaultTenant
1: RyotaMuramatsu20250808
Select tenant number: 0
また、認証が成功すると、プロジェクト内に.env
ファイルが作成され、アクセストークンやUiPathのURL、その他の設定情報が保存されます。
3. Pythonコードの作成
VS Codeで作成したしたフォルダー uipath_coded_process を開きます。そのmain.py
ファイルを開いて、以下のサンプルコードを書きます。
このPythonコードは、uipathライブラリで使用されるCoded Agentの基本的な構造を示しています。main関数がエントリポイントとなり、外部から受け取った引数を処理し、結果を返します。
from dataclasses import dataclass
from typing import Optional
@dataclass
class EchoIn:
message: str
repeat: Optional[int] = 1
prefix: Optional[str] = None
@dataclass
class EchoOut:
message: str
def main(input: EchoIn) -> EchoOut:
result = []
for _ in range(input.repeat or 1):
line = input.message
if input.prefix:
line = f"{input.prefix}: {line}"
result.append(line)
return EchoOut(message="\n".join(result))
4. UiPathプロジェクトの初期化
uipath init
コマンドは、UiPathプロジェクトを初期化するために使用します。このコマンドを実行すると、現在のディレクトリにuipath.jsonという設定ファイルが作成され、プロジェクトとして認識されるようになります。
uipath init
uipath.json: このファイルは、プロジェクトの設定情報を格納するためのものです。このファイルが作成されることで、そのフォルダーがUiPathプロジェクトとして扱われるようになります。
5. Pythonコードの実行
次は、コマンドuipath run main.py '{\"message\":\"test\"}'
で、作成したCoded Agentをローカルで実行してみます。
(uipath_coded_process) PS C:\Users\admin_1\Documents\PythonProject\uipath_coded_process> uipath run main.py '{\"message\":\"test\"}'
{'message': 'test'}
✓ Successful execution.
無事にローカルで実行できました。
6. UiPath Orchestratorへのデプロイ
プロジェクトをパッケージ化する前に、pyproject.toml
ファイルに詳細情報を追加してください。description
フィールドの下に、以下の行を追加します。
authors = [{ name = "Your Name", email = "your.email@uipath.com" }]
例:pyproject.toml
(追加後)
[project]
name = "uipath-coded-process"
version = "0.1.0"
description = "Add your description here"
authors = [{ name = "Your Name", email = "your.email@uipath.com" }]
readme = "README.md"
requires-python = ">=3.13.5"
dependencies = [
"uipath>=2.1.14",
]
次に、プロジェクトをパッケージ化します。
uipath pack
最後に、パッケージを公開します。
uipath publish
(uipath_coded_process) PS C:\Users\admin_1\Documents\PythonProject\uipath_coded_process> uipath pack
⠹ Packaging project ...
Name : uipath-coded-process
Version : 0.1.0
Description: Add your description here
Authors : jun.li
✓ Project successfully packaged.
(uipath_coded_process) PS C:\Users\admin_1\Documents\PythonProject\uipath_coded_process> uipath publish
⠴ Fetching available package feeds...
👇 Select package feed:
0: Orchestrator テナント プロセス フィード
1: Orchestrator JunliPrivate フィード
2: Orchestrator Autopilot フィード
3: Orchestrator 個人用ワークスペース フィード
Select feed number: 3
Selected feed: Orchestrator 個人用ワークスペース フィード
⠙ Publishing most recent package: uipath-coded-process.0.1.0.nupkg ...
✓ Package published successfully!
⠇ Getting process information ...
🔗 Process configuration link: https://cloud.uipath.com/uta_test/DefaultTenant/orchestrator_/processes/1579116/edit?fid=3792407
💡 Use the link above to configure any environment variables
(uipath_coded_process) PS C:\Users\admin_1\Documents\PythonProject\uipath_coded_process>
公開先を選択すると、パッケージの詳細と完了メッセージが表示されます。
このCoded Agentを実行します。必要な入力パラメータを指定して、[開始]をクリックします。
実行結果を確認します。
7. UiPath SDKを利用してプロセスの呼び出し
上記と同じ手順で、新しいプロジェクトを作成してください。
# 新しいフォルダー作成
New-Item -ItemType Directory -Path invoke_process
# そのフォルダに移動
cd invoke_process
# 現在のディレクトリに新しいuvプロジェクトの作成
uv init . --python 3.13.5
# プロジェクト用の仮想環境の作成
uv venv
# 仮想環境のアクティベート
.venv\Scripts\activate
# 仮想環境にuipathパッケージのインストール
uv add uipath
# uipathパッケージの確認
uipath --version
# 認証
uipath auth
IDEでmain.pyファイルを開き、以下のコードを追加します。このコードは、UiPath OrchestratorにデプロイされたプロセスをPythonから遠隔で実行します。
from uipath import UiPath
def main():
sdk = UiPath()
sdk.processes.invoke(
"uipath-coded-process",
input_arguments={
"message": "Hello, World!",
"repeat": 3,
"prefix": "[Echo]"
},
folder_path="PROCESS_FOLDER_PATH_HERE"
)
以下のように、フォルダのパスを取得して、上記のfolder_path
に設定します。
上記のmain.py
を実行します。
uipath run main.py
正常に実行され、Orchestratorからも"uipath-coded-process"プロセスの実行が確認できました。
テスト用Coded AgentのSampleの作成
以下環境変数及びトレース、サービスの利用を確認するために、sample_coded_process
のCoded AgentのSampleプロジェクトを作成します。
# 新しいフォルダー作成
New-Item -ItemType Directory -Path sample_coded_process
# そのフォルダに移動
cd sample_coded_process
# 現在のディレクトリに新しいuvプロジェクトの作成
uv init . --python 3.13.5い
# プロジェクト用の仮想環境の作成
uv venv
# 仮想環境のアクティベート
.venv\Scripts\activate
# 仮想環境にuipathパッケージのインストール
uv add uipath
# uipathパッケージの確認
uipath --version
# 認証
uipath auth
# UiPathプロジェクトの初期化(Orchestratorへパブリッシュする必要があるため)
uipath init
プロジェクトをパッケージ化するために、pyproject.toml
ファイルに詳細情報を追加してください。description
フィールドの下に、以下の行を追加します。
authors = [{ name = "Your Name", email = "your.email@uipath.com" }]
以下の環境変数やトレースなどの利用例では、main.py
と.env
などのファイルを編集して実行結果を確認します。
補足: 環境変数の使用
環境変数とは、OSレベルで保存され、アプリケーションやスクリプトからアクセスできる設定値です。これらを使用することで、ソースコードに値を直接書き込むことなく、アプリケーションの動作を柔軟に設定できます。
環境変数は、以下の優先順位(高い順)で読み込まれます。
- 現在のディレクトリにある .env ファイル
- システムの環境変数
- コード内のデフォルト値
.env
ファイルには、例えば、UIPATh_MY_OPEN_KEY
という名前の環境変数を追加します。
UIPATh_MY_OPEN_KEY=key1111FromEnvFile
main.py
で、os.getenv("UIPATh_MY_OPEN_KEY")
を使用して、該当環境変数を取得します。
import os
def main():
print("Hello from sample-coded-process!")
print(os.getenv("UIPATh_MY_OPEN_KEY"))
if __name__ == "__main__":
main()
Terminalで、uipath run main.py
を実行します。以下の出力で、.env
で定義した環境変数を取得できました。
(sample_coded_process) PS C:\Users\admin_1\Documents\PythonProject\sample_coded_process> uipath run main.py
Hello from sample-coded-process!
key1111FromEnvFile
{}
✓ Successful execution.
Orchestratorで実行時の環境変数の設定
プロセスを実行したり、ジョブを開始したりする際、UiPath Orchestratorを通じて環境変数を設定できます。APIキーやシークレットなどの機密情報については、環境変数ではなくシークレットアセットを使用することを強く推奨します。シークレットアセットは、セキュリティと管理機能を強化します。
先ほどのpythonコードをOrchestratorへパブリッシュします。(uipath pack
とuipath publish
)
(sample_coded_process) PS C:\Users\admin_1\Documents\PythonProject\sample_coded_process> uipath pack
⠹ Packaging project ...
Name : sample-coded-process
Version : 0.1.0
Description: 色々Coded Test Agentをテストします!
Authors : jun.li
✓ Project successfully packaged.
(sample_coded_process) PS C:\Users\admin_1\Documents\PythonProject\sample_coded_process> uipath publish
⠦ Fetching available package feeds...
👇 Select package feed:
0: Orchestrator テナント プロセス フィード
1: Orchestrator JunliPrivate フィード
2: Orchestrator Autopilot フィード
3: Orchestrator 個人用ワークスペース フィード
Select feed number: 3
Selected feed: Orchestrator 個人用ワークスペース フィード
⠧ Publishing most recent package: sample-coded-process.0.1.0.nupkg ...
✓ Package published successfully!
⠹ Getting process information ...
🔗 Process configuration link: https://cloud.uipath.com/uta_test/DefaultTenant/orchestrator_/processes/1579318/edit?fid=3792407
💡 Use the link above to configure any environment variables
シークレットアセットを使用して環境変数の利用例
環境変数でシークレットアセットを使用するには、以下の形式で参照します。
先にOrchestratorの該当フォルダにて、セキュリティキー保存するアセット(UIPATh_MY_OPEN_KEY=key2222FromUiPathAsset)を追加します。(詳細ステップを省略します)。
次に、該当Coded Agentのプロセスの作成或はジョブ実行開始する際に、[環境の構成]で、アセットの値を該当環境変数へ設定します。
Orchestratorで実行完了すると、実行結果ページの[ログ]タブでは、アセットの値が利用されたことを確認できます。
[2025-08-11T03:16:35.536][Info ] ✓ Successful execution.
[2025-08-11T03:16:35.617][Info ] Hello from sample-coded-process!
[2025-08-11T03:16:35.618][Info ] key2222FromUiPathAsset
他の環境変数、LOG_LEVEL
やUIPATH_TELEMETRY_ENABLED
などの使い方は以下のページより詳細をご参照ください。
補足: CLI 参照
よく使うCLIが以下の通りです。詳細なオプションは正式ページよりご参照ください。
コマンド | 意味 | 使い方 (Usage) |
---|---|---|
auth | UiPath Cloud Platform に認証する | uipath auth [OPTIONS] |
init |
uipath.json を作成し、入出力スキーマやバインディングを設定 |
uipath init [OPTIONS] [ENTRYPOINT] |
run | プロジェクトを実行 | uipath run [OPTIONS] [ENTRYPOINT] [INPUT] |
pack | プロジェクトを .nupkg ファイルにパッケージ化 |
uipath pack [OPTIONS] [ROOT] |
publish |
.nupkg を Orchestrator に公開 |
uipath publish [OPTIONS] |
deploy |
pack + publish を一括実行 |
uipath deploy [OPTIONS] [ROOT] |
invoke | ワークスペースに公開済みのエージェントを実行 | uipath invoke [OPTIONS] [ENTRYPOINT] [INPUT] |
補足: トレース
traced()
デコレータを使用すると、関数の呼び出し、入力、出力を自動的に追跡できます。この機能は、引数、戻り値、例外など、関数実行に関する詳細な情報を取得することで、コードの監視、デバッグ、監査を支援するように設計されています。
Orchestratorジョブのトレースは、ジョブページから確認できます。ジョブをクリックするとサイドパネルが開き、「トレース」タブから利用可能です。これらのトレースは、エージェントがより大規模なプロセスオーケストレーションの一部である場合、UiPath Maestroでも確認できます。
利用可能なパラメータは以下の通りです。
パラメータ | 型 | 説明 |
---|---|---|
name | Optional[str] | トレーススパンのカスタム名。デフォルトは関数名。 |
run_type | Optional[str] | 実行のカテゴリ(例: "uipath")。トレースのフィルタリングに便利。 |
span_type | Optional[str] | スパンのカスタムタイプ。デフォルトは関数タイプ(sync/async/generator)。 |
input_processor | Optional[Callable[[dict], dict]] | 記録前に入力を処理・変換する関数。引数の辞書を受け取る。 |
output_processor | Optional[Callable[[Any], Any]] | 記録前に出力を処理・変換する関数。関数の戻り値を受け取る。 |
hide_input | bool | True の場合、プライバシーやセキュリティのために入力データがトレースでマスクされる。 |
hide_output | bool | True の場合、プライバシーやセキュリティのために出力データがトレースでマスクされる。 |
例えば、環境変数での事例のソースコードを以下のように変更します。
from uipath.tracing import traced
import os
@traced()
def my_function(x, y):
return x + y
def main():
print("Hello from sample-coded-process!")
print(my_function(1,2))
if __name__ == "__main__":
main()
編集後のソースコードをパブリッシュ(uipath packとuipath publish)して、Orchestratorから実行すると、トレースページよりmy_function
函数の呼び出し詳細を確認できます。
トレースの利用に関しては、より詳細な情報は以下のページよりご参照ください。
補足: 入力と出力
Coded Agent の入力と出力は、UiPath のロボットや他の機能と連携する際に非常に重要です。ソースコードを以下のように変更します。
from dataclasses import dataclass
from typing import Optional
# EchoInクラスの定義
# @dataclassデコレータは、データクラスを簡単に作成するための機能
@dataclass
class EchoIn:
# メッセージ文字列
message: str
# 繰り返し回数。オプションであり、デフォルト値は1
repeat: Optional[int] = 1
# 接頭辞文字列。オプションであり、デフォルト値はNone
prefix: Optional[str] = None
# EchoOutクラスの定義
# @dataclassデコレータを使用して、出力データを格納するクラスを作成
@dataclass
class EchoOut:
# 結合されたメッセージ文字列
combind_message: str
# main関数
# EchoIn型の入力を受け取り、EchoOut型を返す
def main(input: EchoIn) -> EchoOut:
# 結果を格納するための空のリストを初期化
result = []
# repeat回数分、またはrepeatがNoneの場合は1回、ループを実行
# `input.repeat or 1`は、input.repeatが偽(Noneや0など)の場合に1を使用
for _ in range(input.repeat or 1):
# メッセージをlineに格納
line = input.message
# prefixが設定されている場合
if input.prefix:
# lineにprefixを追加
line = f"{input.prefix}: {line}"
# 成形したlineをresultリストに追加
result.append(line)
# resultリストの要素を改行で結合し、EchoOutオブジェクトとして返す
return EchoOut(combind_message="\n".join(result))
上記の変更で、入力と出力がありましたので、uipath.json
を再作成する必要があります。作成後、Orchestratorへ再度パブリッシュします。
# uipath.json を作成し、入出力スキーマやバインディングを設定
uipath init
uipath pack
uipath publish
再度該当Coded Agentを実行します。以下のように、入力と出力が表示されるようになります。
補足: サービスの利用例
UiPath SDK では、Orchestrator での操作を含めて複数のサービスを使用できます。以下は、Coded Agentでは、良く使うサービスを例として解説します。その以外のサービスの利用方法は、以下のページよりご参照ください。
ActionsService
アクションとは、アプリケーションやプロセスに組み込むことができるタスクベースの自動化コンポーネントです。これらは、UiPath APIを通じてトリガーおよび監視できる、個別の作業単位を表します。
このサービスは、アプリケーション固有のアクションと汎用的なアクションの両方をサポートし、アクションの作成と取得のためのメソッドを提供します。
アクションを作成する前に、該当フォルダには、アクション可能なアプリ(Apps)が必要です。アクション可能なアプリのデプロイに関しては、以下のページよりご参照ください。
作成後、Orchestratorでの表示が以下の通りです。
main.py
ソースコードを以下のように変更します。以下のソースコードは、"こちらがCoded Agentからのタスク"
という名前のアクションを個人ワークスペースにて作成します。
from uipath import UiPath
def main():
sdk = UiPath()
folder_path="jun.li_uipath.com#ext#@utasukeleeoutlook.onmicrosoft.com's workspace"
action = sdk.actions.create(
"こちらがCoded Agentからのタスク",
app_name="CodedAgentTestAction",
app_folder_path=folder_path
)
uipath run main.py
で実行します。Action Centerに、新たなアクションが作成されました。
ContextGroundingService
UiPathにおけるセマンティックオートメーションコンテキストを管理するためのサービスです。
コンテキスト・グラウンディングは、オートメーションプロセスが動作する意味的な文脈を理解し、管理するための機能です。AIを活用した自動化を強化するために使用できる、文脈情報のインデックス化、取得、検索機能を提供します。
コンテキスト・グラウンディングの操作は常に特定のフォルダコンテキスト内で行われるため、このサービスには、環境に有効なフォルダキーが設定されている必要があります。
以下の函数を利用できます。詳細な使い方はオフィシャルページよりご参照ください。
関数名 | 概要 |
---|---|
add_to_index |
指定したインデックスにコンテンツを追加する。ファイルパスまたはコンテンツを指定し、アップロード後に必要に応じてデータをインデックスに取り込む。 |
add_to_index_async |
非同期でインデックスにコンテンツを追加する。動作はadd_to_index と同様だが非同期処理。 |
delete_index |
指定したコンテキストグラウンディングインデックスを削除する。 |
delete_index_async |
非同期でコンテキストグラウンディングインデックスを削除する。 |
ingest_data |
指定したインデックスにデータを取り込む(インデクシングを実行する)。 |
ingest_data_async |
非同期で指定したインデックスにデータを取り込む。 |
retrieve |
インデックス名からコンテキストグラウンディングインデックス情報を取得する。存在しない場合は例外を送出。 |
retrieve_async |
非同期でインデックス名からコンテキストグラウンディングインデックス情報を取得する。 |
retrieve_by_id |
インデックスIDからコンテキストグラウンディングインデックス情報を取得する。ID指定のため検索より効率的。 |
retrieve_by_id_async |
非同期でインデックスIDからコンテキストグラウンディングインデックス情報を取得する。 |
search |
指定インデックス内で自然言語クエリによるセマンティック検索を行い、関連情報を返す。 |
search_async |
非同期で自然言語クエリによるセマンティック検索を行う。 |
main.py
ソースコードを以下のように変更します。以下のソースコードは、HosyuList_Idx
というインデックスの情報を取得します。
from uipath import UiPath
def main():
sdk = UiPath()
folder_path="Public"
indexname = "HosyuList_Idx"
contextindex = sdk.context_grounding.retrieve(
name = indexname,
folder_path = folder_path
)
print(contextindex)
実行後、以下が出力データです。
(sample_coded_process) PS C:\Users\admin_1\Documents\PythonProject\sample_coded_process> uipath run main.py
Initializing tracer instance. This should only be done once per process.
HTTP Request: GET https://cloud.uipath.com/uta_test/DefaultTenant/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=Public&skip=0&take=20 "HTTP/1.1 200 OK"
HTTP Request: GET https://cloud.uipath.com/uta_test/DefaultTenant/ecs_/v2/indexes?%24filter=Name+eq+%27HosyuList_Idx%27&%24expand=dataSource "HTTP/1.1 200 OK"
id='8955a27f-c559-4634-65dc-08dd92b4c693' name='HosyuList_Idx' description='保守要員リストです、保守資格を持つ設備一覧、及び保守要員
間の人間関係です' memory_usage=12456 disk_usage=52250 data_source=ContextGroundingDataSource(id='e2f17aca-369c-4437-eb6f-08dd92b4c693', folder='共通', bucketName='hosyulist', @odata.type='#UiPath.Vdbs.Domain.Api.V20Models.StorageBucketDataSource', fileNameGlob='*.xlsx', directoryPath='/', bucketId='00000000-0000-0000-0000-000000000000') pre_processing=None fields=None last_ingestion_status='Successful' last_ingested=datetime.datetime(2025, 5, 20, 22, 28, 4, 497325, tzinfo=TzInfo(UTC)) last_queried=datetime.datetime(2025, 8, 2, 22, 9, 58, 600000, tzinfo=TzInfo(UTC)) folder_key='84d722a1-1e40-4951-b1d9-e156002b5294' folderFullyQualifiedName=None
{}
HTTP Request: POST https://cloud.uipath.com/uta_test/DefaultTenant/llmopstenant_/api/Traces/spans?traceId=40a17c64-dc67-49b7-ad34-8b8e1ded5f4e&source=Robots "HTTP/1.1 200 OK"
✓ Successful execution.
(sample_coded_process) PS C:\Users\admin_1\Documents\PythonProject\sample_coded_process>
UiPath LLM Gateway Services
UiPath LLMゲートウェイを通したサービスです。
UiPathのLLM(大規模言語モデル)ゲートウェイと連携するためのサービスを提供します。チャット補完と埋め込みの両方について、OpenAI互換のAPIと正規化されたAPIインターフェースの両方を提供します。
四つクラスがあります。
名前 | 説明 |
---|---|
ChatModels | サポートされているチャットモデル識別子のコンテナ |
EmbeddingModels | サポートされている埋め込みモデル識別子のコンテナ |
UiPathOpenAIService | OpenAI互換API形式を使用するサービス |
UiPathLlmChatService | UiPathの標準化されたAPI形式を使用するサービス |
詳細な情報は以下のオフィシャルページよりご参照ください。
LLM利用のAgentは、UiPath Langchain SDKとUiPath LlamaIndex SDKを使用すると、より簡単に実現できますので、詳細は以下のページよりご参照ください。
最後に
この記事では、UiPath SDKを利用して、Coded Agentsの開発・デプロイ・実行の流れを紹介しました。
次の記事では、UiPath Langchain SDKを利用した応用的なCoded Agentの開発方法を解説します。