> For the complete documentation index, see [llms.txt](https://unsloth.ai/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://unsloth.ai/docs/de/neu/studio/data-recipe.md).

# Unsloth-Datenrezepte

Erfahre, wie du Datensätze mit den Datenrezepten von Unsloth Studio erstellst, aufbaust und bearbeitest.

Mit Unsloth Studio Data Recipes kannst du Dokumente wie PDFs oder CSV-Dateien hochladen und sie in nutzbare / synthetische Datensätze umwandeln. Erstelle und bearbeite Datensätze visuell über einen Graph-Knoten-Workflow. Diese Anleitung führt dich zunächst durch die Grundlagen, bevor du in Unsloth Data Recipes eintauchst.

<div data-with-frame="true"><figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FQ6e19jESrJg0VjHnX58c%2Fdata%20recipes%20final.png?alt=media&amp;token=8d74e453-815d-4790-83d1-76d0bc80a3ce" alt=""><figcaption></figcaption></figure></div>

### Wie Data Recipes funktioniert

Data Recipes folgt demselben grundlegenden Ablauf. Du öffnest die Rezepte-Seite, erstellst oder wählst ein Rezept, baust den Workflow im Editor auf, validierst ihn, führst eine Vorschau aus und startest dann den vollständigen Datensatz, sobald die Ausgabe richtig aussieht. Füge Seed-Daten und Generierungsblöcke hinzu, validiere den Workflow, sieh dir die Vorschauausgabe an und führe dann einen vollständigen Datensatzaufbau aus. Unsloth Data Recipes wird angetrieben von **NVIDIA Nemo** [**Data Designer**](https://github.com/NVIDIA-NeMo/DataDesigner).

<div data-with-frame="true"><figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2Fc5m3JX1kUA3UwmdcJcxH%2FArea.gif?alt=media&amp;token=33bbd908-7d6c-456a-bc58-ce495c0adca1" alt=""><figcaption><p>Beispiel für das Erstellen eines Datensatzes und das Feinabstimmen eines Modells</p></figcaption></figure></div>

Auf einen Blick sollte ein typischer Workflow so aussehen:

1. Öffne die Rezepte-Seite.
2. Erstelle ein neues Rezept oder öffne ein bestehendes.
3. Füge Blöcke hinzu, um deinen Datensatz-Workflow zu definieren.
4. Klicken Sie **Validieren** um Konfigurationsprobleme frühzeitig zu erkennen.
5. Führe eine Vorschau aus, um Beispielzeilen schnell zu prüfen.
6. Starte einen vollständigen Datensatzaufbau, wenn das Rezept fertig ist.
7. Überwache Fortschritt und Ausgabe live im Graphen oder in **Ausführungen** Ansicht für weitere Details.
8. Wähle den resultierenden Datensatz in **Unsloth** aus und feinstimme ein Modell.

### Los geht's

Die Rezepte-Seite ist der wichtigste Einstiegspunkt. Rezepte werden lokal im Browser gespeichert, sodass du später zu gespeicherten Arbeiten zurückkehren kannst. Von hier aus kannst du ein leeres Rezept erstellen oder ein geführtes Lernrezept öffnen.

{% hint style="info" %}
Rezepte können exportiert und importiert werden, sodass es einfach ist, Workflows mit anderen Unsloth-Nutzern zu teilen :tada:. Wenn du versuchst, ein bestimmtes Datensatzmuster zu erstellen, frage im Unsloth Discord nach. Vielleicht hat schon jemand ein Rezept, das er teilen kann.
{% endhint %}

<div data-with-frame="true"><figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FAwKh7speKv3eXERFhPg2%2FScreenshot%202026-03-13%20at%2008.26.11.png?alt=media&amp;token=809ac83f-75c8-4ef2-9721-65971b3faaa5" alt="" width="563"><figcaption><p>Startseite der Rezepte</p></figcaption></figure></div>

Wenn du neu im Konzept von Workflows bist, sind Lernrezepte der schnellste Weg zu sehen, wie Seed-Daten, Prompts, Ausdrücke und Validatoren in einem funktionierenden Beispiel zusammenwirken. Wenn du die gewünschte Form des Datensatzes bereits kennst, ist es meist schneller, leer zu starten.

#### Wähle einen Startpfad

<table><thead><tr><th>Wenn du möchtest:</th><th>Beginne mit:</th><th data-hidden></th></tr></thead><tbody><tr><td><sub><strong>Erstelle schnell einen benutzerdefinierten Workflow</strong></sub></td><td><sub><strong>Leer starten</strong></sub></td><td></td></tr><tr><td><sub><strong>Lerne das Produkt anhand eines Beispiels kennen</strong></sub></td><td><sub><strong>Mit einem Lernrezept starten</strong></sub></td><td></td></tr><tr><td><sub><strong>Vorherige Arbeit fortsetzen</strong></sub></td><td><sub><strong>Ein gespeichertes Rezept öffnen</strong></sub></td><td></td></tr></tbody></table>

### Was du im Editor erstellst

Im Editor nimmt das Rezept Form an. Du fügst Blöcke aus dem Blockblatt hinzu, konfigurierst sie in Dialogen, verbindest sie auf der Arbeitsfläche und validierst oder startest dann den Workflow.

<div data-with-frame="true"><figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2F6A2uN85dkYAdP7v0eUyX%2Fworkflow.gif?alt=media&amp;token=b44d9682-1825-4ddb-88f6-485a2aea3359" alt="" width="563"><figcaption><p>Beispiel für das Erstellen eines Workflows für Produktbeschreibungen</p></figcaption></figure></div>

{% columns %}
{% column %}
Der Editor hat einige Kernbestandteile:

* Der Rezept-Kopfbereich, in dem du das Rezept umbenennst und zwischen **Editor** und **Ausführungen**
* Die Arbeitsfläche, auf der der Rezept-Graph angezeigt wird
* Das Blockblatt, in dem du neue Blöcke hinzufügst
* Konfigurationsdialoge, in denen du Prompts, Referenzen, Modell-Aliase, Validatoren und Seed-Einstellungen definierst.
* Die schwebenden **Ausführen** und **Validieren** Steuerungen
* hier muss noch mehr hinzugefügt werden

{% endcolumn %}

{% column %}
Die häufigsten Blöcke in einem Rezept sind:

* **Seed** für Eingabedaten aus Hugging Face, lokalen strukturierten Dateien (oder unstrukturierten Dokumenten, die in Zeilen aufgeteilt werden).
* **LLM + Modelle** für Anbieter, Modellkonfigurationen, LLM-Generierungsblöcke und gemeinsame Tool-Profile.
* **Ausdruck** für Jinja2-basierte Transformationen, die keinen LLM-Aufruf erfordern.
* **Validatoren** zum Filtern fehlerhaften generierten Codes mit integrierten Lintern für Python, SQL und JavaScript/TypeScript.
* **Sampler** für deterministische Spalten wie Kategorien und Unterkategorien.
  {% endcolumn %}
  {% endcolumns %}

### Wie Referenzen funktionieren

Die meisten Blöcke, die Daten erzeugen, werden (mit einigen Ausnahmen) zu einer Referenz für spätere Blöcke. Das ist eine der Hauptideen hinter Data Recipes. Du erzeugst einen Wert einmal und verwendest ihn dann erneut in Prompts, Ausdrücken, strukturierten Ausgaben und Validierungsschritten.

{% hint style="info" %}
Jinja-Ausdrücke helfen dir, mit Werten zu arbeiten, die bereits im Rezept vorhanden sind. Du kannst auf verschachtelte Felder wie `{{customer.first_name}}` verweisen, Werte wie `{{customer.first_name}} {{customer.last_name}}` zusammenführen und bedingte Logik mit Mustern wie `{% if condition %}...{% endif %}`&#x20;
{% endhint %}

<div data-with-frame="true"><figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FNJYWKeIDC6aqgT2dShsB%2FScreenshot%202026-03-13%20at%2010.06.14.png?alt=media&amp;token=9d20bb8c-8a25-4395-9616-6429021d76f0" alt="" width="563"><figcaption><p>Beispiel für im Editor angezeigte Referenzen</p></figcaption></figure></div>

Zum Beispiel:

* Ein Kategorie-Block mit dem Namen `domain` kann referenziert werden als `{{ domain }}`
* eine Seed-Spalte kann direkt in einem LLM-Prompt verwendet werden, die Spalten in deinen Seed-Daten (z. B. HF-Datensatzspalten, csv)
* eine strukturierte LLM-Ausgabe kann Felder für spätere Prompts freigeben
* ein Ausdrucksblock kann frühere Werte mit einem weiteren Modellaufruf kombinieren

### Was passiert danach?

Vorschau-Läufe dienen der schnellen Iteration. Sie liefern Beispielzeilen und Analysen im Editor, sodass du die generierten Daten prüfen kannst, bevor du einen vollständigen Lauf startest.

Vollständige Läufe erstellen ein dauerhaft gespeichertes lokales Datensatz-Artefakt. Diese Ausgabe erscheint später im lokalen Datensatz-Auswähler von Unsloth, wo du sie erneut prüfen und für das Fine-Tuning verwenden kannst. Optional kannst du deinen Datensatz in dein Hugging-Face-Repo veröffentlichen.

### Zentrale Bausteine

{% columns %}
{% column %}

<div data-with-frame="true"><figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FuphMi76re2aUX7JvFNce%2FScreenshot%202026-03-13%20at%2011-35-45%20Unsloth%20Studio.png?alt=media&amp;token=674eb5ef-5acb-4b32-ab85-11a2af2e210f" alt="" width="188"><figcaption><p>Zentrale Bausteine</p></figcaption></figure></div>
{% endcolumn %}

{% column %}

<div data-with-frame="true"><figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FsdoYKdurtGeu4YgVqu0q%2FScreenshot%202026-03-13%20at%2011-38-59%20Unsloth%20Studio.png?alt=media&amp;token=328c7ea6-591e-43fa-9e87-c71277a54736" alt="" width="188"><figcaption><p>Modell- und LLM-Blöcke</p></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

#### Die Modellerstellung ist in zwei nutzbare Ebenen aufgeteilt:

* **Modellanbieter** definiert den Endpunkt und die Authentifizierung
* **Modellkonfiguration** definiert den Modellnamen und die Inference-Einstellungen

Dieses Setup funktioniert mit gehosteten Anbietern, selbst gehosteten Endpunkten, `vLLM` , `llama.cpp` , oder jeder OpenAI-kompatiblen API, die du außerhalb von Unsloth betreibst.

{% hint style="info" %}
Rezepte sind nicht auf ein Modell beschränkt. Du kannst mehrere **Modellanbieter** und **Modellkonfiguration** Blöcke hinzufügen und dann verschiedene Modelle für unterschiedliche Schritte verwenden, z. B. eines für Code und ein anderes für allgemeine Textaufgaben.
{% endhint %}

Nach der Modellerstellung kannst du vier LLM-Blocktypen verwenden:

| Block            | Ausgabe              | Am besten für                                                                  |
| ---------------- | -------------------- | ------------------------------------------------------------------------------ |
| LLM-Text         | Freitext             | Anweisungen, Erklärungen, Gespräche und Beschreibungen                         |
| LLM-Strukturiert | JSON                 | Ausgaben, die feste Felder und eine vorhersehbare Struktur benötigen           |
| LLM-Code         | Code                 | Python-, SQL-, TypeScript- und andere Codegenerierungsaufgaben                 |
| LLM-Prüfer       | Bewertete Auswertung | Bewertung von Ausgaben mit einer oder mehreren benutzerdefinierten Bewertungen |

#### Tool-Profile

{% columns %}
{% column %}
Tool-Profil-Blöcke definieren gemeinsamen, MCP-basierten Werkzeugzugriff für einen oder mehrere LLM-Blöcke. Verwende sie, wenn ein Generierungsschritt Werkzeuge benötigt, z. B. um Codedokumentation nachzuschlagen über `Context7`.

Das Bild links zeigt, wie Context7 MCP hinzugefügt und im Dialog des Tool-Profile-Blocks konfiguriert wurde:
{% endcolumn %}

{% column %}

<div data-with-frame="true"><figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2Fu4GbfrjuQyiU7cN15fDY%2FScreenshot%202026-03-13%20at%2010.50.01.png?alt=media&amp;token=889a9425-bb40-4e41-9dab-5408b03bd3ca" alt="" width="375"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

#### Validatoren

{% columns %}
{% column %}
Der Validator-Block richtet sich in erster Linie an LLM-Code-Blöcke, indem er generierte Codeausgaben durch Linter und Syntaxvalidierung laufen lässt. So kannst du fehlerhaften oder ungültigen Code aus dem finalen Datensatz fernhalten, indem du ihn herausfilterst. Die integrierten Optionen decken die Validierung für Python, SQL und JavaScript/TypeScript ab.
{% endcolumn %}

{% column %}

<div data-with-frame="true"><figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FobyvYzcfyJkloHfHMyVC%2FScreenshot%202026-03-13%20at%2011-39-08%20Unsloth%20Studio.png?alt=media&amp;token=19c8dbfa-c876-4f6e-9e62-5b8df515dc7b" alt=""><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

### Validieren, Vorschau und Ausführen

Sobald der Rezept-Workflow eingerichtet ist, ist der nächste Schritt die Ausführung. Das empfohlene Muster lautet: zuerst validieren, dann für schnelles Feedback eine Vorschau ausführen und die generierten Daten in der Ausführungen-Ansicht prüfen, dann den vollständigen Datensatz ausführen, wenn du das Gefühl hast, dass die Ausgabe deinem Plan entspricht.

Verwende die Ausführungssteuerungen in dritter Reihenfolge:

{% stepper %}
{% step %}

#### Validieren

Klicken Sie **Validieren** um Konfigurationsprobleme zu erkennen.
{% endstep %}

{% step %}

#### Vorschau

Führe eine Vorschau aus, um Beispielzeilen und Analysen zu prüfen
{% endstep %}

{% step %}

#### Verfeinern

Verfeinere Prompts, Referenzen, Seed-Einstellungen oder Validatoren.

Iteriere, bis du mit den generierten Daten zufrieden bist
{% endstep %}

{% step %}

#### Den vollständigen Datensatzaufbau ausführen

{% endstep %}
{% endstepper %}

<figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FFCcEaVt8xsaNsMFi2MoZ%2Funsloth%20chef.png?alt=media&amp;token=0266aa36-4ba7-4364-be59-5fe57936ef7f" alt="" width="188"><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://unsloth.ai/docs/de/neu/studio/data-recipe.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
