LLM-applikationer i produktion (RAG + vektordatabase + caching) · Lektion

Overvågning af omkostninger og latenstid

Opsæt værktøjer og praksisser til at følge LLM-API-omkostninger og applikationens latenstid, så De løbende kan optimere.

Lektion 3 af 411 trin

Overvågning af omkostninger og latenstid er en gratis LLM-applikationer i produktion (RAG + vektordatabase + caching)-lektion på CoddyKit. Dette er lektion 3 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i LLM-applikationer i produktion (RAG + vektordatabase + caching), og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. LLM-applikationer i produktion (RAG + vektordatabase + caching)-kurset indeholder 4 lektioner i alt.

Afgørende for LLM-appens sundhed

At implementere Large Language Model (LLM)-applikationer i produktion medfører unikke udfordringer. To kritiske aspekter, som løbende skal overvåges, er driftsomkostninger og applikationens svartid.

Overvågning hjælper dig med at sikre, at din LLM-app kører stabilt og effektivt inden for budgettet og giver brugerne en god oplevelse.

Forståelse af omkostninger ved LLM API'er

De fleste LLM-udbydere opkræver betaling baseret på tokenforbrug. Et token er en del af et ord, f.eks. 'hel' eller 'lo'. Du betaler typisk for:

  • Inputtokens: Den tekst, du sender til LLM'en (din prompt og kontekst).
  • Outputtokens: Den tekst, LLM'en genererer som svar.

Priserne varierer efter model og tokentype, så det er vigtigt at holde øje med forbruget for at styre udgifterne.

Udbydernes oversigter over omkostninger

Den nemmeste måde at begynde at holde øje med LLM-omkostninger på er at bruge de oversigter, som din LLM API-udbyder (f.eks. OpenAI eller Anthropic) stiller til rådighed. Disse oversigter indeholder normalt:

  • En oversigt over dine samlede udgifter.
  • Opdelinger af forbruget efter specifikke modeller.
  • Historiske data og analyse af udviklingen.

De giver et praktisk overblik på højt niveau over dine udgifter.

Programmatisk registrering af omkostninger

Hvis du har brug for mere detaljeret kontrol og integration med dine egne systemer, kan du logge tokenforbruget direkte fra din applikation. Svar fra LLM API'er indeholder ofte detaljerede tokenoptællinger. Her er et Python-eksempel:

import openai

# This client would be initialized with your API key
# client = openai.OpenAI(api_key="YOUR_OPENAI_API_KEY")

def get_llm_response_with_cost(prompt):
    try:
        # Simulate an LLM call without actual API key setup
        # In a real app, 'client.chat.completions.create(...)' would be used
        response_mock = type('obj', (object,), {
            'choices': [type('obj', (object,), {'message': type('obj', (object,), {'content': 'The capital of France is Paris.'})})],
            'usage': type('obj', (object,), {
                'prompt_tokens': 10,
                'completion_tokens': 5,
                'total_tokens': 15
            })
        })()
        
        usage = response_mock.usage # In real code: response.usage
        print(f"Prompt Tokens: {usage.prompt_tokens}")
        print(f"Completion Tokens: {usage.completion_tokens}")
        print(f"Total Tokens: {usage.total_tokens}")
        return response_mock.choices[0].message.content # In real code: response.choices[0].message.content
    except Exception as e:
        print(f"Error: {e}")
        return "Error generating response."

if __name__ == "__main__":
    print("--- LLM Cost Logging Demo --- ")
    get_llm_response_with_cost("What is the capital of France?")

Forståelse af svartid i RAG

Svartid er forsinkelsen mellem at sende en anmodning og modtage et svar. I en Retrieval Augmented Generation (RAG)-applikation omfatter det ikke kun LLM-kaldet, men flere trin:

  • Tiden, det tager at hente dokumenter fra din vektordatabase.
  • Den faktiske varighed af LLM API-kaldet.
  • Eventuelle trin til forbehandling eller efterbehandling.

Høj svartid kan give brugerne en frustrerende langsom oplevelse.

Måling af svartid i din app

Hvis du vil optimere ydeevnen i dit RAG-system, skal du identificere, hvor forsinkelserne opstår. Det betyder, at du skal måle den tid, hver kritisk del af din pipeline tager:

  • Indlæsning og opdeling af data.
  • Generering af embeddings.
  • Forespørgsler til vektordatabasen.
  • LLM API-kald.

Pythons time-modul er et enkelt, men effektivt værktøj til dette.

Praktisk logning af svartid

Lad os udvide vores tidligere eksempel, så vi måler varigheden af et LLM-kald. Dette er ofte den største bidragyder til den samlede svartid i RAG:

import openai
import time

# This client would be initialized with your API key
# client = openai.OpenAI(api_key="YOUR_OPENAI_API_KEY")

def get_llm_response_timed(prompt):
    start_time = time.time()
    try:
        # Simulate an LLM call without actual API key setup
        # In a real app, 'client.chat.completions.create(...)' would be used
        # Simulate a network delay
        time.sleep(0.5)
        response_mock = type('obj', (object,), {
            'choices': [type('obj', (object,), {'message': type('obj', (object,), {'content': 'Once upon a time, there was a brave knight.'})})],
        })()
        
        end_time = time.time()
        duration = end_time - start_time
        print(f"LLM Call Duration: {duration:.2f} seconds")
        return response_mock.choices[0].message.content # In real code: response.choices[0].message.content
    except Exception as e:
        print(f"Error: {e}")
        return "Error generating response."

if __name__ == "__main__":
    print("--- LLM Latency Logging Demo --- ")
    get_llm_response_timed("Tell me a short story about a brave knight.")

Centralisering af målinger og værktøjer

Hvis du vil have et samlet billede af din applikations tilstand, er det bedst at centralisere dine logge og målinger ved hjælp af dedikerede overvågningsværktøjer. Populære valg omfatter:

  • Prometheus: Fremragende til indsamling og lagring af tidsseriedata (målinger).
  • Grafana: Til opbygning af effektive, tilpasningsbare oversigter og visualiseringer.
  • Datadog / New Relic: Alt-i-én-platforme til observerbarhed, der kombinerer målinger, logge og spor.

Disse platforme hjælper dig med at visualisere udviklingen og hurtigt finde problemer.

Opsætning af proaktive alarmer

Overvågning hjælper dig med at forstå, hvad der sker, mens alarmer sikrer, at du straks får besked, når noget går galt. Konfigurer alarmer, der udløses, hvis:

  • Dine månedlige LLM API-omkostninger overstiger et på forhånd fastsat budget.
  • Den gennemsnitlige svartid for dit RAG-system pludselig stiger uventet.
  • Fejlraterne for LLM-kald eller hentning stiger betydeligt.

Proaktive alarmer gør det muligt at løse problemer, før de påvirker brugerne eller dit budget negativt.

Hurtigt tjek: Overvågning af omkostninger

Du har lært om registrering af LLM-omkostninger og svartid. Lad os teste din forståelse af, hvorfor det er så vigtigt at overvåge tokenforbruget.

Opsummering: Overvågning skaber succes

Overvågning af omkostninger og svartid er helt afgørende for enhver LLM-applikation i produktion. Ved programmatisk at registrere tokenforbrug og tidsmåle vigtige handlinger får du afgørende indsigt, så du kan optimere systemets ydeevne og styre budgetterne effektivt.

Integration med platforme til observerbarhed og opsætning af proaktive alarmer sikrer, at dit RAG-system forbliver effektivt og omkostningseffektivt og giver brugerne en pålidelig oplevelse.

Gratis at komme i gang

Lær LLM-applikationer i produktion (RAG + vektordatabase + caching) med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
12
Lektioner
48

Ofte stillede spørgsmål

Er lektionen “Overvågning af omkostninger og latenstid” gratis?

Ja — hele teksten til “Overvågning af omkostninger og latenstid” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af LLM-applikationer i produktion (RAG + vektordatabase + caching)-kurset, skal du opgradere til CoddyKit PRO. LLM-applikationer i produktion (RAG + vektordatabase + caching)-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Overvågning af omkostninger og latenstid”?

Opsæt værktøjer og praksisser til at følge LLM-API-omkostninger og applikationens latenstid, så De løbende kan optimere. Du øver dig i LLM-applikationer i produktion (RAG + vektordatabase + caching) med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på LLM-applikationer i produktion (RAG + vektordatabase + caching)?

Der kræves ingen tidligere erfaring. LLM-applikationer i produktion (RAG + vektordatabase + caching) på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 3 af 4.

Hvor lang tid tager lektionen “Overvågning af omkostninger og latenstid”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne LLM-applikationer i produktion (RAG + vektordatabase + caching)-lektion?

Ja. Alle LLM-applikationer i produktion (RAG + vektordatabase + caching)-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Prompt engineering for effektivitet
  2. Batchbehandling og asynkrone operationer
  3. Overvågning af omkostninger og latenstid
  4. Vælg den rigtige model til opgaven
← Tilbage til LLM-applikationer i produktion (RAG + vektordatabase + caching)