AI-prompt engineering · leksjon

Oppgi bakgrunnsinformasjon

Når og hvordan du inkluderer domenekunnskap, begrensninger og prosjektdetaljer.

Leksjon 2 av 413 trinn

Oppgi bakgrunnsinformasjon er en gratis leksjon i AI-prompt engineering på CoddyKit. Dette er leksjon 2 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 AI-prompt engineering, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i AI-prompt engineering inneholder totalt 4 leksjoner.

Hvorfor bakgrunnsinformasjon er viktig

Bakgrunnsinformasjon gir modellen faktaene den ikke kan vite på egen hånd: de spesifikke detaljene om prosjektet ditt, begrensningene til teamet ditt, arbeidet dere allerede har gjort, og forventningene til interessentene dine.

Uten bakgrunnsinformasjon genererer modellen for en tenkt, generell situasjon. Med bakgrunnsinformasjon genererer den for din situasjon.

Når du bør inkludere domenekunnskap

Inkluder domenekunnskap i prompten din når:

  • Emnet har flere tolkninger på tvers av bransjer
  • Du arbeider med spesialisert terminologi
  • Det riktige svaret avhenger av domenespesifikke normer eller forskrifter
  • Modellen kan komme med et generelt svar når du trenger et fagspesifikt svar

Ikke lim inn hele lærebøker – oppsummer de 2–3 domenefaktaene som er mest relevante for det konkrete spørsmålet ditt.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

domain_knowledge = (
    'Domain: algorithmic trading at a regulated broker-dealer in the US. '
    'Relevant rules: SEC Rule 15c3-5 (Market Access Rule) requires pre-trade risk checks. '
    'Latency budget: all risk checks must complete in under 100 microseconds. '
    'Stack: C++ for the matching engine, Python for strategy logic.'
)

response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=300,
    messages=[{
        'role': 'user',
        'content': (
            f'{domain_knowledge}\n\n'
            f'Question: How should we implement position limit checks for our order router?'
        )
    }]
)
print(response.content[0].text)

Inkludere prosjektdetaljer

Prosjektdetaljer forteller modellen den spesifikke konteksten for arbeidet ditt. Viktige prosjektdetaljer inkluderer:

  • Hva prosjektet er, og hvilken fase det er i (MVP / skalering / modent)
  • Teknologistakken og arkitekturen
  • Teamets størrelse og kompetansenivåer
  • Tidsplanen og tidspresset knyttet til frister
  • Nylige endringer eller hendelser som påvirker spørsmålet
import openai

client = openai.OpenAI(api_key='sk-your-key-here')

project_context = (
    'Project: a mobile recipe app (React Native, Node.js backend, MongoDB). '
    'Stage: pre-launch, 2 weeks to go live. '
    'Team: 2 frontend devs, 1 backend dev, no dedicated QA. '
    'Current issue: app search is slow (3-5 seconds) with 50,000 recipes in the DB. '
    'Constraint: no time for a full re-architecture before launch.'
)

response = client.chat.completions.create(
    model='gpt-4o',
    messages=[{
        'role': 'user',
        'content': (
            f'{project_context}\n\n'
            f'Suggest 3 quick wins to improve search speed before launch. '
            f'Each suggestion: what to do (1 sentence), estimated effort (hours), '
            f'expected improvement.'
        )
    }]
)
print(response.choices[0].message.content)

Dele eksisterende arbeid

Hvis du deler det eksisterende arbeidet ditt, kan modellen bygge videre på det du allerede har gjort i stedet for å starte fra grunnen av. Ta med eksisterende arbeid når du ønsker:

  • Videreføring eller utvidelse av et dokument eller en kodebase
  • Kritikk og forslag til forbedringer
  • Stiltilpasning (tilpass tonen og formatet til det som allerede finnes)
  • Konsistenskontroll (passer dette nye innslaget inn i den eksisterende strukturen?)
import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

existing_intro = (
    'At Northlight Labs, we build AI tools that work the way humans think — '
    'not the other way around. Founded in 2022 by two ex-Google researchers, '
    'we have helped 500 companies ship smarter products without hiring ML teams.'
)

response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=200,
    messages=[{
        'role': 'user',
        'content': (
            'Here is our existing company intro paragraph:\n\n'
            f'{existing_intro}\n\n'
            'Write a second paragraph (matching this exact tone and style) '
            'that describes our flagship product: an API that lets developers '
            'add natural language search to any database with 3 lines of code. '
            'Keep it under 60 words.'
        )
    }]
)
print(response.content[0].text)

Beskrive begrensninger på forhånd

Begrensninger er reglene modellen må holde seg innenfor. Hvis du oppgir dem på forhånd, hindrer du modellen i å foreslå helt gyldige ideer som likevel er umulige i din situasjon.

Typer begrensninger du bør ta med:

  • Tekniske: «Python 3.11, ingen tredjepartsbiblioteker»
  • Budsjett: «0 dollar – kun åpen kildekode»
  • Tid: «Må gjøres i en to-timers sprint»
  • Regulatoriske: «Ingen personidentifiserende opplysninger i logger»
  • Organisatoriske: «Kan ikke endre databaseskjemaet»
import openai

client = openai.OpenAI(api_key='sk-your-key-here')

response = client.chat.completions.create(
    model='gpt-4o',
    messages=[{
        'role': 'user',
        'content': (
            'We need to add rate limiting to our REST API.\n\n'
            'Constraints:\n'
            '- Python 3.11 FastAPI application\n'
            '- No external dependencies beyond what is already installed (requests, pydantic, uvicorn)\n'
            '- Must work as a single process (no Redis, no shared state between workers)\n'
            '- Rate limit: 100 requests per minute per IP address\n'
            '- If limit exceeded, return HTTP 429 with Retry-After header\n\n'
            'Show me a complete implementation.'
        )
    }]
)
print(response.choices[0].message.content)

Informasjon om interessenter

Informasjon om interessenter forteller modellen hvem andre som har betydning i situasjonen din. Interessenter påvirker hvilke risikoer som bør fremheves, hvilke innvendinger som bør besvares, og hvordan suksess ser ut.

  • «Målgruppen min omfatter CFO-en, som er skeptisk til AI-investeringer»
  • «Dette skal gjennomgås av det juridiske teamet vårt før publisering»
  • «Sluttbrukeren har behov for tilgjengelighet – må være kompatibel med skjermleser»
  • «CTO-en vår foretrekker enkle løsninger fremfor smarte»
import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

stakeholder_context = (
    'This proposal will be reviewed by:\n'
    '1. CTO: cares about technical risk and maintainability, skeptical of microservices\n'
    '2. CFO: cares about cost, wants to see clear ROI numbers\n'
    '3. VP Engineering: cares about developer experience and team morale\n'
    'The CTO has veto power.'
)

response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=400,
    messages=[{
        'role': 'user',
        'content': (
            f'{stakeholder_context}\n\n'
            f'Write a 3-paragraph executive summary for a proposal to migrate '
            f'our monolith to a modular monolith (not microservices). '
            f'Address each stakeholder\'s top concern in a separate paragraph.'
        )
    }]
)
print(response.content[0].text)

Den kronologiske metoden

I komplekse situasjoner organiserer den kronologiske metoden bakgrunnsinformasjonen som en tidslinje over hendelser. Dette hjelper modellen med å forstå årsakssammenhenger og nåsituasjonen.

Format:

  • Hvordan situasjonen var tidligere
  • Hva som ble endret eller skjedde
  • Hva nåsituasjonen er
  • Hva du trenger hjelp med, sett i lys av denne rekkefølgen
import openai

client = openai.OpenAI(api_key='sk-your-key-here')

chronological_background = (
    'Timeline:\n'
    '- 6 months ago: We launched v1 of our API with a flat pricing model ($99/month).\n'
    '- 3 months ago: Power users (top 10%) started consuming 80% of compute.\n'
    '- 1 month ago: We introduced usage-based pricing — power users complained loudly.\n'
    '- Current: 12% of power users have churned; new signups are up 15%.\n'
    '- Goal: Keep power users without losing the new-signup growth.\n'
)

response = client.chat.completions.create(
    model='gpt-4o',
    messages=[{
        'role': 'user',
        'content': (
            f'{chronological_background}\n\n'
            f'Suggest 3 pricing model adjustments that could address both groups. '
            f'For each: describe the change, who it benefits, and the revenue risk.'
        )
    }]
)
print(response.choices[0].message.content)

Bruke egne data som bakgrunn

En av de mest kraftfulle bruksområdene for bakgrunnsinformasjon er å sette inn egne data – målinger, logger, resultater eller forskning – direkte i prompten, slik at modellen kan resonnere rundt de konkrete tallene dine.

Lim alltid inn dataene i et ryddig og lettlest format. Tabeller og strukturerte lister fungerer best. Rå tekstutskrifter er vanskeligere for modellen å tolke.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

metrics_data = (
    'Weekly active users (WAU) last 8 weeks:\n'
    'Week 1: 1,200  |  Week 2: 1,350  |  Week 3: 1,290  |  Week 4: 1,400\n'
    'Week 5: 1,380  |  Week 6: 1,220  |  Week 7: 1,100  |  Week 8: 980\n'
    'Note: We launched a pricing change in Week 5.'
)

response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=300,
    messages=[{
        'role': 'user',
        'content': (
            f'{metrics_data}\n\n'
            f'Analyze the trend, identify where decline began, '
            f'and suggest 2 hypotheses for the cause. '
            f'Be specific — reference the exact weeks in your analysis.'
        )
    }]
)
print(response.content[0].text)

Hva du IKKE bør ta med som bakgrunn

Bakgrunnsinformasjon har en kostnad: tokenbruk. Ta bare med det som direkte påvirker svaret.

Bakgrunnsinformasjon som vanligvis er unødvendig:

  • Selskapets etableringshistorie (med mindre merkevaretonen er viktig)
  • Teamets organisasjonskart (med mindre beslutningsmyndighet er viktig)
  • Historikk som er eldre enn beslutningsperioden
  • Teknologi du IKKE bruker
  • Problemer som allerede er løst, og som ikke er knyttet til det aktuelle spørsmålet

Når du er i tvil, tar du det med én gang, ser om resultatet blir bedre, og kutter det ut i senere kjøringer.

# Contrast: bloated vs lean background
bloated_background = (
    'Our company was founded in 2018 by Alice and Bob. '
    'We have 45 employees across 3 offices. We use Jira for project management. '
    'We had a product refresh in 2020. Our CTO came from Amazon. '
    'We use Slack, Notion, and Linear. '
    'We once tried Kubernetes but moved back to Docker Compose. '
    'Question: How should we handle database connection pooling in FastAPI?'
)

lean_background = (
    'Stack: FastAPI, PostgreSQL, deployed on a single 8-core server. '
    'Load: ~200 concurrent users peak. '
    'Current issue: seeing "too many connections" errors under load. '
    'Question: How should we handle database connection pooling?'
)

print('Bloated background:', len(bloated_background.split()), 'words')
print('Lean background:', len(lean_background.split()), 'words')
print('Reduction:', round((1 - len(lean_background.split())/len(bloated_background.split()))*100), '%')

Formatere bakgrunnsinformasjon for lesbarhet

Hvordan du formaterer bakgrunnsinformasjonen, påvirker hvor godt modellen behandler den. Beste praksis:

  • Bruk navngitte seksjoner: Stack:, Constraints:, Goal:
  • Bruk punktlister for sidestilte punkter
  • Plasser den viktigste informasjonen først
  • Skill bakgrunnen fra oppgaven med en tom linje eller en tydelig markør
  • Bruk konsekvent terminologi – ikke gi samme ting to forskjellige navn
import openai

client = openai.OpenAI(api_key='sk-your-key-here')

# Well-formatted background
formatted_background = (
    '=== BACKGROUND ===\n'
    'Project: real-time chat API\n'
    'Stack: Python FastAPI, WebSockets, Redis pub/sub, PostgreSQL\n'
    'Scale: 10,000 concurrent connections target\n'
    'Constraints: single server for now, no Kubernetes\n'
    'Current problem: messages are occasionally delivered out of order\n'
    '=== TASK ===\n'
    'Explain the root cause of out-of-order message delivery in WebSocket pub/sub '
    'and suggest the simplest fix for our stack.'
)

response = client.chat.completions.create(
    model='gpt-4o',
    messages=[{'role': 'user', 'content': formatted_background}]
)
print(response.choices[0].message.content)

Gjenbrukbar bakgrunn i systemmeldingen

Hvis du bygger en AI-drevet applikasjon og den samme bakgrunnen gjelder for alle samtaler, bør du legge den i systemmeldingen i stedet for å gjenta den i hver brukermelding.

Dette er mer effektivt og sikrer en konsekvent kontekst i alle interaksjoner, uten at brukeren må formulere den på nytt.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

# System message carries reusable background for every user turn
system_background = (
    'You are an AI assistant embedded in Northlight Labs\' internal developer portal. '
    'Background: our stack is Python 3.11, FastAPI, PostgreSQL 15, Redis 7, Docker. '
    'We follow Google Python style guide. All code examples must include type hints. '
    'We do not use ORM — raw SQL with psycopg3. '
    'Our API follows REST conventions with snake_case JSON fields.'
)

# Now every user turn gets this background automatically
response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=300,
    system=system_background,
    messages=[
        {'role': 'user', 'content': 'Show me how to insert a row into the users table.'}
    ]
)
print(response.content[0].text)

Kunnskapssjekk

En produktsjef ønsker hjelp fra AI til å skrive en e-post med en kunngjøring av en ny funksjon. Vedkommende tar med selskapets stiftelsesår, antall ansatte, kontorsteder og deretter selve oppgaven. Hvilken type bakgrunn mangler, og vil forbedre resultatet mest?

Å gi bakgrunnsinformasjon – oppsummering

God bakgrunnsinformasjon er forskjellen mellom generelle råd og råd som faktisk passer situasjonen din. Viktige prinsipper:

  • Ta med domenekunnskap som påvirker hva som er riktig svar innen fagfeltet ditt
  • Del prosjektdetaljer: teknologistakk, fase, teamets størrelse og nylige endringer
  • Ta med eksisterende arbeid når du trenger videreføring eller stiltilpasning
  • Oppgi begrensninger på forhånd for å hindre ubrukelige forslag
  • Ta med informasjon om interessenter slik at modellen tar opp de riktige hensynene
  • Bruk den kronologiske metoden for kompleks situasjonskontekst
  • Hold bakgrunnen kortfattet – ta bare med det som påvirker svaret
Gratis å komme i gang

Lær deg AI-prompt engineering 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
199

Ofte stilte spørsmål

Er leksjonen «Oppgi bakgrunnsinformasjon» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien AI-prompt engineering, inkludert «Oppgi bakgrunnsinformasjon», 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 AI-prompt engineering inneholder totalt 4 leksjoner.

Hva lærer jeg i «Oppgi bakgrunnsinformasjon»?

Når og hvordan du inkluderer domenekunnskap, begrensninger og prosjektdetaljer. Du øver på AI-prompt engineering 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 AI-prompt engineering?

Ingen tidligere erfaring er nødvendig. AI-prompt engineering 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 2 av 4.

Hvor lang tid tar leksjonen «Oppgi bakgrunnsinformasjon»?

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 AI-prompt engineering-leksjonen?

Ja. Alle AI-prompt engineering-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. Hva kontekst betyr i AI-ledetekster
  2. Oppgi bakgrunnsinformasjon
  3. Sette scenen effektivt
  4. Kontekstens lengde og relevans
← Tilbake til AI-prompt engineering