From fc98df7cd101b4757c2d21fc0456460fbcc5425f Mon Sep 17 00:00:00 2001 From: Martin Simonovsky Date: Mon, 31 Mar 2025 11:51:33 +0000 Subject: [PATCH] Switch composite transform reproducibility --- textattack/transformations/composite_transformation.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/textattack/transformations/composite_transformation.py b/textattack/transformations/composite_transformation.py index 39b3d81cc..ae05e8736 100644 --- a/textattack/transformations/composite_transformation.py +++ b/textattack/transformations/composite_transformation.py @@ -34,10 +34,11 @@ def _get_transformations(self, *_): ) def __call__(self, *args, **kwargs): - new_attacked_texts = set() + new_attacked_texts = [] for transformation in self.transformations: - new_attacked_texts.update(transformation(*args, **kwargs)) - return list(new_attacked_texts) + new_attacked_texts.extend(transformation(*args, **kwargs)) + seen = set() + return [t for t in new_attacked_texts if not (t in seen or seen.add(t))] def __repr__(self): main_str = "CompositeTransformation" + "("