Datensätze als JSONL speichern

Speichert Datensätze in einer angegebenen JSONL-Datei.

Optionen 

  • Format für Feinabstimmung gibt das Ausgabeformat für die JSONL-Datei an:

    • Ein: Erstellt eine JSONL-Datei, die für die Feinabstimmung von KI-Modellen geeignet ist, mit einer Array-Struktur für Mitteilungen, die System-, Benutzer- und Assistenten-Prompts aus der Tabelle und den von Ihnen angegebenen Feldern enthält.

    • Aus: Erstellt ein JSONL-Dateiformat mit einer Array-Struktur für Mitteilungen, die einen von Abschlussfeld angegebenen Assistenten-Prompt und einen Benutzer-Prompt mit Daten aus allen anderen Feldern in der von Ihnen angegebenen Tabelle enthält. Außerdem enthält es einen vordefinierten System-Prompt.

  • Tabelle gibt ein Tabellenauftreten an, das basierend auf der aktuellen Ergebnismenge von Datensätzen exportiert werden soll.

  • Ausgabedatei angeben definiert eine Liste mit einem oder mehreren Pfaden und Dateinamen, unter denen die JSONL-Datei gespeichert werden soll. Pfade müssen einen der file-Pfadpräfixe verwenden. Der Scriptschritt durchsucht die Liste und verwendet den ersten Pfad und Dateinamen, unter dem er erfolgreich speichern kann. Weitere Informationen finden Sie unter Erstellen von Dateipfaden.

  • Ordner erstellen gibt an, ob neue Ordner erstellt werden, die Sie im Ausgabedateipfad angeben.

Optionen nur verfügbar, wenn Format für Feinabstimmung auf Ein gesetzt ist:

  • System-Prompt ist ein Textausdruck, der Anweisungen auf Systemebene angibt, die die Rolle und das Verhalten des KI-Modells definieren. Dieser Prompt legt den Kontext fest, in dem das Modell reagieren soll.

  • Benutzer-Prompt ist ein Textausdruck, der Benutzereingaben oder Fragen angibt, die als Training-Beispiele für das KI-Modell verwendet werden.

  • Assistenten-Prompt ist ein Textausdruck, der die erwarteten KI-Assistenten-Antworten angibt, die den Benutzer-Prompts entsprechen.

Optionen nur verfügbar, wenn Format für Feinabstimmung auf Aus gesetzt ist:

  • Abschlussfeld gibt das Feld in Tabelle an, das die erwarteten Antworten oder Antworten des Assistenten für das Training enthält.

Kompatibilität 

Produkt Unterstützt
FileMaker Pro Ja
FileMaker Go Nein
FileMaker WebDirect Nein
FileMaker Server Ja
FileMaker Cloud Ja
FileMaker Data API Ja
Custom Web Publishing Ja

Ursprung in Version 

22.0

Beschreibung 

Dieser Scriptschritt exportiert Datensätze aus einer FileMaker-Tabelle in eine Datei im JSON Lines (JSONL)-Format. JSONL ist ein strukturiertes Textdateiformat, bei dem jede Zeile ein separates, vollständiges JSON-Objekt enthält. Dieses Format wird in erster Linie als Training-Daten verwendet, um ein KI-Modell feinabzustimmen.

Für jeden Datensatz in der aktuellen Ergebnismenge (oder für jeden Bezugsdatensatz, wenn Tabelle eine Bezugstabelle angibt) speichert der Scriptschritt ein JSON-Objekt in einer einzelnen Zeile in der Ausgabedatei. Das Format hängt von der Option Format für Feinabstimmung ab.

Hinweis  Zur besseren Übersichtlichkeit sind die JSON-Objekte unten in mehreren Zeilen dargestellt, in der JSONL-Datei stehen sie jedoch jeweils in einer Zeile.

Wenn Format für Feinabstimmung ist gleich Ausgabeformat ist

Ein

Kopieren
{
  "messages"
  [
    {
      "content" : "<System_Prompt_Feld_Daten>",
      "role" : "system"
    },
    {
      "content" : "<Benutzer_Prompt_Feld_Daten>",
      "role" : "user"
    },
    {
      "content" : "<Assistent_Prompt_Feld_Daten>",
      "role" : "assistant"
    }
  ]
}

Dabei gilt:

  • <System_Prompt_Feld_Daten> sind die Daten, die durch System-Prompt angegeben sind.

  • <Benutzer_Prompt_Feld_Daten> sind die Daten, die durch Benutzer-Prompt angegeben sind.

  • <Assistent_Prompt_Feld_Daten> sind die Daten, die durch Assistenten-Prompt angegeben sind.

Aus

 

Kopieren
{
  "messages"
  [
    {
      "content" : "<Vordefinierter_System_Prompt>",
      "role" : "system"
    },
    {
      "content" : "<FeldName1>=<Daten1>, <FeldName2>=<Daten2>, ... ",
      "role" : "user"
    },
    {
      "content" : "<Abschlussfeld_Daten>",
      "role" : "assistant"
    }
  ]
}

Dabei gilt:

  • <Vordefinierter_System_Prompt> ist ein vordefinierter System-Prompt.

  • <FeldnameN>=<DatenN> ist ein Feldname und dessen Daten. Enthält alle Felder in Tabelle, mit Ausnahme des durch Abschlussfeld angegebenen Felds.

  • <Abschlussfeld_Daten> sind die Daten, die durch Abschlussfeld angegeben sind.

Hinweise 

  • Feldtypen werden wie folgt behandelt:

    • Text- und Zahlenfelder werden als JSON-Strings bzw. Zahlen gespeichert.

    • Datums- und Zeitfelder werden als Strings im Format des Gebietsschemas gespeichert, das bei der Erstellung der FileMaker Pro-Datei verwendet wurde.

    • Containerfelder werden nicht unterstützt und übersprungen, wenn die Option Format für Feinabstimmung deaktiviert ist. Wenn diese Option durch „Ein“ aktiviert ist, wird der Name der Datei im Containerfeld als String exportiert, sofern vorhanden.

    • Formelfelder werden entsprechend ihrem Ergebnistyp gespeichert.

  • Wenn die Option Format für Feinabstimmung durch „Ein“ aktiviert ist:

    • System-Prompt ist optional. Wenn diese Option nicht angegeben ist oder wenn die angegebenen Daten einen leeren Wert aufweisen, wird das Objekt für die System-Rolle in der JSONL-Datei weggelassen.

    • Benutzer-Prompt und Assistenten-Prompt sind erforderlich. Wenn diese Werte leer sind, sind die Inhalt-Werte für die Benutzer- und Assistent-Rollen leere Strings.

  • Wenn die Option Format für Feinabstimmung durch „Aus“ deaktiviert ist:

    • Abschlussfeld ist erforderlich. Wenn dessen Wert für einen Datensatz leer ist, wird der Datensatz in der JSONL-Datei weggelassen.

Beispiel 1- „Format für Feinabstimmung“ ist „Aus“.

Speichert Daten in einer JSONL-Datei, wobei Format für Feinabstimmung deaktiviert ist. Die Tabelle Support_QA enthält Fragen und Antworten des Kundensupports zu FileMaker sowie weitere Daten.

Das Script wechselt zum Layout Support_QA und zeigt alle Datensätze an. Anschließend wird $dateiPfad auf die JSONL-Datei gesetzt, die im Verzeichnis „Dokumente” gespeichert werden soll.

Zuletzt speichert das Script alle Datensätze in der Tabelle Support_QA, wobei die Daten aus dem Feld „Antwort“ im Assistent-Objekt in jeder Zeile identifiziert werden.

Kopieren
Gehe zu Layout [ "Support_QA" (Support_QA) ]
Alle Datensätze anzeigen

Variable setzen [ $dateiPfad ; Wert: Hole ( DokumentenPfad ) & "support-qa.jsonl" ]

Datensätze als JSONL speichern [ Format für Feinabstimmung: Aus ; Tabelle: "Support_QA" ; Abschlussfeld: Support_QA::Antwort ; "$dateiPfad" ; Ordner erstellen: Aus ]

Eine Zeile für einen Datensatz in der Datei „support-qa.jsonl“:

Kopieren
{"messages": [{"role": "system","content": "<Vordefinierter_System_Prompt>"},{"role": "user","content": "Area=Scripting, Frage=Wie erstelle ich ein neues Script in FileMaker Pro?, Version=3"},{"role": "assistant","content": "Gehe zu Menü „Scripts“ > Scriptarbeitsbereich, und dann ..."}]}

Beispiel 2 – Als JSONL speichern, um Feinabstimmung vorzunehmen

Unter Verwendung derselben Tabelle Support_QA wie oben speichert dieses Beispiel Daten aus ausgewählten Feldern in einer JSONL-Datei, die zur Feinabstimmung des KI-Modells in Beispiel 2 für den Scriptschritt „Modell feinabstimmen“ verwendet wird.

Das Script wechselt zum Layout Support_QA und führt eine Suche durch, um die gewünschte Ergebnismenge zu erhalten. Anschließend wird $trainingDatei auf die JSONL-Datei gesetzt, die im Verzeichnis „Dokumente“ gespeichert werden soll.

Abschließend speichert das Script die Ergebnismenge der Datensätze in der Tabelle Support_QA in einer JSONL-Datei, wobei die Daten aus dem Feld „Frage“ für den Benutzer-Prompt, aus dem Feld „Antwort“ für den Assistenten-Prompt und ein Textausdruck, der das Feld „Version“ für den System-Prompt enthält, verwendet werden.

Kopieren
Gehe zu Layout [ "Support_QA" (Support_QA) ]
Ergebnismenge suchen [ Wiederherstellen ]

Variable setzen [ $trainingDatei ; Wert: Hole ( DokumentenPfad ) & "training_data.jsonl" ]

Variable setzen [ $systemPrompt ; Wert: "Gilt für alle FileMaker Pro-Versionen ab: " & Support_QA::Version ]

Datensätze als JSONL speichern [ Format für Feinabstimmung: Aus ; Tabelle: "Support_QA" ; System-Prompt: $systemPrompt ; Benutzer-Prompt: Support_QA::Frage ; Assistenten-Prompt: Support_QA::Antwort ; "$trainingDatei" ; Ordner erstellen: Aus ]

Eine Zeile für einen Datensatz in der Datei training_data.jsonl:

Kopieren
{"messages":[{"content":"Gilt für alle FileMaker Pro-Versionen ab: 3","role":"system"},{"content":"Wie erstelle ich ein neues Script in FileMaker Pro?","role":"user"},{"content":"Gehe zu Menü „Scripts“ > Scriptarbeitsbereich, und dann ...","role":"assistant"}]}