Condividi tramite


Introduzione all'uso delle API basate su intelligenza artificiale nell'app di Windows

Windows Copilot Runtime offre un'ampia gamma di API basate su intelligenza artificiale denominate Windows Copilot Library che consentono di sfruttare le funzionalità di intelligenza artificiale senza la necessità di trovare, eseguire o ottimizzare il proprio modello di Machine Learning (ML). I modelli che alimentano Windows Copilot Library l'alimentazione sono pronti per l'uso e vengono eseguiti passivamente nel dispositivo per abilitare le funzionalità di intelligenza artificiale nei PC Copilot+.

Usare le API locali supportate dall'intelligenza artificiale disponibili in Windows Copilot Library

Windows Copilot Library include queste API basate su intelligenza artificiale basate su modelli eseguiti in locale, direttamente nel dispositivo Windows:

  • Phi Silica: l'API Phi Silica è disponibile come parte del SDK per app di Windows. Analogamente a GPT Large Language Model (LLM) di OpenAI che supporta ChatGPT, Phi è un modello SLM (Small Language Model) sviluppato da Microsoft Research per eseguire attività di elaborazione del linguaggio in un dispositivo locale. Phi Silica è progettato appositamente per i dispositivi Windows con un'unità di elaborazione neurale (NPU), consentendo l'esecuzione di funzionalità di generazione di testo e conversazione in modo estremamente efficiente direttamente sul dispositivo.

  • Text Recognitioncon OCR: l'API Text Recognition (nota anche come Riconoscimento ottico dei caratteri o OCR) è disponibile come parte del SDK per app di Windows. Questa API consente il riconoscimento del testo in un'immagine e la conversione di diversi tipi di documenti, ad esempio documenti cartacei digitalizzati, file PDF o immagini acquisiti da una fotocamera digitale, in dati modificabili e ricercabili in un dispositivo locale.

  • Studio Effects: i dispositivi Windows con unità di elaborazione neurale compatibili si integrano Studio Effects nelle impostazioni predefinite della fotocamera del dispositivo e del microfono. Applicare effetti speciali che utilizzano l'intelligenza artificiale, tra cui: Sfocatura dello sfondo, Correzione automatica dei contatti oculari, Correzione verticale della luce verticale, Filtri creativi o Stato attivo vocale per filtrare il rumore di fondo.

  • Recall: Recall consente agli utenti di trovare rapidamente elementi dall'attività precedente, ad esempio documenti, immagini, siti Web e altro ancora. Gli sviluppatori possono arricchire l'esperienza dell'utente Recall con la propria app aggiungendo informazioni contestuali al database vettoriale sottostante con l'API Attività utente. Questa integrazione consentirà agli utenti di riprendere la posizione in cui sono rimasti nell'app, migliorando l'engagement delle app e il flusso facile dell'utente tra Windows e l'app.

Con altre informazioni, tra cui traduzioni di sottotitoli in tempo reale, ricerca semantica, generazione aumentata di recupero (RAG), riepilogo del testo e risoluzione con super risoluzione delle immagini.

Usare le API basate su intelligenza artificiale basate sul cloud nell'app di Windows

Potresti anche essere interessato a usare le API che eseguono modelli nel cloud per sfruttare le funzionalità di intelligenza artificiale che possono essere aggiunte all'app di Windows. Alcuni esempi di API basate su intelligenza artificiale basate sul cloud offerte da Microsoft o OpenAI includono:

  • Aggiungere completamenti della chat OpenAI all'app desktop WinUI 3/SDK per app di Windows: esercitazione su come integrare le funzionalità di completamento OpenAI ChatGPT basate sul cloud in un'app desktop WinUI 3/SDK per app di Windows.

  • Aggiungere DALL-E all'app desktop WinUI 3/SDK per app di Windows: esercitazione su come integrare le funzionalità di generazione di immagini DALL-E openAI basate sul cloud in un'app desktop WinUI 3/SDK per app di Windows.

  • 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 windows .NET MAUI: esercitazione su come integrare le funzionalità di generazione di immagini DALL-E basate sul cloud in un'app MAUI .NET.

  • Servizio OpenAI di Azure: 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 LE API REST e gli 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 a sviluppatori e organizzazioni di creare rapidamente applicazioni intelligenti, all'avanguardia, pronte per il mercato e responsabili con API e modelli predefiniti e personalizzabili. Le applicazioni di esempio includono elaborazione del linguaggio naturale per conversazioni, ricerca, monitoraggio, traduzione, riconoscimento vocale, visione e processo decisionale.

Considerazioni sull'uso di API basate su intelligenza artificiale locali e basate sul cloud nell'app di Windows

Quando si decide di usare un'API nell'app di Windows che si basa sull'esecuzione di un modello di Machine Learning in locale rispetto al cloud, esistono diversi vantaggi e svantaggi da considerare.

  • Disponiiblità 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, come Phi, sono più ideali per l'uso in locale in un dispositivo.
    • Cloud: le piattaforme cloud, ad esempio 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, come i modelli linguistici OpenAI, richiedono più risorse, ma sono anche più potenti.
  • Privacy e sicurezza dei dati

    • Dispositivo locale: poiché i dati rimangono nel dispositivo, l'esecuzione di un modello in locale può essere più sicura e privata. La responsabilità della sicurezza dei dati dipende dall'utente.
    • Cloud: i provider di servizi cloud offrono misure di sicurezza affidabili, ma i dati devono essere trasferiti nel cloud, che potrebbero generare problemi di privacy dei dati 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.
  • Costii

    • Dispositivo locale: non sono previsti costi aggiuntivi oltre l'investimento iniziale nel 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.

Vedere Esecuzione di un modello linguistico di piccole dimensioni in locale rispetto a un modello linguistico di grandi dimensioni nel cloud per altre informazioni sulle differenze tra l'esecuzione di un modello SLM (Small Language Model) in locale e l'esecuzione di un modello LLM (Large Language Model) nel cloud.