📊 1. システム組み込み変数
詳細を表示
詳細を表示
使用方法
{{var}}: 変数を参照します。{{var:defaultValue}}: 変数を参照し、存在しない場合のデフォルト値を設定します。{{@var}}: 変数を参照しますが、変数が存在しない場合でもこの式{{@var}}をそのまま表示します。
| 変数名 | 説明 | 例 |
|---|---|---|
{{cTime}} | 現在の日時(yyyy-MM-dd HH:mm:ss) | 2023-04-01 12:30:45 |
{{cDate}} | 現在の日付(yyyy-MM-dd) | 2023-04-01 |
{{cYear}} | 現在の年(yyyy) | 2023 |
{{cMonth}} | 現在の月 | 04 |
{{cDay}} | 現在の日 | 01 |
{{cHHmmss}} | 現在の時刻(HH:mm:ss) | 12:30:45 |
{{cMills}} | 現在のUNIXタイムスタンプ(ミリ秒) | 1680345045000 |
{{cWeekdayNum}} | 曜日(数字) | 1(月)~7(日) |
{{cWeekdayEn}} | 曜日(英語) | Monday |
{{cWeekdayEn2}} | 曜日(英語略語) | Mon |
{{cWeekdayCn}} | 曜日(中国語) | 星期一 |
{{_input}} | すべての入力パラメータ情報 | - |
{{_state}} | 入力状態パラメータ情報 | - |
{{userChatInput}} | ユーザーの入力テキスト情報 | - |
{{_images_}} | 入力画像パラメータ情報 | - |
{{_files_}} | 入力ファイルパラメータ情報 | - |
{{$db_type}} | エージェントが参照しているデータベースの種類 | - |
{{$db_schema}} | エージェントが参照しているデータベースのスキーマ情報 | - |
{{$kbIdList}} | ユーザーが選択したナレッジベースIDリスト | - |
{{systemContext}} | 現在のシステム環境とログインユーザー情報 (v1.9.0.0+) | - |
systemContext の例
systemContext の例
🧮 2. システム組み込み関数
詳細を表示
詳細を表示
使用方法
関数呼び出し形式:[@["関数名", "引数1", "引数2", ...]@]🕒 日時操作
🕒 日時操作
DateFormatFromMills
ミリ秒を日時にフォーマット
[@["DateFormatFromMills", "ミリ秒", "フォーマット"]@]DateFormatFromSeconds
秒を日時にフォーマット
[@["DateFormatFromSeconds", "秒", "フォーマット"]@]DateStrToMills
日時文字列をミリ秒に変換
[@["DateStrToMills", "日時文字列", "フォーマット"]@]DateStrToSeconds
日時文字列を秒に変換
[@["DateStrToSeconds", "日時文字列", "フォーマット"]@]GetDateFromNow
現在日時からの加減算(日数)
[@["GetDateFromNow", "加減算日数"]@]DateStrReFormat
日時フォーマット変換
[@["DateStrReFormat", "日時文字列", "変換後形式", "変換前形式(任意)"]@]JionlpParseTime
自然言語を日時に変換
[@["JionlpParseTime", "今日"]@]📝 文字列操作
📝 文字列操作
ExtractAroundStr
指定文字列間のテキスト抽出
[@["ExtractAroundStr", "テキスト", "開始文字", "終了文字", "境界を含むか(true|false)"]@]ExtractStrByRegex
正規表現で最初にマッチした文字列を抽出
[@["ExtractStrByRegex", "テキスト", "正規表現"]@]
正規表現チュートリアルExtractArrByRegex
正規表現でマッチしたすべての文字列を抽出(配列)
[@["ExtractArrByRegex", "テキスト", "正規表現"]@]Replace
文字列置換
[@["Replace", "テキスト", "旧文字列", "新文字列"]@]ReplaceRegex
正規表現による置換
[@["ReplaceRegex", "テキスト", "正規表現", "新文字列"]@]EscapeStr
文字列のエスケープ(JSON用など)
[@["EscapeStr", "テキスト"]@]例:
入力: text={"dataList":[{"name":"東京支店","msg":"売上報告"}]}
実行: [@["EscapeStr","{{text}}"]@]
結果: {\"dataList\":[{\"name\":\"東京支店\",\"msg\":\"売上報告\"}]}Concat
文字列結合
[@["Concat", "テキスト1", "テキスト2", ...]@]Md5Digest
MD5ハッシュ生成
[@["Md5Digest", "テキスト"]@]🔗 JSON & URL操作
🔗 JSON & URL操作
ExtractJsonObj
JSONオブジェクト抽出 (JSONPath)
[@["ExtractJsonObj", "JSONテキスト", "JSONPath"]@]
JSONPath GuideExtractJsonArr
JSON配列抽出
[@["ExtractJsonArr", "JSONテキスト", "JSONPath"]@]ExtractJsonByRegex
正規表現でJSON抽出
[@["ExtractJsonByRegex", "テキスト", "key1", "regex1", "key2", "regex2"]@]UrlEncode
URLエンコード
[@["UrlEncode", "テキスト", "文字コード(デフォルトUTF-8)"]@]UrlDecode
URLデコード
[@["UrlDecode", "テキスト", "文字コード(デフォルトUTF-8)"]@]MergeObject
データオブジェクトの結合
[@["MergeObject", "obj1", "obj2", ...]@]⚖️ 条件分岐・その他
⚖️ 条件分岐・その他
AutoSpecifyResponseLanguage
応答言語の自動指定
出力例:
[@["AutoSpecifyResponseLanguage", "テキスト", "デフォルト言語(EN/CN)"]@]RSAEncode
RSA暗号化
[@["RSAEncode", "テキスト", "公開鍵"]@]CaseWhenThen
条件分岐
[@["CaseWhenThen", "値", "条件1", "結果1", "条件2", "結果2", ..., "デフォルト"]@]CaseWhenThenIgnoreCase
条件分岐(大文字小文字無視)
[@["CaseWhenThenIgnoreCase", "値", "条件1", "結果1", ...]@]EqualsAny
いずれかと一致するか
[@["EqualsAny", "値", "候補1", "候補2", ...]@]EqualsAnyIgnoreCase
いずれかと一致するか(大文字小文字無視)
[@["EqualsAnyIgnoreCase", "値", "候補1", "候補2", ...]@]ConcatArray
配列結合
[@["ConcatArray", "配列1", "配列2", ...]@]ParseDocByTika
Tikaによるファイル解析
[@["ParseDocByTika", "FileInput[]"]@]例:
入力: [ { "fileName": "製品仕様書.docx", "fileType": "docx", "fileId": "..." } ]
出力: [{"content":"製品名:スマートウォッチ X1 主な機能:心拍計測、GPS搭載、防水機能...","fileId":"...","fileName":"製品仕様書.docx","success":true}]FetchUrl
Webページ内容の取得
[@["FetchUrl", "UrlFetchReq[]"]@]入力例:💻 3. 組み込みコマンド (Command)
詳細を表示
詳細を表示
メモリ変数にコマンドシグナルを送信することで、プラットフォーム内部サービスと対話できます。
3.1 呼び出し方法
方法1:コマンドシグナルの送信- コマンドJSONを構築
- メモリ変数(キーは
$command_xxxで始まる必要あり)に接続。 - 結果取得:
{{$command_xxx.result}}
3.2 コマンドリスト
text2agent
エージェント作成
{"command":"text2agent", "data": {"agentJson":[]}}
結果: エージェントID, 名前, アバターなどuserKb
ユーザーナレッジベース一覧
{"command":"userKb", "data": {}}
結果: ナレッジベースリストAddMessageMeta
メッセージメタ情報追加
ストリーミング出力にメタデータを付与します。コマンドパラメータ:パラメータ説明:
whenComplete: 某コンポーネントの応答が完了したときのみメタ情報を付与するか(デフォルト:false)beforeMetadata: 前置メタデータ。コンポーネントが最初のトークンを返す時に付与される元情報(任意)。ユーザーが内部の属性と値を自由に定義できますmetadata: メタデータ。すべてのストリーミング応答プロセスで付与される元情報。whenComplete=trueの場合は、コンポーネントの応答完了時のみ付与されます(任意)。ユーザーが内部の属性と値を自由に定義できますafterMetadata: 後置メタデータ。コンポーネントの応答完了時のみ付与される元情報(任意)。ユーザーが内部の属性と値を自由に定義できます
metaMessage フィールドが追加され、システム組み込み属性とユーザー定義メタデータが含まれます。コマンド結果: なし🧩 4. コードブロック埋め込み
💡 5. 使用テクニック
詳細を表示
詳細を表示
5.1 プロンプト例(画像生成)
Stable Diffusion用のプロンプトを生成するアシスタントの例。Stable Diffusion Prompt Assistant
Stable Diffusion Prompt Assistant
5.2 エージェント例
コードブロックを使用して、ユーザー入力を加工したり、外部APIの結果を処理するフローの例。Agent Flow JSON Example
Agent Flow JSON Example
5.3 ナレッジベース高度な検索
ナレッジベース検索コンポーネントで、JSONによる高度な設定が可能です。検索設定例:keywords: 検索クエリoverwrite: ナレッジベース検索コンポーネントで選択されたナレッジベースを上書きするか。デフォルトtrue。falseの場合、コンポーネントで選択されたナレッジベースとkbIdListがマージされますkbIdList: 指定するナレッジベースIDの全体セット。searchGroupsがある場合、各グループと交差してグループ化されます。固定指定も可能ですし、{{$kbIdList}}でユーザーが選択したナレッジベースIDリストを動的に取得することもできますsearchGroups[]: グループ配列。ナレッジベースをグループ化して並列検索しますkbIdList[]: このグループのナレッジベースID配列topK: 召回数(取得する結果の数)fileNameKeywords[]: ファイル名キーワードによる曖昧検索を指定。%は曖昧マッチング部分を表します。例:%年%月%晩峰短信fileNameKeywordsTopK: 指定ファイル関連チャンク召回数。デフォルトはtopKと同じ。fileNameKeywordsで指定されたファイルから召回するチャンクの数を表します。この数がtopKより小さい場合、(topK - fileNameKeywordsTopK)は同じライブラリ内の非指定ファイルから召回するチャンクの数を表しますsimilar: 類似度閾値。デフォルトはナレッジベース検索コンポーネントの値と一致vectorSimilarWeight: ベクトル類似度重み。デフォルトはナレッジベース検索コンポーネントの値と一致enableRerank: 再ランキングスイッチ(true/false)。デフォルトはナレッジベース検索コンポーネントの値と一致rerankModelType: 再ランキングモデル。デフォルトはナレッジベース検索コンポーネントの値と一致rerankSimilarLimit: 再ランキング閾値。デフォルトはナレッジベース検索コンポーネントの値と一致rerankTopK: 再ランキング召回数。デフォルトはナレッジベース検索コンポーネントの値と一致
5.4 データ型変換
情報処理コンポーネントを使用して変換します。- 画像URL → 画像情報:
[{"url":"http://あなたの画像URL"}] - ファイルURL → ファイル情報:
[{"fileName": "ファイル名.docx", "fileUrl": "https://あなたのファイルURL"}]
5.5 データ処理プロトコル (v1.9.0.0+)
特定のJSONスキーマを返すことで、システムがリッチなメッセージ(画像、ファイル、Web検索結果)として処理します。対応コンポーネント: 確定回答、コードブロック、カスタムコンポーネントの出力フィールド実装方法: フィールド値を特定プロトコルのデータ構造に組み立てます共通フィールド:schema: 固定値"schema-v1"。システムがこのデータ処理プロトコルを識別し、異なる機能用途を拡張実装するために使用type: データタイプtext: テキスト、Markdownfile: ファイルimage: 画像websearch: Web検索
needSendMessage: メッセージを送信する必要があるか(true/false)。システムはデータタイプに応じて対応するメッセージ形式でエンドユーザーに応答しますneedEncryptFileUrl: 暗号化されたファイルストリームのダウンロードアドレスを返すか。暗号化サービスが有効な場合のみ機能します。ファイルストリーム暗号化サービスがない場合は、カスタム開発が必要ですneedFullFileUrl: ファイルダウンロードアドレスの絶対パスを返すか。デフォルトfalse(相対パス)value: データの値- テキストタイプ: 文字列値を直接割り当て
-
ファイルと画像タイプ: JSON構造
{"fileName": "your_file_name", "fileUrl": "your_file_url"}を割り当てfileUrlがサポートするプロトコル:- ローカル一時ファイルプロトコル(保存後削除):
tmpfile:/mindSynth/xxxx.docx - ローカル永続ファイルプロトコル:
psfile:/mindSynth/xxxx.docx - Base64データストリーム:
data:xxxxx - ネットワークファイルストリームプロトコル:
http://xxxxまたはhttps://xxxx
- ローカル一時ファイルプロトコル(保存後削除):
Text / File / Image
Text / File / Image
Text: Image:
type: "text", value: "message"
File: type: "file", value: {fileName: "...", fileUrl: "..."}Python版:type: "image", value: {fileName: "...", fileUrl: "..."}WebSearch
WebSearch
WebSearch:
type: "websearch", value: [{title: "Webページタイトル", url: "WebページURL"}]Example: Random File Generation (Python)
Example: Random File Generation (Python)
5.6 Excelエクスポートテンプレート
「Excel生成」コンポーネントを使用して、JSONデータでXLSXテンプレートを埋めることができます。5.6.1 プレースホルダー置換
形式:{{expression}}Excelセル内でプレースホルダーを使用してデータを置換します。サポートされるデータアクセス方法:- 単純変数:
{{var1}} - ネストされたオブジェクト:
{{other.var3}} - 配列要素:
{{list1.[0].var1}} - 深いネスト:
{{data.user.profile.name}}
5.6.2 縦方向ループ(領域ループ)
形式:<for item in list>...</for>垂直方向に複数行のデータを生成します。使用例:- 配列の長さに応じて行を自動生成
- 複数行テンプレートをサポート(ループ領域内で複数行を定義可能)
- ループ内でのネストされたオブジェクトや配列の使用をサポート
5.6.3 横方向ループ
形式:<hfor item in list>...</hfor>水平方向に複数列のデータを生成します。使用例:- データは右方向に展開されます
- 表ヘッダーや横方向のデータ表示に適しています
- ループ変数
itemは現在の反復要素を表します
5.6.4 画像挿入
形式:{{@expression}}Excelの図形内で画像プレースホルダーを使用します。使用例:- URL画像:
https://example.com/image.jpg - Base64:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...
- 画像形式(PNG、JPEG)を自動認識
- セルサイズに合わせて自動調整
- ループ内での動的挿入をサポート
- 元の図形の位置とサイズ情報を保持
