Mòdul 7

Arquitectura i producció


Amb el sistema validat i mesurat, toca fer-lo eficient i escalable en un entorn de producció real.

Temps de lectura: 2 min

Streaming

L'streaming és rebre la resposta del model token a token a mesura que es genera, en lloc d'esperar que estigui completa. L'usuari comença a llegir al cap de pocs centenars de mil·lisegons, encara que la resposta sencera trigui deu segons.

Canvia la percepció de velocitat més que qualsevol altra optimització, i és gairebé obligatori en interfícies de xat. Té un cost d'implementació: cal un canal que ho suporti (Server-Sent Events o WebSockets), gestionar els errors a mitja resposta i tenir en compte que una sortida estructurada no es pot validar fins al final.

Prompt caching

El prompt caching és una funcionalitat dels proveïdors que reaprofita el processament de la part del prompt que es repeteix entre crides, com un system prompt llarg, uns documents fixos o l'historial d'una conversa. Les crides que reutilitzen aquest prefix són més barates i responen més de pressa.

Per aprofitar-lo, la part estable ha d'anar al principi del prompt i la variable (la pregunta, el tiquet concret) al final, perquè la memòria cau funciona per prefix exacte. No s'ha de confondre amb guardar respostes a la teva pròpia memòria cau, que només serveix quan la mateixa pregunta es repeteix exactament.

Batch processing

El batch processing és enviar moltes peticions juntes perquè el proveïdor les processi de manera asíncrona, normalment en un termini d'hores, a canvi d'un descompte important (sovint al voltant del 50%).

És ideal per a la feina que no té pressa: classificar tots els tiquets històrics, generar resums nocturns o passar un conjunt d'evals sencer. No serveix per a res que l'usuari estigui esperant. La decisió és senzilla: si el resultat no fa falta en els pròxims minuts, probablement ha d'anar per lots.

Model routing

El model routing és triar dinàmicament quin model atén cada petició segons la dificultat, el cost o la latència: un model petit i barat per a les tasques senzilles i un de gran per a les complexes.

En una aplicació d'atenció al client, classificar un tiquet per categoria no necessita el mateix model que redactar la resposta a una reclamació delicada. El routing pot ser una regla fixa per tasca (la més habitual i la més fàcil de mantenir) o una decisió dinàmica, fins i tot presa per un model petit. També serveix de pla B: si un proveïdor falla, la petició passa a un altre.

Examina't d'aquest mòdul

Copia aquest prompt i enganxa'l a la teva IA (ChatGPT, Claude, Gemini…). Et farà un test de 20 preguntes sobre els conceptes del mòdul i després et proposarà un exercici pràctic.

Actua com a examinador de la «Guia d'Enginyeria IA» de Dani Pérez. Examina'm del mòdul «Arquitectura i producció» (https://daniperez.cat/resources/ai-engineering-guide/production-architecture).

Conceptes que entren a l'examen:
- Streaming
- Prompt caching
- Batch processing
- Model routing

Examen:
1. 20 preguntes tipus test, cadascuna amb 4 opcions (a, b, c, d) i una sola resposta correcta.
2. Pregunta sobre comprensió i criteri (per a què serveix cada cosa i quan NO fer-la servir), no sobre memoritzar definicions.
3. Reparteix la posició de la resposta correcta de manera equilibrada entre a, b, c i d.
4. Fes-me les preguntes en 4 tandes de 5. No posis cap exemple de resposta (com "1a 2b 3c 4d 5a"): jo ja sé que he de respondre amb les lletres. No em diguis si he encertat fins que hagi respost les 20.
5. Al final, corregeix-les totes: per a cada pregunta, la meva resposta, la correcta i una explicació breu. Dona'm la nota sobre 20 i digues quins conceptes he de repassar.

Exercici pràctic (després de la correcció):
6. Pregunta'm quina aplicació tinc o vull construir, i amb quin llenguatge i framework treballo. Si no en tinc cap, fes servir aquesta: l'aplicació d'atenció al client d'una botiga en línia, amb tiquets, clients, comandes i una base de coneixement (FAQ i polítiques de devolució). En aquest cas, centra l'exercici en: passar a cua les operacions pesades, fer streaming de la resposta suggerida, aprofitar el prompt caching i triar el model segons la tasca.
7. Proposa'm un exercici que apliqui els conceptes d'aquest mòdul a aquella aplicació: objectiu, requisits, criteris per donar-lo per bo i errors habituals a evitar.
8. No me'l resolguis. Quan et porti la meva solució, revisa-la amb aquests criteris.