Skip to content

Bazele prompt-urilor

Promptarea unui LLM

Poți realiza multe cu prompt-uri simple, dar calitatea rezultatelor depinde de câtă informație îi furnizezi și cât de bine este construit prompt-ul. Un prompt poate conține informații precum instrucțiunea sau întrebarea pe care o transmiți modelului și poate include alte detalii precum contextul, intrările sau exemplele. Poți folosi aceste elemente pentru a instrui modelul mai eficient și pentru a îmbunătăți calitatea rezultatelor.

Să începem prin a trece în revistă un exemplu de bază al unui prompt simplu:

Prompt:

Cerul este

Ieșire:

albastru.

Dacă folosești OpenAI Playground sau orice alt playground LLM, poți prompta modelul așa cum se arată în următoarea captură de ecran:

Tutorial OpenAI Playground Iată un tutorial despre cum să începi cu OpenAI Playground:

Rolurile în modelele de chat

Când folosești modelele de chat OpenAI precum gpt-3.5-turbo sau gpt-4, poți folosi trei tipuri de mesaje:

  • System (sistem) - stabilește comportamentul AI-ului
  • User (utilizator) - întrebările sau instrucțiunile tale
  • Assistant (asistent) - răspunsurile AI-ului

Exemplu simplu:

  • System: "Ești un profesor prietenos."
  • User: "Explică-mi ce sunt prompt-urile."
  • Assistant: "Prompt-urile sunt instrucțiuni pe care le dai AI-ului..."

Pentru simplitate, în acest curs vom folosi în principal mesaje de tip "user" pentru a comunica cu AI-ul.

Poți observa din exemplul de mai sus că modelul de limbaj răspunde cu cuvinte care au sens în contextul "Cerul este". Răspunsul poate fi neașteptat sau diferit de ceea ce vrei să obții.

Acest exemplu simplu ne arată de ce avem nevoie să oferim mai multe informații sau instrucțiuni clare despre ce vrem să facă AI-ul. Aceasta este esența ingineriei prompt-urilor - să învățăm cum să comunicăm clar cu AI-ul.

Să încercăm să îl îmbunătățim puțin:

Prompt:

Completează propoziția: 
Cerul este

Ieșire:

albastru în timpul zilei și întunecat noaptea.

Este mai bine? Ei bine, cu prompt-ul de mai sus instruiești modelul să completeze propoziția, astfel încât rezultatul arată mult mai bine deoarece urmează exact ceea ce i-ai spus să facă ("completează propoziția"). Această abordare de proiectare a prompt-urilor eficiente pentru a instrui modelul să execute o sarcină dorită este ceea ce se numește ingineria prompt-urilor în acest ghid.

Exemplul de mai sus este o ilustrare de bază a ceea ce este posibil cu LLM-urile de astăzi. LLM-urile de astăzi sunt capabile să execute tot felul de sarcini avansate care variază de la rezumarea textului la raționamentul matematic și generarea de cod.

Cum să formatezi prompt-urile

Există mai multe moduri de a scrie prompt-uri. Iată cele mai comune formate:

Format simplu

Întrebare ta aici?

sau

Instrucțiunea ta aici

Format întrebare-răspuns

Q: Întrebarea ta?
A:

Tipuri de prompting

1. Prompting fără exemple (Zero-shot)

  • Dai doar instrucțiunea, fără exemple
  • Bun pentru sarcini simple
  • Exemplu: "Traduce în engleză: Bună ziua"

2. Prompting cu exemple (Few-shot)

  • Dai instrucțiunea + câteva exemple
  • Bun pentru sarcini mai complexe
  • Exemplu: Arăți 2-3 exemple înainte să pui întrebarea

Un exemplu concret de prompt este următorul:

Prompt:

Q: Ce este ingineria prompt-urilor?

Cu unele dintre modelele mai recente poți sări peste partea "Q:" deoarece este implicată și înțeleasă de model ca o sarcină de răspuns la întrebări bazată pe modul în care este compusă secvența. Cu alte cuvinte, prompt-ul ar putea fi simplificat după cum urmează:

Prompt:

Ce este ingineria prompt-urilor?

Având în vedere formatul standard de mai sus, o tehnică populară și eficientă de promptare se numește promptare cu câteva exemple unde furnizezi exemple (adică demonstrații). Poți formata prompt-urile cu câteva exemple după cum urmează:

Întrebare?
Răspuns
Întrebare?
Răspuns
Întrebare?

Versiunea formatului QA ar arăta astfel:

Q: Întrebare?
A: Răspuns
Q: Întrebare
A: Răspuns

Ține minte că nu este obligatoriu să folosești formatul QA. Formatul prompt-ului depinde de sarcina în cauză. De exemplu, poți executa o sarcină simplă de clasificare și să dai exemple care demonstrează sarcina după cum urmează:

Prompt:

Este minunat! // Pozitiv
Este rău! // Negativ
Wow, acel film a fost grozav! // Pozitiv
Ce spectacol oribil! //

Ieșire:

Negativ

Prompt-urile cu câteva exemple permit învățarea în context, care este capacitatea modelelor de limbaj de a învăța sarcini având în vedere câteva demonstrații. Discutăm promptarea fără exemple și promptarea cu câteva exemple mai pe larg în secțiunile următoare.