Utilisez la nouvelle API GPT-4 pour créer un chatbot ChatGPT pour plusieurs grands fichiers PDF.
Tech Stack utilisé comprend Langchain, Pinecone, TypeScript, Openai et Next.js. Langchain est un cadre qui facilite la création d'applications et de chatbots AI / LLM évolutifs. PineCone est un VectorStore pour stocker des incorporations et votre PDF dans le texte pour récupérer plus tard des documents similaires.
Vidéo de tutoriel
Rejoignez la discorde si vous avez des questions
Le guide visuel de ce dépôt et de ce tutoriel se trouve dans le dossier visual guide .
Si vous rencontrez des erreurs, veuillez consulter la section de dépannage plus bas en baisse de cette page.
Prélude: Veuillez vous assurer que vous avez déjà téléchargé le nœud sur votre système et la version est 18 ou plus.
git clone [github https url]
Exécutez d'abord npm install yarn -g pour installer du fil globalement (si vous ne l'avez pas déjà fait).
Puis courez:
yarn install
Après l'installation, vous devriez maintenant voir un dossier node_modules .
.env.env.example dans .env Votre fichier .env devrait ressembler à ceci: OPENAI_API_KEY=
PINECONE_API_KEY=
PINECONE_ENVIRONMENT=
PINECONE_INDEX_NAME=
.env . Dans le dossier config , remplacez le PINECONE_NAME_SPACE par un namespace où vous souhaitez stocker vos intégres sur pinecone lorsque vous exécutez npm run ingest . Cet espace de noms sera plus tard utilisé pour les requêtes et la récupération.
Dans utils/makechain.ts la chaîne change le QA_PROMPT pour votre propre uscase. Changer modelName dans new OpenAI à gpt-4 , si vous avez accès à l'API gpt-4 . Veuillez vérifier en dehors de ce dépôt que vous avez accès à l'API gpt-4 , sinon la demande ne fonctionnera pas.
Ce repo peut charger plusieurs fichiers PDF
Dans le dossier docs , ajoutez vos fichiers PDF ou vos dossiers contenant des fichiers PDF.
Exécutez le yarn run ingest pour «ingérer» et incorporez vos documents. Si vous rencontrez des erreurs, dépannez-vous ci-dessous.
Vérifiez le tableau de bord PineCone pour vérifier que votre espace de noms et les vecteurs ont été ajoutés.
Une fois que vous avez vérifié que les incorporations et le contenu ont été ajoutés avec succès à votre pinone, vous pouvez exécuter l'application npm run dev pour lancer l'environnement de développement local, puis saisir une question dans l'interface de chat.
En général, gardez un œil dans la section issues et discussions de ce repo pour les solutions.
Erreurs générales
node -vConsole.log les variables env et assurez-vous qu'elles sont exposées..env qui contient vos clés API valides (et fonctionnaires), l'environnement et le nom d'index.modelName dans OpenAI , assurez-vous d'avoir accès à l'API pour le modèle approprié.env local du projet sera écrasé par la variable env Systems.process.env ENV Variables s'il y a encore des problèmes.Erreurs de Pinone
environment de tableau de bord PineCone et index correspondent à celui des fichiers pinecone.ts et .env .1536 .Frontend de ce dépôt est inspiré par Langchain-chat-nextjs