Textklassificering

Introduktion till generativ AI i Snowflake

James Cha-Earley

Senior Developer Advocate, Snowflake

Utmaningar med textklassificering

Problemet

$$

  • Recensioner kan innehålla vilken information som helst

$$

  • Manuell kategorisering är tidskrävande och skalbar inte

Lösningen

$$

  • Automatisera med Snowflake Cortex!

$$

  • classify_text()
Introduktion till generativ AI i Snowflake

Definiera kategorier

# Define categories
categories = ["overall_experience", "location", "staff", "food_beverages",
              "facilities"]
Introduktion till generativ AI i Snowflake

Klassificera text

from snowflake.cortex import classify_text

category = classify_text( str_input="The check-in was smooth and the staff were very friendly.", categories=categories )
print(category)
{  
  "label": "staff"  
}
Introduktion till generativ AI i Snowflake

Konvertera utdata till ett lexikon

print(type(category))
<class 'str'>
import json

category_dict = json.loads(category)
print(type(category_dict))
<class 'dict'>
Introduktion till generativ AI i Snowflake

Skala upp arbetsflödet

  • Klassificeringspipeline som kategoriserar recensioner för en given månad
# Python code
month = 5
-- SQL query
SELECT *
FROM HOTELS.REVIEWS
WHERE EXTRACT(month FROM date) = '{{month}}'
Introduktion till generativ AI i Snowflake

Använda classify_text()

df = cell2.to_pandas()

def classification(text): result = classify_text( str_input=text, categories=labels ) result_dict = json.loads(result) return result_dict["label"]
Introduktion till generativ AI i Snowflake

Använda classify_text()

# Apply classification to the DataFrame
df["category"] = reviews["DESCRIPTION"].apply(classification)

# Print the first row's predicted category print(df["category"].head(1))
0    overall_experience  
Name: category, dtype: object
Introduktion till generativ AI i Snowflake

Sentimentanalys

  • Bara intresserad av sentimentet i recensionerna

AI_SENTIMENT i en SQL-cell

Introduktion till generativ AI i Snowflake

Sentimentanalys

AI_SENTIMENT – extrahera ett sentiment

$$

  • Tillgängliga sentiment: positive, negative, neutral, mixed och unknown
Introduktion till generativ AI i Snowflake

Nu kör vi en övning!

Introduktion till generativ AI i Snowflake

Preparing Video For Download...