MPT-30B est un puissant modèle open source formé avec une longueur de contexte de 8 000 k et surpasse le GPT-3 d'origine. Annonce
Grâce à la version quantifiée du MPT-30B, vous pouvez discuter avec vos documents en privé sur votre propre ordinateur sans connexion Internet.
Spécifications système minimales avec 32 Go de RAM et python 3.10
.
pip install poetry
git clone {insert github repo url}
poetry install
.env.example
dans .env
cp .env.example .env
python download_model.py
ou visitez ici et téléchargez le fichier. Créez ensuite un dossier models
dans le répertoire racine et placez-y le fichier.
Par défaut, ce dépôt contient un dossier source_documents
pour stocker les documents à ingérer. Vous pouvez remplacer les documents qu'il contient par les vôtres.
Les extensions de document prises en charge incluent :
.csv
: CSV,.docx
: Document Word,.doc
: Document Word,.eml
: E-mail,.epub
: EPub,.html
: Fichier HTML,.md
: démarque,.pdf
: Format de document portable (PDF),.pptx
: Document PowerPoint,.txt
: Fichier texte (UTF-8),Ensuite, exécutez ce script pour ingérer
python ingest.py
Le résultat devrait ressembler à ceci :
Creating new vectorstore
Loading documents from source_documents
Loading new documents: 100% | ██████████████████████ | 1/1 [00: 01< 00:00, 1.73s/it]
Loaded 1 new documents from source_documents
Split into 90 chunks of text (max. 500 tokens each)
Creating embeddings. May take some minutes...
Using embedded DuckDB with persistence: data will be stored in: db
Ingestion complete ! You can now run question_answer_docs.py to query your documents
Cela créera un dossier db
contenant le magasin vectoriel local. Cela prendra 20 à 30 secondes par document, selon la taille du document. Vous pouvez ingérer autant de documents que vous le souhaitez, et tous seront accumulés dans la base de données d'intégrations locale. Si vous souhaitez démarrer à partir d'une base de données vide, supprimez le dossier db
.
Remarque : pendant le processus d'ingestion, aucune donnée ne quitte votre environnement local. Vous pouvez ingérer sans connexion Internet, sauf la première fois que vous exécutez le script d'ingestion, lorsque le modèle d'intégration est téléchargé.
Exécutez ces scripts pour poser une question et obtenir une réponse à partir de vos documents :
Tout d'abord, chargez la ligne de commande :
poetry run python question_answer_docs.py `
ou
make qa
Deuxièmement, attendez de voir la ligne de commande demander Enter a question:
input. Tapez votre question et appuyez sur Entrée.
Tapez exit
pour terminer le script.
Remarque : En fonction de la mémoire de votre ordinateur, de la demande d'invite et du nombre de fragments renvoyés par les documents sources, le modèle peut mettre entre 40 et 300 secondes pour répondre à votre invite.
Vous pouvez utiliser ce chatbot sans connexion Internet.
[Facultatif] Exécutez le chatbot simple
Si vous ne souhaitez pas discuter avec vos documents et préférez simplement interagir avec le chatbot MPT-30b, vous pouvez ignorer la phase d'ingestion et simplement exécuter le script du chatbot.
poetry run python chat.py `
ou
make chat
Crédit à abacaj pour le modèle original ici Crédit à imartinez pour la logique d'ingestion privateGPT et les conseils de documentation ici Crédit à TheBloke pour le modèle MPT-30B GGML ici