Azure OpenAI Service è il servizio Azure che rende disponibili, all’interno del perimetro di sicurezza e conformità del cloud Microsoft, i modelli di generative AI sviluppati da OpenAI. La differenza rispetto all’API pubblica di OpenAI è proprio questa: i dati restano nel tenant Azure dell’organizzazione, si applicano i controlli di rete, identità (con Microsoft Entra ID) e governance aziendali, e sono attivi i filtri di Responsible AI e content moderation. Il servizio si consuma tramite REST API, SDK o l’ambiente di sperimentazione Azure AI Foundry (già Azure OpenAI Studio).

I tipi di modello disponibili

Azure OpenAI non offre un modello unico, ma famiglie di modelli con scopi diversi. Sapere “quando usare cosa” è centrale per l’esame.

  • Modelli GPT (testo e chat) — come la famiglia GPT-4o e successori. Servono per generazione di linguaggio naturale: rispondere a domande, riassumere, tradurre, classificare, scrivere codice, sostenere conversazioni. Sono il cuore di soluzioni come chatbot e assistenti.
  • Modelli di embedding — trasformano il testo in vettori numerici che ne catturano il significato semantico. Non generano testo: si usano per ricerca semantica, clustering e sistemi di raccomandazione. Sono la base del pattern RAG (Retrieval Augmented Generation), in cui si recuperano documenti pertinenti da fornire come contesto al modello GPT.
  • Modelli di generazione di immagini — come DALL·E e GPT-image, creano immagini a partire da una descrizione testuale.

Esistono inoltre modelli per speech e multimodali, ma per il livello fundamentals è sufficiente distinguere testo/chat, embedding e immagini.

Le basi del prompt engineering

Il prompt è l’input testuale che guida il modello. Il prompt engineering è la pratica di formulare questo input in modo da ottenere risposte più accurate, pertinenti e coerenti. Non richiede riaddestrare il modello: cambia solo come si chiede. I pilastri sono quattro.

  • Istruzioni chiare — dire esplicitamente cosa fare, in che formato e con quali vincoli (lunghezza, tono, lingua). Un’istruzione vaga produce output vago.
  • Contesto — fornire le informazioni di riferimento su cui basare la risposta, riducendo le allucinazioni (risposte plausibili ma inventate).
  • Esempi (few-shot) — mostrare uno o più esempi input→output desiderati. Il modello imita lo schema. Un prompt senza esempi si dice zero-shot.
  • System message — nei modelli di chat è il messaggio iniziale che definisce ruolo, personalità e regole dell’assistente (es. “Sei un supporto clienti cortese che risponde solo su temi bancari”). Persiste per tutta la conversazione e stabilisce i confini del comportamento.

Esempio: prompt debole vs prompt ben scritto

Prompt debole:

Parlami dell’AZ-900.

Output: un testo generico e imprevedibile per lunghezza e taglio.

Prompt ben scritto (istruzione + contesto + formato):

Sei un tutor di certificazioni Microsoft. Spiega a un principiante cos’è l’esame AZ-900 in massimo 3 frasi, poi elenca in 3 bullet i macro-argomenti trattati. Usa un tono incoraggiante.

Il secondo prompt vincola ruolo, pubblico, lunghezza e struttura: l’output diventa mirato, breve e riutilizzabile. È lo stesso modello, ma la qualità dipende da come è stata formulata la richiesta.

Trappole tipiche d’esame

  • Serve elaborare linguaggio naturale generando testo nuovo (riassunti, chatbot, bozze)? → Usi un modello GPT di Azure OpenAI Service, non un modello di embedding.
  • Vuoi trovare documenti “simili per significato” o costruire una ricerca semantica / RAG? → Servono i modelli di embedding, che producono vettori; l’embedding non genera testo.
  • Vuoi definire una volta sola il ruolo e le regole del chatbot per l’intera conversazione? → Imposti il system message, non ripeti le istruzioni in ogni messaggio utente.
  • La differenza tra API OpenAI pubblica e Azure OpenAI Service in uno scenario aziendale con requisiti di conformità e integrazione con l’identità cloud? → Scegli Azure OpenAI Service (dati nel tenant, sicurezza Azure, Microsoft Entra ID, content filtering).
  • Il modello inventa dettagli non presenti nei dati? → Migliori il prompt aggiungendo contesto ed esempi; è prompt engineering, non riaddestramento del modello.