OpenAI
Denne siden ble maskinoversatt. Se den opprinnelige engelske artikkelen.

Beste praksis for promptutforming med OpenAI API

Hvordan gi klare og effektive instruksjoner til OpenAI-modeller

Oppdatert: yesterday

Slik fungerer promptutforming

På grunn av måten modellene til OpenAI trenes på, finnes det bestemte promptformater som fungerer særlig godt og gir mer nyttige modellresultater. Den offisielle veiledningen i promptutforming fra OpenAI er vanligvis det beste stedet å starte for prompttips.

Nedenfor presenterer vi en rekke promptformater vi mener fungerer godt, men utforsk gjerne ulike formater som kan passe bedre til oppgaven din.

Tommelfingerregler og eksempler

Merk: «{text input here}» er en plassholder for faktisk tekst/kontekst

1. Bruk den nyeste modellen

For best resultat anbefaler vi generelt å bruke de nyeste og mest kapable modellene. Nyere modeller er ofte enklere å lage prompter for.


Merk: Det er noen forskjeller å ta hensyn til når du prompter en Resonneringsmodell sammenlignet med en GPT-modell. Mer informasjon her.

2. Plasser instruksjonene i begynnelsen av prompten og bruk ### eller """ for å skille instruksjon og kontekst

Mindre effektivt ❌:

Oppsummer teksten nedenfor som en punktliste over de viktigste punktene.

{text input here}

Bedre ✅:

Oppsummer teksten nedenfor som en punktliste over de viktigste punktene.

Tekst: """
{text input here}
"""

3. Vær spesifikk, beskrivende og så detaljert som mulig om ønsket kontekst, resultat, lengde, format, stil osv.

Vær spesifikk om kontekst, resultat, lengde, format, stil osv.

Mindre effektivt ❌:

Skriv et dikt om OpenAI. 

Bedre ✅:

Skriv et kort inspirerende dikt om OpenAI, med fokus på den nylige produktlanseringen av DALL-E (DALL-E er en ML-modell som går fra tekst til bilde) i stilen til en {famous poet}

4. Beskriv ønsket utdataformat ved hjelp av eksempler

Mindre effektivt ❌:

Trekk ut entitetene som er nevnt i teksten nedenfor. Trekk ut følgende 4 entitetstyper: selskapsnavn, personnavn, spesifikke emner og temaer.

Tekst: {text}

Vis og fortell – modellene svarer bedre når de får se spesifikke formatkrav. Dette gjør det også enklere å tolke flere utdata programmatisk på en pålitelig måte.

Bedre ✅:

Trekk ut de viktige entitetene som er nevnt i teksten nedenfor. Trekk først ut alle selskapsnavn, deretter alle personnavn, så spesifikke emner som passer til innholdet, og til slutt generelle overordnede temaer

Ønsket format:
Selskapsnavn: <kommaseparert_liste_over_selskapsnavn>
Personnavn: -||-
Spesifikke emner: -||-
Generelle temaer: -||-

Tekst: {text}

5. Start med zero-shot, deretter med få eksempler; hvis ingen fungerer, finjuster

✅ Zero-shot

Trekk ut nøkkelord fra teksten nedenfor.

Tekst: {text}

Nøkkelord:

✅ Med få eksempler – oppgi et par eksempler

Trekk ut nøkkelord fra de tilhørende tekstene nedenfor.

Tekst 1: Stripe tilbyr API-er som nettutviklere kan bruke til å integrere betalingsbehandling i nettstedene og mobilapplikasjonene sine.
Nøkkelord 1: Stripe, betalingsbehandling, API-er, nettutviklere, nettsteder, mobilapplikasjoner
##
Tekst 2: OpenAI har trent banebrytende språkmodeller som er svært gode til å forstå og generere tekst. API-en vår gir tilgang til disse modellene og kan brukes til å løse praktisk talt enhver oppgave som innebærer språkbehandling.
Nøkkelord 2: OpenAI, språkmodeller, tekstbehandling, API.
##
Tekst 3: {text}
Nøkkelord 3:

✅ Finjustering: se beste praksis for finjustering her.

6. Reduser «ullne» og upresise beskrivelser

Mindre effektivt ❌:

Beskrivelsen for dette produktet bør være ganske kort, bare noen få setninger, og ikke stort mer.

Bedre ✅:

Bruk et avsnitt på 3 til 5 setninger for å beskrive dette produktet.

7. I stedet for bare å si hva som ikke skal gjøres, si hva som skal gjøres i stedet

Mindre effektivt ❌:

Følgende er en samtale mellom en agent og en kunde. IKKE BE OM BRUKERNAVN ELLER PASSORD. IKKE GJENTA.

Kunde: Jeg kan ikke logge inn på kontoen min.
Agent:

Bedre ✅:

Følgende er en samtale mellom en agent og en kunde. agenten vil forsøke å diagnostisere problemet og foreslå en løsning, samtidig som den avstår fra å stille spørsmål knyttet til PII. I stedet for å be om PII, som brukernavn eller passord, henvis brukeren til hjelpeartikkelen www.samplewebsite.com/help/faq

Kunde: Jeg kan ikke logge inn på kontoen min.
Agent:

8. Spesifikt for kodegenerering – bruk «ledende ord» for å dytte modellen mot et bestemt mønster

Mindre effektivt ❌:

# Skriv en enkel python-funksjon som
# 1. Ber meg om et tall i miles
# 2. Konverterer miles til kilometer

I kodeeksempelet nedenfor antyder det å legge til «import» for modellen at den bør begynne å skrive i Python. (På samme måte er «SELECT» et godt hint for starten på en SQL-setning.)

Bedre ✅:

# Skriv en enkel python-funksjon som
# 1. Ber meg om et tall i miles
# 2. Konverterer miles til kilometer

import

9. Bruk funksjonen «Generer hva som helst»

Utviklere kan bruke funksjonen «Generer hva som helst» til å beskrive en oppgave eller forventede utdata i naturlig språk og få en tilpasset prompt.


Finn ut mer om bruk av funksjonen «Generer hva som helst».

Parametere

Generelt ser vi at `model` og `temperature` er de mest brukte parameterne for å endre modellutdataene.

  1. `model` – Modeller med høyere ytelse er generelt dyrere og kan ha høyere latenstid.

  2. `temperature` – Et mål på hvor ofte modellen gir ut en mindre sannsynlig token. Jo høyere temperature er, desto mer tilfeldig (og vanligvis kreativt) blir resultatet. Dette er imidlertid ikke det samme som «sannferdighet». For de fleste faktabaserte bruksområder, som datauttrekk og sannferdige spørsmål og svar, er temperature på 0 best.

  3. `max_completion_tokens` (maksimal lengde) – Styrer ikke lengden på utdataene, men er en absolutt grense for tokengenerering. Ideelt sett treffer du ikke denne grensen ofte, siden modellen stopper enten når den mener den er ferdig, eller når den treffer en stoppsekvens du har definert.

  4. `stop` (stoppsekvenser) – Et sett med tegn (tokener) som, når de genereres, får tekstgenereringen til å stoppe.

For beskrivelser av andre parametere, se API-referansen.

Var denne artikkelen nyttig?