Introdução ao uso com suporte APIs de IA em seu aplicativo do Windows
Windows Copilot Runtimeoferece uma variedade de recursos de IA que APIs permitem que você aproveite os recursos de IA sem a necessidade de encontrar, executar ou otimizar seu próprio modelo de aprendizado de máquina (ML). Os modelos que alimentam a Windows Copilot RuntimeAPIs estão prontos para uso e são executados passivamente o tempo todo no dispositivo para habilitar recursos de IA em PCs Copilot+.
Windows Copilot RuntimeAPIs incluem modelos baseados em APIs IA executados localmente, diretamente no dispositivo Windows. Windows Copilot RuntimeAPIs estão direcionados para disponibilidade na versão SDK do Aplicativo Windows 1.7 Experimental 2 planejada para janeiro de 2025. Saiba mais sobre o SDK do Aplicativo Windows.
Phi Silica: A API Phi Silica está disponível como parte do SDK do Aplicativo Windows. Semelhante ao GPT Large Language Model (LLM) da OpenAI que alimenta o ChatGPT, o Phi é um Small Language Model (SLM) desenvolvido pela Microsoft Research para executar tarefas de processamento de linguagem em um dispositivo local. O Phi Silica foi projetado especificamente para dispositivos Windows com uma Unidade de Processamento Neural (NPU), permitindo que os recursos de geração de texto e conversação sejam executados de forma acelerada por hardware, de alto desempenho, diretamente no dispositivo.
Text Recognition com OCR: a API Text Recognition (também conhecida como Reconhecimento Óptico de Caracteres ou OCR) está disponível como parte do SDK do Aplicativo Windows. Essa API permite o reconhecimento de texto em uma imagem e a conversão de diferentes tipos de documentos, como documentos em papel digitalizados, arquivos PDF ou imagens capturadas por uma câmera digital, para dados editáveis e pesquisáveis em um dispositivo local.
Studio Effects: dispositivos Windows com NPUs (Unidades de Processamento Neural) compatíveis integram o Studio Effects às configurações internas da câmera e do microfone do dispositivo. Aplique efeitos especiais que utilizam IA, incluindo: Desfoque de fundo, Correção de contato visual, Enquadramento automático, Correção de iluminação de retrato, Filtros criativos ou Foco de voz para filtrar o ruído de fundo.
Recall: o Recall permite que os usuários encontrem rapidamente itens de suas atividades anteriores, como documentos, imagens, sites e outros. Os desenvolvedores podem enriquecer a experiência Recall do usuário com seu aplicativo, adicionando informações contextuais ao banco de dados vetorial subjacente por meio da API de Atividade do Usuário. Essa integração ajudará os usuários a continuar de onde pararam no seu aplicativo, melhorando o envolvimento com o aplicativo e o fluxo transparente do usuário entre o Windows e o seu aplicativo.
E há mais por vir, incluindo traduções de legendas ao vivo, pesquisa semântica, Retrieval Augmented Generation (RAG), resumo de texto e superresolução de imagem.
Você também pode estar interessado em usar APIs esses modelos de execução na nuvem para alimentar recursos de IA que podem ser adicionados ao seu aplicativo do Windows. Alguns exemplos de IA APIs baseada em nuvem oferecidos pela Microsoft ou OpenAI incluem:
Adicionar preenchimentos de chat da OpenAI ao seu aplicativo para desktop WinUI 3 / SDK do Aplicativo Windows: um tutorial sobre como integrar os recursos de preenchimento do OpenAI ChatGPT baseados em nuvem em um aplicativo para desktop WinUI 3 / SDK do Aplicativo Windows.
Adicionar o DALL-E ao seu aplicativo para desktop WinUI 3 / SDK do Aplicativo Windows: um tutorial sobre como integrar os recursos de geração de imagem do OpenAI DALL-E baseados em nuvem em um aplicativo para desktop WinUI 3 / SDK do Aplicativo Windows.
Criar um aplicativo de recomendação com .NET MAUI e ChatGPT: um tutorial sobre como criar um aplicativo de recomendação de exemplo que integra os recursos de preenchimento do OpenAI ChatGPT baseados em nuvem a um aplicativo .NET MAUI.
Adicionar o DALL-E ao seu aplicativo .NET MAUI para desktop do Windows: um tutorial sobre como integrar os recursos de geração de imagem do OpenAI DALL-E baseados em nuvem a um aplicativo .NET MAUI.
Serviço Azure OpenAI: se você quiser que seu aplicativo do Windows acesse modelos OpenAI, como GPT-4, GPT-4 Turbo com Vision, GPT-3.5-Turbo, DALLE-3 ou a série de modelos de Embeddings, com os recursos corporativos e de segurança adicionais do Azure, você pode encontrar orientações nessa documentação do Azure OpenAI.
Serviços de IA do Azure: o Azure oferece um conjunto completo de serviços de IA disponíveis por meio de SDKs REST APIs e de biblioteca de cliente em linguagens de desenvolvimento populares. Para obter mais informações, consulte a documentação de cada serviço. Esses serviços baseados em nuvem ajudam desenvolvedores e organizações a criar rapidamente aplicativos inteligentes, de ponta, prontos para o mercado e responsáveis com modelos prontos para uso, pré-construídos e personalizáveis APIs . Os aplicativos de exemplo incluem processamento de idioma natural para conversas, pesquisa, monitoramento, tradução, fala, visão e tomada de decisão.
Ao decidir entre usar uma API em seu aplicativo do Windows que depende da execução de um modelo de ML localmente versus na nuvem, há várias vantagens e desvantagens a serem consideradas.
Disponibilidade de recursos
- Dispositivo local: a execução de um modelo depende dos recursos disponíveis no dispositivo que está sendo usado, incluindo CPU, GPU, NPU, memória e capacidade de armazenamento. Isso pode ser limitante se o dispositivo não tiver alto poder de computação ou armazenamento suficiente. Small Language Models (SLMs), como o Phi, são mais adequados ao uso local em um dispositivo.
- Nuvem: plataformas em nuvem, como o Azure, oferecem recursos escalonáveis. Você pode usar o máximo de poder de computação ou armazenamento que precisar e pagar apenas pelo que usar. Os Large Language Models (LLMs), como os modelos de linguagem OpenAI, exigem mais recursos, mas também são mais poderosos.
Privacidade e segurança dos dados
- Dispositivo local: como os dados permanecem no dispositivo, a execução de um modelo localmente pode ser mais segura e privada. A responsabilidade pela segurança dos dados é do usuário.
- Nuvem: os provedores de nuvem oferecem medidas de segurança robustas, mas os dados precisam ser transferidos para a nuvem, o que pode gerar preocupações com a privacidade dos dados em alguns casos.
Acessibilidade e colaboração
- Dispositivo local: o modelo e os dados são acessíveis apenas no dispositivo, a menos que sejam compartilhados manualmente. Isso tem o potencial de tornar mais desafiadora a colaboração sobre os dados do modelo.
- Nuvem: o modelo e os dados podem ser acessados de qualquer lugar que tenha conectividade com a Internet. Isso pode ser melhor para cenários de colaboração.
Custo
- Dispositivo local: não há custo adicional além do investimento inicial no dispositivo.
- Nuvem: embora as plataformas em nuvem operem com um modelo de pagamento conforme o uso, os custos podem se acumular com base nos recursos utilizados e na duração do uso.
Manutenção e atualizações
- Dispositivo local: o usuário é responsável pela manutenção do sistema e instalação de atualizações.
- Nuvem: manutenção, atualizações do sistema e atualizações de novos recursos são tratadas pelo provedor de serviços de nuvem, reduzindo a sobrecarga de manutenção para o usuário.
Consulte Executando um modelo de idioma pequeno localmente versus um modelo de idioma grande na nuvem para saber mais sobre as diferenças entre executar um modelo de idioma pequeno (SLM) localmente versus executar um modelo de idioma grande (LLM) na nuvem.