Spaces:
Running
Running
from textattack import Attack | |
from textattack.constraints.pre_transformation import ( | |
RepeatModification, | |
StopwordModification, | |
) | |
from textattack.goal_functions import UntargetedClassification | |
from textattack.search_methods import GreedyWordSwapWIR | |
from textattack.transformations import ( | |
CompositeTransformation, | |
WordSwapChangeLocation, | |
WordSwapChangeName, | |
WordSwapWordNet, | |
) | |
from .attack_recipe import AttackRecipe | |
class FrenchRecipe(AttackRecipe): | |
def build(model_wrapper): | |
transformation = CompositeTransformation( | |
[ | |
WordSwapWordNet(language="fra"), | |
WordSwapChangeLocation(language="fra"), | |
WordSwapChangeName(language="fra"), | |
] | |
) | |
constraints = [RepeatModification(), StopwordModification("french")] | |
goal_function = UntargetedClassification(model_wrapper) | |
search_method = GreedyWordSwapWIR() | |
return Attack(goal_function, constraints, transformation, search_method) | |