ワークフローを作成・追加する
InfiniCloudAIでは、標準で用意されているワークフローをコピーして、独自のワークフローを作成・追加できます。
ワークフローは、どこから実行するか、どのような入力を受け付けるか、どのスキルを使用するか、処理結果をどこへ保存するかなどを定義したものです。
作成したワークフローは、知能ドメイン共通または自分専用として登録できます。配置場所によって、利用できる範囲と必要な権限が異なります。
- ワークフローを作成する
- 標準ワークフロー
- ワークフローの設定を変更する
- 入力ファイルを指定する
- メニューやコマンドを変更する
- スキルを変更する
- 入力・出力を変更する
- ワークフローの配置場所
- 標準ワークフローを上書きする
- 登録状況を確認する
ワークフローを作成する
独自のワークフローを作成する場合は、標準ワークフローをコピーして編集する方法がおすすめです。
- 「スキルとワークフロー管理」を開きます。
- 「登録情報を開く」を選択します。
- 作成したい用途に近い標準ワークフローを探します。
- 標準ワークフローのYAMLファイルをダウンロードします。
- ダウンロードしたYAMLファイルの名前を変更し、独自ワークフローの元ファイルとして使用します。
- YAMLファイルを開き、workflow_id を独自の名前に変更します。
- name や description を必要に応じて変更します。
- 必要に応じて、メニュー名やコマンド名、入力項目、使用するスキル、出力形式などを変更します。
- 作成したYAMLファイルを、ストレージ領域の workflows/ フォルダにアップロードします。
標準ワークフロー
標準ワークフローには、ファイルの要約、議事録の作成、差分対応表の作成、教師データの作成など、用途に応じたものが用意されています。
利用できる標準ワークフローと、それぞれの用途については「利用できるワークフロー」を参照してください。
ワークフローの設定を変更する
ワークフローでは、主に以下の内容を設定できます。
| 設定項目 | 内容 | 必須 |
|---|---|---|
| kind | ワークフローを指定 | ○ |
| workflow_id | ワークフローを識別するためのID | ○ |
| task_type | ワークフローの実行方式。下記の表を参照 | ○ |
| description | ワークフローの説明 | |
| doc_ref | 説明用Markdownファイルへの相対パス | |
| ui | メニューや実行ダイアログの設定 | ○ |
| input | 入力ファイルや入力フォルダの設定 | |
| workflow | 実行するスキルや処理の順番 | ○ |
| side_effect_level | ファイルへの書き込みなど、副作用の種類 | ○ |
| approval_policy | 実行時の承認方法 | ○ |
| triggers | 自動実行などのトリガーを設定 |
実行方式(task_type)
task_type では、ワークフローで行う処理の種類を指定します。
利用できる task_type は下記の一覧を参照してください。
| 値 | 用途 | 主な実行方法 |
|---|---|---|
| paste-sft-import | 貼り付けた本文から、SoT教師データのdraftを作成する | 教師データ管理の「取り込み ▼」 |
| correction-draft | 会話中の訂正内容から、SoT教師データのdraftを作成する | チャット /correction-draft |
| file-loop-import | フォルダ内の各ファイルから、SoT教師データのdraftを作成する | 手動実行・自動トリガー |
| file-loop-transform | フォルダ内の各ファイルを個別に処理し、ファイルとして出力する | チャット /command・提案 |
| file-set-transform | フォルダ内の複数ファイルをまとめて処理し、1つの成果物として出力する | チャット /command・提案 |
入力ファイルを指定する
フォルダ内のファイルを処理するワークフローでは、input.source で処理対象のファイルを指定します。
input: source: type: folder roots: [domain_files] default: domain_files include: ["*.pdf", "*.docx", "*.txt"] max_files: 50
| 設定 | 説明 |
|---|---|
| type | folder を指定します。フォルダ内のファイルを読み込みます。 |
| roots | ファイルを読み込む場所を指定します。 domain_files、domain_import、user_suhome のいずれかを1つ以上指定します。 |
| default | ファイルを読み込む場所の初期値を指定します。 roots に指定した場所のいずれかを指定します。 |
| include | 処理対象とするファイルの拡張子を指定します。 |
| max_files | 1回の実行で処理する最大ファイル数を指定します。1~1000の範囲で指定でき、省略した場合は100ファイルです。 |
roots に指定できる場所
| 値 | 読み込み対象 |
|---|---|
| domain_files | 知能ドメインのファイル領域 |
| domain_import | 知能ドメインのインポート領域 |
| user_suhome | 個人のファイル領域 |
メニューやコマンドを変更する
チャットから実行するワークフローでは、ui.menu でメニューに表示する名称や /command を設定できます。
例えば、以下のように設定すると、チャットで /sales-summary-docx と入力して実行できます。
ui:
menu:
group: transform
command: sales-summary-docx
label: "営業資料要約 → Word"
実行時に入力項目を表示する場合は、ui.dialog.fields に設定します。
現在利用できる入力項目には、テキストを入力する textarea と、フォルダを指定する folder_picker があります。
スキルを変更する
ワークフローでは、workflow.steps[].skill に使用するスキルの skill_id を指定します。
workflow:
steps:
- id: generate
kind: llm_transform
skill: summarize-sales
独自に作成したスキルをワークフローで使用する場合は、作成したスキルの skill_id を指定します。
スキルの作成方法については、「スキルを作成・追加する」を参照してください。
スキルを変更することで、同じワークフローでもAIに行わせる処理や出力内容を変更できます。
入力・出力を変更する
input.source では、ワークフローで読み込むファイルの場所や対象ファイルを設定できます。
また、workflow.steps の output_adapter で、処理結果の保存方法を設定できます。
例えば、以下のように設定すると、処理結果をWord形式でドメインのファイル領域に保存します。
- id: write kind: output_adapter adapter: file_output adapter_params: format: docx dest: domain_files
出力ファイルは通常、対象となる領域の output/ フォルダに保存されます。
ワークフローの配置場所
作成したYAMLファイルは、利用範囲に応じて以下へ配置します。
| 配置先 | 利用者 | 配置場所 | 必要な権限 |
|---|---|---|---|
| アカウントのストレージ(SUHOME) | 自分のみ | アカウント設定 > ユーザーストレージ領域を確認 >「workflows」フォルダ | ― |
| ドメインのストレージ | ドメインに所属するメンバー | オプション > 知能ドメイン管理 > 知識の投入 > ファイル取り込み用ストレージ >「workflows」フォルダ | 対象ドメインの「編集」権限 |
標準ワークフローを上書きする
標準ワークフローと同じ workflow_id を設定したYAMLファイルを配置すると、そのスコープで標準ワークフローを上書きできます。
例えば、標準の domain-folder-summarize-md を変更する場合は、以下のように設定します。
workflow_id: domain-folder-summarize-md
標準ワークフローとは別のワークフローとして追加する場合は、新しい識別名に変更します。
workflow_id: sales-summary-md
同じ識別名を使用すると標準ワークフローを上書きし、別の識別名を使用すると標準ワークフローを残したまま新しいワークフローとして追加できます。
登録状況を確認する
YAMLファイルをストレージ領域に配置したら、「スキルとワークフロー管理」を開き、作成したワークフローが登録されていることを確認します。
エラーがある場合は、「登録できなかった定義」に理由が表示されます。
エラーのあるワークフローは、実行メニューなどから利用できません。
また、ワークフローをチャットから実行できるようにする場合は、ui.menu.command などの設定が正しく登録されていることを確認してください。