Écrire des invites LLM dynamiques en langage naturel
Promptu fournit une suite d'utilitaires de génération de langage naturel pour les ingénieurs prompts, tels que la troncature, la pluralisation et le formatage de listes en langage naturel.
pip install promptu
from promptu import join
def find_matching_color ( existing_colors ):
return f'What color goes well with { join ( items = existing_colors , conjunction = "and" ) } ?'
# Prints "What color goes well with blue, purple and white?"
print ( find_matching_color ([ 'blue' , 'purple' , 'white' ]))
runnable = (
{ 'prompt' : RunnableLambda ( find_matching_color )}
| PromptTemplate . from_template ( '{prompt}' )
| model
)
runnable . invoke ([ 'blue' , 'purple' , 'white' ])
join()
Formate une liste d’éléments sous forme de liste en langage naturel.
Syntaxe:
join ( items : Sequence , conjunction : str ) - > str
pluralize()
Sélectionne la forme singulière ou plurielle d'un mot en fonction du nombre d'éléments.
Syntaxe:
pluralize ( singular : str , plural : str , items : Sized ) - > str
truncate()
Tronque une chaîne à une longueur maximale. Si le texte est plus long que la longueur maximale, tous les caractères après la longueur maximale sont remplacés par le suffixe.
Syntaxe:
truncate (
text : str , max_length : int , mode = TruncateMode . CHARACTER , suffix = "..."
) - > str
Les PR sont les bienvenus ! Veuillez ajouter ou mettre à jour les tests unitaires pertinents et formater le projet en black .