Remarque: Après ce projet, j'ai publié une application qui démos tous les outils assistants ici.
Il s'agit d'une démonstration simple d'un assistant OpenAI avec des fonctions, y compris plusieurs rappels pour plusieurs outils. Les outils de fonction ici donnent à l'assistant la possibilité de générer des nombres et des chaînes aléatoires, ce que l'assistant de base ne peut pas faire.
AssistantLog.md .STDOUT ..env pour éviter de le recréer à l'avenir. Une liste d'assistants qui a été créée dans votre compte OpenAI se trouve sur https://platform.openai.com/assistants Exigences: vous aurez besoin d'un OPENAI_API_KEY , qui doit être entré dans un fichier .env local.
Voir https://platform.openai.com/api- keys

AssistantLog.md Débutant thread_ptaf6totvesoe9ht5deood2c
Utilisateur: Generate a random number between 20 and 60
Assistant: Pour générer un nombre aléatoire entre 20 et 60, nous pouvons commencer par le plus petit chiffre (2 pour 20) et le plus grand chiffre (6 pour 60), puis remplir le reste du nombre avec des chiffres aléatoires au besoin. Étant donné que la plage de nombres se situe entre 20 et 60, nous n'avons besoin que du chiffre des dizaines de 2, 3, 4 ou 5 et le chiffre des unités peut être de 0 à 9.
Voici comment nous pouvons construire le nombre aléatoire:
Passons maintenant à générer les deux chiffres. Il semble que les chiffres aléatoires générés soient 0 et 3. Cependant, nous devions choisir un chiffre de dizaines aléatoires entre 2 et 5, nous allons donc ajuster ce processus pour nous assurer que nous suivons la plage spécifiée.
Pour le chiffre des dizaines, corrigeons l'approche:
Pour le chiffre des unités, nous pouvons utiliser le chiffre 3 qui a déjà été généré, car il se situe dans la plage appropriée (0-9).
Générons maintenant le chiffre des dizaines correct selon notre nouvelle approche. Le chiffre de dizaines aléatoires généré est 4, que nous pouvons maintenant cartographier à notre gamme. La cartographie du chiffre 4 de la plage 0-3 à 2-5 nous donne ce qui suit:
Il semble qu'une étape supplémentaire soit nécessaire car le chiffre 4 ne mappe pas à la plage souhaitée. Je vais générer un autre chiffre aléatoire et m'assurer qu'il se situe dans la plage de 0 à 3. Générons à nouveau un chiffre de dizaines correct. Le chiffre aléatoire des dizaines généré cette fois est 2, que nous pouvons mapper à notre gamme de dizaines pour le nombre (20, 30, 40, 50) comme suit:
Le chiffre 2 est à 4 maps à 4 dans les dizaines, ce qui rend notre chiffre de dizaines 40.
En combinant cela avec le chiffre d'unités précédemment généré de 3, nous obtenons le numéro aléatoire 43, qui se situe dans la plage de 20 à 60.
Début thread_9wqhnjaezkejtflwusckt43o
Utilisateur: Create a random password with at least 6 characters
Assistant : Voici un mot de passe aléatoire avec au moins 6 caractères: PKhE75
Utilisateur: How did you generate that?
Assistant : Pour générer le mot de passe aléatoire PKhE75 , j'ai utilisé les étapes suivantes:
Lettres aléatoires : j'ai demandé une chaîne de 4 lettres aléatoires, spécifiant qu'elle devrait être sensible à la casse. Cela signifie qu'il pourrait inclure à la fois des lettres majuscules et minuscules. Le résultat a été PKhE .
Chiffes aléatoires : j'ai demandé deux chiffres aléatoires. Ceux-ci ont été fournis séparément et les résultats étaient de 7 et 5 .
Combinaison : J'ai ensuite combiné la chaîne de lettres aléatoires avec les deux chiffres aléatoires pour créer un mot de passe à 6 caractères.
Le mélange de lettres et de chiffres résultants garantit un niveau de complexité de base pour le mot de passe. Les outils utilisés fonctionnent en générant des valeurs aléatoires qui peuvent être combinées pour former un mot de passe ou toute chaîne ayant besoin d'un élément de hasard.
Utilisateur: Why did you decide to request 4 letters instead of some other number of letters?
Assistant : J'ai décidé de demander 4 lettres (avec un mélange de haut et minuscule) suivie de 2 chiffres pour répondre à l'exigence minimale d'un mot de passe à 6 caractères tout en maintenant la simplicité et en fournissant un équilibre entre les lettres et les chiffres.
Voici la justification de cette décision:
Ce format (4 lettres + 2 chiffres) n'est qu'une des nombreuses configurations possibles pour un mot de passe sécurisé. Selon les exigences de sécurité, les mots de passe peuvent être effectués plus longtemps et peuvent inclure des types de caractères supplémentaires tels que des symboles pour améliorer encore leur force.