Strategia LLM e protezione dei dati
Principio di routing
La scelta del provider non deve essere implementata nei singoli servizi verticali. Il llm-gateway deve applicare una policy centralizzata e non aggirabile, basata sulla classificazione dei dati e sulla capacità richiesta.
Ogni richiesta deve dichiarare almeno:
{
"dataClassification": "PUBLIC",
"operation": "requirement.classify",
"minimumModelCapability": "STRUCTURED_EXTRACTION",
"externalProcessingAllowed": true,
"retentionPolicy": "STANDARD"
}
Classificazione dei dati
| Classe | Esempi | Routing |
|---|---|---|
PUBLIC | Topic e documenti ufficiali | API esterne o modelli locali |
INTERNAL | procedure e materiale interno non critico | locale; esterno solo con policy esplicita |
CONFIDENTIAL | email, transcript, bozze, dati dei partner | esclusivamente self-hosted |
RESTRICTED | segreti, dati personali sensibili, materiale contrattualmente limitato | ambiente locale dedicato e logging ridotto |
Per CONFIDENTIAL e RESTRICTED il fallback verso provider esterni è vietato. Se il modello locale non è disponibile, la richiesta fallisce esplicitamente.
La classificazione deve propagarsi a prompt, chunk, embedding, cache, log, trace, artefatti, code, retry e callback.
Profili di capacità locali
Le operazioni non devono dipendere dal nome di uno specifico modello:
| Profilo | Impiego indicativo |
|---|---|
LOCAL_FAST | relevance filtering, candidate generation, document routing |
LOCAL_BALANCED | classificazione e structured extraction ordinaria |
LOCAL_HIGH_QUALITY | atomicizzazione complessa, adjudication e review |
Dimensioni indicative:
- 7–14B per filtraggio e classificazioni semplici;
- 20–32B per estrazione strutturata;
- fino a 48B per casi complessi e secondo giudizio.
La dimensione non determina automaticamente la qualità. Modello, quantizzazione, contesto e prompt vengono selezionati attraverso il benchmark Bandi.
Cascata di inferenza
Regole e candidate generation
→ LOCAL_FAST
→ se incerto: LOCAL_BALANCED
→ se ancora incerto: LOCAL_HIGH_QUALITY
→ se critico: revisione umana
Per documenti pubblici la stessa cascata può includere provider API, se consentiti e se migliorano il benchmark.
Contratto con il gateway
Il gateway deve garantire:
- allowlist di provider per data classification;
- nessun fallback non dichiarato;
- output strutturato validato;
- timeout e retry coerenti con la sensibilità;
- registrazione di provider class, modello e policy applicata;
- mascheramento dei log;
- metriche senza contenuto sensibile;
- audit della decisione di routing.
Benchmark dei modelli
Ogni profilo locale ed esterno viene valutato sullo stesso golden dataset. Il report deve includere precision, recall, grounding, atomicizzazione, latenza, throughput, memoria e costo. La promozione avviene per singola capability, non globalmente per provider.
Evoluzione verso dati privati
L'estrazione del Topic usa materiale pubblico e può sfruttare API esterne. Quando il Proposal Workspace introdurrà email, transcript e documenti interni, ogni pipeline deve dichiarare CONFIDENTIAL per impostazione predefinita. L'abilitazione di un provider esterno deve essere un'eccezione organizzativa esplicita, non una proprietà modificabile dal prompt o dal client.