Spaces:
Running
on
Zero
Running
on
Zero
File size: 1,110 Bytes
cbcd78b 4530b74 52d8051 cbcd78b 4530b74 5a2fadd cbcd78b 9e61b6b cbcd78b 5a2fadd cbcd78b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
import gradio as gr
from transformers import pipeline
import pandas as pd
# Load the dataset
from datasets import load_dataset
ds = load_dataset('ZennyKenny/demo_customer_nps')
df = pd.DataFrame(ds['train'])
# Initialize the model pipeline
from huggingface_hub import login
import os
# Login using the API key stored as an environment variable
hf_api_key = os.getenv("API_KEY")
login(token=hf_api_key)
pipe = pipeline("text-classification", model="distilbert/distilbert-base-uncased-finetuned-sst-2-english")
# Function to classify customer comments
@spaces.GPU
def classify_comments():
results = []
for comment in df['customer_comment']:
prompt = comment
category = pipe(prompt)[0]['label']
results.append(category)
df['comment_category'] = results
return df[['customer_comment', 'comment_category']].to_html(index=False)
# Gradio Interface
with gr.Blocks() as nps:
gr.Markdown("# NPS Comment Categorization")
classify_btn = gr.Button("Classify Comments")
output = gr.HTML()
classify_btn.click(fn=classify_comments, outputs=output)
nps.launch()
|