0Pricing
AI Prompt Engineering · Lektion

Muster zum Ausfüllen erstellen

Verwenden Sie {{variable}}-Platzhalter und String-Substitution in Python

Muster zum Ausfüllen erstellen ist eine kostenlose AI Prompt Engineering-Lektion auf CoddyKit. Dies ist Lektion 2 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.

Die Konvention für Platzhalter

Ein Prompt-Muster zum Ausfüllen verwendet Platzhalter, um die Teile eines Prompts zu kennzeichnen, die vor dem Senden an das Modell durch echte Werte ersetzt werden.

Die gängigste Konvention für Platzhalter sind doppelte geschweifte Klammern: {{variable_name}}. Diese Konvention ist leicht lesbar, taucht kaum versehentlich in normalem Text auf und wird von vielen Vorlagenbibliotheken unterstützt.

Weitere Konventionen, denen Sie begegnen werden, sind einfache geschweifte Klammern {variable}, spitze Klammern <variable> und Variablen in GROSSBUCHSTABEN. Entscheiden Sie sich für eine Variante und verwenden Sie sie konsequent.

Grundlegende Platzhalter-Ersetzung

Das einfachste Muster für Lückentexte ist die direkte Ersetzung von Strings:

Vorlage: „Verfassen Sie eine {{word_count}} Wörter lange Beschreibung von {{product}} für {{audience}}.“

Ausgefüllt: „Verfassen Sie eine 150 Wörter lange Beschreibung von TaskFlow Pro für Inhaber kleiner Unternehmen.“

Die Ersetzung erfolgt, bevor der String an das Modell gesendet wird – das Modell sieht einen sauberen, vollständigen Prompt ohne Platzhaltermarkierungen. Platzhalter sind ein Vorverarbeitungsschritt und werden nicht vom Modell selbst verarbeitet.

Gängige Platzhalterkategorien

Erstellen Sie Ihre Vorlagen mit standardmäßigen Platzhalterkategorien, die die meisten Anwendungsfälle abdecken:

  • {{customer_name}} — Name des Empfängers oder Betreffs
  • {{product}} — das Produkt, die Dienstleistung oder das Thema, über das geschrieben wird
  • {{tone}} — z. B. professionell, locker, dringend, enthusiastisch
  • {{audience}} — die Zielgruppe, für die der Inhalt bestimmt ist
  • {{word_count}} — Ziellänge
  • {{format}} — Aufzählungspunkte, Absätze, nummerierte Liste
  • {{context}} — für diese konkrete Instanz relevante Hintergrundinformationen

Konsistente Benennungen über alle Vorlagen hinweg erleichtern die Navigation in Ihrer Bibliothek und verringern Fehler.

Ersetzung mit Python-String-Formatierung

Pythons integrierte String-Methode .format() bietet eine einfache Möglichkeit, Platzhalter mit der Syntax {variable} auszufüllen:

import openai

client = openai.OpenAI(api_key='sk-...')

EMAIL_TEMPLATE = '''Write a follow-up email from {sender_name} to {recipient_name}.
Context: {context}
Tone: {tone}
Length: {word_count} words.
Include a clear call to action: {cta}.
Do not mention competitors. Active voice. No bullet points.'''

def generate_email(sender, recipient, context, tone, word_count, cta):
    prompt = EMAIL_TEMPLATE.format(
        sender_name=sender,
        recipient_name=recipient,
        context=context,
        tone=tone,
        word_count=word_count,
        cta=cta
    )

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

result = generate_email(
    sender='Sarah Chen',
    recipient='Mr. Patel',
    context='We met at the DevConf conference last week and discussed API integration.',
    tone='warm and professional',
    word_count=120,
    cta='Schedule a 20-minute demo call'
)
print(result)

Ansatz mit Python-f-Strings

Python-f-Strings bieten eine Syntax zur direkten Ersetzung, die manche Entwickler wegen ihrer Lesbarkeit bevorzugen:

import openai

client = openai.OpenAI(api_key='sk-...')

def generate_product_description(product, audience, tone, word_count, key_benefit):
    prompt = (
        f'Write a product description for {product}, designed for {audience}. '
        f'Tone: {tone}. '
        f'Length: {word_count} words. '
        f'Lead with this key benefit: {key_benefit}. '
        'Active voice. No bullet points. No pricing mentions.'
    )

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

print(generate_product_description(
    product='FocusFlow, a time-blocking productivity app',
    audience='freelancers and independent consultants',
    tone='energetic and practical',
    word_count=150,
    key_benefit='Reclaim two hours every day by blocking distractions automatically'
))

Umgang mit Sonderzeichen in Platzhaltern

Ein häufiger Fehler: Vom Benutzer bereitgestellte Werte, die geschweifte Klammern, Anführungszeichen oder Zeilenumbrüche enthalten, können die String-Ersetzung beeinträchtigen.

Maßnahmen zur Absicherung:

  • Eingaben vor der Ersetzung bereinigen – bei Bedarf Sonderzeichen entfernen oder escapen
  • Verwenden Sie Strings in dreifachen Anführungszeichen für mehrzeilige Vorlagen, damit Zeilenumbrüche sicher verarbeitet werden
  • Wenn der Variablenwert selbst geschweifte Klammern enthält (z. B. Code), verwenden Sie einen Ansatz, der den Wert als Literal behandelt (Jinja2 eignet sich dafür gut)

Testen Sie Ihre Vorlage immer mit Randfall-Eingaben: leeren Strings, Strings mit Anführungszeichen, Strings mit Zeilenumbrüchen und sehr langen Strings.

Standardwerte in Vorlagen

Nicht alle Variablen müssen erforderlich sein. Mit Standardwerten für optionale Parameter werden Vorlagen flexibler:

def build_prompt(product, audience, tone='professional and friendly', word_count=200, format_style='prose'):
    format_instruction = {
        'prose': 'Write in continuous paragraphs. No bullet points.',
        'bullets': 'Use bullet points. Each point is one sentence.',
        'numbered': 'Use a numbered list. Each item is one sentence.'
    }.get(format_style, 'Write in continuous paragraphs.')

    return (
        f'Write a description of {product} for {audience}. '
        f'Tone: {tone}. '
        f'Length: {word_count} words. '
        f'{format_instruction} '
        'Active voice. No competitor mentions.'
    )

# Minimal call — uses all defaults
print(build_prompt('Notion', 'students'))

# Full call — overrides defaults
print(build_prompt('Notion', 'students', tone='casual', word_count=100, format_style='bullets'))

Vorlagen mit mehreren Blöcken

Komplexe Prompts können mehrere Variablenblöcke enthalten – einen System-Prompt-Block und einen Benutzer-Nachrichtenblock, jeweils mit eigenen Platzhaltern:

SYSTEM_TEMPLATE = 'You are a {role} writing for {company}. Your audience is {audience}. Style: {style}.'

USER_TEMPLATE = 'Write a {content_type} about {topic}. Length: {word_count} words. Deadline tone: {urgency}.'

import openai

client = openai.OpenAI(api_key='sk-...')

def generate(role, company, audience, style, content_type, topic, word_count, urgency):
    system_msg = SYSTEM_TEMPLATE.format(
        role=role, company=company, audience=audience, style=style
    )
    user_msg = USER_TEMPLATE.format(
        content_type=content_type, topic=topic,
        word_count=word_count, urgency=urgency
    )

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

Platzhalter vor dem Rendern validieren

Validieren Sie immer, dass alle erforderlichen Platzhalter ausgefüllt sind, bevor Sie den Prompt senden. Ein fehlender Platzhalter führt dazu, dass das Modell wörtlichen Text wie {{product}} erhält und möglicherweise absurde Ausgaben erzeugt:

import re

def validate_template(template_str, provided_vars):
    required = set(re.findall(r'\{\{(\w+)\}\}', template_str))
    missing = required - set(provided_vars.keys())

    if missing:
        raise ValueError(f'Missing required template variables: {missing}')

    return True

template = 'Write a {{word_count}}-word {{tone}} description of {{product}} for {{audience}}.'
vars_provided = {'word_count': 150, 'tone': 'friendly', 'product': 'TaskFlow'}

try:
    validate_template(template, vars_provided)
except ValueError as e:
    print(f'Template error: {e}')
    # Output: Template error: Missing required template variables: {{'audience'}}

Bedingte Vorlagenblöcke

Manchmal soll ein Abschnitt einer Vorlage nur angezeigt werden, wenn eine Variable angegeben ist. In Python können Sie dies durch das bedingte Zusammensetzen von Strings umsetzen:

def build_report_prompt(topic, audience, word_count, include_recommendations=False, cta=None):
    prompt = f'Write a report on {topic} for {audience}. Length: {word_count} words. Active voice.'

    if include_recommendations:
        prompt += ' End with a numbered list of 3 specific recommendations.'

    if cta:
        prompt += f' Close with this call to action: {cta}'

    return prompt

# Without optional sections
print(build_report_prompt('cloud cost optimization', 'engineering managers', 400))

# With optional sections
print(build_report_prompt(
    topic='cloud cost optimization',
    audience='engineering managers',
    word_count=600,
    include_recommendations=True,
    cta='Book a cost audit with our team at cloudcost.io'
))

Variablen mit festgelegten Auswahlmöglichkeiten

Für manche Vorlagenvariablen soll nur eine feste Menge gültiger Optionen zulässig sein. Erzwingen Sie dies mit einer enumartigen Validierung:

VALID_TONES = ['professional', 'casual', 'urgent', 'empathetic', 'enthusiastic']
VALID_FORMATS = ['prose', 'bullets', 'numbered', 'table']

def generate_content(topic, tone, format_style, word_count):
    if tone not in VALID_TONES:
        raise ValueError(f'Invalid tone: {tone}. Choose from: {VALID_TONES}')
    if format_style not in VALID_FORMATS:
        raise ValueError(f'Invalid format: {format_style}. Choose from: {VALID_FORMATS}')

    format_map = {
        'prose': 'continuous paragraphs, no lists',
        'bullets': 'bullet points',
        'numbered': 'numbered list',
        'table': 'a markdown table'
    }

    prompt = (f'Write about {topic} in {tone} tone. '
              f'Format: {format_map[format_style]}. '
              f'Length: {word_count} words. Active voice.')

    return prompt

Wissenscheck: Muster mit Platzhaltern

Sie haben diese Vorlage: 'Write a {tone} email to {recipient} about {topic}. Length: {word_count} words.'

Sie rufen sie mit folgenden Argumenten auf: tone='formal', recipient='the team', word_count=100 – vergessen aber den Parameter topic.

Was geschieht?

Zusammenfassung: Muster mit Platzhaltern erstellen

Muster für Prompts mit Platzhaltern verwenden Platzhalter ({{variable}}, {variable} oder Ähnliches), um die variablen Teile einer wiederverwendbaren Vorlage zu kennzeichnen. Pythons .format() und f-Strings sind die gängigsten Mechanismen zur Ersetzung.

Bewährte Vorgehensweisen: Validieren Sie alle erforderlichen Platzhalter vor dem Rendern, verwenden Sie Standardwerte für optionale Variablen, beschränken Sie Variablen mit festgelegten Auswahlmöglichkeiten und behandeln Sie Randfall-Eingaben wie leere Strings und Sonderzeichen vorsichtig.

In der nächsten Lektion erkunden Sie Jinja2 und Pythons string.Template für leistungsfähigere Anforderungen an die Variablenersetzung.

Häufig gestellte Fragen

Ist die Lektion „Muster zum Ausfüllen erstellen“ kostenlos?

Ja — der vollständige Text von „Muster zum Ausfüllen erstellen“ 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 „Muster zum Ausfüllen erstellen“?

Verwenden Sie {{variable}}-Platzhalter und String-Substitution in Python 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 2 von 4.

Wie lange dauert die Lektion „Muster zum Ausfüllen erstellen“?

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. Was ist ein Prompt-Template?
  2. Muster zum Ausfüllen erstellen
  3. Techniken zur Variablensubstitution
  4. Templates für verschiedene Aufgaben wiederverwenden
← Zurück zu AI Prompt Engineering