Funciones de IA: Transformar datos a gran escala con LLMs

Las funciones de IA en Microsoft Fabric aplican transformaciones de una sola línea, impulsadas por LLM, a grandes pandas o DataFrames PySpark con una sola línea de códigodf.ai.<function_name>(). Funcionan con alta concurrencia realizando cientos de llamadas de inferencia asíncronas mientras mantienen el aislamiento del contenido a nivel de fila. Este enfoque te permite enriquecer, clasificar, resumir y extraer datos rápidamente de textos y documentos no estructurados a gran escala.

Use esta tabla para saltar a ejemplos de esta información general o documentación detallada de Pandas y PySpark.

Function Description Documentación detallada
ai.analyze_sentiment Detecte el estado emocional del texto de entrada. Ejemplo. Pandas, PySpark
ai.classify Clasifique el texto de entrada según las etiquetas. Ejemplo. Pandas, PySpark
ai.embed Genere incrustaciones vectoriales para el texto de entrada. Ejemplo. Pandas, PySpark
ai.extract Extraiga campos como ubicaciones, nombres o entidades personalizadas. Ejemplo. Pandas, PySpark
ai.fix_grammar Corrija la ortografía, la gramática y la puntuación. Ejemplo. Pandas, PySpark
ai.generate_response Genere respuestas en función de las instrucciones. Ejemplo. Pandas, PySpark
ai.similarity Compare el significado del texto con un valor u otra columna. Ejemplo. Pandas, PySpark
ai.summarize Resumir datos de texto, archivos o filas. Ejemplo. Pandas, PySpark
ai.translate Traducir texto de entrada a otro idioma. Ejemplo. Pandas, PySpark

Puede utilizar AI Functions en notebooks con pandas o PySpark, en consultas SQL y en Dataflow Gen2. Fabric controla la configuración del punto de conexión para el modelo integrado.

Uso de las funciones de IA en experiencias de Fabric

Las funciones de IA están disponibles en varias experiencias de Fabric:

Usa funciones de IA multimodal

Las funciones de IA multiproceso procesan imágenes, ARCHIVOS PDF y archivos de texto, además de los valores de texto. Úselos para resumir archivos PDF, clasificar imágenes, extraer campos de documento o generar respuestas con base en el contenido del archivo.

Los tipos de archivo admitidos incluyen JPG/JPEG, PNG, GIF estático, WebP, PDF, MD, TXT, CSV, TSV, JSON, XML, PY y otros archivos de texto. Establezca column_type="path" en pandas, o input_col_type o col_types en PySpark. Para ver ejemplos, consulte Uso de la entrada multimodal con AI Functions.

Prerequisites

Note

  • Las funciones de IA se admiten en Fabric Runtime 1.3 y versiones posteriores.
  • Las funciones de IA [pandas, PySpark, Dataflow Gen2 y Datawarehouse SQL] por defecto tienen gpt-5-mini con reasoning_effort establecido en low. Este modelo tiene una ventana de contexto de 400 000 tokens y una salida máxima de 128 000 tokens. Para conocer los límites y las tasas del modelo, consulte la tabla de modelos de lenguaje.
  • Las funciones de IA no registran ni almacenan mensajes de usuario, datos de entrada ni salidas.

Modelos y proveedores

Las funciones de IA usan el punto de conexión de Fabric integrado de forma predeterminada. También puede configurar pandas y PySpark AI Functions para usar cualquier LLM que admita la API chat_completions o responses, incluidos:

  • Modelos de Azure OpenAI.
  • Modelos de Microsoft Foundry como Qwen, Kimi, Grok, LLaMA, Mistral y más.

Para conocer las opciones de configuración, consulte Personalización de funciones de IA con pandas y Personalización de funciones de IA con PySpark.

Configuración de las funciones de IA

AI Functions es compatible con pandas en los entornos de ejecución de Python y PySpark, y con PySpark en el entorno de ejecución de PySpark. Instale solo los paquetes que necesita el entorno de ejecución.

Instalación de dependencias

Runtime Dependencias
pandas (tiempo de ejecución de Python) Instale los archivos wheel synapseml_internal y synapseml_core. Instale openai versión 1.99.5 o posterior solo si necesita el comportamiento nativo del cliente del SDK o ejemplos de formato de respuesta de Pydantic.
pandas (Fabric Runtime 2.0 con PySpark 4.1 y Python 3.13) Instala temporalmente nest_asyncio. Instale openai versión 1.99.5 o posterior solo si necesita el comportamiento nativo del cliente del SDK o ejemplos de formato de respuesta de Pydantic.
pandas (otros tiempos de ejecución de PySpark) No se requiere ninguna instalación para la mayoría del uso. Instale openai versión 1.99.5 o posterior solo si necesita el comportamiento nativo del cliente del SDK o ejemplos de formato de respuesta de Pydantic.
PySpark (entorno de ejecución de PySpark) No requiere instalación.

Note

  • Instalar nest_asyncio es un parche temporal de compatibilidad para las Funciones de IA de pandas en Fabric Runtime 2.0. Este requisito será eliminado en una actualización futura.
  • Las funciones de IA de PySpark no requieren pasos adicionales de instalación en los runtimes de Fabric Spark.

Fabric Runtime 2.0, que se basa en Python 3.13 y PySpark 4.1, no incluye el nest_asyncio paquete de forma nativa. Para usar pandas AI Functions en este entorno de ejecución, instala nest_asyncio como un parche temporal de compatibilidad. En futuras actualizaciones, este requisito se eliminará porque Pandas AI Functions puede usar el paquete más recientenest_asyncio2, que está preinstalado en Fabric Runtime 2.0.

# Temporary compatibility patch for Fabric Runtime 2.0.
%pip install -q nest_asyncio 2>/dev/null

# Optional: install openai version 1.99.5 or later for SDK-native client behavior.
%pip install -q openai 2>/dev/null

Importación de bibliotecas necesarias

Importe la biblioteca de AI Functions para el entorno de ejecución.

# Required imports
import synapse.ml.aifunc as aifunc
import pandas as pd

Uso de funciones auxiliares para archivos y esquemas

Las funciones de IA incluyen asistentes para flujos de trabajo multimodales:

  • aifunc.load: ingerir archivos de una carpeta en una tabla estructurada. Puede proporcionar un mensaje o un esquema.
  • aifunc.list_file_paths: enumera las direcciones URL de archivo y las rutas de acceso de una carpeta para usarlas como entrada para cualquier función de IA.
  • ai.infer_schema: inferir un esquema de extracción del contenido del archivo para su uso con ai.extract.

Para ver ejemplos, consulte Uso de la entrada multimodal con AI Functions.

Aplicación de funciones de IA

En los ejemplos siguientes se muestran las funciones principales de IA para pandas y PySpark. Las funciones de IA de PySpark se ejecutan como transformaciones de Spark distribuidas en clústeres de Spark de Fabric.

Note

La mayoría de las funciones de IA admiten rutas de acceso de archivos con column_type="path" en pandas o input_col_type/col_types="path" en PySpark. Para ver ejemplos, consulte Uso de la entrada multimodal con AI Functions.

Tip

El modelo de Python predeterminado es gpt-5-mini con reasoning_effort="low". Para cambiar los modelos o ajustar la configuración, consulte Configuración de Pandas o Configuración de PySpark.

ai.analyze_sentiment: Detectar sentimiento

La ai.analyze_sentiment función etiqueta cada entrada como positiva, negativa, mixta o neutra. También puede proporcionar etiquetas personalizadas.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        "The cleaning spray permanently stained my beautiful kitchen counter. Never again!",
        "I used this sunscreen on my vacation to Florida, and I didn't get burned at all. Would recommend.",
        "I'm torn about this speaker system. The sound was high quality, though it didn't connect to my roommate's phone.",
        "The umbrella is OK, I guess."
    ], columns=["reviews"])

df["sentiment"] = df["reviews"].ai.analyze_sentiment()
display(df)

Captura de pantalla de un DataFrame con las columnas

ai.classify: categorizar texto

La ai.classify función clasifica el texto de entrada mediante las etiquetas que proporcione.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        "This duvet, lovingly hand-crafted from all-natural fabric, is perfect for a good night's sleep.",
        "Tired of friends judging your baking? With these handy-dandy measuring cups, you'll create culinary delights.",
        "Enjoy this *BRAND NEW CAR!* A compact SUV perfect for the professional commuter!"
    ], columns=["descriptions"])

df["category"] = df['descriptions'].ai.classify("kitchen", "bedroom", "garage", "other")
display(df)

Captura de pantalla de una trama de datos con columnas

ai.embed: Generación de incrustaciones de vectores

La ai.embed función convierte el texto en vectores numéricos que capturan el significado semántico. Use incrustaciones para flujos de trabajo de búsqueda, recuperación y aprendizaje automático similares.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        "This duvet, lovingly hand-crafted from all-natural fabric, is perfect for a good night's sleep.",
        "Tired of friends judging your baking? With these handy-dandy measuring cups, you'll create culinary delights.",
        "Enjoy this *BRAND NEW CAR!* A compact SUV perfect for the professional commuter!"
    ], columns=["descriptions"])
    
df["embed"] = df["descriptions"].ai.embed()
display(df)

Captura de pantalla de una trama de datos con columnas

ai.extract: extraer entidades

La ai.extract función extrae campos como nombres, ubicaciones o entidades personalizadas del texto de entrada.

Etiquetas estructuradas

Use ExtractLabel cuando necesite una extracción tipada. Admite construcciones de JSON Schema, como campos tipados, enumeraciones, arrays, objetos anidados, valores anulables, propiedades obligatorias y additionalProperties=false. Para obtener ejemplos, consulte Pandas o PySpark.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        "MJ Lee lives in Tucson, AZ, and works as a software engineer for Microsoft.",
        "Kris Turner, a nurse at NYU Langone, is a resident of Jersey City, New Jersey."
    ], columns=["descriptions"])

df_entities = df["descriptions"].ai.extract("name", "profession", "city")
display(df_entities)

Captura de pantalla que muestra una nueva trama de datos con las columnas

ai.fix_grammar: corrección de gramática

La ai.fix_grammar función corrige la ortografía, la gramática y la puntuación.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        "There are an error here.",
        "She and me go weigh back. We used to hang out every weeks.",
        "The big picture are right, but you're details is all wrong."
    ], columns=["text"])

df["corrections"] = df["text"].ai.fix_grammar()
display(df)

Captura de pantalla que muestra un marco de datos con una columna

ai.generate_response: Aplicar avisos de usuario personalizados

La función ai.generate_response crea texto personalizado a partir de tu prompt y de los datos de la fila.

Parámetros opcionales

Use response_format cuando necesite resultados estructurados, incluidos los objetos JSON, el esquema JSON o los modelos pydantic. Para obtener ejemplos, consulte Pandas o PySpark.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        ("Scarves"),
        ("Snow pants"),
        ("Ski goggles")
    ], columns=["product"])

df["response"] = df.ai.generate_response("Write a short, punchy email subject line for a winter sale.")
display(df)

Captura de pantalla que muestra una trama de datos con columnas

ai.similarity: Cálculo de la similitud

La ai.similarity función compara cada valor de entrada con un valor de referencia o con un valor en otra columna. Las puntuaciones varían de -1 para un significado opuesto a 1 para un significado idéntico.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([ 
        ("Bill Gates", "Technology"), 
        ("Satya Nadella", "Healthcare"), 
        ("Joan of Arc", "Agriculture") 
    ], columns=["names", "industries"])
    
df["similarity"] = df["names"].ai.similarity(df["industries"])
display(df)

Captura de pantalla de un marco de datos con columnas

ai.summarize: Resumir texto

La ai.summarize función resume texto, contenido de archivo, una sola columna o todas las columnas de cada fila.

Personalización de resúmenes con instrucciones

Se usa instructions para controlar el tono, la longitud, el público o el foco. Para obtener ejemplos, consulte Pandas o PySpark.

# This code uses AI. Always review output for mistakes.

df= pd.DataFrame([
        ("Microsoft Teams", "2017",
        """
        The ultimate messaging app for your organization—a workspace for real-time 
        collaboration and communication, meetings, file and app sharing, and even the 
        occasional emoji! All in one place, all in the open, all accessible to everyone.
        """),
        ("Microsoft Fabric", "2023",
        """
        An enterprise-ready, end-to-end analytics platform that unifies data movement, 
        data processing, ingestion, transformation, and report building into a seamless, 
        user-friendly SaaS experience. Transform raw data into actionable insights.
        """)
    ], columns=["product", "release_year", "description"])

df["summaries"] = df["description"].ai.summarize()
display(df)

Captura de pantalla que muestra una trama de datos. La columna

ai.translate: traducir texto

La ai.translate función traduce texto a otro idioma.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        "Hello! How are you doing today?", 
        "Tell me what you'd like to know, and I'll do my best to help.", 
        "The only thing we have to fear is fear itself."
    ], columns=["text"])

df["translations"] = df["text"].ai.translate("spanish")
display(df)

Captura de pantalla de una trama de datos con columnas

Encadenar funciones de IA de PySpark

PySpark AI Functions devuelven DataFrames que mantienen el accesor df.ai enlazado al esquema del resultado. Encadenar transformaciones sin materializar los DataFrames intermedios.

# This code uses AI. Always review output for mistakes.

output = (
    df
    .ai.summarize(input_col="review_text", output_col="summary")
    .ai.classify(
        labels=["service", "cleanliness", "location", "other"],
        input_col="summary",
        output_col="category",
    )
)
display(output)

Visualización de estadísticas de uso con ai.stats

Use ai.stats en una serie o dataframe generadas por IA para inspeccionar las métricas de uso y ejecución.

ai.stats devuelve un DataFrame con estadísticas como:

  • num_successful: número de filas procesadas correctamente por la función de IA.
  • num_exceptions: número de filas que encontraron una excepción durante la ejecución. Estas filas se representan como instancias de aifunc.ExceptionResult.
  • num_unevaluated: número de filas que no se procesaron porque una excepción anterior hizo imposible continuar la evaluación. Estas filas se representan como instancias de aifunc.NotEvaluatedResult.
  • num_harmful: número de filas bloqueadas por el filtro de contenido de OpenAI Azure. Estas filas se representan como instancias de aifunc.FilterResult.
  • cached_tokens: número total de tokens de entrada almacenados en caché.
  • input_tokens: número total de tokens de entrada usados para la llamada a la función de IA.
  • output_tokens: número total de tokens de salida generados por el modelo.
  • reasoning_tokens: número total de tokens de razonamiento utilizados por modelos de razonamiento.
  • model: nombre de implementación del modelo usado para la llamada a la función de IA.

La salida podría ser similar a esta tabla:

num_successful num_exceptions num_unevaluated num_harmful tokens en caché input_tokens output_tokens reasoning_tokens client_type input_types model
2 0 0 0 0 555 4 0 fabric_llm_endpoint {"text": 2} gpt-5-mini

Tip

Use ai.stats para realizar un seguimiento del uso, los patrones de error y el consumo de tokens.

Las filas que alcanzan los límites de capacidad se muestran como instancias de aifunc.CapacityExceededResult. En los flujos de trabajo de pandas, use aifunc.split_results para separar los resultados correctos de los resultados no válidos, para poder inspeccionar las filas afectadas por limitaciones de capacidad y volver a intentarlo cuando haya capacidad disponible o se haya resuelto la limitación.

Transparencia de costos

Pandas AI Functions puede mostrar recuentos de tokens y estimaciones de unidades de capacidad durante la ejecución con progress_bar_mode="stats". Para PySpark, use df.ai.stats en el DataFrame resultante.

La aplicación Fabric Capacity Metrics muestra el consumo de llamadas al modelo como la operación AI Functions. Para más información, consulte Facturación de las funciones de IA.

Evaluación y aceleración

Utilice los cuadernos de inicio rápido de AI Functions para ejemplos integrales de pandas y PySpark. Utiliza los cuadernos de evaluación de AI Functions para evaluar la calidad de los resultados antes de pasar a producción.