Yavar / test /adversarial_test.py
code5ecure's picture
Update test/adversarial_test.py
fa6e0cc verified
Raw
History Blame Contribute Delete
1.34 kB
test/adversarial_test.py
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from art.attacks.evasion import TextLaserAttack
from art.estimators.language import HuggingFaceLanguageModel
import requests
# ===========================
# تنظیمات اسپیس
# ===========================
SPACE_URL = "https://huggingface.co/spaces/code5ecure/Yavar.space/run/predict"
HEADERS = {"Content-Type": "application/json"}
# ===========================
# نمونه متون برای تست
# ===========================
sample_texts = [
"Hello, how are you?",
"Tell me a nice word about flowers."
]
tokenizer = AutoTokenizer.from_pretrained("gpt2")
model = AutoModelForCausalLM.from_pretrained("gpt2")
art_model = HuggingFaceLanguageModel(model=model, tokenizer=tokenizer)
attack = TextLaserAttack(estimator=art_model)
for text in sample_texts:
# اجرای حمله
adv_text = attack.generate(x=[text])[0]
# ارسال متن adversarial به اسپیس
payload = {"data": [adv_text]}
try:
response = requests.post(SPACE_URL, headers=HEADERS, json=payload)
output = response.json()
except Exception as e:
output = {"error": str(e)}
print("Original: ", text)
print("Adversarial: ", adv_text)
print("Response: ", output)
print("="*50)