NoteTakerGPT est un script conçu pour transcrire et résumer des enregistrements audio, spécifiquement adaptés aux réunions. L'idée principale derrière NoteTakerGPT est de transformer la lourde tâche de prise de notes en un processus automatisé en utilisant les capacités remarquables du modèle GPT-4 d'OpenAI.
Ce script est un compagnon idéal pour les professionnels qui assistent fréquemment à des réunions et qui ont besoin d'un outil fiable pour capturer les détails clés. Cela permet de gagner du temps, d'augmenter la productivité et de garantir qu'aucune information importante n'est perdue ou négligée. Le résultat du script est un ensemble complet et bien structuré de notes à puces qui fournissent un résumé clair de la réunion.
NoteTakerGPT combine la puissance de plusieurs bibliothèques Python et de l'API OpenAI pour gérer l'enregistrement audio, la transcription, le regroupement de texte et le résumé. Il effectue toutes ces tâches en temps réel, garantissant que les notes sont prêtes peu de temps après la fin d'une réunion. De plus, NoteTakerGPT gère l'ensemble du processus de manière à préserver la confidentialité et la sécurité de vos données. C'est un outil robuste et polyvalent qui simplifie le processus de prise de notes.
Ces instructions vous guideront sur la façon de rendre le projet opérationnel sur votre ordinateur local à des fins de développement et de test.
Le projet comporte quelques dépendances qui doivent être installées pour qu'il fonctionne correctement. Les dépendances comprennent :
Vous pouvez installer ces dépendances en utilisant pip :
pip install requests openai pandas numpy tiktoken pyaudio wave keyboard
git clone https://github.com/yourusername/NoteTakerGPT.git
cd NoteTakerGPT
pip install -r requirements.txt
python NoteTakerGPT.py
Pour utiliser NoteTakerGPT, suivez ces étapes :
python NoteTakerGPT.py
Le script commencera automatiquement à enregistrer et à transcrire l'audio. Le processus de transcription et de résumé se poursuivra jusqu'à ce qu'un événement KeyboardInterrupt se produise (généralement en appuyant sur Ctrl+C).
À la fin du processus de transcription et de résumé, le script produira un ensemble complet de notes à puces dérivées de l'audio enregistré.
Au cœur de NoteTakerGPT se trouve un processus complexe qui comporte plusieurs étapes. Chaque étape est conçue pour assurer la transformation des données audio brutes en un ensemble de notes structuré et complet. Voici un aperçu plus approfondi de chaque étape :
Enregistrement audio : La première étape consiste à enregistrer l'audio. Cela se fait à l'aide de la bibliothèque PyAudio, qui fournit des liaisons Python pour PortAudio, la bibliothèque d'E/S audio multiplateforme. Le script enregistre l'audio à intervalles de 30 secondes pour garantir la facilité de gestion et l'efficacité des étapes suivantes. À la fin de chaque intervalle, les données audio sont enregistrées sous forme de fichier .wav.
Transcription : Une fois les données audio stockées, le script lance le processus de transcription. Cela se fait en envoyant les données audio au système Whisper ASR (Automatic Speech Recognition) d'OpenAI via l'API OpenAI. Il transcrit les données audio en texte, qui est ensuite renvoyé au script. Le processus de transcription s'exécute dans un processus distinct pour garantir que le processus d'enregistrement n'est pas bloqué et se poursuit sans problème.
Segmentation et analyse : lorsque les données de transcription sont reçues, elles sont décomposées en morceaux gérables pour analyse. Cela prend en compte la limite de jetons dont dispose l'API OpenAI pour chaque requête. Le script divise les transcriptions en morceaux et envoie chacun d'entre eux au modèle GPT-4 d'OpenAI pour résumé. Chaque morceau est accompagné d'une invite demandant au modèle de lire le texte et de générer des notes détaillées résumant le contenu.
Consolidation de notes : Une fois que tous les morceaux ont été analysés et résumés, le script entre dans l'étape finale : la consolidation de notes. Ici, tous les points résumés sont rassemblés et formatés dans un ensemble unique et complet de notes. Ceci est fait par un autre# NoteTakerGPT
Pour utiliser NoteTakerGPT, suivez ces étapes :
python NoteTakerGPT.py
Le script commencera automatiquement à enregistrer et à transcrire l'audio. Le processus de transcription et de résumé se poursuivra jusqu'à ce qu'un événement KeyboardInterrupt se produise (généralement en appuyant sur Ctrl+C).
À la fin du processus de transcription et de résumé, le script produira un ensemble complet de notes à puces dérivées de l'audio enregistré.
Les contributions sont toujours les bienvenues ! Pour contribuer à ce projet, veuillez créer le référentiel et soumettre une pull request.
Ce projet est sous licence selon les termes de la licence MIT. Voir le fichier LICENSE pour le texte intégral. Cela vous permet d'utiliser, de modifier et de distribuer le code dans vos propres projets à condition d'inclure l'avis de droit d'auteur et les clauses de non-responsabilité d'origine.