Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| from textattack.attack_recipes import TextFoolerJin2019 | |
| from textattack.models.wrappers import HuggingFaceModelWrapper | |
| from transformers import AutoTokenizer, AutoModelForSequenceClassification | |
| import torch | |
| #Load Hugging Face model (e.g., distilbert for demo) | |
| model_name = "textattack/distilbert-base-uncased-SST-2" | |
| tokenizer = AutoTokenizer.from_pretrained(model_name) | |
| model = AutoModelForSequenceClassification.from_pretrained(model_name) | |
| #Wrap model for TextAttack | |
| model_wrapper = HuggingFaceModelWrapper(model, tokenizer) | |
| #Load Attack | |
| attack = TextFoolerJin2019.build(model_wrapper) | |
| #Function to run attack | |
| def run_attack(input_text): | |
| result = attack.attack(input_text, ground_truth_output=1) | |
| return str(result) | |
| #Gradio UI | |
| gr.Interface(fn=run_attack, | |
| inputs=gr.Textbox(lines=4, placeholder="Enter sentence to attack..."), | |
| outputs="text", | |
| title="TextAttack Demo on Hugging Face Model").launch() | |