Clasificación de texto

Introducción a la IA Generativa en Snowflake

James Cha-Earley

Senior Developer Advocate, Snowflake

Desafíos de clasificar texto

El problema

$$

  • Las reseñas pueden contener cualquier información

$$

  • Categorizar manualmente consume tiempo y no es escalable

La solución

$$

  • ¡Automatiza con Snowflake Cortex!

$$

  • classify_text()
Introducción a la IA Generativa en Snowflake

Definiendo categorías

# Definir categorías
categories = ["overall_experience", "location", "staff", "food_beverages",
              "facilities"]
Introducción a la IA Generativa en Snowflake

Clasificando texto

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"  
}
Introducción a la IA Generativa en Snowflake

Convirtiendo salidas a diccionario

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

category_dict = json.loads(category)
print(type(category_dict))
<class 'dict'>
Introducción a la IA Generativa en Snowflake

Escalando el flujo de trabajo

  • Pipeline de clasificación para categorizar reseñas de un mes
# Código Python
month = 5
-- Consulta SQL
SELECT *
FROM HOTELS.REVIEWS
WHERE EXTRACT(month FROM date) = '{{month}}'
Introducción a la IA Generativa en Snowflake

Aplicando 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"]
Introducción a la IA Generativa en Snowflake

Aplicando classify_text()

# Aplica clasificación al DataFrame
df["category"] = reviews["DESCRIPTION"].apply(classification)

# Imprime la categoría predicha de la primera fila print(df["category"].head(1))
0    overall_experience  
Name: category, dtype: object
Introducción a la IA Generativa en Snowflake

Análisis de sentimiento

  • Solo interesa el sentimiento de las reseñas

AI_SENTIMENT en una celda SQL

Introducción a la IA Generativa en Snowflake

Análisis de sentimiento

AI_SENTIMENT - extrayendo un sentimiento

$$

  • Sentimientos disponibles: positive, negative, neutral, mixed, y unknown
Introducción a la IA Generativa en Snowflake

¡Vamos a practicar!

Introducción a la IA Generativa en Snowflake

Preparing Video For Download...