1. システム内蔵変数
内蔵変数:ユーザー入力、会話情報、前段ノードの出力、環境設定などを参照するための変数使用構文
{{var}}:変数参照{{var:defautValue}}:変数参照+デフォルト値設定{{@var}}:変数参照(変数が存在しない場合でも、この式{{@var}}をそのまま表示)
内蔵変数を使うケース
- ユーザーの入力(テキスト/ファイル/画像など)を次のノードに渡したい
- ノードの実行結果(検索結果、抽出値)を後続処理で再利用したい
- 条件分岐で「入力がある/ない」「スコアが閾値以上」などを判定したい
- 本番/検証環境でホストやキーを切り替えたい
- ログ(traceId、失敗理由、実行時間)を残したい
日付・時刻
| 変数 | 説明 | 例 |
|---|---|---|
{{cTime}} | 現在日時 yyyy-MM-dd HH:mm:ss | 2024-05-20 14:30:00 |
{{cDate}} | 現在日付 yyyy-MM-dd | 2024-05-20 |
{{cYear}} | 今年 yyyy | 2024 |
{{cMonth}} | 今月 | 05 |
{{cDay}} | 今日 | 20 |
{{cHHmmss}} | 現在時刻 HH:mm:ss | 14:30:00 |
{{cMills}} | 現在タイムスタンプ(ミリ秒) | 1716186600000 |
{{cWeekdayNum}} | 曜日(数値) | 1 (月曜) |
{{cWeekdayEn}} | 曜日(英語) | Monday |
{{cWeekdayEn2}} | 曜日(英語略) | Mon |
{{cWeekdayCn}} | 曜日(中国語) | 星期一 |
入力・システム情報
| 変数 | 説明 |
|---|---|
{{_input}} | 全入力パラメータ情報 |
{{_state}} | 入力ステート情報 |
{{userChatInput}} | 入力テキスト |
{{_images_}} | 入力画像情報 |
{{_files_}} | 入力ファイル情報 |
{{$db_type}} | Agent に設定されたDB種別 |
{{$db_schema}} | Agent に設定されたDBテーブル構造 |
{{$kbIdList}} | ユーザーが選択したナレッジベースID一覧 |
{{systemContext}} | 現在のシステム環境とログインユーザー情報(v1.9.0.0+) |
systemContext の例
systemContext の例
2. システム内蔵関数
内蔵関数:文字列処理、JSON変換、日付計算、配列操作など、よく使う処理をノーコードで実行できる関数使用構文
[@["functionName", "args1", "args2",....]@]内蔵関数を使うケース
一般的には、「正規表現」モジュールで対応できることが多いです。日付・時刻操作
日付・時刻操作
| 関数名 | 説明 | 構文例 |
|---|---|---|
DateFormatFromMills | 日付フォーマット(ミリ秒) | [@["DateFormatFromMills","your mills", "your formats"]@] |
DateFormatFromSeconds | 日付フォーマット(秒) | [@["DateFormatFromSeconds","your seconds", "your formats"]@] |
DateStrToMills | 日付文字列 → ミリ秒 | [@["DateStrToMills","your date", "your date format"]@] |
DateStrToSeconds | 日付文字列 → 秒 | [@["DateStrToSeconds","your date", "your date format"]@] |
GetDateFromNow | 日付の加減算 | [@["GetDateFromNow","your add/substract days"]@] |
DateStrReFormat | 日付フォーマット変換 | [@["DateStrReFormat","your date", "target fmt", "source fmt"]@] |
JionlpParseTime | 自然言語→日付解析 | [@["JionlpParseTime","今日"]@] |
文字列・正規表現
文字列・正規表現
| 関数名 | 説明 | 構文例 |
|---|---|---|
ExtractAroundStr | 囲い文字列の抽出 | [@["ExtractAroundStr","text", "start", "end", "containsBorder"]@] |
ExtractStrByRegex | 正規表現(最初の一致) | [@["ExtractStrByRegex","total 100", "\\d+"]@] |
ExtractArrByRegex | 正規表現(全ての一致) | [@["ExtractArrByRegex","text", "regex"]@] |
Replace | 文字列置換 | [@["Replace","text", "old", "new"]@] |
ReplaceRegex | 正規表現置換 | [@["ReplaceRegex","text", "regex", "new"]@] |
EscapeStr | 文字列エスケープ | [@["EscapeStr","text"]@] |
Concat | 文字列連結 | [@["Concat","t1","t2"...]@] |
Md5Digest | MD5ハッシュ | [@["Md5Digest","text"]@] |
正規表現リファレンス
JSON操作
JSON操作
| 関数名 | 説明 | 構文例 |
|---|---|---|
ExtractJsonObj | JSONオブジェクト抽出 | [@["ExtractJsonObj","jsonStr", "$.path"]@] |
ExtractJsonArr | JSON配列抽出 | [@["ExtractJsonArr","jsonStr", "$.path"]@] |
ExtractJsonByRegex | 正規表現でJSON抽出 | [@["ExtractJsonByRegex","text", "key1", "reg1"...]@] |
ConcatArray | 配列連結 | [@["ConcatArray","arr1","arr2"...]@] |
MergeObject | オブジェクト結合 | [@["MergeObject","obj1","obj2"...]@] |
JSONPath リファレンス
ユーティリティ・その他
ユーティリティ・その他
| 関数名 | 説明 | 構文例 |
|---|---|---|
UrlEncode | URLエンコード | [@["UrlEncode","text", "UTF-8"]@] |
UrlDecode | URLデコード | [@["UrlDecode","text", "UTF-8"]@] |
AutoSpecifyResponseLanguage | 返信言語自動判定 | [@["AutoSpecifyResponseLanguage","text", "JP"]@] |
RSAEncode | RSA暗号化 | [@["RSAEncode","text", "publicKey"]@] |
CaseWhenThen | 条件分岐で代入 | [@["CaseWhenThen","val", "when1", "then1"...]@] |
CaseWhenThenIgnoreCase | 条件分岐(大小無視) | [@["CaseWhenThenIgnoreCase","val", "when1", "then1"...]@] |
EqualsAny | 候補のいずれかと等しい | [@["EqualsAny","val", "cand1", "cand2"]@] |
EqualsAnyIgnoreCase | 候補のいずれかと等しい(大小無視) | [@["EqualsAnyIgnoreCase","val", "cand1", "cand2"]@] |
ParseDocByTika | Tikaでファイル解析 | [@["ParseDocByTika","FileInput[]"]@] |
FetchUrl | Webページ取得 | [@["FetchUrl","UrlFetchReq[]"]@] |
3. 内蔵コマンド(Command)
メモリ変数に「コマンド信号」を送ることで、プラットフォーム内部サービスと連携します。コマンド一覧
AddMessageMeta パラメータ詳細
| パラメータ | 説明 |
|---|---|
whenComplete | コンポーネント返信完了時のみ付与するか(デフォルト false) |
beforeMetadata | 前置メタデータ(最初のトークン生成時に付与、非必須) |
metadata | メタデータ(ストリーム中常に付与、whenComplete=true の場合は完了時のみ) |
afterMetadata | 後置メタデータ(完了時に付与、非必須) |
4. コードブロック埋め込み
params['yourVarNameToGet'] でメモリ変数を取得し、return で結果を返します。
5. 使い方のコツ
5.1 プロンプト例
Stable Diffusion Prompt Assistant
Stable Diffusion Prompt Assistant
5.2 Agentサンプル(コードブロック埋め込み)
サンプルJSON (クリックして展開)
サンプルJSON (クリックして展開)
5.3 ナレッジベース高度検索 (Advanced Query)
ナレッジベース検索コンポーネントに入力することで、並列リコールや重み付けなどの高度な制御が可能です。フィールド説明
| フィールド | 説明 |
|---|---|
keywords | 検索キーワード |
overwrite | 知識ベース検索コンポーネントで選択された知識ベースを上書きするかどうか(デフォルト true)。false の場合、選択された知識ベースと kbIdList をマージします。 |
kbIdList | 指定する知識ベースIDの全セット。searchGroups がある場合、各 searchGroups との共通部分が取られます。{{$kbIdList}} で動的に指定可能。 |
searchGroups[] | 知識ベースをグループ化して並列検索するための配列 |
searchGroups[].kbIdList | そのグループで検索対象とする知識ベースID |
searchGroups[].topK | そのグループのリコール数 |
searchGroups[].fileNameKeywords | ファイル名キーワードによる曖昧検索(例: %年%月%) |
searchGroups[].fileNameKeywordsTopK | ファイル名キーワードにヒットしたファイルの関連スライスリコール数。デフォルトは topK と同じ。 |
similar | 類似度閾値(デフォルトはコンポーネント設定と一致) |
vectorSimilarWeight | ベクトル類似度の重み(デフォルトはコンポーネント設定と一致) |
enableRerank | リランキングを有効にするか(true/false、デフォルトはコンポーネント設定と一致) |
rerankModelType | リランキングモデル(デフォルトはコンポーネント設定と一致) |
rerankSimilarLimit | リランキング閾値(デフォルトはコンポーネント設定と一致) |
rerankTopK | リランキングリコール数(デフォルトはコンポーネント設定と一致) |
5.4 データ型変換
「正規表現」モジュールで変換可能です。5.5 データ処理プロトコル (v1.9.0.0+)
以下のモジュールでサポートされています:定型回答、コードブロック、カスタムコンポーネントの出力フィールド。 共通フィールド仕様| フィールド | 説明 |
|---|---|
schema | 固定値 schema-v1 |
type | データタイプ (text, file, image, websearch) |
needSendMessage | メッセージを送信するかどうか (true/false) |
needEncryptFileUrl | ファイルURLを暗号化するかどうか(暗号化サービス有効時のみ) |
needFullFileUrl | ファイルの絶対パスを返すかどうか(デフォルト false = 相対パス) |
value | データ値 |
- text: 文字列を直接代入
- file / image: JSONオブジェクト
{"fileName": "...", "fileUrl": "..."}fileUrlの対応プロトコル:- 一時ファイル:
tmpfile:/mindSynth/xxxx.docx - 永続ファイル:
psfile:/mindSynth/xxxx.docx - Base64:
data:xxxxx - ネットワークURL:
http://xxxx,https://xxxx
- 一時ファイル:
- Text
- File
- Image
- WebSearch
5.6 Excelエクスポートテンプレート (XLSX)
プレースホルダ
{{var}}: 単純変数{{list.[0].var}}: 配列要素{{a.b.c}}: ネスト
画像挿入
{{@imgurl}}{{@item.img}}(URL または Base64)
テンプレート
ここをクリックして参考用テンプレートをダウンロード
| タイプ | 構文 | 特徴 |
|---|---|---|
| 縦方向 | <for item in list>...</for> | - 配列長だけ自動的に行が生成されます - 複数行テンプレートに対応 - ループ内でのネスト参照が可能 |
| 横方向 | <hfor item in list>...</hfor> | - データが右方向に展開されます - 表頭や横方向データ表示に最適 |
5.7 Wordドキュメント生成
poi-tl Documentation を参照してください。5.8 PPT生成
入力されたJSONフィールドを、あらかじめアップロードされたテンプレートにマッピングして、PPTファイルを生成します。1. 入力JSONタイプ(例)
2. テンプレート
注記: テンプレート(pptx)内には、あらかじめ
{{var1}} のような形式でプレースホルダを記述しておく必要があります。