Hitachi

JP1 Cloud Service システム管理 生成AI連携 利用ガイド


1.8.2 生成AI連携呼び出しコマンドの仕様

〈この項の構成〉

(1) 機能

生成AI連携呼び出しコマンドのコマンド名は"ai_assistant_cli"です。

コマンドライン引数で指定された質問文を生成AI連携基盤へ送信し,問い合わせ機能を用いて生成AIから回答を取得します。

本コマンドにより生成AI連携基盤の問い合わせ機能を呼び出した場合,1.7ログ出力機能により,チャット画面を介して問い合わせ機能を呼び出した場合と同様のログが出力されます。

注意事項
  • 本コマンドを用いた生成AI連携基盤への問い合わせの同時実行上限数は1です。上限を超えて実行要求を行った場合,エラーとなります。

  • 本コマンドで出力できる回答の最大文字数は4096文字です。生成AI連携基盤から4096文字以上の回答が返却された場合,4096文字になるように打ち切って出力します。

  • 本コマンドを利用する場合は環境変数ファイルを指定してください。指定方法は使用例をご確認ください。

(2) 入力形式

生成AI連携呼び出しコマンドは,以下のような形式で呼び出します。

ai_assistant_cli --query <質問文> --workflow <ワークフロー名>
 --read_timeout <実行タイムアウト値> --user <ユーザー名>

各引数の詳細な説明は以下の通りです。

--query 質問文 (必須)
 生成AI連携基盤に問い合わせを行う際の質問文を設定してください。
 指定可能な値:1〜2048文字(UTF-8)
 注意: 本コマンド呼び出し元でエスケープが必要な文字が存在する場合は、適切にエスケープ処理を行い、想定通りの質問文が引数に指定されるようにしてください。例えば、シェルスクリプトで本コマンドの呼び出しを実装する場合は、実装の方式によってはダブルクォーテーションをエスケープして、シェルスクリプトとして正しく実装する必要があります。
 
--workflow ワークフロー名 (任意)
 生成AI連携基盤に問い合わせを行う際に使用するワークフロー名を設定してください。デフォルト値は knowledge_search_workflow です。
 注意: 運用管理データ取得エージェントを含むワークフローはサポートされません。指定されたワークフローに運用管理データ取得エージェントが含まれている場合、エラー(RC: 11)となります。
 指定可能な値:半角英数字(小文字)とアンダースコア 1〜128文字(UTF-8)
 
--read_timeout タイムアウト値 (任意)
 生成AI連携基盤へのリクエストの読み取りタイムアウト値です。デフォルト値は150 秒です。
 注意: 150秒未満の値を指定した場合、read_timeout値に達した時点で生成AI連携基盤側では処理を継続している可能性があります。その場合、時間をおかずに再度生成AI連携呼び出しコマンドを実行すると、同時実行数の上限に達してエラー(RC: 14)になります。
 指定可能な値:30〜600(UTF-8)
 
--user ユーザー名 (任意)
 生成AI連携基盤のログ上で、呼び出し元の識別情報として使用されるユーザー名です。
 デフォルト値はコマンド名 ai_assistant_cliです。
 指定可能な値:半角英数字(小文字)とアンダースコア 1〜31文字(UTF-8)

(3) 出力形式

生成AI連携呼び出しコマンドは、以下のスキーマに従ったJSON形式の文字列(UTF-8)を標準出力(エラーが発生した場合は標準エラー出力)へ出力します。

{
    "schema_version": "出力スキーマのバージョン"
    "status": "実行ステータス"
    "ai_response": {
        "invoke_id": "問い合わせ識別子"
        "answer": "生成AIの回答"
    }
    "error": {
        "message": "エラーメッセージ"
}

各パラメータの詳細な説明は以下の通りです。

#

パラメータ

データ型

必須/任意

範囲

説明

1

schema_version

文字列

必須

-

出力スキーマのバージョン情報です。

2

status

文字列

必須

-

実行ステータス。success,errorのいずれかを返します。

3

ai_response

オブジェクト

任意

-

ai_responseオブジェクト。status:successの時のみ存在します。

4

error

オブジェクト

任意

-

errorオブジェクト。status:errorの時のみ存在します。

ai_responseオブジェクト

5

invoke_id

文字列

必須

0文字 <x<= 36文字

生成AI連携基盤が発行する問い合わせ実行の識別子です。

6

answer

文字列

必須

0文字 <=x<= 4096文字

問い合わせの回答です。

errorオブジェクト

7

message

文字列

必須

0<x

エラー内容を示すメッセージです。

(4) エラーメッセージ

本コマンドにおいて,エラーが発生した場合のメッセージおよび終了ステータスは,以下の通りです。

#

メッセージ内容

終了ステータス

契機

想定される対処

1

生成AI連携呼び出しコマンドの引数が正しくありません。引数を見直してください。(RC: <戻り値>, 引数名: "<引数名>")

10

コマンド引数が不正なとき

コマンド引数を見直してください。

2

生成AI連携基盤でエラーが発生しました。詳細は生成AI連携基盤のログを確認してください。(RC: <戻り値>, レスポンスタイムスタンプ: "<timestamp>", 生成AI連携基盤メッセージ(概要): "<メッセージ>", ワークフロー: "<ワークフロー識別子>", 質問文: "<質問文>")

11

生成AI連携基盤の問い合わせ機能で想定されるエラー(設定・認証エラー,外部サービスのエラー等)が発生したとき

生成AI連携基盤のログを確認し,生成AI連携基盤の設定または外部サービスの設定を見直してください。一時的なエラーである場合は、再度実行してください。

3

生成AI連携基盤の処理が規定時間内に完了しませんでした。使用するワークフローまたは質問文を確認してください。(RC: <戻り値>, レスポンスタイムスタンプ: "<timestamp>", ワークフロー: "<ワークフロー識別子>", 質問文: "<質問文>")

12

生成AI連携基盤の処理がタイムアウトしたとき

使用するワークフローもしくは質問文を見直してください。

4

生成AI連携呼び出しコマンドに指定された読み取りタイムアウト時間内に生成AI連携基盤から応答が得られませんでした。(RC: <戻り値>, ワークフロー: "<ワークフロー識別子>", 読み取りタイムアウト値: <読み取りタイムアウト値>, 質問文: "<質問文>")

13

生成AI連携呼び出しコマンドで指定した読み取りタイムアウト時間以内に生成AI連携基盤の処理が完了しなかったとき

質問文,使用するワークフロー,または読み取りタイムアウト値を見直してください。

5

生成AI連携呼び出し処理の同時実行数上限を超過しました。時間をおいて再度実行してください。(RC:<戻り値>, レスポンスタイムスタンプ: "<timestamp>", 質問文: "<質問文>")

14

生成AI連携基盤への問い合わせの同時実行数上限を超過したとき

時間をおいて再度実行してください。必要に応じてチャット画面から問い合わせしてください。

6

生成AI連携基盤へのリクエストのバリデーションに失敗しました。引数に指定した値を見直してください。(RC:<戻り値>, レスポンスタイムスタンプ: "<timestamp>", ワークフロー: "<ワークフロー識別子>", ユーザー名: "<ユーザー名>", 読み取りタイムアウト値: <読み取りタイムアウト値>, 質問文: "<質問文>")

15

生成AI連携基盤へのリクエストが不正な形式であるとき

リクエスト内容を見直してください。

7

生成AI連携呼び出しコマンドによる呼び出しに失敗しました。(RC: <戻り値>)

254

生成AI連携基盤の接続タイムアウトもしくは,接続先設定が不正なとき

時間をおいて再度実行してください。

頻発する場合は,サポート窓口にご連絡お願いします。

8

生成AI連携基盤で予期せぬエラーが発生しました。(RC: <戻り値>, 発生日時: "<レスポンスヘッダのDate>", ワークフロー: "<ワークフロー識別子>", 質問文: "<質問文>")

255

生成AI連携基盤で想定されないエラーが発生したとき

時間をおいて再度実行してください。

頻発する場合は,サポート窓口にご連絡お願いします。

9

生成AI連携呼び出しコマンドで予期せぬエラーが発生しました。(RC: <戻り値>)

99

生成AI連携呼び出しコマンド内で想定されないエラーが発生したとき

時間をおいて再度実行してください。

頻発する場合は,サポート窓口にご連絡お願いします。



目次