Dela via


Använda ai.analyze_sentiment med PySpark

Funktionen ai.analyze_sentiment använder generativ AI för att identifiera indatatextens känslomässiga tillstånd med en enda kodrad. Det kan upptäcka om det känslomässiga tillståndet för indata är positivt, negativt, blandat eller neutralt. Det kan också identifiera det känslomässiga tillståndet enligt dina angivna etiketter. Om funktionen inte kan fastställa sentimentet lämnar den utdata tomma.

Anmärkning

Översikt

Funktionen ai.analyze_sentiment är tillgänglig för Spark DataFrames. Du måste ange namnet på en befintlig indatakolumn som en parameter.

Funktionen returnerar en ny DataFrame med sentimentetiketter för varje textrad som lagras i en utdatakolumn.

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"])

Parameterar

Namn Description
input_col
Krävs
En sträng som innehåller namnet på en befintlig kolumn med indatatextvärden som ska analyseras för sentiment.
output_col
Valfritt
En sträng som innehåller namnet på en ny kolumn för att lagra attitydetiketten för varje rad med indatatext. Om du inte anger den här parametern genereras ett standardnamn för utdatakolumnen.
labels
Valfritt
En eller flera strängar som representerar den uppsättning sentimentetiketter som ska matcha indatatextvärden.
error_col
Valfritt
En sträng som innehåller namnet på en ny kolumn för att lagra eventuella OpenAI-fel som uppstår vid bearbetning av varje rad med indatatext. Om du inte anger den här parametern genereras ett standardnamn för felkolumnen. Om en indatarad inte har några fel är värdet i den här kolumnen null.

Retur

Funktionen returnerar en Spark DataFrame som innehåller en ny kolumn som innehåller attitydetiketter som matchar varje textrad i indatakolumnen. Standardetiketterna för sentiment är positive, negative, neutraleller mixed. Om anpassade etiketter anges används dessa etiketter i stället. Om en attityd inte kan fastställas är returvärdet null.

Example

# This code uses AI. Always review output for mistakes. 
# Read terms: https://azure.microsoft.com/support/legal/preview-supplemental-terms/.

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)

Den här exempelkodcellen innehåller följande utdata:

Skärmbild av en dataram med kolumnerna