Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Para desenvolvedores de aplicativos que buscam integrar recursos de IA, a Microsoft Windows oferece uma plataforma abrangente e flexível que suporta processamento local no dispositivo e soluções escaláveis baseadas em nuvem.
Escolher entre modelos de IA locais e baseados na nuvem depende das suas necessidades e prioridades específicas. Muitas aplicações de produção usam uma estratégia híbrida: experimentar primeiro uma API de Windows IA local ou um modelo local, depois voltar a um endpoint na cloud quando o modelo não está instalado, o dispositivo não é suportado, o utilizador não consente o download do modelo ou a tarefa exige um modelo maior.
Os fatores a considerar incluem:
- Privacidade, conformidade e segurança de dados
- Disponibilidade de recursos
- Acessibilidade e colaboração
- Custo
- Manutenção e atualizações
- Desempenho e latência
- Escalabilidade
- Requisitos de conectividade
- Tamanho e complexidade do modelo
- Ferramentas e o ecossistema associado
- Personalização e controlo
Principais fatores de decisão para desenvolvedores de aplicativos
Privacidade, conformidade e segurança de dados
Local, no local físico: Como os dados permanecem no dispositivo, a execução do modelo localmente pode oferecer benefícios em relação à segurança e privacidade, com a responsabilidade pela segurança dos dados a caber ao utilizador. O desenvolvedor é responsável por gerenciar atualizações, garantir compatibilidade e monitorar vulnerabilidades de segurança.
Nuvem: Os provedores de nuvem oferecem medidas de segurança robustas, mas os dados precisam ser transferidos para a nuvem, o que pode levantar preocupações de privacidade de dados para a empresa ou o mantenedor do serviço de aplicativos em alguns casos. O envio de dados para a nuvem também deve estar em conformidade com os regulamentos de proteção de dados, como GDPR ou HIPAA, dependendo da natureza dos dados e da região em que o aplicativo opera. Os provedores de nuvem normalmente lidam com atualizações de segurança e manutenção, mas os usuários devem garantir que estão usando APIs seguras e seguindo as práticas recomendadas para o tratamento de dados.
Disponibilidade de recursos
Local, no local: A execução de um modelo depende dos recursos disponíveis no dispositivo que está sendo usado, incluindo a CPU, GPU, NPU, memória e capacidade de armazenamento. Isso pode ser limitante se o dispositivo não tiver alto poder computacional ou armazenamento suficiente. Modelos de Linguagem Pequenos (SLMs), como Phi, são mais adequados para uso local num dispositivo. CopilotOs PCs + oferecem modelos integrados com funcionalidades de IA prontas a usar, suportadas por Microsoft Foundry on Windows.
Nuvem: As plataformas de nuvem, como Azure os serviços de IA, oferecem recursos escaláveis. Você pode usar tanto poder computacional ou armazenamento quanto precisar e pagar apenas pelo que usar. Os modelos de linguagem grande (LLMs), como os modelos de linguagem OpenAI , exigem mais recursos, mas também são mais poderosos.
Acessibilidade e colaboração
Local, nas instalações: O modelo e os dados são acessíveis apenas no dispositivo, a menos que sejam compartilhados manualmente. Isso tem o potencial de tornar a colaboração em dados de modelo mais desafiadora.
Nuvem: O modelo e os dados podem ser acessados de qualquer lugar com conectividade à internet. Isso pode ser melhor para cenários de colaboração.
Custo
Local, nas instalações: Não há nenhum custo adicional além do investimento inicial no hardware do dispositivo.
Nuvem: Embora as plataformas em nuvem operem em um modelo de pagamento conforme o uso, os custos podem se acumular com base nos recursos usados e na duração do uso.
Manutenção e Atualizações
Local, interno: O utilizador é responsável pela manutenção do sistema e pela instalação das atualizações.
Nuvem: Manutenção, atualizações do sistema e novas atualizações de recursos são tratadas pelo provedor de serviços de nuvem, reduzindo a sobrecarga de manutenção para o usuário.
Desempenho e Latência
Local, no local: A execução de um modelo localmente pode reduzir a latência, uma vez que os dados não precisam ser enviados pela rede. No entanto, o desempenho é limitado pelas capacidades de hardware do dispositivo.
Nuvem: Os modelos baseados em nuvem podem aproveitar hardware poderoso, mas podem introduzir latência devido à comunicação de rede. O desempenho pode variar de acordo com a conexão de internet do usuário e o tempo de resposta do serviço de nuvem.
Escalabilidade
Local, nas instalações: Dimensionar um modelo num dispositivo local pode exigir atualizações de hardware significativas ou a adição de mais dispositivos, o que pode implicar custos elevados e ser demorado.
Nuvem: As plataformas de nuvem oferecem escalabilidade fácil, permitindo que você ajuste rapidamente os recursos com base na demanda sem a necessidade de alterações de hardware físico.
Requisitos de Conectividade
Local, no local: Um dispositivo local não requer uma conexão com a Internet para executar um modelo, o que pode ser benéfico em ambientes com conectividade limitada.
Nuvem: Os modelos baseados na nuvem requerem uma ligação à Internet estável para acesso e podem ser afetados por problemas de rede.
Disponibilidade em tempo de execução e alternativa
Local, on-premises: As funcionalidades locais de IA podem depender do hardware, Windows versão, Windows versão do App SDK, região e se um modelo opcional está instalado. Antes de invocar uma funcionalidade de IA local, verifique o seu estado de prontidão e oriente o utilizador através de qualquer download de modelo ou fluxo de consentimento necessário. Para Windows APIs de IA, utilize o padrão de prontidão específico da API documentado em Comece com Windows APIs de IA e as páginas individuais da API.
Cloud: Um endpoint cloud pode fornecer um plano B quando um modelo local não está pronto ou suportado no dispositivo atual. Decida se o recurso é automático, controlado pelo utilizador ou desativado para cenários sensíveis à privacidade. Certifique-se de que a interface explica quando os dados saem do dispositivo.
Tamanho e complexidade do modelo
Local, no local físico: Os dispositivos locais podem enfrentar limitações de tamanho e complexidade dos modelos que conseguem executar devido a limitações do hardware. Modelos menores, como Phio , são mais adequados para execução local.
Nuvem: As plataformas de nuvem podem lidar com modelos maiores e mais complexos, como os fornecidos pela OpenAI, devido à sua infraestrutura escalável.
Ferramentas e ecossistema associado
Local, no local físico: Soluções locais de IA, como Microsoft FoundryMicrosoft Foundry on Windows, Windows ML e Foundry Local, integram-se com Windows App SDK e ONNX Runtime, permitindo aos desenvolvedores incorporar modelos diretamente em aplicações desktop ou edge com dependências externas mínimas.
Nuvem: As soluções de IA na nuvem, como Microsoft Foundryo , Azure AI Services e Azure o OpenAI Service, fornecem um conjunto abrangente de APIs e SDKs para a criação de aplicativos de IA. Esses serviços são projetados para se integrar perfeitamente com Azure DevOps, GitHub Copilot, Kernel Semântico e outros Azure serviços, permitindo orquestração de ponta a ponta, implantação de modelos e monitoramento em escala.
Personalização e Controlo
Local, no local: Os modelos locais podem ser usados de imediato, sem exigir um alto nível de especialização. Microsoft Foundry on Windows oferece modelos como Phi Silica que estão prontos para uso. Como alternativa, Windows o ML permite que os desenvolvedores executem modelos personalizados, como aqueles treinados com o ONNX Runtime, diretamente nos Windows dispositivos. Isso fornece um alto nível de controle sobre o modelo e seu comportamento, permitindo ajuste fino e otimização com base em casos de uso específicos. Foundry Local Também permite que os desenvolvedores executem modelos localmente em Windows dispositivos, fornecendo um alto nível de controle sobre o modelo e seu comportamento.
Nuvem: Os modelos baseados em nuvem também oferecem opções prontas para uso e personalizáveis, permitindo que os desenvolvedores aproveitem recursos pré-treinados enquanto ainda adaptam o modelo às suas necessidades específicas. Microsoft Foundry é uma oferta unificada Azure de plataforma como serviço para operações de IA corporativa, construtores de modelos e desenvolvimento de aplicativos. Essa base combina infraestrutura de nível de produção com interfaces amigáveis, permitindo que os desenvolvedores se concentrem na criação de aplicativos em vez de gerenciar a infraestrutura.
Amostras de IA na nuvem
Se uma solução baseada na nuvem funcionar melhor para o cenário do seu Windows aplicativo, você pode estar interessado em alguns dos tutoriais abaixo.
Muitas APIs estão disponíveis para acessar modelos baseados em nuvem para potencializar os recursos de IA em seu Windows aplicativo, sejam esses modelos personalizados ou prontos para uso. O uso de um modelo baseado em nuvem pode permitir que seu aplicativo permaneça simplificado delegando tarefas que consomem muitos recursos à nuvem. Alguns recursos para ajudá-lo a adicionar APIs baseadas em IA baseadas em nuvem oferecidas pela Microsoft ou OpenAI incluem:
Adicionar as capacidades de completar bate-papos da OpenAI ao seu WinUI 3 / Windows App SDK para desktop: um tutorial sobre como integrar as capacidades de conclusão do OpenAI ChatGPT na nuvem num aplicativo de desktop WinUI 3 / Windows App SDK.
Adicionar DALL-E ao seu WinUI 3 / Windows App SDK desktop app: Um tutorial sobre como integrar os recursos de geração de imagens OpenAI DALL-E baseados em nuvem em um aplicativo de desktop WinUI 3 / Windows App SDK.
Azure Serviço OpenAI: Se tu quiseres que a tua Windows aplicação aceda a modelos OpenAI, como o GPT-4, GPT-4 Turbo com Visão, GPT-3.5-Turbo, DALLE-3 ou a série de modelos Embeddings, com os recursos empresariais e de segurança adicionais do Azure, podes encontrar orientação nesta documentação do Azure OpenAI.
Azure Serviços de IA: Azure oferece um conjunto completo de serviços de IA disponíveis por meio de APIs REST e SDKs de bibliotecas de clientes 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 APIs e modelos prontos para uso e pré-construídos e personalizáveis. Exemplos de aplicações incluem processamento de linguagem natural para conversas, pesquisa, monitoramento, tradução, fala, visão e tomada de decisões.
Desenhe um caminho híbrido local/cloud
Use um caminho híbrido quando a sua aplicação deve tirar partido da inferência local quando disponível, mas ainda assim proporcionar uma experiência útil em dispositivos não suportados ou antes de um modelo local estar pronto.
- Escolha primeiro a capacidade local. Começa com uma Windows API de IA quando corresponder ao teu cenário, ou usa Windows ML / Foundry Local quando precisares de correr um modelo específico.
- Verifique a prontidão antes de o usar. No arranque ou antes da funcionalidade ser mostrada, consulte o estado local de prontidão da funcionalidade. Se a API reportar que a funcionalidade não é suportada, não está instalada ou precisa de ser descarregada, não a invoques às cegas.
- Peça consentimento quando um modelo local tiver de ser descarregado. Alguns modelos locais são opcionais e podem ter vários GB. Explica o tamanho do download, porque é que o modelo é necessário e se a aplicação pode continuar sem ele.
- Defina uma alternativa na nuvem. Se o modelo local não estiver pronto, chame um endpoint cloud apenas quando o utilizador e a organização permitirem que os dados saiam do dispositivo. Manter os percursos locais e na nuvem por detrás da mesma abstração ao nível da aplicação, para que o resto da aplicação não dependa de onde a inferência é executada.
- Mantenha o comportamento observável. Registe qual o caminho usado, falhas de prontidão, resultados de download de modelos e erros de backup na cloud sem registar comandos, tokens ou conteúdos sensíveis, a menos que a sua organização tenha aprovado esse tratamento de dados.
Fluxo de decisão híbrido de contingência
Usa este fluxo como ponto de partida:
- Quando o utilizador inicia uma funcionalidade de IA, verifique se uma funcionalidade local de IA se adequa à tarefa.
- Se nenhuma funcionalidade local for adequada para a tarefa, use IA na cloud ou outro serviço.
- Se uma funcionalidade local se adequar à tarefa, verifique se a funcionalidade está pronta no dispositivo atual.
- Se a característica local estiver pronta, execute inferência local.
- Se a funcionalidade local precisar de um modelo para download, peça consentimento do utilizador antes de iniciar o download.
- Se o utilizador consentir, descarregue ou prepare o modelo, tente novamente a inferência local.
- Se o utilizador não consentir, ou se a funcionalidade local não for suportada, verifique se o fallback na cloud é permitido para o cenário.
- Se for permitido o recurso à cloud, utilize a via da cloud.
- Se não for permitido recorrer ao mecanismo de contingência na cloud, explique o requisito relativo ao dispositivo, ao modelo ou à política e desative ou oculte a funcionalidade.
Para detalhes locais de prontidão, consulte Windows APIs de IA, Comece com Windows APIs de IA, Foundry Locale Windows ML.