- Outlines est une bibliothèque de génération de texte par réseaux neuronaux, conçue pour remplacer de façon plus flexible la méthode
generate de la bibliothèque transformers.
- Elle aide les développeurs à créer des interfaces robustes en garantissant des sorties qui respectent des expressions régulières ou des schémas JSON.
- Cette bibliothèque fournit des briques de prompting robustes qui séparent la logique de prompting de la logique d’exécution, afin de simplifier l’implémentation de la génération few-shot, de ReAct, du méta-prompting, des agents, etc.
- Outlines a été conçue pour être compatible avec un écosystème plus large, en utilisant aussi peu d’abstractions que possible, et permet d’entrelacer la génération avec du contrôle de flux, des conditions, des fonctions Python personnalisées et des appels à d’autres bibliothèques.
- Elle est compatible avec tous les modèles et fournit une interface avec eux via les logits du prochain token. Elle peut également être utilisée avec des modèles basés sur API.
- La bibliothèque se distingue par des briques de prompting simples et puissantes basées sur le moteur de templates Jinja, une génération guidée, une génération guidée rapide par expressions régulières, une génération JSON rapide conforme à un schéma JSON ou à un modèle Pydantic, ainsi qu’une intégration avec les modèles transformers de HuggingFace.
- Outlines est disponible sur PyPi et peut être installée avec la commande
pip install outlines.
- La bibliothèque permet d’arrêter la génération de manière anticipée après la détection d’une séquence donnée, de restreindre une complétion à un choix entre plusieurs possibilités, ou d’indiquer au modèle de ne renvoyer que des entiers ou des nombres réels.
- Elle inclut également une génération guidée rapide par expressions régulières et une génération JSON efficace conforme à des modèles Pydantic.
- Outlines facilite l’écriture et la gestion des prompts en séparant la logique des prompts de la logique générale du programme, grâce à l’encapsulation des templates dans des « fonctions de template ».
- La bibliothèque permet aussi aux modèles de langage d’appeler des fonctions externes pour obtenir des informations supplémentaires ou accomplir des tâches, en encodant la description de ces fonctions dans le prompt.
- Outlines est open source et distribué sous licence Apache License 2.0.
1 commentaires
Commentaire Hacker News
generate.regex