Compartir a través de


Uso de ai.analyze_sentiment con PySpark

La ai.analyze_sentiment función usa ia generativa para detectar el estado emocional del texto de entrada, con una sola línea de código. Puede detectar si el estado emocional de la entrada es positivo, negativo, mixto o neutro. También puede detectar el estado emocional según las etiquetas especificadas. Si la función no puede determinar la opinión, deja la salida en blanco.

Nota:

Información general

La ai.analyze_sentiment función está disponible para DataFrames de Spark. Debe especificar el nombre de una columna de entrada existente como parámetro.

La función devuelve un nuevo DataFrame, con etiquetas de opinión para cada fila de texto de entrada almacenada en una columna de salida.

Syntax

# Default sentiment labels
df.ai.analyze_sentiment(input_col="input", output_col="sentiment")

# Custom sentiment labels
df.ai.analyze_sentiment(input_col="input", output_col="sentiment", labels=["happy", "angry", "indifferent"])

Parámetros

Nombre Description
input_col
Obligatorio
Cadena que contiene el nombre de una columna existente con valores de texto de entrada que se van a analizar para la opinión.
output_col
Opcional
Cadena que contiene el nombre de una nueva columna para almacenar la etiqueta de opinión para cada fila de texto de entrada. Si no establece este parámetro, se genera un nombre predeterminado para la columna de salida.
labels
Opcional
Una o varias cadenas que representan el conjunto de etiquetas de opinión para que coincidan con los valores de texto de entrada.
error_col
Opcional
La cadena que contiene el nombre de una nueva columna para almacenar los errores de OpenAI que resultan del procesamiento de cada fila de texto de entrada. Si no establece este parámetro, se genera un nombre predeterminado para la columna de error. Si una fila de entrada no tiene errores, el valor de esta columna es null.

Devoluciones

La función devuelve un DataFrame de Spark que incluye una nueva columna que contiene etiquetas de opinión que coinciden con cada fila de texto de la columna de entrada. Las etiquetas de opinión predeterminadas incluyen positive, negative, neutralo mixed. Si se especifican etiquetas personalizadas, esas etiquetas se usan en su lugar. Si no se puede determinar un sentimiento, el valor devuelto es null.

Example

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

df = spark.createDataFrame([
        ("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.",)
    ], ["reviews"])

sentiment = df.ai.analyze_sentiment(input_col="reviews", output_col="sentiment")
display(sentiment)

Esta celda de código de ejemplo proporciona la siguiente salida:

Captura de pantalla de un DataFrame con las columnas