Introduzione all'intelligenza artificiale in Windows
La possibilità di creare esperienze di intelligenza artificiale intelligenti su e con Windows sta sviluppando rapidamente. Windows Copilot Runtime offre funzionalità supportate dall'intelligenza artificiale e APIs su PC Copilot+. Queste funzionalità sono in fase di sviluppo attivo e vengono eseguite in locale in background in qualsiasi momento. Altre informazioni su Windows Copilot Runtime.
Oltre Windows Copilot Runtime, Microsoft offre un'ampia gamma di servizi di intelligenza artificiale, supporto e indicazioni. Per iniziare e imparare a integrare in modo sicuro l'intelligenza artificiale per le proprie esigenze aziendali, esplorare le linee guida nella documentazione di Windows per intelligenza artificiale, tra cui:
- Come è possibile usare l'intelligenza artificiale nell'app di Windows?
- Scegliere tra servizi di intelligenza artificiale locali e basati sul cloud
- Usare Windows Copilot Runtime
- Usare le APIs basate sul cloud
- Usare un modello personalizzato nel computer locale
- usare procedure di IA responsabili
- domande frequenti
Come è possibile usare l'intelligenza artificiale nell'app di Windows?
Ecco alcuni modi in cui le app di Windows possono sfruttare i modelli di Machine Learning (ML) per migliorare le funzionalità e l'esperienza utente con l'intelligenza artificiale, tra cui:
- Le app possono usare modelli di intelligenza artificiale generativa per comprendere argomenti complessi per riepilogare, riscrivere, creare report o espandere.
- Le app possono usare modelli che trasformano contenuto in formato libero in un formato strutturato che l'app può comprendere.
- Le app possono usare modelli di ricerca semantica che consentono agli utenti di cercare contenuto in modo significativo e di trovare rapidamente contenuto correlato.
- Le app possono usare modelli di elaborazione del linguaggio naturale per ragionare sui requisiti complessi del linguaggio naturale e pianificare ed eseguire azioni per eseguire la richiesta dell'utente.
- Le applicazioni possono usare modelli di manipolazione delle immagini per modificare le immagini in modo intelligente, cancellare o aggiungere i soggetti, migliorare la qualità o generare nuovi contenuti.
- Le app possono usare modelli di diagnostica predittiva per identificare e stimare i problemi e guidare l'utente o farlo per loro.
Scegliere tra servizi di intelligenza artificiale locali e basati sul cloud
L'integrazione dell'intelligenza artificiale nell'applicazione Windows può essere ottenuta tramite due metodi principali: un modello locale o un modello basato sul cloud. Esistono diversi aspetti da considerare quando si determina l'opzione giusta per le proprie esigenze.
disponibilità delle risorse
- dispositivo locale: L'esecuzione di un modello dipende dalle risorse disponibili nel dispositivo in uso, tra cui CPU, GPU, NPU, memoria e capacità di archiviazione. Ciò può essere limitato se il dispositivo non ha una potenza di calcolo elevata o un'archiviazione sufficiente. I modelli linguistici di piccole dimensioni, ad esempio Phi, sono più ideali per l'uso in locale in un dispositivo. I PC Copilot+ offrono modelli integrati eseguiti da Windows Copilot Runtime con funzionalità di intelligenza artificiale pronte all'uso.
- Cloud: piattaforme cloud, ad esempio Servizi di intelligenza artificiale di Azure, offrono risorse scalabili. È possibile usare la potenza di calcolo o lo spazio di archiviazione necessario e pagare solo per ciò che si usa. I modelli di linguaggio di grandi dimensioni, ad esempio i modelli linguistici OpenAI , richiedono più risorse, ma sono anche più potenti.
privacy e sicurezza dei dati
- Il dispositivo locale: Poiché i dati rimangono nel dispositivo, l'esecuzione di un modello in locale può offrire vantaggi relativi alla sicurezza e alla privacy, con la responsabilità della sicurezza dei dati che ricade sull'utente.
- Cloud: I provider di servizi cloud offrono misure di sicurezza affidabili, ma i dati devono essere trasferiti nel cloud, il che potrebbe generare problemi di privacy dei dati per il responsabile dell'applicazione o del servizio aziendale in alcuni casi.
accessibilità e collaborazione
- dispositivo locale: Il modello e i dati sono accessibili solo nel dispositivo, a meno che non vengano condivisi manualmente. Ciò ha il potenziale per rendere più complessa la collaborazione sui dati del modello.
- Cloud: È possibile accedere al modello e ai dati da qualsiasi posizione con connettività Internet. Questo può essere migliore per gli scenari di collaborazione.
costo
- dispositivo locale: Non sono previsti costi aggiuntivi oltre l'investimento iniziale nell'hardware del dispositivo.
- Cloud: Mentre le piattaforme cloud operano su un modello con pagamento in base al consumo, i costi possono accumularsi in base alle risorse usate e alla durata dell'utilizzo.
manutenzione e aggiornamenti
- dispositivo locale: L'utente è responsabile della gestione del sistema e dell'installazione degli aggiornamenti.
- Cloud: manutenzione, aggiornamenti del sistema e nuovi aggiornamenti delle funzionalità vengono gestiti dal provider di servizi cloud, riducendo il sovraccarico di manutenzione per l'utente.
Usare Windows Copilot Runtime
Quando un modello di intelligenza artificiale locale è la soluzione giusta, è possibile utilizzare le funzionalità Windows Copilot Runtime per integrare i servizi di intelligenza artificiale per gli utenti su PC Copilot+. Alcune di queste funzionalità di intelligenza artificiale pronte all'uso che è possibile usare dall'app di Windows includono:
- Phi Silica: modello linguistico locale pronto per l'uso.
- Recall: un'API UserActivity che usa l'intelligenza artificiale per facilitare la ricerca nell'attività precedente, supportata da Fare clic per, una funzionalità che usa Phi Silica per connettere le azioni al contenuto (testo o immagini) trovato da Recall.
- IA Imaging: per ridimensionare e affinare le immagini usando l'intelligenza artificiale (Image Super Resolution), nonché identificare gli oggetti all'interno di un'immagine (Segmentazione immagine).
- Windows Studio Effects: per applicare effetti di intelligenza artificiale alla fotocamera del dispositivo o al microfono predefinito.
Scopri di più sulle funzionalità disponibili nel Windows Copilot Runtime Overview.
Usare APIs basato sul cloud
Se una soluzione basata sul cloud funziona meglio per lo scenario di app di Windows, potresti essere interessato ad alcune delle esercitazioni seguenti.
Molti APIs sono disponibili per l'accesso ai modelli basati sul cloud per supportare le funzionalità di intelligenza artificiale nell'app Windows, indipendentemente dal fatto che questi modelli siano personalizzati o pronti per l'uso. L'uso di un modello basato sul cloud consente all'app di rimanere semplificata delegando attività a elevato utilizzo di risorse al cloud. Alcune risorse che consentono di aggiungere APIs basate su intelligenza artificiale basate sul cloud offerte da Microsoft o OpenAI includono:
Aggiungere completamenti di chat OpenAI all'app desktop WinUI 3/Windows App SDK: esercitazione su come integrare le funzionalità di completamento OpenAI ChatGPT basate sul cloud in un'app desktop WinUI 3/Windows App SDK.
Aggiungere DALL-E all'app desktop WinUI 3/Windows App SDK: esercitazione su come integrare le funzionalità di generazione di immagini OpenAI DALL-E basate sul cloud in un'app desktop WinUI 3/Windows App SDK.
Creare un'app di raccomandazione con .NET MAUI e ChatGPT: esercitazione su come creare un'app di raccomandazione di esempio che integra le funzionalità di completamento OpenAI ChatGPT basate sul cloud in un'app MAUI .NET.
Aggiungere DALL-E all'app desktop di Windows .NET MAUI: esercitazione su come integrare le funzionalità openAI DALL-E generazione di immagini basate sul cloud in un'app MAUI .NET.
servizio Azure OpenAI: se si vuole che l'app Windows accinga ai modelli OpenAI, ad esempio GPT-4, GPT-4 Turbo with Vision, GPT-3.5-Turbo, DALLE-3 o la serie di modelli embeddings, con le funzionalità di sicurezza e aziendali aggiunte di Azure, è possibile trovare indicazioni in questa documentazione di Azure OpenAI.
servizi di intelligenza artificiale di Azure: Azure offre un'intera suite di servizi di intelligenza artificiale disponibili tramite REST APIs e SDK della libreria client nei linguaggi di sviluppo più diffusi. Per altre informazioni, vedere la documentazione di ogni servizio. Questi servizi basati sul cloud consentono agli sviluppatori e alle organizzazioni di creare rapidamente applicazioni intelligenti, all'avanguardia, pronte per il mercato e responsabili con modelli chiavi in mano, preconfigurati e personalizzabili APIs. Le applicazioni di esempio includono l'elaborazione del linguaggio naturale per conversazioni, ricerca, monitoraggio, traduzione, riconoscimento vocale, visione e processo decisionale.
Usare un modello personalizzato nel computer locale
Se è possibile eseguire il training del proprio modello usando dati privati con piattaforme come TensorFlow o PyTorch. È possibile integrare il modello personalizzato nell'applicazione Windows eseguendolo localmente nell'hardware del dispositivo usando ONNX Runtime e AI Toolkit per Visual Studio Code.
AI Toolkit per Visual Studio Code è un'estensione di VS Code che consente di scaricare ed eseguire modelli di intelligenza artificiale in locale, incluso l'accesso all'accelerazione hardware per migliorare le prestazioni e la scalabilità tramite DirectML. L'intelligenza artificiale Tookit può essere utile anche per:
- Test dei modelli in un playground intuitivo o nell'applicazione con un'API REST.
- Ottimizzare il modello di intelligenza artificiale, sia in locale che nel cloud (in una macchina virtuale) per creare nuove competenze, migliorare l'affidabilità delle risposte, impostare il tono e il formato della risposta.
- Ottimizzazione dei modelli di piccole lingue più diffusi, ad esempio Phi-3 e Mistral.
- Distribuire la funzionalità di intelligenza artificiale nel cloud o con un'applicazione in esecuzione in un dispositivo.
- Sfruttare l'accelerazione hardware per migliorare le prestazioni con le funzionalità di intelligenza artificiale usando DirectML. DirectML è un'API di basso livello che consente all'hardware del dispositivo Windows di accelerare le prestazioni dei modelli di Machine Learning usando la GPU del dispositivo o la NPU. L'associazione di DirectML ai ONNX Runtime è in genere il modo più semplice per gli sviluppatori di implementare l'intelligenza artificiale accelerata dall'hardware agli utenti su larga scala. Per ulteriori informazioni: Panoramica di DirectML.
Potresti anche voler esaminare questi concetti di fine-tuning del modello per modificare un modello pre-addestrato affinché si adatti meglio ai tuoi dati.
Trovare modelli open source
È possibile trovare modelli di Machine Learning open source sul Web, tra cui alcuni dei più diffusi includono:
- Hugging Face: un hub di oltre 10.000 modelli di apprendimento automatico pre-addestrati per l'elaborazione del linguaggio naturale, basati sulla libreria Transformers. È possibile trovare modelli per la classificazione del testo, la risposta alle domande, il riepilogo, la traduzione, la generazione e altro ancora.
- ONNX Model Zoo: raccolta di modelli ML con training preliminare in formato ONNX che coprono un'ampia gamma di domini e attività, ad esempio visione artificiale, elaborazione del linguaggio naturale, riconoscimento vocale e altro ancora.
- Qualcomm AI Hub: Una piattaforma che fornisce l'accesso a un'ampia gamma di modelli e strumenti di apprendimento automatico ottimizzati per i dispositivi Qualcomm Snapdragon. È possibile trovare modelli per l'elaborazione di immagini, video, audio e sensori, nonché framework, librerie e SDK per la compilazione e la distribuzione di applicazioni ML nei dispositivi mobili. Qualcomm AI Hub offre anche esercitazioni, guide e supporto della community per sviluppatori e ricercatori.
- Pytorch Hub: un repository di modelli preaddestrati progettato per facilitare la riproducibilità della ricerca e consentire nuove ricerche. Si tratta di un'API semplice e di un flusso di lavoro che fornisce i blocchi predefiniti di base per migliorare la riproducibilità della ricerca di Machine Learning. L'hub PyTorch è costituito da un repository di modelli con training preliminare progettato in modo specifico per facilitare la riproducibilità della ricerca.
- TensorFlow Hub: un repository di modelli di Machine Learning pre-addestrati e componenti riutilizzabili per TensorFlow, un framework popolare per la costruzione e l'addestramento di modelli di Machine Learning. È possibile trovare modelli per l'elaborazione di immagini, testo, video e audio, nonché l'apprendimento e l'ottimizzazione.
- Model Zoo: piattaforma che cura e classifica i migliori modelli di Machine Learning open source per vari framework e attività. È possibile esplorare i modelli per categoria, framework, licenza e valutazione e visualizzare demo, codice e documenti per ogni modello.
Alcune librerie di modelli sono non destinate a essere personalizzate e distribuite tramite un'app, ma sono utili strumenti per l'esplorazione pratica e la scoperta come parte del ciclo di sviluppo, ad esempio:
- Ollama: Ollama è un marketplace di modelli di Machine Learning pronti per l'uso per varie attività, ad esempio il rilevamento dei volti, l'analisi del sentiment o il riconoscimento vocale. È possibile esplorare, testare e integrare i modelli nell'app con pochi clic.
- LM Studio: LM Studio è uno strumento che consente di creare modelli di Machine Learning personalizzati dai propri dati, usando un'interfaccia drag-and-drop. È possibile scegliere tra diversi algoritmi di Machine Learning, pre-elaborare e visualizzare i dati ed eseguire il training e valutare i modelli.
Usare le procedure di IA responsabile
Ogni volta che si incorporano le funzionalità di intelligenza artificiale nell'app Di Windows, è consigliabile altamente seguire le linee guida per lo sviluppo di applicazioni e funzionalità di intelligenza artificiale responsabile in Windows.
Queste linee guida consentono di comprendere le politiche di governance, le procedure e i processi, identificare i rischi, consigliare metodi di test, usare misure di sicurezza come moderatori e filtri ed evidenziare considerazioni specifiche quando si seleziona un modello sicuro e responsabile da utilizzare.
Windows Copilot Runtime modelli di intelligenza artificiale generativi sul dispositivo consentono di applicare funzionalità di sicurezza dei contenuti locali, ad esempio motori di classificazione su dispositivo per contenuti dannosi e un elenco di blocchi predefinito. Microsoft assegna priorità agli sviluppatori che supportano la creazione di esperienze di intelligenza artificiale sicure e affidabili con i modelli locali in Windows.
Risorse aggiuntive
Phi Silica, piccolo ma potente integrato nel dispositivo SLM (Blog di Windows)
Intelligenza artificiale in Windows Sample Gallery: esempi che illustrano i modi per integrare l'intelligenza artificiale nelle app di Windows.
Domande frequenti sull'uso dell'intelligenza artificiale con Windows: domande frequenti sulla terminologia e sui concetti correlati all'uso dell'intelligenza artificiale in un contesto di Windows, che tratta di domande come "Che cos'è DirectML?", "Che cos'è l'ORT?", "Che cos'è un SLM?", "Che cos'è l'inferenza?", "Che cos'è l'ottimizzazione?", e così via.
ONNX: uno standard aperto per rappresentare e scambiare modelli di Machine Learning tra framework e piattaforme diversi. Se si trova un modello ml con training preliminare in formato ONNX, è possibile usare ONNX Runtime (ORT) per caricare ed eseguire il modello nell'app di Windows. ORT consente di accedere alle funzionalità di inferenza accelerata hardware del dispositivo e ottimizzare le prestazioni del modello di Machine Learning. Se si dispone di un modello di Machine Learning con training preliminare in un formato diverso, ad esempio PyTorch o TensorFlow, è possibile convertirlo in ONNX usando uno strumento di ottimizzazione del modello come Olive. Per informazioni sull'uso di Olive, vedere Ottimizzare SLM con Microsoft Olive (Journey Series for Generative AI Application Architecture). Per esercitazioni sulla creazione e l'uso di modelli ONNX, vedere esercitazioni ONNX su GitHub. Per esempi che illustrano come usare i modelli ONNX in un'app di Windows, consultare la AI on Windows Sample Gallery.
Introduzione ai modelli ONNX nell'app WinUI con ONNX Runtime
API WebNN per le app Web: standard Web per l'accesso all'accelerazione hardware della rete neurale nei browser, in base al APIsWebIDL e JavaScript. Consente agli sviluppatori Web di creare ed eseguire modelli di Machine Learning in modo efficiente sul lato client, senza basarsi su servizi cloud o librerie native. esempi WebNN in GitHub. esempi di WebNN usando ONNX Runtime nella raccolta di esempi di intelligenza artificiale su Windows.
PyTorch: un framework open source di Deep Learning molto diffuso disponibile con un'interfaccia Python e C++. Questo sarà probabilmente il formato più comune che si troverà per i modelli di Machine Learning. Se si vogliono usare modelli PyTorch ML nell'app Windows (C# o C++) o in un'app Web, è possibile usare TorchSharp e LibTorch, che sono binding .NET e C++ per la libreria PyTorch. TorchSharp e LibTorch consentono di creare, caricare e modificare i tensori, compilare ed eseguire reti neurali e salvare e caricare modelli usando il formato PyTorch. Per esempi, consultare TorchSharp Examples, TorchScript per la distribuzione, PyTorch C++ Examples. Per le app Web, vedere Creare un'applicazione Web con ONNX Runtime. Per esempi di come eseguire modelli PyTorch con DirectML, vedere AI nella Galleria di esempi su Windows.
tensorFlow è un'altra popolare libreria software open source per l'apprendimento automatico e l'intelligenza artificiale usata per creare e distribuire modelli di Machine Learning per varie attività.