Lær AI med Python · leksjon

Promptutvikling for LLM-apper i produksjon

Utforming av systemprompter, few-shot-eksempler, formatering av resultater, logikk for nye forsøk og kostnadsoptimalisering.

Leksjon 4 av 413 trinn

Promptutvikling for LLM-apper i produksjon er en gratis leksjon i Lær AI med Python på CoddyKit. Dette er leksjon 4 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Lær AI med Python, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Lær AI med Python inneholder totalt 4 leksjoner.

Prompting i produksjon

I virkelige apper er prompter kode: de trenger struktur, testing og pålitelighet. God prompt engineering reduserer hallusinasjoner, håndhever utdataformatet og styrer kostnadene. Denne leksjonen dekker teknikkene som er viktige i produksjon.

Utforme systemprompten

Systemprompten angir modellens rolle, tone, begrensninger og regler. Vær spesifikk: si hva assistenten er, hva den må og ikke må gjøre, og hvilket format svarene skal ha. En tydelig systemprompt er det sterkeste verktøyet ditt for å styre modellen.

system = (
    "You are a support agent for an e-commerce store. "
    "Answer only questions about orders and shipping. "
    "If asked anything else, politely decline. "
    "Keep replies under 3 sentences."
)

Few-shot-eksempler

Few-shot-prompting betyr at du viser modellen eksempler på par med inndata og utdata, slik at den lærer mønsteret. Du plasserer disse som vekslende user-/assistant-meldinger før den faktiske forespørselen.

messages = [
    {"role": "system", "content": system},
    {"role": "user", "content": "Classify: I love this!"},
    {"role": "assistant", "content": "positive"},
    {"role": "user", "content": "Classify: This broke instantly."},
    {"role": "assistant", "content": "negative"},
    {"role": "user", "content": "Classify: It is okay I guess."}
]

Hvorfor fungerer few-shot?

Eksempler tydeliggjør hensikten din bedre enn instruksjoner alene. De låser den nøyaktige stilen på utdataene (ett ord, JSON, en etikett) og forbedrer konsistensen betydelig for klassifiserings-, uttrekkings- og formateringsoppgaver.

Tvinge frem JSON-utdata

For maskinlesbare svar ber du om JSON-modus med response_format. Med {"type": "json_object"} begrenses modellen til å produsere gyldig JSON, som du deretter kan tolke på en trygg måte.

response = client.chat.completions.create(
    model="gpt-4o",
    messages=messages,
    response_format={"type": "json_object"}
)
import json
data = json.loads(response.choices[0].message.content)

Telle tokens med tiktoken

Kostnader og kontekstgrenser måles i tokens. Biblioteket tiktoken teller tokens lokalt, slik at du kan budsjettere før du sender forespørselen. Installer det med pip install tiktoken.

import tiktoken

enc = tiktoken.encoding_for_model("gpt-4o")
tokens = enc.encode("Hello, how are you?")
print(len(tokens))

Hvorfor er tokenberegning viktig?

Hver modell har et kontekstvindu (et maksimalt antall tokens), og du betaler per token. Hvis du teller på forhånd, kan du forkorte historikken, avvise for store inndata og beregne kostnaden før kallet forlater serveren.

def cost_estimate(text, price_per_1k=0.005):
    enc = tiktoken.encoding_for_model("gpt-4o")
    n = len(enc.encode(text))
    return n, n / 1000 * price_per_1k

Håndtere rate limits

Produksjonstrafikk møter rate limits (HTTP 429) og midlertidige feil. I stedet for å krasje bør du prøve på nytt med eksponentiell tilbakekobling. Biblioteket tenacity gjør dette med en dekorator på én linje.

pip install tenacity

from tenacity import retry, wait_exponential, stop_after_attempt

Prøve på nytt med tenacity

Dekorer API-kallet ditt med @retry. Bruk wait_exponential for å øke ventetiden mellom forsøkene og stop_after_attempt for å begrense det totale antallet forsøk. Da håndterer programmet midlertidige driftsavbrudd på en kontrollert måte.

@retry(wait=wait_exponential(min=1, max=30), stop=stop_after_attempt(5))
def ask(prompt):
    return client.chat.completions.create(
        model="gpt-4o",
        messages=[{"role": "user", "content": prompt}]
    )

Definere et JSON Schema for utdata

Når du tvinger frem JSON-modus, bør du alltid beskrive den nøyaktige strukturen du ønsker i prompten, slik at nøklene blir forutsigbare. Når du spesifiserer schemaet i klartekst og bruker JSON-modus, får du resultater som kan tolkes og valideres hver gang.

system = (
    "Return ONLY JSON with this shape: "
    "{\"sentiment\": \"positive|negative|neutral\", "
    "\"confidence\": number between 0 and 1}"
)

Sette det sammen

En prompt-pipeline for produksjon består av å utforme en streng systemprompt, legge til few-shot-eksempler, tvinge frem JSON-utdata ved behov, telle tokens for å håndtere kostnader og kontekst og pakke inn kallene i retry-logikk. Til sammen gjør dette LLM-funksjoner pålitelige.

Hurtigsjekk

Test kunnskapen din om prompting i produksjon.

Oppsummering: Prompting i produksjon

Du har lært å utforme strenge systemprompter, styre atferd med few-shot-eksempler og garantere strukturerte svar via response_format-JSON-modus. Du telte tokens med tiktoken for å håndtere kontekst og kostnader, og la til robusthet med tenacity-gjenforsøk ved hastighetsbegrensninger.

Gratis å komme i gang

Lær deg Python med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
53
Leksjoner
225

Ofte stilte spørsmål

Er leksjonen «Promptutvikling for LLM-apper i produksjon» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Lær AI med Python, inkludert «Promptutvikling for LLM-apper i produksjon», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i Lær AI med Python inneholder totalt 4 leksjoner.

Hva lærer jeg i «Promptutvikling for LLM-apper i produksjon»?

Utforming av systemprompter, few-shot-eksempler, formatering av resultater, logikk for nye forsøk og kostnadsoptimalisering. Du øver på Lær AI med Python med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Lær AI med Python?

Ingen tidligere erfaring er nødvendig. Lær AI med Python på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 4 av 4.

Hvor lang tid tar leksjonen «Promptutvikling for LLM-apper i produksjon»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Lær AI med Python-leksjonen?

Ja. Alle Lær AI med Python-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. OpenAI API: chat.completions og strømming
  2. Anthropic Claude API i Python
  3. Funksjonskall og verktøybruk med LLM-er
  4. Promptutvikling for LLM-apper i produksjon
← Tilbake til Lær AI med Python