Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Selecció de model per cas d’ús

Els casos d’ús descrits a Arquitectures per cas d’ús requereixen subconjunts de capacitats diferents. No tots els models les suporten, i els que ho fan les implementen amb qualitat i cost variables.

Aquest document estructura les capacitats rellevants i els seus requisits per cas d’ús. Aquesta matriu és un marc d’avaluació: serveix tant per seleccionar models existents com per avaluar qualsevol model nou. Els models concrets de la secció final il·lustren com aplicar-la, però el que envelleix és la llista de models — no el marc.

Com llegir la matriu: primer mira les capacitats del model per descartar opcions, i després les capacitats d’execució i desplegament per validar que la solució encaixa amb la infraestructura. A la taula de casos d’ús, indica que una capacitat és necessària, que és recomanable o parcialment útil, i que no cal.

Capacitats del model

CapacitatDescripció
Sortida estructuradaGeneració de JSON vàlid conforme a un esquema (response_format, parse(), function calling com a esquema)
Tool useRetornar tool_calls en el format estàndard i processar els resultats en el bucle d’agent
Raonament extèsTokens de raonament interns (“thinking”) que milloren la qualitat en tasques de planificació multi-pas
Context llargFinestra de context útil per sobre de 100K tokens
VisióProcessar imatges com a entrada (base64 o URL)

Capacitats d’execució i desplegament

CapacitatDescripció
StreamingRetornar tokens incrementalment (SSE); rellevant per a interfícies de chat
Prompt cachingReutilitzar el KV-cache de prefixos estàtics per reduir cost i latència
Desplegament localModel disponible per executar sense API externa (open weights¹)
Fine-tuningPossibilitat d’ajustar els pesos del model amb dades pròpies

¹ Open weights: el fabricant publica els pesos entrenats del model perquè qualsevol els pugui descarregar i executar. Diferent de open source en sentit estricte — els pesos poden tenir llicències que restringeixen l’ús comercial.

Requisits per cas d’ús

✓ requerit · ○ recomanat · — no necessari

Les cinc primeres columnes són capacitats funcionals del model. Les quatre últimes descriuen requisits d’execució, lliurament i manteniment que poden condicionar la selecció final encara que el model sigui tècnicament capaç de resoldre la tasca.

Cas d’úsSortida estructuradaTool useRaonament extèsContext llargVisióStreamingPrompt cachingLocalFine-tuning
1. Classificador / extractor
2. Assistent conversacional
3. Q&A sobre base de coneixement (RAG)
4. Generació personalitzada
5. Agent amb eines
6. Pipeline de processament en batch
7. Assistent conversacional amb eines
8. Agent amb RAG (Agentic RAG)
9. Sistema multi-agent orquestrat

Notes sobre els requisits:

  • Sortida estructurada és necessària sempre que el backend ha de parsejar la sortida del model programàticament. En els casos conversacionals purs (2), la sortida és text lliure.
  • Raonament extès aporta valor clar en els casos 5, 8 i 9, on la planificació i el raonament multi-pas són el coll d’ampolla. En els altres casos afegeix latència i cost sense benefici proporcional.
  • Context llarg és imprescindible quan l’historial de conversa creix molt (cas 2) o quan el context recuperat per RAG és voluminós (casos 3, 8). Per a la majoria de documents habituals, 128K és suficient.
  • Prompt caching és una optimització de cost, no una capacitat funcional. Val especialment la pena en casos on el system prompt és llarg i estàtic i hi ha moltes peticions (casos 4 i 6).
  • Fine-tuning és una optimització tardana — provar primer amb prompting i few-shot. Té sentit per als casos 1 i 6 quan hi ha milers d’exemples etiquetats i el prompting no arriba a la qualitat requerida.

Com avaluar un model nou

Per aplicar la matriu a qualsevol model — nou, propi, open source o comercial — cal verificar cada capacitat de forma independent:

CapacitatSenyals a verificar
Sortida estructuradaSuporta response_format: {type: "json_schema"}? O cal guided_json / constrained decoding? Quin és el percentatge d’errors d’esquema en 100 crides?
Tool useRetorna tool_calls en format OpenAI compatible? Gestiona múltiples eines en paral·lel? Quin és el percentatge de crides correctes al tool adequat en un benchmark d’eines?
Raonament extèsSuporta tokens de raonament (thinking) separats de la resposta final? La qualitat en tasques multi-pas millora significativament respecte al mode estàndard?
Context llargQuin és el context màxim anunciat? Com es comporta en el benchmark needle-in-a-haystack¹ a 80% i 100% d’ompliment?
VisióAccepta image_url en el format estàndard? Quin és el cost en tokens per imatge? Funciona amb PDF directament o cal extracció de text prèvia?
StreamingSuporta stream=True amb SSE en el format OpenAI? Primera resposta en < 1s?
Prompt cachingTé caching natiu de prefix? Cal marcar explícitament els blocs cacheïtzables? Quin és el percentatge de reducció de cost observat en crides repetides?
Desplegament localEls pesos són disponibles públicament? Quins formats (GGUF, AWQ, GPTQ)? Quin és el requisit mínim de VRAM per al model complet i en quantitzat?
Fine-tuningAdmet SFT (supervised fine-tuning) sobre els pesos? Hi ha una API de fine-tuning gestionada? Quin és el cost i el temps per a un dataset de 10K exemples?

¹ Needle-in-a-haystack: benchmark que amaga un fet concret en un document llarg i comprova si el model el recupera. Mesura si el model realment usa tot el context o perd atenció al mig de la finestra.

La verificació no ha de ser exhaustiva per a totes les capacitats — només per a les marcades com ✓ o ○ en la matriu del cas d’ús concret.

Models de referència (2026)

La taula següent aplica el marc als models principals disponibles a principis de 2026. Inclou els models frontier —els models comercials de màxima capacitat disponibles via API— i les principals opcions open weights com a referència. Envelleix ràpid — usar-la com a punt de partida i verificar les capacitats crítiques directament amb la documentació i evals pròpies.

✓ suportat · ○ suport parcial o limitat · — no disponible

ModelSortida estructuradaTool useRaonament extèsContextVisióStreamingPrompt cachingLocalFine-tuning
Claude Opus 4.7200K
Claude Sonnet 4.6200K
Claude Haiku 4.5200K
GPT-4o128K
o3 / o4-mini200K
Gemini 2.5 Pro1M
Gemini 2.5 Flash1M
Llama 3.x128K
Qwen 2.5 / 3128K
Mistral Large128K

Notes sobre els models:

  • Sortida estructurada als models locals (Llama, Qwen) requereix guided_json via vLLM o Outlines, que imposa l’esquema directament a la mostra de tokens. Sense aquesta infraestructura, la fiabilitat és variable. Per als models d’API, és nativa i fiable.
  • Raonament extès de Gemini 2.5 Flash és configurable (“thinking budget”); desactivat per defecte. Activar-lo incrementa latència i cost, i el converteix funcionalment en un model de raonament.
  • Prompt caching als models locals no és natiu del model — depèn del servidor d’inferència (prefix caching a vLLM). La columna reflecteix la disponibilitat de la infraestructura, no del model en si.
  • Fine-tuning de Claude no és disponible públicament; Anthropic el gestiona de forma selectiva per a casos empresarials específics.
  • La qualitat de tool use varia significativament entre famílies. Claude i GPT-4o / o3 són els de referència. Els models open source requereixen validació amb evals pròpies per a cada cas d’ús, especialment en agents amb moltes eines o condicions d’error.
  • Visió als models Llama (família 3.2 multimodal) és disponible als models petits (11B, 90B), que tenen menor qualitat general que els models text de la mateixa família.

Estratègies generals de selecció

Identificar les capacitats crítiques primer

Abans de triar un model, identificar quines capacitats de la matriu estan marcades com ✓ per al cas d’ús concret. Qualsevol model candidat ha de superar la verificació d’aquelles capacitats — les marcades ○ s’avaluen si hi ha empat.

API vs. model local

La tria entre API comercial i model local no és principalment de qualitat — és de privacitat, cost i control:

CriteriAPI comercialModel local
Dades sensibles o reguladesDepèn del contracte del proveïdorDades no surten de la infraestructura pròpia
Cost en volum altLineal amb tokens, pot ser carCost fix (maquinari / núvol), zero marginal
MantenimentCap (el proveïdor actualitza el model)Cal gestionar versions, actualitzacions, infraestructura
Qualitat en tool use i sortida estructuradaAlta i consistentVariable; cal guided_json i validació amb evals
Fine-tuningLimitat o API de pagamentControl complet sobre els pesos
Ús comercialSempre permès (cobert pel contracte de l’API)Depèn de la llicència dels pesos — verificar abans de desplegar

Les llicències de models locals van des d’Apache 2.0 (ús comercial lliure) fins a llicències restrictives com la Llama Community License de Meta, que requereix acceptació explícita i limita l’ús a organitzacions per sota d’un llindar d’usuaris. Desplegar un model local en producció sense revisar la llicència és un risc legal.

Punt de partida: avaluar primer si hi ha restriccions que descartin una de les dues opcions — privacitat de dades, regulació sectorial (GDPR, HIPAA, etc.) o política interna poden fer inviable l’API comercial des del principi; el cost d’operació o la manca de capacitat tècnica per mantenir infraestructura poden fer inviable el model local. Si cap restricció ho determina, l’API comercial sol ser el camí més ràpid per validar. En qualsevol cas, si s’opta per model local, verificar la llicència dels pesos abans de desplegar.

Mida del model

Els models grans costen més per crida però solen requerir menys reintents, produeixen menys errors d’esquema i gestionen millor els casos límit. Per a la majoria de casos d’ús, el cost marginal d’un model mig és acceptable.

Quan usar un model petit (Haiku, Flash, mini, 8B): la tasca és simple i ben definida (classificació binària, extracció de camps fixes), el volum és molt alt, o s’usa com a worker dins d’un sistema multi-agent on el supervisor és el model gran.

No escalar per sota del que els evals demostren que funciona. Canviar de model gran a petit per estalviar cost sense mesurar l’impacte en la qualitat és un dels errors més habituals en sistemes LLM en producció.

Raonament extès

El raonament extès (thinking tokens) millora la qualitat en tasques on el nombre de passos o la complexitat de la planificació és el coll d’ampolla. No millora tasques simples — afegeix latència i cost sense benefici:

Millora amb raonament extèsNo millora
Planificació d’agent multi-pasClassificació i extracció de dades
Raonament lògic i matemàticRespostes conversacionals
Diagnosi de causes en sistemes complexosGeneració amb esquema fix
Síntesi de múltiples fonts contradictòriesRAG quan el context ja conté la resposta

Cost: on actuar

Tres mecanismes redueixen el cost sense canviar de model:

  1. Prompt caching: per a system prompts llargs i estàtics (> 1K tokens) amb moltes peticions, el caching pot reduir el cost d’entrada en un 80–90%. Imprescindible per als casos 4 i 6.
  2. Batch API: els proveïdors comercials processen batches asíncronament amb un 50% de descompte. Adequat quan no hi ha restriccions de temps (cas 6).
  3. Model mínim suficient: mesurar la qualitat per tasca senzilla amb el model petit abans d’assumir que cal el gran. En classificació i extracció, models petits sovint arriben al 95% de la qualitat del model gran.

Per cas d’ús: punts de partida

La columna “primera opció” reflecteix models que cobreixen les capacitats crítiques amb bona qualitat sense verificació addicional. La columna “alternativa econòmica” pot requerir validació amb evals pròpies.

Cas d’úsPrimera opció (qualitat)Alternativa econòmica
1. Classificador / extractorModel mig + structured outputModel petit (8B local) + guided_json
2. Assistent conversacionalModel mig, bon instruction-followingModel petit del mateix proveïdor
3. Q&A (RAG)Model mig, bon context-followingModel local (70B)
4. Generació personalitzadaModel mig + prompt cachingModel petit + caching
5. Agent amb einesModel mig amb bon tool useModel local (70B) + validació d’evals
6. Batch processingBatch API del proveïdor actualvLLM + model local
7. Assistent conv. amb einesModel mig amb bon tool useModel petit del mateix proveïdor
8. Agentic RAGModel mig o gran amb raonamentModel local (70B) + validació
9. Multi-agent orquestratModel gran amb raonament extès (supervisor) + model mig (workers)Model mig amb raonament (supervisor)

Regla general: comença amb el model mig del proveïdor actual — bon equilibri cost/qualitat per a la majoria de casos. Escala al model gran si els evals mostren insuficiència en raonament. Mou a model local si la privacitat o el cost en producció ho requereix, i verifica les capacitats crítiques amb evals pròpies.

Models de referència actuals (2026): a tall d’il·lustració — Claude Sonnet 4.6 i GPT-4o com a models mitjos de referència; Claude Opus 4.7 i o3 com a models grans amb raonament extès; Llama 3.x i Mistral Large com a opcions locals. La matriu de verificació de la secció anterior és l’eina per avaluar nous models quan apareguin.

📝 Per als patrons de prompting, sortida estructurada i tool use, consulta Patrons de programació amb LLMs. Per als requisits de maquinari dels models locals i les opcions de desplegament, consulta Arquitectura de sistemes LLM.

Last change: , commit: 416443d