Une interface de chat ChatGPT écrite dans JavaScript native et est implémentée sur la base de l'interface API Turbo GPT-3.5 d'OpenAI, et utilise la solution fournie par le document d'interface officiel pour réaliser la fonction de mémoriser le contexte de dialogue historique, afin qu'il puisse continuer à communiquer et à atteindre un effet de dialogue continu proche du site officiel du site Web Chatgpt.
Selon les informations officielles sur le document du site Web, les frais d'utilisation sont 90% moins chers que le modèle 003 précédent.
Page Web statique: http://sdsds222.gitee.io/chat-gpt-3.5.js


Architecture logicielle Description JavaScript HTML CSS
Pour utiliser cette page, vous devez apporter à l'avance votre propre Apikey d'Openai, sinon toutes les fonctions ne pourront pas être utilisées normalement.
Basé sur JavaScript natif, il peut être déployé directement sur une plate-forme d'hébergement Web statique à exécuter.
Entrez "/ aide" dans la zone d'entrée pour afficher les instructions prises en charge. Ces instructions peuvent être utilisées pour modifier les paramètres des demandes d'envoi pour ajuster le comportement de l'IA:
/ Aide (pour afficher les informations d'aide)
/ Apikey (utilisé pour définir l'Apikey. Ce n'est que en enregistrant et en obtenant l'Apikey sur le site officiel que vous pouvez utiliser ce service normalement)
/ invite (ajoutez un pré-contexte pour chaque texte envoyé)
/ Système (ajoutez une description au niveau du système pour chaque texte envoyé)
/ maxtoken (utilisé pour contrôler le nombre de mots que Chatgpt peut générer à chaque fois)
/ TPR (peut être utilisé pour contrôler la diversité de la génération de chatbot)
/ TOP (peut être utilisé pour contrôler la qualité de la génération de chatbot)
/ FP (peut être utilisé pour contrôler la "nouveauté" de la génération de chatbot)
/ pp (utilisé pour contrôler la longueur des phrases générées par Bot)
/ info (utilisé pour afficher les valeurs des paramètres actuels)
/ cSize (utilisé pour définir le nombre de conversations d'historique de mémoire)
/ mode (utilisé pour définir l'opportunité d'activer le mode de dialogue continu)
Après entrée / info, les valeurs de tous les paramètres seront affichées:

Étant donné que le principe du dialogue continu de ce projet est d'envoyer le contenu de dialogue historique précédent comme contexte à l'interface de GPT-3.5 Turbo, cela peut conduire à un gaspillage de quotas de compte. Vous pouvez saisir "/ mode" dans la console et "false" dans la zone d'entrée pour désactiver le mode de dialogue continu.
Utilisation raisonnable du système et des paramètres Prampt pour définir le pré-contexte de chaque phrase peut garder le ton et la personnalité de l'IA cohérents pendant une longue période, et peut également empêcher que les informations clés soient oubliées par l'IA.
Une partie du code de ce projet est générée par Chatgpt.
Ici, nous enregistrons les deux nouveaux algorithmes de clustering de l'auteur:
1. En tirant certains carrés de certaines tailles à différents angles dans l'espace, le carré se déplace en ligne droite et s'arrête lorsque le carré entre en collision avec le point d'échantillon, et le carré cesse de se déplacer lorsqu'il rencontre le carré. Le carré continuera de s'accumuler jusqu'à ce qu'il ne puisse pas être déposé. Cela comblera les lacunes sans points dans tout l'espace avec des blocs, et les bulles d'espace restantes avec uniquement des points d'échantillonnage sans blocs sont classées en classes, réalisant ainsi le clustering.
2. L'idée d'un algorithme de clustering: en tirant des flipper à différents angles dans l'espace, en traitant chaque point d'échantillon comme un carré. Si le flipper entre en collision avec le carré de point d'échantillon, marquez le carré de l'échantillon comme un carré de bord et éjectant dans d'autres directions. Tout comme le jeu de tir en brique, après une période de temps, ces carrés de bord envelopperont les blocs intérieurs, connecteront ces carrés de bord dans un cercle, et les points d'échantillonnage du cercle sont un type. Cette méthode s'appuie sur la maçonnerie, la farine et la boule de neige dans la nature.