abertsch72 / abertsch72/unlimiformer

Use of other Encode/Decoder Models

Ouverte
#55 8 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Python
Étoiles
1.1k
Forks
78
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

Hello, I've been using Unlimiformer as a comparison with current standard methods of summarization and was wondering if there was anything in particular that would be needed in order to convert say a Pegasus model into Unlimiformer as it should work with "All Encoder/Decoder" models. I see several lines commented out in `unlimiformer.py` ([here](https://github.com/abertsch72/unlimiformer/blob/651c5b37d96d676e1da32e36b05dc388bcc440e4/src/unlimiformer.py#L795C8-L802C75)) for AutoModelForSeq2Seq, however I currently dont see a direct way this has been implemented yet.

As Pegasus is BART based, I set up a new model conveter `PegasusForConditionalGeneration: UnlimiformerPegasus,` and started a new unlimiformer class for it:

```
class UnlimiformerPegasus(UnlimiformerBART):
def __init__(self, model: PegasusModel, *args, **kwargs):
super().__init__(model, *args, **kwargs)
```

However, I was wondering if you or anyone else had found additional tweeking that was needed to fully convert say a pegasus model.

And I guess more generally, what is the procedure that you use when setting up your own new unlimiformer converted models as I was unable to simply glean what was necessary to assure "consistent" performance and or results.

Thanks!

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.