Get Started

マイアビリティの使い方 (Ability)

マイアビリティの使い方 (Ability)

マイアビリティの使い方 (Ability)

ノードの使い方を学ぶ - アビリティ(Ability)ノード

このチュートリアルでは、Agentria のアビリティ(Ability)ノードの使い方を案内します。アビリティノードは、あらかじめ作成しておいた別のアビリティ(Ability)を、現在のワークフロー(Workflow)にノードとして読み込み、実行します。特定の機能を担当するアビリティを一度作っておけば、複数のワークフローでノードとして再利用できます。

本チュートリアルでは、まずドル金額をウォンに換算する「為替変換」アビリティを作成してバージョンを発行し、それを アビリティノード として呼び出して、商品価格をKRWに変換するワークフローを完成させます。

事前準備

Agentria のキャンバスへの入り方は、🔗3ステップコアガイド を参照してください。

アビリティノード は、読み込むアビリティが完成しており、かつバージョンが作成されている状態でなければ使用できません。そのため、このチュートリアルは2つのパートに分かれています。

  • A. 事前アビリティを作成する: 読み込む「為替変換」アビリティを作成し、バージョンを発行します。

  • B. アビリティノードを使う: 作成したアビリティをノードとして読み込み、実行します。

このチュートリアルを完了すると、以下を実行できるようになります。

  1. 再利用可能なアビリティを作成し、バージョンを発行できる。

  2. アビリティノード をキャンバスに配置し、読み込むアビリティを選択できる。

  3. バインディング(Binding)を通じて、現在のワークフローの変数をアビリティの入力変数に接続できる。

  4. アビリティノード の出力を終了ノードに渡せる。

💡 アビリティノードはどんなときに便利ですか?
為替変換、日付フォーマットの整形、社内用語の翻訳など、複数のワークフローで同じ処理を繰り返す場合は、その機能を1つのアビリティとして作成し、アビリティノード で呼び出すと便利です。ロジックを一箇所で管理できるため、修正が必要になった場合はアビリティを更新してバージョンを上げるだけで反映できます。

A. 事前アビリティを作成する

まず アビリティノード で読み込む対象を作成します。ここでは、USD(ドル)をKRW(ウォン)に換算するシンプルなアビリティ USD→KRW 為替変換器 を作成します。

A-1ステップ: 入力変数を宣言する

新しいアビリティを作成し、開始ノード(Start Node)をダブルクリックしてノードエディタ(Node Editor)を開きます。

入力変数に次の変数を追加します。

変数名

usd

Float(実数)

rate

Float(実数)

usd はKRWに換算するドル金額、rate はその日の為替レート(1 USDあたりのKRW)です。為替レートは日々変動するため、固定値にせず入力として受け取ります。

数値型は Float(実数) と Integer(整数) を選択できます。ドル金額や為替レートは小数点を含む場合があるため(例: 19.99, 1352.5)、Floatで宣言します。

A-2ステップ: Pythonノードで変換ロジックを書く

+ノード追加(Add Node)コード(Code) カテゴリからPythonノードを配置し、開始ノードとエッジ(Edge)で接続します。

Pythonノードをダブルクリックして、次のコードを書きます。

# USD(usd)とその日の為替レート(rate)を受け取り、KRW(krw)に換算します。
# usd rate Float(実数)として入力されます。(: usd=19.99, rate=1515.9)
usd = usd 드래그 드롭
rate = rate 드래그 드롭
krw = round(usd * rate)
return {"krw": krw}
# USD(usd)とその日の為替レート(rate)を受け取り、KRW(krw)に換算します。
# usd rate Float(実数)として入力されます。(: usd=19.99, rate=1515.9)
usd = usd 드래그 드롭
rate = rate 드래그 드롭
krw = round(usd * rate)
return {"krw": krw}
# USD(usd)とその日の為替レート(rate)を受け取り、KRW(krw)に換算します。
# usd rate Float(実数)として入力されます。(: usd=19.99, rate=1515.9)
usd = usd 드래그 드롭
rate = rate 드래그 드롭
krw = round(usd * rate)
return {"krw": krw}

コードを書いた後、出力領域(Output Section)に return のキーと同じ名前の出力変数を追加します。

変数名

krw

Integer(整数)

コードノードは return {"キー": 値} の形式で結果を返し、返したキーと同じ名前の出力変数を宣言する必要があります。コードノードの作成ルール(使用可能なライブラリ、使用できない関数など)は、🔗コードノードの使い方(Python) を参照してください。

A-3ステップ: 終了ノードを接続する

Pythonノードと終了ノード(End Node)をエッジで接続します。

終了ノードをダブルクリックして出力領域に krw (Integer) 変数を追加し、Pythonノードの krw 出力をドラッグ&ドロップ(Drag and drop)で接続します。

これで usd を受け取り krw を返す為替変換アビリティが完成しました。

A-4ステップ: バージョンを作成する(必須)

アビリティノード は、バージョンが作成されたアビリティのみ読み込めます。

キャンバス右上の バージョン(Version) ボタンをクリックすると、右側にバージョン履歴パネルが開きます。+ アイコンをクリックし、バージョン番号と変更内容(Change Log)を入力して 作成(Create) をクリックします。

項目

入力例

Version

0.0.1

Change Log

初回バージョン

作成したバージョンは後から選択してロールバックすることもできます。バージョン番号の基準やロールバック(Rollback)方法は、🔗バージョン管理 を参照してください。

これで アビリティノード を使う準備が整いました。

B. アビリティノードを使う

次に新しいアビリティを作成し、先ほど作成した USD→KRW 為替変換器アビリティノード として読み込みます。

ワークフロー概要

全体の流れ: 開始ノードアビリティノード終了ノード

このチュートリアルの要点はアビリティノードです。

アビリティノードは選択したアビリティを内部で実行し、その出力を現在のワークフローに渡します。ノードエディタで読み込むアビリティとバージョンを選択し、バインディングで現在のワークフロー変数をアビリティの入力変数に接続します。

B-1ステップ: 入力変数を宣言する(開始ノード)

新しいアビリティを作成し、開始ノードをダブルクリックして入力変数に次の変数を追加します。

変数名

price_usd

Float(実数)

rate

Float(実数)

price_usd はドル表示の商品価格、rate はその日の為替レートです。

B-2ステップ: アビリティノードを追加する

キャンバス左側のノード一覧から、マイアビリティ(My Ability) カテゴリの アビリティノード をキャンバスへドラッグ&ドロップします。

アビリティノード作成 ポップアップが表示されたら、使用するアビリティ USD→KRW 為替変換器 と、事前に作成しておいたアビリティバージョン 0.0.1 を選択します。

B-3ステップ: ノードを接続し、アビリティ・バージョンを確認する

開始ノードのアウトピン(Out-Pin)を、アビリティノードのインピン(In-Pin)にエッジで接続します。

アビリティノードをダブルクリックしてノードエディタを開きます。

ノードエディタは 入力ノード出力 の3つの領域で構成され、中央の ノード 領域でアビリティノードの設定を確認できます。

項目

説明

アビリティ名

読み込んだアビリティ名が表示されます。開く ボタンを押すと該当アビリティのキャンバスへ移動します。

Ability バージョン

使用するアビリティバージョンを選択します。後から変更する場合も、このドロップダウンで切り替えます。

認証情報

読み込んだアビリティがクレデンシャル(Credential)を使用する場合、ここで設定します。本例のアビリティは認証情報が不要です。

変数入力

アビリティの入力変数に、現在のワークフローの変数を接続します。(B-4ステップ参照)

入力 領域には開始ノードから渡された現在のワークフロー変数(price_usd, rate)が、出力 領域にはアビリティが返す変数(krw)が表示されます。

B-4ステップ: 変数入力で変数を接続する

ノード 領域の 変数入力 には、読み込んだアビリティの入力変数(usd, rate)が順番に表示されます。

各変数の下にある Select or Drag and Drop a Input Data 欄をクリックすると、現在のワークフロー変数一覧(price_usd, rate)が表示されます。ここで接続する変数を選ぶか、入力 領域からドラッグ&ドロップして接続します。

アビリティ入力変数

接続する現在のワークフロー変数

usd

price_usd

rate

rate

2つの変数を両方接続しないと、アビリティは正常に実行されません。

接続が完了すると、price_usdrate の値がアビリティ内部の usdrate に渡されます。アビリティの実行が完了すると、出力変数(krw)が 出力 領域に表示され、アビリティノードの出力として渡されます。

変数接続の重要性 アビリティノードは、現在のワークフローと読み込んだアビリティの間の「橋渡し」の役割を果たします。外側(現在のワークフロー)の変数名と内側(アビリティ)の変数名が異なっていても、変数入力で対応付けることで正確に値を渡せます。

B-5ステップ: 終了ノードを接続する

アビリティノードのアウトピン(Out-Pin)を終了ノードのインピン(In-Pin)にエッジで接続します。

終了ノードをダブルクリックして出力領域に price_krw (Integer) 変数を追加し、アビリティノードの出力変数 krw をドラッグ&ドロップで接続します。

変数名

price_krw

Integer(整数)

これで「商品価格をKRWに変換する」ワークフローが完成しました。

B-6ステップ: アビリティテストでワークフロー全体を実行する

キャンバス右下の テスト実行(RUN TEST) ボタンをクリックして、アビリティテスト(Ability Test)を実行します。

price_usd 入力欄に金額(例: 20)、rate 入力欄に為替レート(例: 1517.1)を入力して実行すると、アビリティノードが USD→KRW 為替変換器 を実行し、結果が返されます。

入力 (price_usd, rate)

出力 (price_krw)

20, 1517.1

30342

終了ノードの出力で price_krw の値が正常に返ることを確認します。

次のステップ

🎉 おめでとうございます! Agentria を使って「アビリティノード活用」ワークフローを完成させました。

アビリティノード は、よく使う機能をアビリティとして作成し、複数のワークフローでノードとして再利用できるようにします。アビリティのロジックを修正する必要がある場合は、該当アビリティを更新して新しいバージョンを作成し、アビリティノード側でバージョンを切り替えてください。

Agentria は、アイデアを現実に変える可能性の空間です。

あなたの想像力によって、ワークフローは無限に拡張できます。