Einführung in das Data Engineering

Prompt-Engineering mit der OpenAI-API

Fouad Trad

Machine Learning Engineer

Was ist Data Engineering?

Prompts oder Anweisungen, die LLMs gegeben werden, um gewünschte Antworten zu erhalten

Ein Bild, das einen Ingenieur zeigt, der die Terminologie des Prompt Engineering vorstellt.

Prompt-Engineering mit der OpenAI-API

Prompt Engineering ist wie das Erstellen eines Rezepts

Bild eines Kochs bei der Zubereitung einer Mahlzeit.

Prompt-Engineering mit der OpenAI-API

Warum Prompt Engineering?

Ein visuelles Diagramm, das zeigt, dass hochwertige Prompts zu hochwertigen Antworten führen

Prompt-Engineering mit der OpenAI-API

Warum Prompt Engineering?

Ein visuelles Diagramm, das zeigt, wie die Qualität der Antworten von der Qualität der Eingabe-Prompts beeinflusst wird. Hochwertige Prompt führen zu hochwertigen Antworten, und minderwertige Prompt führen zu minderwertigen Antworten.

Prompt-Engineering mit der OpenAI-API

Zusammenfassung: OpenAI API

  • Ermöglicht die Interaktion mit OpenAI-Modellen
  • Bereits in diesem Kurs eingerichtet
  • Zugriff auf den Chat Completions-Endpunkt

chatgpt_logo_white.png

Prompt-Engineering mit der OpenAI-API

Zusammenfassung: Nachrichtenrollen

Jede Nachricht hat eine von drei Rollen

Bild mit einem Symbol für die Benutzerrolle.

Prompt-Engineering mit der OpenAI-API

Zusammenfassung: Nachrichtenrollen

Jede Nachricht hat eine von drei Rollen

Bild mit einem Symbol für die beiden Rollen: Benutzer und Assistent.

Prompt-Engineering mit der OpenAI-API

Zusammenfassung: Nachrichtenrollen

Jede Nachricht hat eine von drei Rollen

Bild mit einem Symbol für jede der drei Rollen: Benutzer, System und Assistent

Prompt-Engineering mit der OpenAI-API

Zusammenfassung: Nachrichtenrollen

Jede Nachricht hat eine von drei Rollen

Bild mit einem Symbol für jede der drei Rollen, mit einem Kommunikationspfeil zwischen dem System und dem Assistenten, um die Nachrichten des Systems zu senden.

  • Systemnachricht: steuert das Modellverhalten
Prompt-Engineering mit der OpenAI-API

Zusammenfassung: Nachrichtenrollen

Jede Nachricht hat eine von drei Rollen

Bild mit einem Symbol für jede der drei Rollen, mit einem Kommunikationspfeil zwischen dem System und dem Assistenten, um Systemnachrichten zu senden, und einem Kommunikationspfeil zwischen dem Benutzer und dem Assistenten, um einen Prompt zu senden.

  • Systemnachricht: steuert das Modellverhalten
  • Benutzernachricht: Prompt vom Benutzer
Prompt-Engineering mit der OpenAI-API

Zusammenfassung: Nachrichtenrollen

Jede Nachricht hat eine von drei Rollen

Bild mit einem Symbol für jede der drei Rollen, mit einem Kommunikationspfeil zwischen dem System und dem Assistenten, um Systemnachrichten zu senden, einem Kommunikationspfeil zwischen dem Benutzer und dem Assistenten, um einen Prompt zu senden, und einem Kommunikationspfeil zwischen dem Assistenten und dem Benutzer, um die Antwort zu senden.

  • Systemnachricht: steuert das Modellverhalten
  • Benutzernachricht: Prompt vom Benutzer
  • Nachricht des Assistenten: Antwort auf Benutzer-Prompt
Prompt-Engineering mit der OpenAI-API

Zusammenfassung: Steuerungsparameter

Bild mit einem Thermometersymbol und den möglichen Werten zwischen 0 und 2, wobei 0 keine Zufälligkeit und 2 die höchste Zufälligkeit zeigt.

  • temperature: steuert die Zufälligkeit der Antwort
Prompt-Engineering mit der OpenAI-API

Zusammenfassung: Steuerungsparameter

Bild eines Thermometersymbols mit möglichen Werten zwischen 0 und 2, wobei 0 keine Zufälligkeit und 2 die höchste Zufälligkeit zeigt, sowie eines Schiebereglersymbols, das den Parameter max_tokens darstellt, wobei niedrigere Werte auf dem Regler zu kürzeren Antworten führen.

  • temperature: steuert die Zufälligkeit der Antwort
  • max_tokens: steuert die Antwortlänge
Prompt-Engineering mit der OpenAI-API

Zusammenfassung: Kommunikation mit der OpenAI-API

prompt = "What is prompt engineering?"

client = OpenAI(api_key="api_key")
response = client.chat.completions.create(
model = "gpt-4o-mini",
messages = [{"role": "user", "content": prompt}],
temperature = 0 )
print(response.choices[0].message.content)
Prompt engineering refers to the process of designing and refining prompts or 
instructions given to a language model like ChatGPT in order to elicit desired 
responses or behaviors. It involves formulating specific guidelines or hints to 
guide the model's output towards a desired outcome.
Prompt-Engineering mit der OpenAI-API

Erstellen der Funktion get_response()

def get_response(prompt):

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

Verwendung

response = get_response("What is prompt engineering?")
print(response)
Prompt engineering refers to the process of designing and refining prompts or instructions given to a language model 
like ChatGPT in order to elicit desired responses or behaviors. It involves formulating specific guidelines or hints 
to guide the model's output towards a desired outcome.
Prompt-Engineering mit der OpenAI-API

Prompt-Verbesserung

prompt = "What is prompt engineering? Explain it in terms that can be understood 
by a 5-year-old"
response = get_response(prompt)
print(response)
Imagine you have a very smart friend who can understand and answer lots of 
questions. But sometimes, they might not understand exactly what you want or give 
the wrong answer. So, prompt engineering is like giving your friend really clear 
instructions or hints to help them give you the best answer possible.
Prompt-Engineering mit der OpenAI-API

Lass uns üben!

Prompt-Engineering mit der OpenAI-API

Preparing Video For Download...