Un imitateur vous permet de discuter avec une simulation d'IA de tout auteur, blogueur ou personne aussi facilement que des textes de copie qu'ils ont écrits dans un dossier!
Vous pouvez exécuter la commande PIP suivante pour installer les dépendances (je recommande d'utiliser un environnement Conda ou Venv pour isoler les dépendances):
python3 -m pip install unstructured[local-inference] openai tiktoken bs4 faiss-cpu langchain Le package nltk (une sous-dépendance) nécessitera les modèles suivants:
python3 -m nltk.downloader punkt averaged_perceptron_taggerEnfin, vous devrez installer Detectron2 si vous souhaitez traiter les entrées avec des images. Cela peut être délicat, mais vous pouvez ignorer cette étape en évitant les images de vos fichiers d'entrée.
Vous pouvez désormais cloner ce référentiel où vous voulez et commencer à l'utiliser!
Pour démarrer le programme, mettez votre clé API OpenAI dans l'environnement (vous pouvez également le taper au début du programme) puis démarrer impersonator.py .
Il affichera une liste de personnages disponibles (voir cette page pour les moyens d'ajouter des personnages). Si vous sélectionnez un personnage qui n'a jamais été utilisé, il les générera d'abord à partir des données (qui prendra du temps proportionnel à la quantité de données dans les sous-dossiers texts_by / texts_about de votre personnage, probablement moins de cinq minutes).
Une fois votre personnage chargé, vous pouvez commencer à discuter avec!
Vous avez une poignée de commandes spéciales disponibles. Pour les utiliser, saisissez l'une de ces commandes dans le chat au lieu de votre message:
FREE permet à la personnalité d'extrapoler des informations, de remplir les trous à ses connaissances, à partir de maintenant (par défaut)STRICT évite maintenant l'extrapolationCHECK exécutera un vérificateur de faits sur la dernière affirmation de la personnalité,SOURCE affichera les extraits de texte utilisés pour synthétiser la réponse,REDO régénera la dernière réponse,EXIT met fin au chat. Utilisez l'API Chatgpt pour réduire les coûts et simplifier le code
Demandez à la personnalité de régénérer automatiquement si l'on touche les fichiers dans son dossier (au mieux il doit être mis à jour plutôt que recomputé)
Ajoutez la possibilité que plusieurs personnages interagissent en un seul chat
Ajouter un hub Persona et la possibilité de télécharger à partir du hub
Ajouter une interface utilisateur non-coquille
N'hésitez pas à soumettre des demandes de traction à ce référentiel si vous trouvez des améliorations ou de bonnes invites alternatives!