AI Prompt Engineering · Lektion

Klartext und formatierte Ausgabe im Vergleich

Wann Sie sauberen Klartext statt einer formatierten Markdown-Ausgabe anfordern sollten

Lektion 4 von 413 Schritte

Klartext und formatierte Ausgabe im Vergleich ist eine kostenlose AI Prompt Engineering-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des AI Prompt Engineering-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der AI Prompt Engineering-Kurs umfasst insgesamt 4 Lektionen.

Der Plaintext-Fall

Markdown-Formatierung ist leistungsfähig – aber nicht immer die richtige Wahl. Viele Anwendungen aus der Praxis benötigen sauberen, unformatierten Text, in dem Markdown-Symbole als normale Zeichen erscheinen, statt als formatierte Elemente dargestellt zu werden.

Zu wissen, wann Sie Plaintext anfordern sollten, ist ebenso wichtig wie zu wissen, wie Sie Rich-Text-Formatierung anfordern.

Wann Plaintext erforderlich ist

Verwenden Sie eine Plaintext-Ausgabe, wenn Ihre Umgebung Markdown nicht rendert:

  • E-Mail-Texte: Die meisten E-Mail-Programme zeigen rohe Sternchen an
  • SMS und Push-Benachrichtigungen: Keine Unterstützung für Formatierung
  • Sprachausgabe: Text-to-Speech liest '** bold **' wörtlich vor
  • CRM- und Helpdesk-Felder: Viele davon rendern Markdown nicht
  • Verarbeitung von API-Daten: Wenn der Text gespeichert oder weiterverarbeitet wird
  • Eingabefelder von Legacy-Systemen: Nur Plaintext
import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=200,
    messages=[{
        'role': 'user',
        'content': (
            'Write a 120-character push notification for a flash sale ending in 2 hours. '
            'Plain text only — no emojis, no markdown, no asterisks, no special characters. '
            'Must include: urgency, discount percentage (30%), and category (electronics). '
            'Output the notification text only — nothing else.'
        )
    }]
)
print(response.content[0].text)

Plaintext ausdrücklich anfordern

KI-Modelle erzeugen in vielen Kontexten standardmäßig stark Markdown-lastige Ausgaben. Um tatsächlich Plaintext zu erhalten, müssen Sie dies ausdrücklich angeben und häufig auch die zu vermeidenden Symbole nennen:

  • 'Nur Plaintext – keine Markdown-Formatierung'
  • 'Keine Sternchen, keine Rautenzeichen, keine Aufzählungssymbole'
  • 'Keine Überschriften, keine Fettschrift, keine Listen – nur fortlaufende Textabsätze'
  • 'Entfernen Sie die gesamte Formatierung – geben Sie den Text so aus, als würden Sie ihn in Notepad schreiben'
import openai

client = openai.OpenAI(api_key='sk-your-key-here')

# Without plain text instruction — likely gets markdown
default_prompt = 'Explain what a webhook is in 100 words.'

# With explicit plain text instruction
plain_prompt = (
    'Explain what a webhook is in 100 words. '
    'Output format: plain text only. No markdown. No asterisks. No headers. '
    'No bullet points. Just continuous prose paragraphs.'
)

for label, prompt in [('DEFAULT (likely markdown)', default_prompt), ('EXPLICIT PLAIN TEXT', plain_prompt)]:
    response = client.chat.completions.create(
        model='gpt-4o', max_tokens=150,
        messages=[{'role': 'user', 'content': prompt}]
    )
    print(f'--- {label} ---')
    print(response.choices[0].message.content)
    print()

Plaintext für E-Mail-Texte

E-Mail-Texte sind einer der häufigsten Anwendungsfälle für Plaintext. Zwar unterstützen einige E-Mail-Programme HTML-Formatierung, doch von der KI erzeugte E-Mail-Texte sollten als sauberer Fließtext vorliegen, den eine menschliche Redakteurin oder ein menschlicher Redakteur ohne Nachbearbeitung direkt in ein E-Mail-Programm oder CRM kopieren kann.

Geben Sie an: 'Schreiben Sie den E-Mail-Text als Plaintext. Kein Markdown. Keine Sternchen für Fettschrift. Keine Bindestriche für Listen. Verwenden Sie statt Listen nummerierte Sätze oder Zeilenumbrüche.'

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=300,
    messages=[{
        'role': 'user',
        'content': (
            'Write a 3-paragraph re-engagement email for inactive newsletter subscribers. '
            'Context: SaaS analytics tool, subscriber inactive for 60 days.\n'
            'Format requirements:\n'
            '- Plain text only — no asterisks, no pound signs, no bullet symbols\n'
            '- Paragraph 1: acknowledge absence, create curiosity\n'
            '- Paragraph 2: one new feature they missed\n'
            '- Paragraph 3: CTA with a direct link placeholder [LINK]\n'
            '- No subject line — body only'
        )
    }]
)
print(response.content[0].text)

Saubere Fließtextabsätze

Über das Vermeiden von Markdown-Symbolen hinaus bedeutet 'sauberer Fließtext', Ideen in zusammenhängenden Sätzen statt in fragmentierten Aufzählungspunkten zu strukturieren.

Guter Fließtext:

  • Verwendet Überleitungswörter, um Ideen zu verbinden (jedoch, zusätzlich, infolgedessen)
  • Variiert die Satzlänge, um einen guten Rhythmus zu erzeugen
  • Fasst zusammengehörige Ideen in schlüssigen Absätzen zusammen
  • Vermeidet es, jeden Satz mit einem Substantiv zu beginnen

Anweisung: 'Schreiben Sie in sauberen Fließtextabsätzen – keine Listen, keine Überschriften, zusammenhängende Sätze mit Überleitungen.'

import openai

client = openai.OpenAI(api_key='sk-your-key-here')

prose_prompt = (
    'Explain the advantages of using Docker for development environments. '
    'Write in 3 clean prose paragraphs. '
    'Requirements:\n'
    '- No bullet points or numbered lists\n'
    '- No markdown headers\n'
    '- Use transition words between sentences and paragraphs\n'
    '- Vary sentence length — mix short and long\n'
    '- 150 words total maximum'
)

response = client.chat.completions.create(
    model='gpt-4o',
    messages=[{'role': 'user', 'content': prose_prompt}]
)
print(response.choices[0].message.content)

Plaintext für Sprachausgabe

Text-to-Speech-Systeme lesen alles wörtlich vor. Wenn Ihre KI-Ausgabe laut vorgelesen werden soll:

  • Vermeiden Sie alle Markdown-Symbole
  • Vermeiden Sie Abkürzungen (TTS kann sie möglicherweise nicht ausschreiben)
  • Schreiben Sie Zahlen, sofern sinnvoll, vollständig aus
  • Verwenden Sie Kommas für natürliche Pausen
  • Vermeiden Sie Klammern – TTS liest sie häufig unnatürlich vor
  • Schreiben Sie Sonderzeichen aus ('@' → 'at')
import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=200,
    messages=[{
        'role': 'user',
        'content': (
            'Write a 45-second spoken weather briefing for London today. '
            'Conditions: 12 degrees Celsius, light rain, wind 15 km/h from the southwest.\n'
            'Format for voice output:\n'
            '- No markdown symbols of any kind\n'
            '- No parentheses\n'
            '- No abbreviations (write "kilometres per hour" not "km/h")\n'
            '- Natural spoken rhythm — use commas for pause points\n'
            '- Write numbers as words when under ten'
        )
    }]
)
print(response.content[0].text)

Markdown aus vorhandenen Ausgaben entfernen

Manchmal erhalten Sie die Markdown-Ausgabe eines KI-Aufrufs und müssen sie für einen anderen Kontext bereinigen. Sie können einen zweiten KI-Aufruf gezielt zum Entfernen der Formatierung verwenden:

'Entfernen Sie die gesamte Markdown-Formatierung aus dem folgenden Text. Ersetzen Sie **bold** durch Plaintext, entfernen Sie # Überschriften, wandeln Sie Aufzählungspunkte in nummerierte Sätze um und entfernen Sie alle Sternchen und Rautenzeichen. Geben Sie ausschließlich sauberen Plaintext aus.'

import openai
import re

client = openai.OpenAI(api_key='sk-your-key-here')

markdown_text = (
    '## Key Benefits\n'
    '- **Faster deployment** with Docker containers\n'
    '- **Consistent environments** across dev and prod\n'
    '- Reduced *configuration drift* between machines\n'
    '### Getting Started\n'
    'Run docker-compose up to start all services.'
)

# Option 1: Ask AI to strip
response = client.chat.completions.create(
    model='gpt-4o',
    max_tokens=150,
    messages=[{
        'role': 'user',
        'content': (
            'Remove all markdown formatting from the text below. '
            'Keep all the information but strip: **, ##, ###, -, *, backticks. '
            'Convert bullet lists to flowing sentences. Output plain text only.\n\n'
            + markdown_text
        )
    }]
)
print('AI-stripped:', response.choices[0].message.content.strip())

# Option 2: Simple regex strip (for code-based pipelines)
import re
clean = re.sub(r'[#*]', '', markdown_text).strip()
print('Regex-stripped:', clean)

Plaintext in Systemnachrichten

Bei KI-Assistenten, die ihre Ausgaben konsistent in Plaintext-Umgebungen ausgeben, sollten Sie die Formatierungsregel einmal in der Systemnachricht festlegen, statt sie in jeder Benutzernachricht zu wiederholen.

Dies ist der sauberste Ansatz für Anwendungen im Produktivbetrieb, wenn Sie die Ausgabeumgebung im Voraus kennen.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

# System message enforces plain text for all responses
plain_text_system = (
    'You are a helpful assistant embedded in a mobile push notification system. '
    'All your responses are displayed as plain text in mobile notifications. '
    'ALWAYS follow these formatting rules:\n'
    '- Never use markdown (no **, no #, no -, no backtick, no *, no _)\n'
    '- Never use bullet points or numbered lists\n'
    '- Write in 1-2 complete sentences only\n'
    '- Maximum 120 characters per response\n'
    '- No emojis'
)

response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=64,
    system=plain_text_system,
    messages=[
        {'role': 'user', 'content': 'Notify user their order has shipped and will arrive in 2 days.'}
    ]
)
print(response.content[0].text)

Entscheidungsrahmen für Formatierung

Verwenden Sie diesen kurzen Entscheidungsrahmen, bevor Sie ein Ausgabeformat anfordern:

  1. Wohin wird die Ausgabe gesendet? Weboberfläche, E-Mail, Terminal, Sprache, Datenbank
  2. Rendert diese Umgebung Markdown? Ja → Verwenden Sie Markdown. Nein → Plaintext.
  3. Wird ein Mensch den Text lesen? Ja → Strukturieren Sie ihn übersichtlich. Nein → Optimieren Sie ihn für die Verarbeitung.
  4. Wird der Code den Text verarbeiten? Ja → JSON oder CSV, kein Fließtext.
  5. Wird der Text gesprochen? Ja → Sprachsicherer Plaintext, keine Abkürzungen.
def choose_format(environment, human_reads, code_processes, voice_output):
    '''Simple formatting decision tree.'''
    if voice_output:
        return 'PLAIN TEXT — voice safe, spell out numbers and units'
    if code_processes:
        return 'JSON or CSV — machine-parseable, no prose'
    renders_markdown = environment in ['web', 'notion', 'github', 'vscode', 'obsidian']
    if renders_markdown and human_reads:
        return 'MARKDOWN — headers, bold, code blocks, lists'
    return 'PLAIN TEXT — clean prose paragraphs, no markdown symbols'

scenarios = [
    ('web',         True,  False, False),
    ('email',       True,  False, False),
    ('api_pipeline',False, True,  False),
    ('voice_app',   False, False, True),
    ('terminal',    True,  False, False),
]
for env, human, code, voice in scenarios:
    result = choose_format(env, human, code, voice)
    print(f'{env:<15} -> {result}')

Strukturierter Plaintext

Plaintext muss nicht unstrukturiert sein. Sie können auch ohne Markdown eine Struktur schaffen, indem Sie Folgendes verwenden:

  • ABSCHNITTSBEZEICHNUNGEN IN GROSSBUCHSTABEN (werden überall gleich dargestellt)
  • Zeilenumbrüche zwischen Abschnitten
  • Nummerierte Sätze: '1. Erster Punkt. 2. Zweiter Punkt.'
  • Gedankenstriche zur Trennung: 'Wichtige Erkenntnis — überprüfen Sie immer, bevor Sie handeln.'
  • Einheitliche Einrückungen mit Leerzeichen (für Terminalausgaben)
import openai

client = openai.OpenAI(api_key='sk-your-key-here')

response = client.chat.completions.create(
    model='gpt-4o',
    messages=[{
        'role': 'user',
        'content': (
            'Write a daily briefing for a developer — 3 sections: TASKS, BLOCKERS, NOTES. '
            'Format: plain text only. '
            'Use ALL CAPS section labels followed by a colon. '
            'Use a line break between sections. '
            'Number each item within a section. '
            'No markdown symbols of any kind. '
            'Use realistic placeholder content.'
        )
    }]
)
print(response.choices[0].message.content)

Erkennung des Ausgabeformats

In Anwendungen im Produktivbetrieb können Sie die Ausgabeumgebung programmgesteuert erkennen und automatisch die passende Formatierungsanweisung einfügen – so müssen Sie sie nicht in jedem Prompt manuell angeben.

Dies ist ein verbreitetes Muster in KI-Systemen mit mehreren Kanälen, die dieselben Inhalte für Web-, Mobil- und API-Nutzer bereitstellen.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

def get_format_instruction(channel):
    formats = {
        'web':   'Use markdown formatting: headers, bold, bullet points, code blocks.',
        'email': 'Plain text only. No markdown symbols. Use line breaks between sections.',
        'sms':   'Plain text. Single paragraph. Max 160 characters.',
        'voice': 'Plain text. No symbols. Natural spoken sentences only. Spell out numbers.',
        'api':   'JSON output only. No prose.',
    }
    return formats.get(channel, 'Plain text only.')

def ask_with_channel(question, channel):
    fmt = get_format_instruction(channel)
    response = client.messages.create(
        model='claude-opus-4-5',
        max_tokens=100,
        system=f'Format instruction: {fmt}',
        messages=[{'role': 'user', 'content': question}]
    )
    return response.content[0].text

q = 'What are 3 benefits of regular code reviews?'
for ch in ['web', 'sms', 'voice']:
    print(f'[{ch.upper()}]:')
    print(ask_with_channel(q, ch)[:150])
    print()

Wissenscheck

Eine Entwicklerin oder ein Entwickler erstellt einen KI-Chatbot für den Kundenservice, dessen Antworten in ein Legacy-CRM eingespeist werden, das Plaintext speichert. Die KI gibt weiterhin Antworten mit ** für Fettschrift und - für Aufzählungen aus, die im CRM als normale Zeichen angezeigt werden. Was ist die zuverlässigste Lösung?

Plaintext vs. formatierte Ausgabe – Zusammenfassung

Die Wahl des richtigen Formats hängt von Ihrer Ausgabeumgebung ab. Die wichtigsten Regeln:

  • Verwenden Sie Markdown, wenn die Umgebung es rendert: Weboberflächen, Notion, GitHub, Dokumente
  • Verwenden Sie Plaintext für E-Mail-Texte, SMS, Sprachausgabe, CRMs und API-Pipelines
  • Verwenden Sie JSON/CSV, wenn Code die Ausgabe verarbeitet
  • Fordern Sie Plaintext an, indem Sie ausdrücklich auflisten, was vermieden werden soll: keine Sternchen, keine Rautenzeichen, keine Aufzählungspunkte
  • Legen Sie Formatierungsregeln einmal in der Systemnachricht fest, damit sich die Anwendung konsistent verhält
  • Auch Plaintext kann durch BEZEICHNUNGEN IN GROSSBUCHSTABEN, Zeilenumbrüche und nummerierte Sätze strukturiert werden
Kostenlos starten

Lerne AI Prompt Engineering mit einem KI-Tutor — kostenlos

Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.

Kurse
53
Lektionen
199

Häufig gestellte Fragen

Ist die Lektion „Klartext und formatierte Ausgabe im Vergleich“ kostenlos?

Ja — der vollständige Text von „Klartext und formatierte Ausgabe im Vergleich“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des AI Prompt Engineering-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der AI Prompt Engineering-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Klartext und formatierte Ausgabe im Vergleich“?

Wann Sie sauberen Klartext statt einer formatierten Markdown-Ausgabe anfordern sollten Du übst AI Prompt Engineering mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um AI Prompt Engineering zu starten?

Keine Vorkenntnisse erforderlich. AI Prompt Engineering auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.

Wie lange dauert die Lektion „Klartext und formatierte Ausgabe im Vergleich“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser AI Prompt Engineering-Lektion Code schreiben und ausführen?

Ja. Jede AI Prompt Engineering-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Listen und Aufzählungen anfordern
  2. Tabellen und strukturierte Daten anfordern
  3. Markdown-Formatierung in Prompts
  4. Klartext und formatierte Ausgabe im Vergleich
← Zurück zu AI Prompt Engineering