Mise à jour (novembre 2023) : nouvelle version GPT-3.5-Turbo à privilégier. J'ai ajouté une nouvelle version prenant en charge l'API Chat Completion (testée avec GPT-3.5-Turbo). Les sous-dossiers appropriés ( gpt-3
, gpt-35-turbo
) contiennent désormais l'original et la nouvelle version. Hormis le changement de modèle et les ajustements correspondants, ce sont les mêmes, mais gpt-35-turbo
est à privilégier, car l'achèvement de GPT-3 est obsolète.
Braindump est un prototype d'application permettant de prendre des notes et de les convertir en une base de données pouvant être plus facilement interrogée. Tapez simplement ce que vous avez en tête et l'application le classe, le découpe et le stocke correctement pour une utilisation ultérieure. Il a été conçu sous forme de démonstration pour montrer comment exploiter GPT-3 pour créer des applications commençant par des preuves de concept, comme décrit dans mon didacticiel Data Science @ Microsoft, "Création d'applications GPT-3 - au-delà de l'invite". Vous pouvez l'utiliser à la fois pour suivre le didacticiel et comme point de départ pour vos propres études et applications (par exemple, en réutilisant les fonctions utilitaires et les structures globales du programme dans vos propres problèmes différents).
Il s'agit d'une simple application Python qui exploite Streamlit pour fournir une interface Web. Pour appeler réellement le modèle GPT-3, vous devez disposer d’une clé API OpenAI fonctionnelle. Au moment de la rédaction de cet article, une fois votre compte créé, vous obtenez des crédits gratuits qui devraient suffire pour suivre le tutoriel et démarrer avec l'application. L'application devrait également fonctionner avec Azure OpenAI Service au lieu de l'offre OpenAI d'origine, même si je ne l'ai pas encore testée là-bas.
Outre l’application elle-même, ce référentiel regroupe les études, sous forme de notebooks Jupyter, qui y ont conduit.
L'interface utilisateur de recherche ressemble à ceci :
Pour ajouter des faits, l'interface utilisateur est la suivante, y compris une inspection manuelle facultative de l'interprétation du modèle :
L'application a été testée sur Python 3.8 (GPT-3) et 3.10 (GPT-3.5-Turbo). Les principales bibliothèques dont vous aurez besoin sont : openai
, streamlit
, pandas
, notebook
, pytest
. Vous pouvez les installer manuellement ou suivre la procédure ci-dessous pour créer un nouvel environnement et les installer automatiquement. Notez que pour l’ancienne base de code, vous aurez besoin d’une ancienne version de la bibliothèque openai
.
Pour exécuter l'application :
conda create -n braindump_py310 python=3.10
conda activate braindump_py310
requirements.txt
. Vous pouvez le faire en exécutant pip install -r requirements.txt
à partir de la racine du projet. Pour la version originale de GPT-3 (obsolète), utilisez plutôt le requirements.gpt3.txt
pour obtenir les anciennes dépendances nécessaires à son fonctionnement.OPENAI_API_KEY
.run.gpt3.bat
(version GPT-3) ou run.gpt35turbo.bat
(version GPT-3.5-Turbo) ; sous Linux : run.gpt3.sh
(version GPT-3) ou run.gpt35turbo.sh
(version GPT-3.5-Turbo).Pour exécuter les études :
notebooks/
avec votre client Jupyter préféré (personnellement, j'utilise beaucoup VS Code pour ça). Le projet est structuré comme suit :
notebooks/
: notebooks Jupyter utilisés pour l’ingénierie rapide.src/
: code source de l'application finale.src/gpt-3
: sources de la version originale GPT-3 (obsolète).src/gpt-3.5-turbo
: sources de la version GPT-3.5-Turbo ( recommandée depuis novembre 2023).data/
: données stockées par l'application.tests/
: tests unitaires pour l'application.tests/gpt-3/
: tests pour la version originale GPT-3 (obsolète).tests/gpt-3.5-turbo/
: tests pour la version GPT-3.5-Turbo ( recommandé depuis novembre 2023).docs/
: documentation et actifs associés. L'approche est présentée en détail dans mon didacticiel Data Science @ Microsoft, "Créer des applications GPT-3 - au-delà de l'invite". Néanmoins, permettez-moi de souligner ici quelques points clés :
En termes de phases spécifiques, ce qui suit est conseillé
Licence MIT
Copyright (c) 2023 Paulo Salem da Silva
L'autorisation est accordée par la présente, gratuitement, à toute personne obtenant une copie de ce logiciel et des fichiers de documentation associés (le « Logiciel »), d'utiliser le Logiciel sans restriction, y compris, sans limitation, les droits d'utilisation, de copie, de modification, de fusion. , publier, distribuer, accorder des sous-licences et/ou vendre des copies du Logiciel, et permettre aux personnes à qui le Logiciel est fourni de le faire, sous réserve des conditions suivantes :
L'avis de droit d'auteur ci-dessus et cet avis d'autorisation doivent être inclus dans toutes les copies ou parties substantielles du logiciel.
LE LOGICIEL EST FOURNI « TEL QUEL », SANS GARANTIE D'AUCUNE SORTE, EXPRESSE OU IMPLICITE, Y COMPRIS MAIS SANS LIMITATION LES GARANTIES DE QUALITÉ MARCHANDE, D'ADAPTATION À UN USAGE PARTICULIER ET DE NON-VIOLATION. EN AUCUN CAS LES AUTEURS OU LES TITULAIRES DES DROITS D'AUTEUR NE SERONT RESPONSABLES DE TOUTE RÉCLAMATION, DOMMAGES OU AUTRE RESPONSABILITÉ, QUE CE SOIT DANS UNE ACTION CONTRACTUELLE, DÉLIT OU AUTRE, DÉCOULANT DE, DE OU EN RELATION AVEC LE LOGICIEL OU L'UTILISATION OU D'AUTRES TRANSACTIONS DANS LE LOGICIEL.