Kernprincipes van prompt engineering

Prompt Engineering met de OpenAI API

Fouad Trad

Machine Learning Engineer

Heldere en precieze prompts

Een diagram met een bakkerij en een huis met twee routes ertussen. Eén is simpel en kort (effectief) en de andere is ingewikkeld en lang (ineffectief).

Prompt Engineering met de OpenAI API

Kernprincipes

 

  • 🎬 Passende werkwoorden
  • 💬 Gedetailleerde en precieze instructies
  • ❗ Goed gestructureerde prompts met scheidingstekens
Prompt Engineering met de OpenAI API

Actiewerkwoorden gebruiken

  • Stuur het model aan wat te doen

Tabel met te gebruiken werkwoorden zoals schrijven, aanvullen, uitleggen, beschrijven of evalueren.

Prompt Engineering met de OpenAI API

Vermijd vage werkwoorden

  • Verwarren het begrip van het model

Tabel met te gebruiken werkwoorden zoals schrijven, aanvullen, uitleggen, beschrijven of evalueren, en te vermijden werkwoorden zoals begrijpen, denken, voelen, proberen en weten.

Prompt Engineering met de OpenAI API

Effectieve prompt met werkwoorden

prompt = "Think about the issue of 
deforestation."
response = get_response(prompt)
print(response)
Deforestation is a significant 
environmental issue involving 
permanently removing
or destroying forests and woodlands. 
It has far-reaching impacts on the 
environment, ecosystems, wildlife, 
and human communities. [...]
prompt = "Propose strategies to 
reduce deforestation."
response = get_response(prompt)
print(response)
Reducing deforestation requires 
a comprehensive and multi-dimensional 
approach involving various stakeholders. 
Here are several strategies 
that can help address the issue:
Strengthen Forest Governance
Promote Sustainable Land Use [...]
Prompt Engineering met de OpenAI API

Gedetailleerde instructies formuleren

 

Geef specifieke, beschrijvende en gedetailleerde instructies over:

  • 📖 Context
  • 📏 Uitvoerlengte
  • 🖌 Formaat en stijl
  • 👥👥 Doelgroep
Prompt Engineering met de OpenAI API

Effectieve prompt met instructies

Ineffectieve prompt: "Tell me about dogs."

Effectieve prompt

prompt = "Write a descriptive paragraph about the behavior and characteristics of 
Golden Retrievers, highlighting their friendly nature, intelligence, 
and suitability as family pets."
print(get_response(prompt))
Golden Retrievers are beloved worldwide for their exceptional behavior, remarkable 
characteristics, and friendly nature. They are highly intelligent, trainable, and 
adaptable, making them great companions for families, including those with children.
Prompt Engineering met de OpenAI API

Uitvoerlengte beperken

max_tokens:

  • Limiet op aantal tokens
  • Output kan dit niet omzeilen
  • Kan leiden tot onvolledige of afgekapt antwoord

Prompt:

  • Limiet op woorden, zinnen of alinea's
  • Output kan dit omzeilen
  • Volledige antwoorden
Prompt Engineering met de OpenAI API

Onderdelen van een prompt

  • Instructies en invoergegevens om op te werken
  • Voorbeeld: tekstsamenvatting
    • Instructie: vat de gegeven tekst samen
    • Invoergegevens: tekst om samen te vatten

Een pictogram dat de taak tekstsamenvatting weergeeft

Prompt Engineering met de OpenAI API

Een goed gestructureerde prompt met scheidingstekens

  • Begin je prompt met instructies
  • Gebruik scheidingstekens (haakjes, brackets, backticks, etc.) om invoerdelen aan te geven
  • Noem welke scheidingstekens je gebruikt
prompt = """Summarize the text delimited by triple backticks into bullet points.
           ```TEXT GOES HERE```"""
response = get_response(prompt)
Prompt Engineering met de OpenAI API

Geformatteerde strings (f-strings) gebruiken

  • Voeg een gedefinieerde string in een andere string in
text = "This is a sample text to summarize"

prompt = f"""Summarize the text delimited by triple backticks into bullet points. ```{text}```"""
print(prompt)
Summarize the text delimited by triple backticks into bullet points.
```This is a sample text to summarize```
Prompt Engineering met de OpenAI API

Laten we oefenen!

Prompt Engineering met de OpenAI API

Preparing Video For Download...