En la WWDC 2025, Apple sorprendió a la comunidad de desarrolladores con una nueva y poderosa herramienta que promete revolucionar la forma en que interactuamos con la inteligencia artificial en las aplicaciones móviles y de escritorio: el framework Foundation Models. Este marco proporciona una integración fluida de modelos de lenguaje y aprendizaje automático en las aplicaciones de iOS, macOS, iPadOS, watchOS y tvOS. En este artículo, exploraremos qué es el framework Foundation Models, cómo utilizarlo en proyectos de SwiftUI y Xcode, y veremos algunos ejemplos prácticos de implementación.
¿Qué es el Framework Foundation Models?
El framework Foundation Models es una nueva adición a la familia de frameworks de Apple que facilita la integración de modelos de aprendizaje profundo (machine learning) y de lenguaje natural en las aplicaciones. A diferencia de otros frameworks de machine learning como Core ML, que permiten la integración de modelos previamente entrenados, Foundation Models introduce una nueva categoría de modelos preentrenados en tareas de procesamiento de lenguaje natural (NLP), como traducción, clasificación de texto, análisis de sentimientos, y generación de texto.
Apple ha optimizado este framework para ser eficiente y fácil de usar, brindando soporte para modelos de última generación sin requerir que el desarrollador se adentre profundamente en la matemática o la implementación de redes neuronales. Además, Foundation Models se integra a la perfección con otros frameworks de Apple, como Core ML, SwiftUI y Combine, lo que lo convierte en una herramienta robusta para desarrollar aplicaciones inteligentes.
Características Principales de Foundation Models
- Modelos Preentrenados: Foundation Models incluye varios modelos preentrenados que se pueden usar directamente en tus aplicaciones. Estos modelos están diseñados para tareas comunes de procesamiento de lenguaje natural, como clasificación de texto, análisis de sentimientos, y generación de texto.
- Optimización para Apple Silicon: Los modelos son altamente optimizados para aprovechar el poder de los chips Apple Silicon, como el M1 y M2, lo que proporciona un rendimiento impresionante en dispositivos Mac y iOS.
- Facilidad de Uso: Apple ha diseñado una API simple y directa que permite a los desarrolladores integrar modelos de IA sin tener que entender los detalles internos de cómo se entrenaron o cómo funcionan las redes neuronales.
- Integración con SwiftUI y Xcode: El framework se integra perfectamente con las herramientas de desarrollo de Apple, lo que facilita la incorporación de IA en aplicaciones visuales y dinámicas usando SwiftUI.
- Soporte Multiplataforma: Puedes usar los modelos en dispositivos iPhone, iPad, Mac, y Apple Watch, lo que te permite crear experiencias coherentes en todas las plataformas de Apple.
¿Cómo Empezar a Usar Foundation Models en Xcode?
Para empezar a usar Foundation Models en tu aplicación, primero necesitarás asegurarte de que tu entorno de desarrollo está listo. Vamos a repasar los pasos básicos para configurar Xcode y comenzar con un proyecto en SwiftUI.
Paso 1: Configura tu Proyecto en Xcode
- Instalar Xcode: Asegúrate de tener la última versión de Xcode, que puedes descargar desde la Mac App Store o desde el sitio oficial de Apple para desarrolladores. Necesitarás Xcode 15 o superior para acceder al framework Foundation Models.
- Crea un Nuevo Proyecto: Abre Xcode y selecciona File > New > Project. Elige un proyecto basado en SwiftUI.
- Importa Foundation Models: Dentro de tu archivo
ContentView.swift(o cualquier otro archivo donde vayas a trabajar con la inteligencia artificial), importa el framework Foundation Models al inicio del archivo:
import SwiftUI
import FoundationModelsPaso 2: Usar un Modelo Preentrenado
Apple ha proporcionado varios modelos preentrenados que puedes utilizar directamente. Vamos a ver un ejemplo de cómo usar el modelo de análisis de sentimientos para analizar una cadena de texto y determinar si el sentimiento es positivo, negativo o neutral.
Ejemplo de Análisis de Sentimientos
- Definir el Modelo de Sentimiento: Apple proporciona un modelo de análisis de sentimientos que se puede cargar de manera sencilla con una API de alto nivel.
- Crear una Función para Procesar el Sentimiento:
import SwiftUI
import FoundationModels
struct ContentView: View {
@State private var sentiment: String = ""
var body: some View {
VStack {
Text("Sentimiento del texto: \(sentiment)")
.padding()
Button(action: analyzeSentiment) {
Text("Analizar Sentimiento")
.padding()
.background(Color.blue)
.foregroundColor(.white)
.cornerRadius(8)
}
}
.padding()
}
func analyzeSentiment() {
let model = SentimentAnalysisModel()
// Texto a analizar
let text = "Apple está desarrollando tecnologías impresionantes."
model.analyze(text: text) { result in
switch result {
case .success(let analysis):
sentiment = analysis.sentimentDescription
case .failure(let error):
sentiment = "Error: \(error.localizedDescription)"
}
}
}
}
- En este ejemplo, cuando presionas el botón Analizar Sentimiento, se pasa el texto a través del modelo preentrenado y se obtiene el resultado del análisis de sentimientos. El modelo devuelve una descripción del sentimiento del texto, como “positivo”, “neutral” o “negativo”.
Desglosando el Código
- SentimentAnalysisModel(): Aquí estamos usando un modelo preentrenado que Apple proporciona para análisis de sentimientos. Este modelo es capaz de determinar el tono general de un texto.
- analyze(text:completion:): Es el método del modelo que analiza el texto proporcionado. El resultado es manejado a través de un bloque de finalización (
completion) que devuelve un resultado de éxito o error. - sentimentDescription: Esta propiedad proporciona una descripción comprensible del sentimiento, como “Positivo”, “Negativo” o “Neutral”.
Paso 3: Integrar el Modelo en la Interfaz de Usuario
En el ejemplo anterior, ya hemos mostrado cómo utilizar el framework Foundation Models en una vista de SwiftUI. Pero es posible que quieras hacer algo más avanzado, como permitir que el usuario ingrese un texto y obtener el análisis en tiempo real. Aquí hay un ejemplo de cómo puedes hacerlo:
struct ContentView: View {
@State private var inputText: String = ""
@State private var sentiment: String = ""
var body: some View {
VStack {
TextField("Escribe algo para analizar...", text: $inputText)
.padding()
.textFieldStyle(RoundedBorderTextFieldStyle())
Button(action: analyzeSentiment) {
Text("Analizar Sentimiento")
.padding()
.background(Color.blue)
.foregroundColor(.white)
.cornerRadius(8)
}
Text("Sentimiento: \(sentiment)")
.padding()
}
.padding()
}
func analyzeSentiment() {
let model = SentimentAnalysisModel()
model.analyze(text: inputText) { result in
switch result {
case .success(let analysis):
sentiment = analysis.sentimentDescription
case .failure(let error):
sentiment = "Error: \(error.localizedDescription)"
}
}
}
}Este es un ejemplo básico donde el usuario puede escribir texto en un campo de entrada y, al presionar el botón, el modelo analizará el texto y devolverá el sentimiento.
Conclusión
El framework Foundation Models de Apple, presentado en la WWDC 2025, es una herramienta poderosa que hace que sea más fácil integrar inteligencia artificial en tus aplicaciones utilizando modelos preentrenados. Con su compatibilidad con SwiftUI y Xcode, puedes empezar a usar modelos avanzados de procesamiento de lenguaje natural de manera sencilla, sin necesidad de ser un experto en aprendizaje automático.
En este tutorial, hemos cubierto cómo integrar un modelo de análisis de sentimientos en una aplicación de SwiftUI, pero el framework Foundation Models ofrece mucho más, incluyendo modelos para clasificación de texto, traducción automática, generación de texto, entre otros.
Con este nuevo framework, Apple abre un abanico de posibilidades para desarrollar aplicaciones más inteligentes y útiles, optimizadas para los dispositivos de la marca, y todo esto con una curva de aprendizaje accesible para cualquier desarrollador.
Si tienes cualquier duda sobre este artículo, contacta conmigo y estaré encantado de ayudarte 🙂. Puedes contactar conmigo en mi perfil de X o en mi perfil de Instagram










