Design dell'architettura dell'intelligenza artificiale (IA)
L'intelligenza artificiale è una tecnologia che consente alle macchine di imitare il comportamento umano intelligente. Con l'intelligenza artificiale, i computer possono:
- Analizzare i dati per creare immagini e video.
- Analizzare e sintetizzare il parlato.
- Interagire verbalmente in modi naturali.
- Eseguire stime e generare nuovi dati.
Gli architetti progettano carichi di lavoro che usano l'intelligenza artificiale per eseguire funzioni o prendere decisioni in cui la logica o l'elaborazione tradizionale sarebbe proibitiva, o anche quasi impossibile, implementare. In qualità di architetto che progetta una soluzione, è importante comprendere l'intelligenza artificiale e il panorama di Machine Learning e il modo in cui Azure offre soluzioni per l'integrazione nella progettazione del carico di lavoro.
Concetti relativi all'intelligenza artificiale
Algoritmi
Algoritmi o algoritmi di Machine Learning sono parti di codice che consentono agli esseri umani di esplorare, analizzare e trovare significato in set di dati complessi. Ogni algoritmo è un set finito di istruzioni dettagliate non ambigue che possono essere seguite da un computer per raggiungere un determinato obiettivo. In un modello di Machine Learning l'obiettivo è stabilire o individuare modelli che gli esseri umani possono usare per eseguire stime o classificare le informazioni. Un algoritmo può descrivere come determinare se un animale domestico è un gatto, un cane, un pesce, un volatile o una lucertola. Un altro algoritmo molto più complesso può descrivere come identificare una lingua scritta o parlata, analizzarne le parole, tradurle in una lingua diversa e quindi controllare l'accuratezza della traduzione.
Quando si progetta un carico di lavoro, è necessario selezionare una famiglia di algoritmi adatta per l'attività e valutare i vari algoritmi disponibili per trovare la scelta appropriata.
Apprendimento automatico
Machine Learning è una tecnica di intelligenza artificiale che usa algoritmi per creare modelli predittivi. L'algoritmo viene usato per analizzare i campi dati e per "apprendere" da tali dati usando i modelli trovati all'interno di esso per generare modelli. Questi modelli vengono quindi usati per eseguire stime o prendere decisioni informate in merito a nuovi dati.
I modelli predittivi vengono convalidati in base a dati noti, misurati in base alle metriche delle prestazioni selezionate per scenari aziendali specifici e quindi modificati in base alle esigenze. Questo processo di apprendimento e convalida è detto training. Ripetendo periodicamente il training, i modelli ML migliorano nel tempo.
Quando si tratta della progettazione del carico di lavoro, è consigliabile usare l'apprendimento automatico quando si ha una situazione in cui le osservazioni passate possono essere usate in modo affidabile per prevedere le situazioni future. Queste osservazioni possono essere verità universali, ad esempio la visione artificiale che rileva una forma di animale da un'altra, o queste osservazioni possono essere specifiche per la vostra situazione, ad esempio visione artificiale che rileva un potenziale errore di assemblaggio sulle linee di assemblaggio in base ai dati di richiesta di garanzia precedenti.
Deep Learning
Il Deep Learning è un tipo di Machine Learning che può apprendere attraverso la propria elaborazione dati. Come l'apprendimento automatico, usa anche algoritmi per analizzare i dati, ma usa reti neurali artificiali che contengono molti input, output e livelli di elaborazione. Ogni livello può elaborare i dati in modo diverso e l'output di un livello diventa l'input per il successivo. In questo modo è possibile creare modelli più complessi rispetto all'apprendimento automatico tradizionale.
In qualità di progettista del carico di lavoro, questa opzione richiede un grande investimento nella generazione di modelli altamente personalizzati o esplorativi. In generale, si considereranno altre soluzioni presentate in questo articolo prima di aggiungere deep learning al carico di lavoro.
Intelligenza artificiale generativa
L'intelligenza artificiale generativa è una forma di intelligenza artificiale in cui viene eseguito il training dei modelli per generare nuovi contenuti originali in base a molte forme di contenuto, ad esempio linguaggio naturale, visione artificiale, audio o input di immagini. Con l'intelligenza artificiale generativa, è possibile descrivere un output desiderato nel linguaggio quotidiano normale e il modello può rispondere creando testo, immagine, codice e altro ancora appropriati. Ecco alcuni esempi di applicazioni di intelligenza artificiale generative:
Microsoft Copilot è principalmente un'interfaccia utente che consente agli utenti di scrivere codice, documenti e altri contenuti basati su testo. Si basa sui modelli OpenAI più diffusi ed è integrato in un'ampia gamma di applicazioni e esperienze utente Microsoft.
Azure OpenAI è una piattaforma di sviluppo distribuita come servizio che consente l'accesso ai potenti modelli linguistici di OpenAI , ad esempio o1-preview, o1-mini, GPT-4o, GPT-4o mini, GPT-4 Turbo con Vision, GPT-4, GPT-3.5-Turbo e Serie di modelli Embeddings. Questi modelli possono essere adattati all'attività specifica, ad esempio:
- Generazione di contenuti
- Riepilogo del contenuto
- Comprensione delle immagini
- Ricerca semantica
- Linguaggio naturale per la traduzione del codice.
Modelli linguistici
I modelli linguistici sono un subset di intelligenza artificiale generativa incentrato sulle attività di elaborazione del linguaggio naturale (NLP), ad esempio la generazione di testo e l'analisi del sentiment. Questi modelli rappresentano il linguaggio naturale in base alla probabilità che le parole o le sequenze di parole si verifichino in un determinato contesto.
I modelli linguistici convenzionali sono stati usati nelle impostazioni con supervisione per scopi di ricerca in cui i modelli vengono sottoposti a training su set di dati di testo ben etichettati per attività specifiche. I modelli linguistici con training preliminare offrono un modo accessibile per iniziare a usare l'intelligenza artificiale e sono diventati più ampiamente usati negli ultimi anni. Questi modelli vengono sottoposti a training su corpora di testo su larga scala da Internet usando reti neurali di Deep Learning e possono essere ottimizzati su set di dati più piccoli per attività specifiche.
Le dimensioni di un modello linguistico sono determinate dal numero di parametri o pesi, che determinano il modo in cui il modello elabora i dati di input e genera output. I parametri vengono appresi durante il processo di training modificando i pesi all'interno dei livelli del modello per ridurre al minimo la differenza tra le stime del modello e i dati effettivi. Se un modello ha più parametri, sarà più complesso ed espressivo, ma anche più costoso dal punto di vista computazionale per l'esecuzione del training e l'utilizzo.
In generale, i modelli linguistici di piccole dimensioni hanno meno di 10 miliardi di parametri e i modelli linguistici di grandi dimensioni hanno più di 10 miliardi di parametri. Ad esempio, la famiglia di modelli Microsoft Phi-3 ha tre versioni con dimensioni diverse: mini (3,8 miliardi di parametri), piccoli (7 miliardi di parametri) e medi (14 miliardi di parametri).
Copiloti
La disponibilità dei modelli linguistici ha portato all'emergere di nuovi modi per interagire con applicazioni e sistemi tramite copiloti digitali e agenti connessi, specifici del dominio. I copiloti sono assistenti basati su intelligenza artificiale generativa integrati nelle applicazioni, spesso come interfacce di chat. Forniscono supporto contestualizzato per le attività comuni in tali applicazioni.
Microsoft Copilot è integrato in un'ampia gamma di applicazioni e esperienze utente Microsoft. Si basa su un'architettura aperta che consente agli sviluppatori di terze parti di creare plug-in personalizzati per estendere o personalizzare l'esperienza utente con Microsoft Copilot. Gli sviluppatori di terze parti possono inoltre creare i propri copiloti usando la stessa architettura aperta.
RAG (Retrieval Augmented Generation)
La generazione aumentata di recupero (RAG) è un modello di architettura che aumenta le funzionalità di un modello di linguaggio di grandi dimensioni come ChatGPT, sottoposto a training solo su dati pubblici. Questo modello consente di aggiungere un sistema di recupero che fornisca dati di base pertinenti nel contesto con la richiesta dell'utente. L'aggiunta di un sistema di recupero delle informazioni consente di controllare i dati a terra usati da un modello linguistico quando formula una risposta. L'architettura RAG consente di definire l'ambito dell'intelligenza artificiale generativa ai contenuti originati da documenti, immagini e altri formati di dati vettorializzati. Rag non è tuttavia limitato all'archiviazione di ricerca vettoriale, il modello è applicabile in combinazione con qualsiasi tecnologia di archivio dati.
- Progettazione e sviluppo di una soluzione RAG
- Scegliere un servizio di Azure per la ricerca vettoriale
Machine Learning automatizzato (AutoML)
Machine Learning automatizzato, noto anche come Machine Learning automatizzato o AutoML, è il processo di automazione delle attività iterative e dispendiose in termini di tempo dello sviluppo di modelli di Machine Learning. Consente a data scientist, analisti e sviluppatori di creare modelli di Machine Learning con scalabilità, efficienza e produttività elevate, garantendo al tempo stesso la qualità del modello.
Servizi di intelligenza artificiale
Con gli sviluppatori e le organizzazioni dei servizi di intelligenza artificiale di Azure possono creare applicazioni intelligenti, pronte per il mercato e responsabili con API e modelli predefiniti predefiniti e personalizzabili. Gli utilizzi includono l'elaborazione del linguaggio naturale per conversazioni, ricerca, monitoraggio, traduzione, riconoscimento vocale, visione e processo decisionale.
Scelta di una tecnologia di elaborazione del linguaggio naturale in Azure
MLflow è un framework open source progettato per gestire il ciclo di vita completo di Machine Learning.
Modelli di linguaggio di intelligenza artificiale
I modelli di linguaggio di grandi dimensioni, ad esempio i modelli GPT di OpenAI, sono strumenti potenti che possono generare linguaggio naturale in vari domini e attività. Quando si valuta l'uso di questi modelli, prendere in considerazione fattori quali privacy dei dati, uso etico, accuratezza e distorsione.
I modelli phi aperti sono modelli piccoli e meno a elevato utilizzo di calcolo per soluzioni di intelligenza artificiale generative. Un modello linguistico di piccole dimensioni (SLM) può essere più efficiente, interpretabile e spiegabile rispetto a un modello linguistico di grandi dimensioni.
Quando si progetta un carico di lavoro, è possibile usare modelli linguistici sia come soluzione ospitata, dietro un'API a consumo sia per molti modelli linguistici di piccole dimensioni che è possibile ospitare tali modelli in fase di elaborazione o almeno sullo stesso calcolo del consumer. Quando si usano modelli linguistici nella soluzione, prendere in considerazione la scelta del modello linguistico e le relative opzioni di hosting disponibili per garantire l'uso di una soluzione ottimizzata per il caso d'uso.
Piattaforme e strumenti di sviluppo di intelligenza artificiale
Servizio Azure Machine Learning
Azure Machine Learning è un servizio di Machine Learning per compilare e distribuire modelli. Azure Machine Learning offre interfacce Web e SDK per poter eseguire il training e la distribuzione di modelli e pipeline di Machine Learning su larga scala. Usare queste funzionalità con framework Python open source, come PyTorch, TensorFlow e scikit-learn.
Informazioni sui prodotti di machine learning forniti da Microsoft
Che cos'è Azure Machine Learning? Informazioni generali con collegamenti a numerosi SDK, risorse di apprendimento, documentazione e altro ancora
Architetture di riferimento di Machine Learning per Azure
L'architettura di riferimento end-to-end di chat OpenAI di base è un'architettura di riferimento che illustra come creare un'architettura di chat end-to-end con i modelli GPT di OpenAI.
L'architettura di base della chat OpenAI di Azure in una zona di destinazione di Azure illustra come eseguire la compilazione sull'architettura di base di Azure OpenAI per soddisfare le modifiche e le aspettative quando la si distribuisce in una zona di destinazione di Azure.
Operazionalizzazione di Machine Learning (MLOps) per modelli Python con Azure Machine Learning
Assegnazione dei punteggi in batch per i modelli Spark di Machine Learning in Azure Databricks
Machine Learning automatizzato (AutoML)
Creare modelli di Machine Learning su larga scala usando la funzionalità AutoML in Azure Machine Learning per automatizzare le attività.
Home page del prodotto Machine Learning automatizzato di Azure
Infografica su Machine Learning automatizzato di Azure (PDF)
Tutorial: Creare un modello di classificazione con ML automatizzato in Azure Machine Learning
Usare l'estensione dell'interfaccia della riga di comando per Azure Machine Learning
MLflow
Le aree di lavoro di Azure Machine Learning sono compatibili con MLflow, il che significa che è possibile usare un'area di lavoro di Azure Machine Learning nello stesso modo in cui si usa un server MLflow. Questa compatibilità presenta i vantaggi seguenti:
- Azure Machine Learning non ospita istanze del server MLflow, ma può usare direttamente le API MLflow.
- È possibile usare un'area di lavoro di Azure Machine Learning come server di rilevamento per qualsiasi codice MLflow, indipendentemente dal fatto che venga eseguito in Azure Machine Learning o no. È sufficiente configurare MLflow in modo che punti all'area di lavoro in cui deve verificarsi il rilevamento.
- È possibile eseguire qualsiasi routine di training che usa MLflow in Azure Machine Learning senza alcuna modifica.
Per altre informazioni, vedere MLflow e Azure Machine Learning
Strumenti di intelligenza artificiale generativi
Flusso di richieste è una suite di strumenti di sviluppo progettati per semplificare il ciclo di sviluppo end-to-end delle applicazioni di intelligenza artificiale generative, dall'ideazione, alla creazione di prototipi, ai test, alla valutazione alla distribuzione e al monitoraggio di produzione. Supporta la progettazione di richieste tramite l'espressione di azioni in un motore di orchestrazione e flusso modulare.
Azure AI Studio consente di sperimentare, sviluppare e distribuire api e app di intelligenza artificiale generative in modo responsabile con una piattaforma completa. Con Azure AI Studio è possibile accedere ai servizi di intelligenza artificiale di Azure, ai modelli di base, al playground e alle risorse per creare, eseguire il training, ottimizzare e distribuire modelli di intelligenza artificiale. È anche possibile valutare le risposte del modello e orchestrare i componenti dell'applicazione prompt con un flusso di richiesta per ottenere prestazioni migliori.
Azure Copilot Studio viene usato per estendere Microsoft Copilot in Microsoft 365 e creare copiloti personalizzati per scenari interni ed esterni. Con Copilot Studio, gli utenti possono progettare, testare e pubblicare copiloti usando l'area di disegno completa per la creazione. Gli utenti possono creare facilmente conversazioni abilitate per l'intelligenza artificiale generative, fornire un maggiore controllo alle risposte per i copiloti esistenti e accelerare la produttività con flussi di lavoro automatizzati specifici.
Piattaforme dati per intelligenza artificiale
Microsoft Fabric
Microsoft Fabric è una piattaforma di dati e analisi end-to-end progettata per le aziende che richiedono una soluzione unificata. Ai team del carico di lavoro può essere concesso l'accesso ai dati in questi sistemi. Include lo spostamento dati, l'elaborazione, l'inserimento, la trasformazione, il routing di eventi in tempo reale e la compilazione di report. Offre una suite completa di servizi, tra cui Ingegneria dei dati, Data Factory, Data Science, Analisi in tempo reale, Data Warehouse e Database.
Microsoft Fabric integra componenti separati in uno stack coesivo. Anziché affidarsi a database o data warehouse diversi, è possibile centralizzare l'archiviazione dei dati con OneLake. Le funzionalità di intelligenza artificiale sono incorporate all'interno di Fabric, eliminando la necessità di integrazione manuale.
Copiloti in Infrastruttura
Copilot e altre funzionalità di intelligenza artificiale generative consentono di trasformare e analizzare i dati, generare informazioni dettagliate e creare visualizzazioni e report in Microsoft Fabric e Power BI. È possibile creare un copilota personalizzato o scegliere uno dei copiloti predefiniti seguenti:
Competenze di intelligenza artificiale nell'infrastruttura
Con una competenza di intelligenza artificiale di Microsoft Fabric, è possibile configurare un sistema di intelligenza artificiale generativo per generare query che rispondono a domande sui dati. Dopo aver configurato la competenza di intelligenza artificiale, è possibile condividerla con i colleghi, che possono quindi porre domande in inglese normale. In base alle domande, l'intelligenza artificiale genera query sui dati che rispondono a tali domande.
- Qual è la competenza di intelligenza artificiale in Fabric? (anteprima)
- Come creare una competenza di intelligenza artificiale
- Esempio di competenza di intelligenza artificiale
- Differenza tra una competenza di intelligenza artificiale e un copilota
Piattaforme dati basate su Apache Spark per intelligenza artificiale
Apache Spark è un framework di elaborazione parallela che supporta l'elaborazione in memoria per migliorare le prestazioni delle applicazioni di analisi di Big Data. Spark fornisce le primitive per il cluster computing in memoria. Un processo Spark può caricare e memorizzare nella cache i dati in memoria ed eseguirne ripetutamente query, che è più veloce rispetto alle applicazioni basate su disco, ad esempio Hadoop.
Apache Spark in Azure Fabric
Il runtime di Microsoft Fabric è una piattaforma integrata di Azure basata su Apache Spark che consente l'esecuzione e la gestione di esperienze di ingegneria dei dati e data science. Combina componenti chiave di origini interne e open source, offrendo ai clienti una soluzione completa.
Principali componenti del runtime di Fabric:
Apache Spark: una potente libreria di elaborazione distribuita open source che consente attività di elaborazione e analisi dei dati su larga scala. Apache Spark offre una piattaforma versatile e ad alte prestazioni per esperienze di ingegneria dei dati e data science.
Delta Lake è un livello di archiviazione open source che porta transazioni ACID e altre funzionalità di affidabilità dei dati in Apache Spark. Integrato all'interno del runtime di Fabric, Delta Lake migliora le funzionalità di elaborazione dei dati e garantisce la coerenza dei dati tra più operazioni simultanee.
Pacchetti a livello predefinito per i pacchetti Java/Scala, Python e R che supportano diversi ambienti e linguaggi di programmazione. Questi pacchetti vengono installati e configurati automaticamente, consentendo agli sviluppatori di applicare i propri linguaggi di programmazione preferiti per le attività di elaborazione dati.
Il runtime di Microsoft Fabric è basato su un solido sistema operativo open source, garantendo la compatibilità con varie configurazioni hardware e requisiti di sistema.
Azure Databricks Runtime per Machine Learning
Azure Databricks è una piattaforma di analisi basata su Apache Spark che offre configurazione con un clic, flussi di lavoro semplificati e un'area di lavoro interattiva per la collaborazione tra data scientist, ingegneri e analisti aziendali.
Databricks Runtime per Machine Learning (Databricks Runtime ML) consente di avviare un cluster Databricks con tutte le librerie necessarie per il training distribuito. Fornisce un ambiente per l'apprendimento automatico e l'analisi scientifica dei dati. Contiene inoltre più librerie di ampia diffusione, tra cui TensorFlow, PyTorch, Keras e XGBoost. È inoltre supportato il training distribuito con Horovod.
Assegnazione dei punteggi in batch per i modelli Spark di Machine Learning in Azure Databricks
Panoramica delle funzionalità di Deep Learning per Azure Databricks
Apache Spark in Azure HDInsight
Apache Spark in Azure HDInsight è l'implementazione Microsoft di Apache Spark nel cloud. I cluster Spark in HDInsight sono compatibili con Archiviazione di Azure e Azure Data Lake Storage, quindi è possibile usare i cluster HDInsight Spark per elaborare i dati archiviati in Azure.
Microsoft Machine Learning Library per Apache Spark è SynapseML (precedentemente conosciuto come MMLSpark). Questa libreria open source aggiunge all'ecosistema Spark molti strumenti di deep learning e data science, funzionalità di rete e prestazioni a livello di produzione. Maggiori informazioni su funzionalità e caratteristiche di SynapseML.
Panoramica di Azure HDInsight. Informazioni di base su funzionalità, architettura dei cluster e casi d'uso, con collegamenti ad argomenti di avvio rapido ed esercitazioni.
Tutorial: Creare un'applicazione di machine learning Apache Spark in Azure HDInsight
Configurare le impostazioni del cluster HDInsight Apache Spark
Repository GitHub per SynapseML; Microsoft Machine Learning Library per Apache Spark
Creare una pipeline di Machine Learning Apache Spark in HDInsight
Archiviazione dei dati per intelligenza artificiale
Microsoft Fabric OneLake
OneLake in Fabric è un data lake unificato e logico personalizzato per l'intera organizzazione. Funge da hub centrale per tutti i dati di analisi ed è incluso in ogni tenant di Microsoft Fabric. OneLake in Fabric si basa sulla base di Data Lake Storage Gen2.
OneLake in Fabric:
- Supporta tipi di file strutturati e non strutturati.
- Archivia tutti i dati tabulari in formato Delta Parquet.
- Fornisce un singolo data lake entro i limiti del tenant regolati per impostazione predefinita.
- Supporta la creazione di aree di lavoro all'interno di un tenant in modo che un'organizzazione possa distribuire i criteri di proprietà e accesso.
- Supporta la creazione di vari elementi di dati, ad esempio lakehouse e warehouse, da cui è possibile accedere ai dati.
Per altre informazioni, vedere OneLake, OneDrive per i dati.
Azure Data Lake Storage Gen2
Azure Data Lake Storage è un unico repository centralizzato in cui è possibile archiviare tutti i dati, strutturati e non strutturati. Un data lake consente all'organizzazione di archiviare, accedere e analizzare in modo semplice e rapido un'ampia gamma di dati in un'unica posizione. Con un data lake, non è necessario adattare i dati a una struttura esistente. È invece possibile archiviare i dati nel formato non elaborato o nativo, in genere come file o come oggetti binari di grandi dimensioni (BLOB).
Data Lake Storage Gen2 offre semantica del file system, sicurezza a livello di file e scalabilità. Poiché queste funzionalità sono basate sull'archiviazione BLOB, è anche possibile ottenere un archivio a basso costo, a livelli, con funzionalità di disponibilità elevata/ripristino di emergenza.
Data Lake Storage Gen2 usa Archiviazione di Azure come base per la compilazione di Enterprise Data Lake (EDL) in Azure. Progettato dall'inizio per servire più petabyte di informazioni supportando al contempo centinaia di Gigabit di velocità effettiva, Data Lake Storage Gen2 consente di gestire facilmente grandi quantità di dati.
- Introduzione ad Archiviazione di Azure Data Lake
- Esercitazione: Azure Data Lake Storage, Azure Databricks e Spark
Elaborazione dei dati per intelligenza artificiale
Microsoft Fabric Data Factory
Con Data Factory è possibile inserire, preparare e trasformare i dati da più origini dati, ad esempio database, data warehouse, Lakehouse, dati in tempo reale e altro ancora. Quando si progettano carichi di lavoro, si tratta di uno strumento che può essere fondamentale per soddisfare i requisiti di DataOps.
Data Factory supporta sia il codice che le soluzioni senza codice minimo:
Le pipeline di dati consentono di creare funzionalità del flusso di lavoro su scala cloud. Con le pipeline di dati, è possibile usare l'interfaccia di trascinamento della selezione per creare flussi di lavoro in grado di aggiornare il flusso di dati, spostare dati di dimensioni petabyte e definire pipeline del flusso di controllo.
I flussi di dati offrono un'interfaccia a basso codice per l'inserimento di dati da centinaia di origini dati, trasformando i dati tramite trasformazioni di dati di oltre 300.
Vedere anche:
Azure Databricks
Con Databricks Data Intelligence Platform è possibile scrivere codice per creare un flusso di lavoro di Machine Learning usando la progettazione delle funzionalità:
- Le pipeline di dati inseriscono dati non elaborati, creano tabelle delle funzionalità, eseguono il training dei modelli ed eseguono l'inferenza batch. Quando si esegue il training e si registra un modello usando la progettazione delle funzionalità in Unity Catalog, il modello viene incluso in un pacchetto con i metadati delle funzionalità. Quando si usa il modello per l’assegnazione di punteggi batch o l’inferenza online, recupera automaticamente i valori delle funzionalità. Il chiamante non deve conoscerli o includere la logica per cercare o unire funzionalità per assegnare punteggi ai nuovi dati.
- Gli endpoint di gestione di modelli e funzionalità sono disponibili con un solo clic e forniscono millisecondi di latenza.
- Monitoraggio di dati e modelli.
È anche possibile usare La ricerca a vettori di intelligenza artificiale mosaici, ottimizzata per l'archiviazione e il recupero di incorporamenti. Gli incorporamenti sono fondamentali per le applicazioni che richiedono ricerche di somiglianza, ad esempio RAG (Recupero di generazione aumentata), sistemi di raccomandazione e riconoscimento delle immagini.
- Azure Databricks - Gestire i dati per Machine Learning e intelligenza artificiale
- Ricerca a vettori di intelligenza artificiale mosaici
Connettori dati per intelligenza artificiale
Le pipeline di Azure Data Factory e Azure Synapse Analytics supportano molti archivi dati e formati tramite attività copia, Flusso di dati, ricerca, recupero metadati ed eliminazione. Per visualizzare i connettori dell'archivio dati disponibili, le funzionalità supportate e le configurazioni corrispondenti e le opzioni di connessione ODBC generiche, vedere Panoramica del connettore Azure Data Factory e Azure Synapse Analytics.
Intelligenza artificiale personalizzata
Azure Machine Learning
Azure Machine Learning è un servizio cloud per accelerare e gestire il ciclo di vita dei progetti di apprendimento automatico (Machine Learning). I professionisti, gli scienziati dei dati e i tecnici specializzati in ML possono usarlo nei flussi di lavoro quotidiani per eseguire il training e distribuire modelli e gestire le operazioni per l'apprendimento automatico (MLOps).
Azure Machine Learning offre le funzionalità seguenti:
Selezione algoritmo Alcuni algoritmi fanno ipotesi particolari sulla struttura dei dati o sui risultati desiderati. Se è possibile trovarne uno adatto alle proprie esigenze, può fornire risultati più utili, previsioni più accurate o tempi di addestramento più rapidi.
L'ottimizzazione o l'ottimizzazione degli iperparametri è il processo di ricerca della configurazione degli iperparametri che comporta prestazioni ottimali. Il processo è dispendioso in termini di calcolo e manuale. Gli iperparametri sono parametri regolabili che consentono di controllare il processo di training del modello. Ad esempio, con le reti neurali, si decide il numero di livelli nascosti e il numero di nodi in ogni livello. Le prestazioni del modello dipendono principalmente dagli iperparametri.
Azure Machine Learning consente di automatizzare l'ottimizzazione degli iperparametri e di eseguire esperimenti in parallelo per affinare gli iperparametri in modo efficiente.
Training del modello. Con Azure Machine Learning è possibile usare in modo iterativo un algoritmo per creare o "insegnare" modelli. Dopo il training, questi modelli possono essere usati per analizzare i dati da cui è possibile eseguire stime. Durante la fase di training, a un set di qualità di dati noti vengono aggiunti tag in modo che i singoli campi siano identificabili. I dati con tag vengono inseriti in un algoritmo configurato per eseguire una stima specifica. Al termine, l'algoritmo restituisce un modello che descrive gli schemi individuati come set di parametri. Durante la convalida, vengono aggiunti tag a nuovi dati che vengono usati per testare il modello. L'algoritmo viene modificato in base alle esigenze ed eventualmente sottoposto a ulteriori fasi di training. Infine, la fase di test usa dati reali senza tag né destinazioni preselezionate. Supponendo che i risultati del modello siano accurati, è considerato pronto per l'uso e può essere distribuito.
Machine Learning automatizzato (AutoML) è il processo di automazione delle attività iterative e dispendiose in termini di tempo dello sviluppo di modelli di Machine Learning. Può ridurre significativamente il tempo necessario per ottenere modelli di Machine Learning pronti per la produzione. Le funzionalità di Machine Learning automatizzato possono fornire supporto per la selezione del modello, l'ottimizzazione degli iperparametri, il training del modello e altre attività, senza richiedere una conoscenza approfondita della programmazione o del dominio.
È possibile usare Ml automatizzato quando si vuole che Azure Machine Learning eseseguono il training e l'ottimizzazione di un modello usando una metrica di destinazione specificata. Machine Learning automatizzato può essere usato indipendentemente dalle competenze di data science per identificare una pipeline di Machine Learning end-to-end per qualsiasi problema.
I professionisti e gli sviluppatori di ML di tutti i settori possono usare Machine Learning automatizzato per:
Implementare soluzioni ML senza una programmazione completa o conoscenze di Machine Learning
Risparmiare tempo e risorse
Applicare le procedure consigliate di data science
Fornire efficaci soluzioni ai problemi
L'assegnazione di un punteggio, anche detta stima, è il processo di generazione di valori in base a un modello di Machine Learning sottoposto a training, considerando alcuni nuovi dati di input. I valori, o punteggi, creati possono rappresentare stime di valori futuri, ma possono anche rappresentare una categoria o un risultato probabile.
Progettazione delle caratteristiche e definizione delle caratteristiche. I dati di training sono costituiti da righe e colonne. Ciascuna riga è un'osservazione o un record, mentre le colonne di ogni riga corrispondono alle funzionalità che descrivono ciascun record. In genere, le funzionalità che meglio caratterizzano i modelli nei dati vengono selezionate per creare modelli predittivi.
Anche se diversi campi dei dati non elaborati possono essere usati direttamente per eseguire il training di un modello, spesso è necessario creare altre funzionalità (progettate) che forniscono informazioni per distinguere al meglio i modelli nei dati. Questo processo è denominato ingegneria delle funzionalità, in cui l'uso della conoscenza del dominio dei dati viene finalizzato alla creazione di funzionalità che, a loro volta, aiutano gli algoritmi di apprendimento automatico a ottenere informazioni migliori.
In Azure Machine Learning, le tecniche di ridimensionamento dei dati e normalizzazione vengono applicate per semplificare l'ingegneria delle funzionalità. Collettivamente, queste tecniche e questa ingegneria delle funzionalità sono denominate definizione delle funzionalità negli esperimenti di machine learning (ML) automatizzato.
OpenAI di Azure
Il servizio Azure OpenAI consente di personalizzare i modelli OpenAI per i set di dati personali usando un processo noto come ottimizzazione. Questa personalizzazione consente di ottenere di più dal servizio, fornendo:
- Risultati di qualità più elevati rispetto a ciò che è possibile ottenere solo dalla progettazione del prompt
- La possibilità di eseguire il training su più esempi di quanto possa rientrare nel limite massimo di contesto di richiesta di un modello.
- Risparmio di token dovuto a richieste più brevi
- Richieste a bassa latenza, in particolare quando si usano modelli più piccoli.
Per altre informazioni, vedi:
- Personalizzare un modello con l'ottimizzazione
- Esercitazione sull'ottimizzazione guidata di Azure OpenAI GPT-4o-mini
- Architettura di riferimento della chat end-to-end OpenAI baseline
Servizi di intelligenza artificiale di Azure per intelligenza artificiale personalizzata
I servizi di intelligenza artificiale di Azure offrono funzionalità che consentono di creare modelli e applicazioni di intelligenza artificiale personalizzati. Questa sezione offre una panoramica di alcune di queste funzionalità chiave.
Riconoscimento vocale personalizzato
Il riconoscimento vocale personalizzato è una funzionalità del servizio Voce di Intelligenza artificiale di Azure. Con Riconoscimento vocale personalizzato è possibile valutare e migliorare l'accuratezza del riconoscimento vocale per le applicazioni e i prodotti in uso. È possibile usare un modello conversione voce/testo personalizzato per il riconoscimento vocale in tempo reale, la traduzione vocale e la trascrizione in batch.
Il riconoscimento vocale usa un modello linguistico universale come modello di base sottoposto a training con dati di proprietà di Microsoft e riflette la lingua parlata di uso comune. Il modello di base è sottoposto a training preliminare con dialetti e fonetici che rappresentano vari domini comuni. Quando si effettua una richiesta di riconoscimento vocale, per impostazione predefinita viene usato il modello di base più recente per ogni lingua supportata. Il modello di base funziona bene nella maggior parte degli scenari di riconoscimento vocale.
È possibile usare un modello personalizzato per aumentare il modello di base al fine di migliorare il riconoscimento del vocabolario specifico del dominio dell'applicazione fornendo dati di testo per eseguire il training del modello. Questo modello può anche essere usato per migliorare il riconoscimento in base alle specifiche condizioni audio dell'applicazione fornendo dati audio con trascrizioni di riferimento.
È anche possibile eseguire il training di un modello con testo strutturato quando i dati seguono un modello, per specificare pronunce personalizzate e per personalizzare la formattazione del testo di visualizzazione con normalizzazione del testo inversa personalizzata, riscrittura personalizzata e filtro personalizzato per il contenuto volgare.
Custom Translator
Custom Translator è una funzionalità del servizio Azure AI Translator . Con Custom Translator, aziende, sviluppatori di app e provider di servizi linguistici possono creare sistemi di traduzione automatica neurale (NMT) personalizzati. I sistemi di traduzione personalizzata si integrano senza problemi nelle applicazioni, nei flussi di lavoro e nei siti Web esistenti.
La piattaforma consente agli utenti di creare e pubblicare sistemi di traduzione personalizzati da e verso l'inglese. Traduttore personalizzato supporta più di tre dozzine di lingue direttamente corrispondenti alle lingue disponibili per la traduzione automatica neurale. Per un elenco completo, vedere Supporto linguistico di Translator.
Custom Translator offre le funzionalità seguenti:
Funzionalità | Descrizione |
---|---|
Applicare la tecnologia di traduzione automatica neurale | È possibile migliorare la traduzione applicando la traduzione automatica neurale offerta da Traduttore personalizzato. |
Creazione di sistemi in grado di riconoscere la terminologia aziendale | È possibile personalizzare e creare sistemi di traduzione con documenti paralleli, in grado di comprendere la terminologia usata in aziende e settori specifici. |
Uso di un dizionario per la creazione di modelli | Se non è disponibile alcun training set, è possibile eseguire il training di un modello usando solo i dati di un dizionario. |
Collaborazione con altri utenti | È possibile collaborare con il proprio team condividendo il proprio lavoro con diverse persone. |
Accesso ai modelli di traduzione personalizzati | È possibile accedere al modello di traduzione personalizzato in qualsiasi momento usando le applicazioni/i programmi esistenti tramite la versione 3 dell’API di Traduzione testuale di Microsoft Translator. |
Modelli personalizzati di Informazioni sui documenti
Intelligence per i documenti di Intelligenza artificiale di Azure usa una tecnologia avanzata di Machine Learning per identificare documenti, rilevare ed estrarre informazioni da moduli e documenti e restituire i dati estratti in un output JSON strutturato. Con Document Intelligence è possibile usare modelli di analisi dei documenti, predefiniti o con training preliminare o modelli personalizzati autonomi sottoposti a training.
I modelli personalizzati di Document Intelligence includono ora modelli di classificazione personalizzati per scenari in cui è necessario identificare il tipo di documento prima di richiamare il modello di estrazione. Un modello di classificazione può essere associato a un modello di estrazione personalizzato per analizzare ed estrarre campi da moduli e documenti specifici dell'azienda. I modelli di estrazione personalizzati autonomi possono essere combinati per creare modelli composti.
Strumenti di intelligenza artificiale personalizzati
Anche se i modelli di intelligenza artificiale predefiniti sono utili e sempre più flessibili, il modo migliore per ottenere ciò che serve dall'IA consiste nel creare un modello personalizzato in base alle esigenze specifiche. Sono disponibili due strumenti principali per la creazione di modelli di intelligenza artificiale personalizzati: intelligenza artificiale generativa e Machine Learning tradizionale:
Studio di Azure Machine Learning
studio di Azure Machine Learning è un servizio cloud per accelerare e gestire il ciclo di vita del progetto di Machine Learning (ML). I professionisti, i data scientist e i tecnici di ML possono usarli nei flussi di lavoro quotidiani per eseguire il training e la distribuzione di modelli e gestire le operazioni di Machine Learning (MLOps).:
- Creare e addestrare un modello di Azure Machine Learning usando qualsiasi tipo di calcolo, inclusi Spark e GPU, per carichi di lavoro di intelligenza artificiale di grandi dimensioni su scala cloud.
- Eseguire Azure Machine Learning (AutoML) automatizzato e interfaccia utente drag-and-drop per Azure Machine Learning con poco codice.
- Implementare Azure Machine LearningOps end-to-end e pipeline ripetibili di Azure Machine Learning.
- Usare dashboard di intelligenza artificiale responsabile per il rilevamento delle distorsioni e l'analisi degli errori.
- Orchestrare e gestire la progettazione delle richieste e i flussi LLM.
- Distribuire modelli con endpoint API REST, inferenza in tempo reale e batch.
- Usare Hub (anteprima) per condividere risorse di calcolo, quota, sicurezza e connettività alle risorse aziendali con un gruppo di aree di lavoro, centralizzando al contempo la governance per l'IT. Configurare un hub una sola volta, quindi creare aree di lavoro sicure direttamente da Studio per ogni progetto. Usare hub per gestire il lavoro del team sia in ML Studio che in AI Studio.
Studio AI della piattaforma Azure
Azure AI Studio è progettato per facilitare la creazione e la distribuzione efficiente di applicazioni di intelligenza artificiale generative personalizzate con la potenza delle offerte di intelligenza artificiale generale di Azure:
- Creare insieme come un unico team. L’Hub di Studio AI offre sicurezza di livello aziendale e un ambiente collaborativo con risorse condivise e connessioni a modelli, dati e calcolo con training preliminare.
- Organizzare il lavoro. Il progetto di Studio AI contribuisce a salvare lo stato, consentendo di eseguire l'iterazione dalla prima idea, al primo prototipo e quindi alla prima distribuzione di produzione. Inoltre, si può invitare facilmente altri a collaborare in questo percorso.
- Usare la piattaforma e i framework di sviluppo preferiti, tra cui GitHub, Visual Studio Code, LangChain, Semantic Kernel, AutoGen e altro ancora.
- Individuare e eseguire il benchmark da oltre 1.600 modelli.
- Effettuare il provisioning di Models-as-a-Service (MaaS) tramite API serverless e ottimizzazione ospitata.
- Incorporare più modelli, origini dati e modalità.
- Creare la generazione aumentata di recupero (RAG) usando i dati aziendali protetti senza la necessità di ottimizzare.
- Orchestrare e gestire progettazione di richieste e flussi di modelli linguistici di grandi dimensioni (LLM).
- Progettare e proteggere app e API con filtri e controlli configurabili.
- Valutare le risposte dei modelli con flussi di valutazione integrati e personalizzati.
- Distribuire innovazioni di intelligenza artificiale nell'infrastruttura gestita di Azure con monitoraggio e governance continui in ambienti diversi.
- Monitorare continuamente le app distribuite per l'utilizzo di sicurezza, qualità e token nell'ambiente di produzione.|
Per un confronto dettagliato tra Azure Machine Learning e Azure AI Studio, vedere Azure Machine Learning e Azure AI Studio.
Prompt flow in Studio AI della piattaforma Azure
Prompt flow in Studio AI della piattaforma Azure è uno strumento di sviluppo progettato per semplificare l'intero ciclo di sviluppo delle applicazioni di IA basate su Large Language Model (LLM). Prompt flow offre una soluzione completa che semplifica il processo di creazione di prototipi, la sperimentazione, l'iterazione e la distribuzione delle applicazioni di intelligenza artificiale.
- Il prompt flow è una funzionalità che può essere usata per generare, personalizzare o eseguire un flusso.
- Un flusso è un set di istruzioni eseguibili che può implementare la logica di intelligenza artificiale. I flussi possono essere creati o eseguiti tramite più strumenti, ad esempio canvas predefiniti, LangChain e così via. Le iterazioni di un flusso possono essere salvate come asset. Dopo la distribuzione, un flusso diventa un'API. Non tutti i flussi sono prompt flow. Il prompt flow è invece un modo per creare un flusso.
- Un prompt è un pacchetto di input inviato a un modello, costituito dall'input dell'utente, dal messaggio di sistema e da eventuali esempi. L'input dell'utente è il testo inviato nella finestra della chat. Il messaggio di sistema è un set di istruzioni per il modello che definisce l'ambito dei relativi comportamenti e funzionalità.
- Un flusso di esempio è un flusso di orchestrazione predefinito semplice che mostra il funzionamento dei flussi e può essere personalizzato.
- Un prompt di esempio è un prompt definito per uno scenario specifico che può essere copiato da una libreria e usato così come è o modificato nella progettazione del prompt.
Linguaggi di codice di intelligenza artificiale personalizzati
Il concetto di base dell'intelligenza artificiale è l'uso di algoritmi per analizzare i dati e generare modelli per descriverli (o per assegnare un punteggio) in modi utili. Gli algoritmi vengono scritti da sviluppatori e data scientist (e talvolta da altri algoritmi) usando il codice di programmazione. Due dei linguaggi di programmazione più diffusi per lo sviluppo dell'intelligenza artificiale sono attualmente Python e R.
Python è un linguaggio di programmazione di alto livello per utilizzo generico. Ha una sintassi semplice e di facile apprendimento che ne enfatizza la leggibilità. Non è presente alcun passaggio di compilazione. Python ha una vasta libreria standard, ma offre anche la possibilità di aggiungere moduli e pacchetti. Ciò favorisce la modularità e consente di espandere le funzionalità quando necessario. C'è un ecosistema vasto e in espansione di librerie IA e ML per Python, tra cui molte disponibili in Azure.
Azure for Python developers (Azure per sviluppatori Python)
Introduzione a Machine Learning con Python e Azure Notebooks
scikit-learn
. Libreria ML open source per PythonPyTorch. Libreria Python open source con un vasto ecosistema che è possibile usare per Deep Learning, visione artificiale, elaborazione del linguaggio naturale e altro ancora
TensorFlow. Libreria matematica simbolica open source usata anche per le applicazioni ML e le reti neurali
Tutorial: Applicare modelli di Machine Learning in Funzioni di Azure con Python e TensorFlow
R è un linguaggio e un ambiente per l'elaborazione statistica e la grafica. Può essere usato per diversi scopi, dal mapping di tendenze sociali e di marketing generali online allo sviluppo di modelli finanziari e climatici.
Microsoft ha adottato il linguaggio di programmazione R e offre molte opzioni diverse per consentire agli sviluppatori R per eseguire il codice in Azure.
Informazioni generali sull'intelligenza artificiale personalizzata in Azure
Notebook Python SDK di Azure Machine Learning. Repository GitHub di notebook di esempio che illustrano l'SDK Python di Azure Machine Learning.
Storie dei clienti
Diversi settori stanno applicando l'intelligenza artificiale in modi innovativi e interessanti. Di seguito sono riportati alcuni case study sui clienti e storie di successo:
- Volkswagen: La traduzione automatica permette a Volkswagen di parlare 40 lingue
- Healthcare for All with Kry using Azure Open AI
- PIMCO aumenta il servizio client con una piattaforma di ricerca basata sull'intelligenza artificiale basata su Intelligenza artificiale di Azure
- Servizio Legrand e Azure OpenAI: powering smarter solutions with AI-driven tools
- C.H. Robinson supera le barriere obsolete per automatizzare il settore logistico usando l'intelligenza artificiale di Azure
Esplorare altre storie dei clienti in relazione all'intelligenza artificiale
Informazioni generali sull'intelligenza artificiale Microsoft
Per altre informazioni sull'intelligenza artificiale Microsoft e per notizie aggiornate correlate, vedere:
Hub di apprendimento per intelligenza artificiale.
Passaggi successivi
Per informazioni sui prodotti di sviluppo di intelligenza artificiale disponibili da Microsoft, passare all'intelligenza artificiale Microsoft.
Per la formazione su come sviluppare soluzioni di intelligenza artificiale, passare all'hub di apprendimento dell'intelligenza artificiale.
La pagina Intelligenza artificiale Microsoft su GitHub: esempi, architetture di riferimento e procedure consigliate organizza i repository Microsoft open source basati sull'intelligenza artificiale, fornendo esercitazioni e materiali didattici.
Trovare diagrammi di architettura e descrizioni tecnologiche per le architetture di riferimento delle soluzioni di intelligenza artificiale.