AI-agenter · Lektion

Function calling med åbne modeller (Hermes, Functionary)

De fleste åbne basismodeller kan ikke kalde værktøjer godt — Hermes og Functionary er finjusteret til det.

Lektion 3 af 415 trin

Function calling med åbne modeller (Hermes, Functionary) er en gratis AI-agenter-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 AI-agenter, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. AI-agenter-kurset indeholder 4 lektioner i alt.

Basismodeller kan ikke udføre pålidelige værktøjskald

Rå Llama-, Mistral- eller Qwen-basismodeller kan instrueres til at "returnere JSON som {...}", men de producerer ofte ugyldige data, overser argumenter eller opdigter værktøjer.

Finjusteringer til funktionskald løser dette.

Hermes-familien

NousResearch Hermes-modeller er finjusteringer til funktionskald i topklasse:

  • Hermes 3 Llama 3.1 8B / 70B
  • Stærk nøjagtighed ved værktøjskald
  • Tilladelig licens i Apache-stil

Functionary

MeetKai Functionary-modeller er specifikt trænet til OpenAI-kompatible funktionskald:

  • Functionary v3 (baseret på Llama 3.1)
  • Understøtter parallelle værktøjskald
  • Tilgængelig på HuggingFace og Together AI

Indbygget værktøjsbrug i Llama 3.1+

De nyere instruct-varianter af Llama 3.1, Llama 3.3 og Llama 4 har indbygget understøttelse af værktøjskald. Til mange opgaver er de tilstrækkelige; til svære tilfælde kan du bruge Hermes / Functionary.

Værktøjsbrug i Qwen 2.5

Qwen 2.5 har stærke indbyggede værktøjskald og kan konkurrere med lukkede modeller. Det er ofte standardvalget til flersprogede agenter med egen drift.

Kald af åbne modeller med værktøjsunderstøttelse

Alle OpenAI-kompatible servere (Ollama, vLLM og Together AI) accepterer den samme tools-parameter:

from openai import OpenAI
client = OpenAI(base_url='http://localhost:11434/v1', api_key='ollama')

tools = [{'type': 'function', 'function': {
    'name': 'get_weather',
    'description': 'Current weather',
    'parameters': {'type': 'object', 'properties': {'city': {'type': 'string'}}, 'required': ['city']}
}}]

response = client.chat.completions.create(
    model='hermes3:8b',
    messages=[{'role': 'user', 'content': 'Weather in Paris?'}],
    tools=tools
)

Validér uddata grundigt

Værktøjskald i åbne modeller fejler oftere end i lukkede modeller. Gør altid følgende:

  • Fortolk JSON i try/except
  • Validér med Pydantic
  • Tilføj en reparationsløkke

Tving værktøjskald med Outlines

Brug Outlines til afkodning med grammatikbegrænsninger, hvis du vil være sikker på strukturerede uddata fra åbne modeller:

import outlines
model = outlines.models.transformers('meta-llama/Llama-3.1-8B-Instruct')
generator = outlines.generate.json(model, ToolCall)
result = generator(prompt)

Værktøjsbrug i Hugging Face TGI

TGI understøtter værktøjsbrug i OpenAI-stil for mange åbne modeller — en direkte erstatning.

Mål kvaliteten af værktøjsbrug

Værktøjskald måles med:

  • Berkeley Function Calling Leaderboard (BFCL) — den autoritative rangliste
  • ToolBench — bredere dækning
  • API-Bank — scenarier med flere værktøjer

En fornuftig standardstak

Den kombination, de fleste teams ender med:

  • Llama 3.1 8B Instruct til generelt agentarbejde
  • Qwen 2.5 Coder til kodeagenter
  • Hermes 3 til agenter med mange værktøjskald
  • Outlines eller Instructor til garanti for strukturerede uddata

Kør via en udbyder

Hvis du vil undgå al infrastruktur: Together AI, Fireworks og Anyscale hoster Hermes, Functionary, Llama og Qwen med OpenAI-kompatible API'er. Billigere end OpenAI ved tilsvarende kvalitet.

Eksempel på omkostningssammenligning

Omtrentlige omkostninger pr. million tokens (midt i 2025):

  • GPT-4o: $2.50 for inddata, $10 for uddata
  • Llama 3.1 70B (Together AI): $0.88 for inddata, $0.88 for uddata
  • Llama 8B med egen drift: $0 (din elektricitet)

Hvorfor bruge finjusterede funktionskaldsmodeller?

Hvorfor bruge Hermes eller Functionary i stedet for Llama-basismodellen til værktøjskald?

Opsamling

De nyere Llama- og Qwen-modeller har en god indbygget værktøjsbrug. Brug Hermes eller Functionary for større pålidelighed. Kombinér dem med Outlines/Instructor for garanteret struktur.

Gratis at komme i gang

Lær AI-agenter 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
60
Lektioner
239

Ofte stillede spørgsmål

Er lektionen “Function calling med åbne modeller (Hermes, Functionary)” gratis?

Ja — hele teksten til “Function calling med åbne modeller (Hermes, Functionary)” 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 AI-agenter-kurset, skal du opgradere til CoddyKit PRO. AI-agenter-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Function calling med åbne modeller (Hermes, Functionary)”?

De fleste åbne basismodeller kan ikke kalde værktøjer godt — Hermes og Functionary er finjusteret til det. Du øver dig i AI-agenter 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å AI-agenter?

Der kræves ingen tidligere erfaring. AI-agenter 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 “Function calling med åbne modeller (Hermes, Functionary)”?

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 AI-agenter-lektion?

Ja. Alle AI-agenter-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. Overblik over Llama, Mistral og Qwen
  2. Kørsel af lokale modeller med Ollama og llama.cpp
  3. Function calling med åbne modeller (Hermes, Functionary)
  4. Afvejninger: Latenstid, omkostning, funktionalitet
← Tilbage til AI-agenter