Introducción a IA en Windows
La capacidad de crear experiencias de inteligencia artificial inteligentes en y con Windows está desarrollando rápidamente. Windows Copilot Runtime ofrece características respaldadas por IA y APIs en los equipos Copilot+. Estas características se encuentran en desarrollo activo y se ejecutan localmente en segundo plano en todo momento. Más información sobre Windows Copilot Runtime.
Más allá de Windows Copilot Runtime, Microsoft ofrece una variedad de servicios de inteligencia artificial, soporte técnico e instrucciones. Para empezar y aprender a integrar de forma segura la inteligencia artificial para sus necesidades empresariales, explore las instrucciones de nuestra documentación sobre ia de Windows, entre las que se incluyen:
- ¿Cómo puede usar la inteligencia artificial en la aplicación de Windows?
- Elegir entre servicios de inteligencia artificial locales y basados en la nube
- Usar Windows Copilot Runtime
- Uso de APIs basadas en la nube
- Usar un modelo personalizado en la máquina local
- Uso de prácticas responsables de inteligencia artificial
- Preguntas más frecuentes
¿Cómo puede usar la inteligencia artificial en la aplicación de Windows?
Algunas de las formas en que las aplicaciones de Windows pueden aprovechar los modelos de aprendizaje automático (ML) para mejorar su funcionalidad y la experiencia del usuario con la inteligencia artificial incluyen:
- Las aplicaciones pueden usar modelos de IA generativa para comprender temas complejos para resumir, reescribir, informar o expandir.
- Las aplicaciones pueden usar modelos que transforman el contenido de forma libre en un formato estructurado que la aplicación puede comprender.
- Las aplicaciones pueden usar modelos de búsqueda semántica que permiten a los usuarios buscar contenido por significado y encontrar rápidamente contenido relacionado.
- Las aplicaciones pueden usar modelos de procesamiento de lenguaje natural para razonar sobre requisitos complejos de lenguaje natural y planear y ejecutar acciones para realizar la pregunta del usuario.
- Las aplicaciones pueden usar modelos de manipulación de imágenes para modificar de forma inteligente imágenes, borrar o agregar temas, escalar verticalmente o generar contenido nuevo.
- Las aplicaciones pueden usar modelos de diagnóstico predictivo para ayudar a identificar y predecir problemas y ayudar a guiar al usuario o hacerlo para ellos.
Elección entre servicios de inteligencia artificial locales y basados en la nube
La integración de ia en la aplicación windows se puede lograr mediante dos métodos principales: un modelo local o un modelo basado en la nube. Hay varios aspectos que se deben tener en cuenta al determinar la opción adecuada para sus necesidades.
Disponibilidad de recursos
- dispositivo local: Ejecutar un modelo depende de los recursos disponibles en el dispositivo que se usa, incluida la CPU, la GPU, la NPU, la memoria y la capacidad de almacenamiento. Esto puede ser limitar si el dispositivo no tiene una capacidad computacional elevada o un almacenamiento suficiente. Modelos de lenguaje pequeño (SLAM), como Phi, son más ideales para su uso local en un dispositivo. PCs Copilot+ ofrecen modelos integrados operados por Windows Copilot Runtime con funciones de inteligencia artificial listas para usar.
- Cloud: Plataformas en la nube, como Azure AI Services, ofrecen recursos escalables. Puede usar tanta potencia computacional como necesite y solo pagar por lo que use. Los modelos de lenguaje grande (LLM), como los modelos de lenguaje OpenAI , requieren más recursos, pero también son más eficaces.
Privacidad y seguridad de datos
- dispositivo local: Dado que los datos permanecen en el dispositivo, ejecutar un modelo localmente puede ofrecer ventajas en términos de seguridad y privacidad, siendo el usuario el responsable de la seguridad de los datos.
- Nube: Los proveedores de nube ofrecen medidas de seguridad sólidas, pero los datos deben transferirse a la nube, lo que podría provocar problemas de privacidad de datos para el mantenedor de servicios de aplicaciones o empresariales en algunos casos.
accesibilidad y colaboración
- dispositivo local: El modelo y los datos solo son accesibles en el dispositivo a menos que se compartan manualmente. Esto tiene el potencial de hacer que la colaboración en los datos del modelo sea más difícil.
- Cloud: se puede acceder al modelo y a los datos desde cualquier lugar con conectividad a Internet. Esto puede ser mejor para escenarios de colaboración.
Coste
- dispositivo local: No hay ningún costo adicional más allá de la inversión inicial en el hardware del dispositivo.
- Nube: Mientras que las plataformas en la nube funcionan en un modelo de pago por uso, los costos pueden acumularse en función de los recursos usados y la duración del uso.
mantenimiento y actualizaciones
- dispositivo local: El usuario es responsable de mantener el sistema e instalar las actualizaciones.
- Cloud: el proveedor de servicios en la nube gestiona el mantenimiento, las actualizaciones del sistema y de nuevas funciones, reduciendo la carga de mantenimiento para el usuario.
Utilice Windows Copilot Runtime
Cuando un modelo de inteligencia artificial local es la solución adecuada, puede utilizar las características de Windows Copilot Runtime para integrar servicios de inteligencia artificial para los usuarios en equipos con Copilot+. Algunas de estas características de IA listas para usar que puedes acceder desde tu aplicación de Windows incluyen:
- PhiLice: un modelo de lenguaje local listo para usar.
- Recall: una API UserActivity que usa IA para ayudarle a buscar en la actividad pasada, compatible con Hacer clic para hacer, una característica que usa Phi Silica para conectar acciones al contenido (texto o imágenes) que encuentra Recall.
- Creación de imágenes con IA: para escalar y dar nitidez a imágenes mediante IA (Superresolución de imágenes), así como identificar objetos dentro de una imagen (Segmentación de imágenes).
- Windows Studio Effects: para aplicar efectos de IA a la cámara del dispositivo o al micrófono integrado.
Obtenga más información sobre las características disponibles en Windows Copilot Runtime Oveview.
Uso de APIs basadas en la nube
Si una solución basada en la nube funciona mejor para su escenario de aplicación de Windows, puede que le interesen algunos de los tutoriales siguientes.
Muchos APIs están disponibles para acceder a modelos basados en la nube para impulsar las características de inteligencia artificial en la aplicación de Windows, tanto si esos modelos están personalizados como listos para usarse. El uso de un modelo basado en la nube puede permitir que la aplicación permanezca simplificada mediante la delegación de tareas que consumen muchos recursos en la nube. Algunos recursos que pueden ayudarle a agregar APIs respaldados por IA basada en la nube, ofrecidos por Microsoft o OpenAI, incluyen:
Añadir las finalizaciones de chat de OpenAI a tu aplicación de escritorio WinUI 3 / Windows App SDK: Un tutorial sobre cómo integrar las capacidades de finalización de ChatGPT de OpenAI basadas en la nube en una aplicación de escritorio WinUI 3 / Windows App SDK.
Agregar DALL-E a la aplicación de escritorio winUI 3 / Windows App SDK: tutorial sobre cómo integrar las funcionalidades de generación de imágenes de OpenAI basadas en la nube DALL-E en una aplicación de escritorio winUI 3 / Windows App SDK.
Creación de una aplicación de recomendación con .NET MAUI y ChatGPT: tutorial sobre cómo crear una aplicación de recomendación de ejemplo que integre las funcionalidades de finalización de ChatGPT de OpenAI basadas en la nube en una aplicación MAUI de .NET.
Agregar DALL-E a la aplicación de escritorio de .NET MAUI de Windows: tutorial sobre cómo integrar las funcionalidades de generación de imágenes de OpenAI DALL-E basadas en la nube en una aplicación MAUI de .NET.
Azure OpenAI Service: si quiere que la aplicación de Windows acceda a modelos openAI, como GPT-4, GPT-4 Turbo with Vision, GPT-3.5-Turbo, DALLE-3 o embeddings model series, con las funcionalidades de seguridad y empresa agregadas de Azure, puede encontrar instrucciones en esta documentación de Azure OpenAI.
Servicios de Azure AI: Azure ofrece un conjunto completo de servicios de inteligencia artificial disponibles a través de las APIs REST y los SDK de la biblioteca cliente en lenguajes de desarrollo populares. Para más información, consulte la documentación de cada servicio. Estos servicios basados en la nube ayudan a los desarrolladores y a las organizaciones a crear rápidamente aplicaciones inteligentes, vanguardistas, listas para el mercado y responsables con APIs y modelos listos para usar, precompilados y personalizables. Algunos ejemplos de aplicaciones son el procesamiento del lenguaje natural para conversaciones, búsqueda, supervisión, traducción, voz, visión y toma de decisiones.
Uso de un modelo personalizado en la máquina local
Si tiene la capacidad de entrenar su propio modelo con sus propios datos privados con plataformas como TensorFlow o PyTorch. Puede integrar ese modelo personalizado en la aplicación de Windows ejecutándolo localmente en el hardware del dispositivo mediante ONNX Runtime y AI Toolkit para Visual Studio Code.
AI Toolkit para Visual Studio Code es una extensión de VS Code que permite descargar y ejecutar modelos de IA localmente, incluido el acceso a la aceleración de hardware para mejorar el rendimiento y escalar a través de DirectML. Ai Tookit también puede ayudarle con:
- Probar modelos en un área de juegos intuitiva o en la aplicación con una API REST.
- Ajuste del modelo de inteligencia artificial, tanto localmente como en la nube (en una máquina virtual) para crear nuevas aptitudes, mejorar la confiabilidad de las respuestas, establecer el tono y el formato de la respuesta.
- Ajustar modelos populares de lenguaje pequeño (SLM), como Phi-3 y Mistral.
- Implemente la característica de inteligencia artificial en la nube o con una aplicación que se ejecute en un dispositivo.
- Aproveche la aceleración de hardware para mejorar el rendimiento con las características de inteligencia artificial mediante DirectML. DirectML es una API de bajo nivel que permite que el hardware del dispositivo Windows acelere el rendimiento de los modelos de aprendizaje automático usando la GPU del dispositivo o la NPU. El emparejamiento de DirectML con el ONNX Runtime suele ser la manera más sencilla para que los desarrolladores incorporen la inteligencia artificial acelerada por hardware a sus usuarios a escala. Más información: Información general de DirectML.
Quizás también quiera consultar estos conceptos de ajuste preciso de modelos para adaptar un modelo preentrenado a sus datos de manera más adecuada.
Búsqueda de modelos de código abierto
Puede encontrar modelos de APRENDIZAJE automático de código abierto en la web, entre los que se incluyen algunos de los más populares:
- Hugging Face: un centro de más de 10 000 modelos de aprendizaje automático entrenados previamente para el procesamiento de lenguaje natural, potenciado por la biblioteca Transformers. Puede encontrar modelos para la clasificación de texto, la respuesta a preguntas, el resumen, la traducción, la generación y mucho más.
- ONNX Model Zoo: una colección de modelos de APRENDIZAJE automático entrenados previamente en formato ONNX que cubren una amplia gama de dominios y tareas, como computer vision, procesamiento de lenguaje natural, voz, etc.
- Qualcomm AI Hub: una plataforma que proporciona acceso a una variedad de modelos y herramientas de ML optimizados para dispositivos Qualcomm Snapdragon. Puede encontrar modelos para el procesamiento de imágenes, vídeos, audio y sensores, así como marcos, bibliotecas y SDK para compilar e implementar aplicaciones de ML en dispositivos móviles. Qualcomm AI Hub también ofrece tutoriales, guías y soporte de la comunidad para desarrolladores e investigadores.
- Pytorch Hub: un repositorio de modelos entrenado previamente diseñado para facilitar la reproducibilidad de la investigación y habilitar nuevas investigaciones. Es una API y un flujo de trabajo sencillos que proporcionan los bloques de creación básicos para mejorar la reproducibilidad de la investigación del aprendizaje automático. PyTorch Hub consta de un repositorio de modelos entrenado previamente diseñado específicamente para facilitar la reproducibilidad de la investigación.
- TensorFlow Hub: un repositorio de modelos de ML entrenados previamente y componentes reutilizables para TensorFlow, que es un marco popular para compilar y entrenar modelos de ML. Puede encontrar modelos para el procesamiento de imágenes, texto, vídeo y audio, así como para transferir aprendizaje y ajuste fino.
- Model Zoo: una plataforma que mantiene y clasifica los mejores modelos de APRENDIZAJE automático de código abierto para varios marcos y tareas. Puede examinar modelos por categoría, marco, licencia y clasificación, y ver demostraciones, código y documentos para cada modelo.
Algunas bibliotecas de modelos no están diseñadas para personalizarse y distribuirse a través de una aplicación, pero son herramientas útiles para la exploración y detección prácticas como parte del ciclo de vida de desarrollo, como:
- ollama: Ollama es un marketplace de modelos de aprendizaje automático listos para usar para diversas tareas, como la detección de caras, el análisis de sentimiento o el reconocimiento de voz. Puede examinar, probar e integrar los modelos en la aplicación con unos pocos clics.
- LM Studio: Lmstudio es una herramienta que permite crear modelos de APRENDIZAJE automático personalizados a partir de sus propios datos, mediante una interfaz de arrastrar y colocar. Puede elegir entre diferentes algoritmos de APRENDIZAJE automático, preprocesar y visualizar los datos, y entrenar y evaluar los modelos.
Uso de prácticas de inteligencia artificial responsable
Siempre que incorpore características de inteligencia artificial a la aplicación de Windows, se recomienda encarecidamente seguir las instrucciones de la guía Desarrollo de aplicaciones y características de IA generativa responsables en Windows.
Esta guía le ayudará a comprender las directivas, los procedimientos y los procesos de gobernanza, identificar el riesgo, recomendar métodos de prueba, usar medidas de seguridad como moderadores y filtros, y llamar a consideraciones específicas al seleccionar un modelo seguro y responsable de trabajar.
Windows Copilot Runtime los modelos de IA generativos en dispositivos pueden ayudarle a aplicar características de seguridad de contenido local, como motores de clasificación en dispositivos para contenido dañino y una lista de bloqueados predeterminada. Microsoft da prioridad a los desarrolladores para crear experiencias de inteligencia artificial seguras y de confianza con modelos locales en Windows.
Recursos adicionales
Phi Silica, pequeña pero poderosa SLM en el dispositivo (Blogs de Windows)
IA en la Galería de ejemplos de Windows: ejemplos que muestran formas de integrar la IA en las aplicaciones de Windows.
Preguntas frecuentes sobre el uso de la IA con Windows: preguntas frecuentes sobre terminología y conceptos relacionados con el uso de la IA en el contexto de Windows, abarcan cuestiones como: "¿Qué es DirectML?", "¿Qué es ONNX?", "¿Qué es ORT?", "¿Qué es una NPU?", "¿Qué es un SLM?", "¿Qué es la inferencia?", "¿Qué es ajustar?", etc.
ONNX: Un estándar abierto para representar e intercambiar modelos de aprendizaje automático en diferentes marcos y plataformas. Si encuentra un modelo de ML entrenado previamente en formato ONNX, puede usar ONNX Runtime (ORT) para cargar y ejecutar el modelo en la aplicación de Windows. ORT permite acceder a las funcionalidades de inferencia aceleradas por hardware del dispositivo y optimizar el rendimiento del modelo de ML. Si tiene un modelo de ML entrenado previamente en un formato diferente, como PyTorch o TensorFlow, puede convertirlo a ONNX mediante una herramienta de optimización de modelos como Olive. Para obtener ayuda con el uso de Olive, consulte Ajuste de SLM con Microsoft Olive (Serie de recorridos sobre la arquitectura de aplicaciones con IA generativa). Para ver tutoriales sobre cómo crear y usar modelos ONNX, consulte tutoriales de ONNX en GitHub. Para obtener ejemplos que muestran cómo usar modelos ONNX en una aplicación de Windows, consulte la AI en la Galería de ejemplos de Windows.
Introducción a los modelos ONNX en su aplicación WinUI con ONNX Runtime
API WebNN para aplicaciones web: un estándar web para acceder a la aceleración de hardware de red neuronal en navegadores, en función de WebIDL y JavaScript APIs. Permite a los desarrolladores web crear y ejecutar modelos de aprendizaje automático de forma eficaz en el lado cliente, sin depender de servicios en la nube o bibliotecas nativas. Ejemplos de WebNN en GitHub. Ejemplos de WebNN con ONNX Runtime en la galería de ejemplos de IA en Windows.
PyTorch: un marco de aprendizaje profundo de código abierto muy popular disponible con una interfaz de Python y C++. Es probable que este sea el formato más común que encontrará para los modelos de ML. Si quiere usar modelos de Ml de PyTorch en la aplicación de Windows (C# o C++) o en una aplicación web, puede usar TorchSharp y LibTorch, que son enlaces de .NET y C++ para la biblioteca pyTorch. TorchSharp y LibTorch permiten crear, cargar y manipular tensores, compilar y ejecutar redes neuronales y guardar y cargar modelos mediante el formato PyTorch. Para obtener ejemplos, consulte ejemplos de TorchSharp, TorchScript para despliegue, ejemplos de PyTorch en C++. En el caso de las aplicaciones web, consulte Creación de una aplicación web con ONNX Runtime. Para obtener ejemplos de cómo ejecutar modelos de PyTorch con DirectML, consulte la AI en la Galería de ejemplos de Windows.
tensorFlow es otra conocida biblioteca de software de código abierto para el aprendizaje automático e inteligencia artificial que se usa para compilar e implementar modelos de aprendizaje automático para diversas tareas.