レコードを JSONL として保存

レコードを指定された JSONL ファイルに保存します。

オプション 

  • [ファインチューニングの形式:] では JSONL ファイルの出力形式を指定します:

    • オン: 指定したテーブルとフィールドのシステム、ユーザ、およびアシスタントプロンプトを含むメッセージ配列構造で AI モデルのファインチューニングに適した JSONL ファイルを作成します。

    • オフ: 指定したテーブル内の他のすべてのフィールドのデータを含むユーザプロンプト、[出力例フィールド] で指定したアシスタントプロンプトを含むメッセージ配列構造で JSONL ファイル形式を作成します。定義済みのシステムプロンプトも含まれています。

  • [テーブル] では現在の対象レコードに基づいてエクスポートするテーブルオカレンスを指定します。

  • [出力ファイルの指定] では保存する JSONL ファイルの 1 つ以上のパスとファイル名の一覧を定義します。パスには file パス接頭語のいずれかを使用する必要があります。スクリプトステップは一覧を検索して保存に成功した最初のパスとファイル名を使用します。ファイルパスの作成を参照してください。

  • [フォルダを作成] では出力ファイルパスを指定して新規フォルダを作成するかどうかを指定できます。

[ファインチューニングの形式:] が [オン] の場合にのみ使用できるオプション:

  • [システムプロンプト:] では AI モデルの役割と動作を定義するシステムレベルの命令を指定するテキスト式を指定します。このプロンプトはモデルがどのように応答すべきかのコンテキストを設定します。

  • [ユーザプロンプト:] では AI モデルのトレーニング例として使用されるユーザ入力または質問を指定するテキスト式を指定します。

  • [アシスタントプロンプト:] ではユーザプロンプトに対応する適切な AI アシスタントの応答を指定するテキスト式を指定します。

[ファインチューニングの形式:] が [オフ] の場合にのみ使用できるオプション:

  • [出力例フィールド:] ではトレーニングでの適切なアシスタントの応答または回答を含むテーブルのフィールドを指定します。

互換性 

製品 サポート
FileMaker Pro はい
FileMaker Go いいえ
FileMaker WebDirect いいえ
FileMaker Server はい
FileMaker Cloud はい
FileMaker Data API はい
カスタム Web 公開 はい

起点バージョン 

22.0

説明 

このスクリプトステップは FileMaker のテーブルのレコードを JSON Lines (JSONL) 形式のファイルにエクスポートします。JSONL は各行に個別の完全な JSON オブジェクトを含む構造化されたテキストファイル形式です。この形式は AI モデルをファインチューニングするためのトレーニングデータとして主に使用されます。

現在の対象レコードの各レコード (または [テーブル] で関連テーブルを指定する場合は各関連レコード) について、スクリプトステップは出力ファイル内の 1 行に JSON オブジェクトを保存します。形式は [ファインチューニングの形式:] オプションによって異なります。

メモ  わかりやすくするために複数の行として以下に示されていますが、各 JSON オブジェクトは JSONL ファイルで 1 行になっている必要があります。

[ファインチューニングの形式:] が次の場合 出力形式

オン

コピー
{
  "messages"
  [
    {
      "content" : "<システムプロンプトのフィールドデータ>",
      "role" : "system"
    },
    {
      "content" : "<ユーザプロンプトのフィールドデータ>",
      "role" : "user"
    },
    {
      "content" : "<アシスタントプロンプトのフィールドデータ>",
      "role" : "assistant"
    }
  ]
}

各要素は次のとおりです:

  • <システムプロンプトのフィールドデータ> は [システムプロンプト:] で指定したデータ。

  • <ユーザプロンプトのフィールドデータ> は [ユーザプロンプト:] で指定したデータ。

  • <アシスタントプロンプトのフィールドデータ> は [アシスタントプロンプト:] で指定したデータ。

オフ

 

コピー
{
  "messages"
  [
    {
      "content" : "<定義済みのシステムプロンプト>",
      "role" : "system"
    },
    {
      "content" : "<フィールド名 1>=<データ 1>, <フィールド名 2>=<データ 2>, ... ",
      "role" : "user"
    },
    {
      "content" : "<出力例フィールドのデータ>",
      "role" : "assistant"
    }
  ]
}

各要素は次のとおりです:

  • <定義済みのシステムプロンプト> は定義済みのシステムプロンプト。

  • <フィールド名 N>=<データ N> はフィールド名とそのデータ。[テーブル] のすべてのフィールドを含みますが、[出力例フィールド] で指定したフィールドは除きます。

  • <出力例フィールドのデータ> は [出力例フィールド] で指定したデータ。

メモ 

  • フィールドタイプは次のように処理されます:

    • テキストおよび数字フィールドはそれぞれ JSON 文字列と数字として保存されます。

    • 日付および時刻フィールドは FileMaker Pro ファイルの作成時に使用されたシステムロケール形式の文字列として保存されます。

    • [ファインチューニングの形式:] オプションが [オフ] の場合はオブジェクトフィールドはサポートされずにスキップされます。このオプションが [オン] の場合、オブジェクトフィールド内のファイルの名前が文字列としてエクスポートされます (存在する場合)。

    • 計算フィールドは結果のタイプに基づいて保存されます。

  • [ファインチューニングの形式:] オプションが [オン] の場合:

    • [システムプロンプト:] はオプションです。指定していない場合、または指定したデータが空の値である場合、system の role のオブジェクトは JSONL ファイル内で省略されます。

    • [ユーザプロンプト:] と [アシスタントプロンプト:] は必須です。これらの値が空の場合、user とassistant の rolescontent の値は空の文字列になります。

  • [ファインチューニングの形式:] オプションが [オフ] の場合:

    • [出力例フィールド] は必須です。レコードの値が空の場合、レコードは JSONL ファイル内で省略されます。

例 1- [ファインチューニングの形式:] が [オフ]

[ファインチューニングの形式:] が [オフ] になっている JSONL ファイルにデータを保存します。「サポート QA」テーブルには FileMaker に関するカスタマサポートの質問や回答、およびその他のデータが含まれています。

スクリプトは「サポート QA」レイアウトに移動してすべてのレコードを表示します。その後で $filePath を JSONL ファイルに設定して「Documents」ディレクトリ内に保存します。

最後に、スクリプトは各行の assistant オブジェクト内で識別された「回答」フィールドのデータを含む「サポート QA」テーブル内のすべてのレコードを保存します。

コピー
レイアウト切り替え [「サポート QA」(サポート QA)]
全レコードを表示

変数を設定 [$filePath ; 値: Get (ドキュメントパス) & "support-qa.jsonl"]

レコードを JSONL として保存 [ファインチューニングの形式: オフ ; テーブル: 「サポート QA」 ; 出力例フィールド: サポート QA::回答 ; "$filePath" ; フォルダを作成: オフ]

「support-qa.jsonl」ファイル内の 1 つのレコードの行:

コピー
{"messages": [{"role": "system","content": "<定義済みのシステムプロンプト>"},{"role": "user","content": "Area=Scripting, Question=FileMaker Pro で新しいスクリプトを作成するにはどうすればよいですか?, Version=3"},{"role": "assistant","content": "[スクリプト] メニュー > [スクリプトワークスペース] に移動してから、..."}]}

例 2- ファインチューニングのために JSONL として保存

この例では上記と同じ「サポート QA」テーブルを使用し、選択フィールドのデータを JSONL ファイルに保存して [モデルをファインチューニング] スクリプトステップ例 2 で AI モデルをファインチューニングするために使用します。

スクリプトは「サポート QA」レイアウトに移動して検索を実行し、目的の対象レコードを取得します。その後で $trainingFile を JSONL ファイルに設定して「Documents」ディレクトリ内に保存します。

最後に、[ユーザプロンプト:] の「質問」フィールド、[アシスタントプロンプト:] の「回答」フィールド、および [システムプロンプト:] の「バージョン」フィールドを含むテキスト式のデータとともに、スクリプトは「サポート QA」テーブル内の対象レコードを JSONL ファイルに保存します。

コピー
レイアウト切り替え [「サポート QA」(サポート QA)]
検索実行 [記憶する]

変数を設定 [$trainingFile ; 値: Get (ドキュメントパス) & "training_data.jsonl"]

変数を設定 [$systemPrompt ; 値: "次で始まるすべての FileMaker Pro バージョンに適用されます: " & サポート QA::バージョン]

レコードを JSONL として保存 [ファインチューニングの形式: オン ; テーブル: 「サポート QA」 ; システムプロンプト: $systemPrompt ; ユーザプロンプト: サポート QA::質問 ; アシスタントプロンプト: サポート QA::回答 ; "$trainingFile" ; フォルダを作成: オフ]

「training_data.jsonl」ファイル内の 1 つのレコードの行:

コピー
{"messages":[{"content":"3 で始まるすべての FileMaker Pro バージョンに適用されます","role":"system"},{"content":"FileMaker Pro で新しいスクリプトを作成するにはどうすればよいですか?","role":"user"},{"content":"[スクリプト] メニュー > [スクリプトワークスペース] に移動してから、...","role":"assistant"}]}