Klíčové principy prompt engineeringu

Prompt Engineering s OpenAI API

Fouad Trad

Machine Learning Engineer

Jasné a přesné prompty

Diagram znázorňující pekárnu a dům se dvěma možnými trasami. Jedna je jednoduchá a krátká (efektivní), druhá složitá a dlouhá (neefektivní).

Prompt Engineering s OpenAI API

Klíčové principy

 

  • 🎬 Vhodná akční slovesa
  • 💬 Podrobné a přesné pokyny
  • ❗ Strukturované prompty s oddělovači
Prompt Engineering s OpenAI API

Použití akčních sloves

  • Navádějí model, co má dělat

Tabulka doporučených sloves: write, complete, explain, describe, evaluate.

Prompt Engineering s OpenAI API

Vyhněte se nejednoznačným slovesům

  • Matou porozumění modelu

Tabulka doporučených sloves (write, complete, explain, describe, evaluate) a sloves, kterým je třeba se vyhnout (understand, think, feel, try, know).

Prompt Engineering s OpenAI API

Efektivní prompt se slovesy

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 s OpenAI API

Formulování podrobných pokynů

 

Uveďte konkrétní, výstižné a podrobné pokyny týkající se:

  • 📖 Kontextu
  • 📏 Délky výstupu
  • 🖌 Formátu a stylu
  • 👥👥 Cílového publika
Prompt Engineering s OpenAI API

Efektivní prompt s pokyny

Neefektivní prompt: "Řekni mi o psech."

Efektivní 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 s OpenAI API

Omezení délky výstupu

max_tokens:

  • Limit na počet tokenů
  • Výstup jej nemůže překročit
  • Může vést k neúplným nebo oříznutým odpovědím

Prompt:

  • Limit na slova, věty nebo odstavce
  • Výstup jej může překročit
  • Úplné odpovědi
Prompt Engineering s OpenAI API

Části promptu

  • Pokyny a vstupní data pro zpracování
  • Příklad: sumarizace textu
    • Pokyn: shrňte zadaný text
    • Vstupní data: text k sumarizaci

Ikona znázorňující úlohu sumarizace textu

Prompt Engineering s OpenAI API

Tvorba strukturovaného promptu s oddělovači

  • Začněte prompt pokyny
  • Použijte oddělovače (závorky, hranaté závorky, zpětné uvozovky atd.) k vymezení částí vstupu
  • Uveďte, které oddělovače jsou použity
prompt = """Summarize the text delimited by triple backticks into bullet points.
           ```TEXT GOES HERE```"""
response = get_response(prompt)
Prompt Engineering s OpenAI API

Použití formátovaných řetězců (f-strings)

  • Vložení definovaného řetězce do jiného řetězce
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 s OpenAI API

Pojďme si procvičit!

Prompt Engineering s OpenAI API

Preparing Video For Download...