{ "nbformat": 4, "nbformat_minor": 0, "metadata": { "colab": { "provenance": [] }, "kernelspec": { "name": "python3", "display_name": "Python 3" }, "language_info": { "name": "python" } }, "cells": [ { "cell_type": "code", "execution_count": null, "metadata": { "id": "UR_uNtd16RlC" }, "outputs": [], "source": [ "!pip install -Uqqq pip --progress-bar off\n", "!pip install -qqq langchain==0.0.141 --progress-bar off\n", "!pip install -qqq openai==0.27.4 --progress-bar off\n", "!pip install -Uqqq watermark==2.3.1 --progress-bar off\n", "!pip install -Uqqq chromadb==0.3.21 --progress-bar off\n", "!pip install -Uqqq tiktoken==0.3.3 --progress-bar off\n", "!pip install -Uqqq youtube-transcript-api==0.5.0 --progress-bar off\n", "!pip install -Uqqq pytube==12.1.3 --progress-bar off\n", "!pip install -Uqqq unstructured[local-inference]==0.5.12 --progress-bar off" ] }, { "cell_type": "code", "source": [ "import os\n", "import textwrap\n", "\n", "import chromadb\n", "import langchain\n", "import openai\n", "from langchain.chains import RetrievalQA\n", "from langchain.chat_models import ChatOpenAI\n", "from langchain.document_loaders import TextLoader, UnstructuredPDFLoader, YoutubeLoader\n", "from langchain.embeddings import HuggingFaceEmbeddings, OpenAIEmbeddings\n", "from langchain.indexes import VectorstoreIndexCreator\n", "from langchain.llms import OpenAI\n", "from langchain.text_splitter import RecursiveCharacterTextSplitter\n", "from langchain.vectorstores import Chroma" ], "metadata": { "id": "qWD240smBU6z" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "%load_ext watermark\n", "%watermark --iversions -v -m" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "3FFyV3BNBSnd", "outputId": "24e25ebc-ba5c-445c-ff71-95658117db2e" }, "execution_count": null, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Python implementation: CPython\n", "Python version : 3.9.16\n", "IPython version : 7.34.0\n", "\n", "Compiler : GCC 9.4.0\n", "OS : Linux\n", "Release : 5.10.147+\n", "Machine : x86_64\n", "Processor : x86_64\n", "CPU cores : 2\n", "Architecture: 64bit\n", "\n", "chromadb : 0.3.21\n", "openai : 0.27.4\n", "langchain: 0.0.141\n", "\n" ] } ] }, { "cell_type": "code", "source": [ "def print_response(response: str):\n", " print(\"\\n\".join(textwrap.wrap(response, width=100)))" ], "metadata": { "id": "GUqPyc20MxUh" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "os.environ[\"OPENAI_API_KEY\"] = \"YOUR OPENAI KEY\"" ], "metadata": { "id": "C-6WIHwKJ-ev" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "!gdown 1eetuan04uj9-QKu_Vok2mbSK23G0H7yN\n", "!gdown 1MVIhlCJS5RjVDy_s93Jb4vkHt6jAmgaa" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "IV7etHSwC4jm", "outputId": "d1cbc8dc-138e-4a32-836b-1d964f69fa0e" }, "execution_count": null, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Downloading...\n", "From: https://drive.google.com/uc?id=1MVIhlCJS5RjVDy_s93Jb4vkHt6jAmgaa\n", "To: /content/Andrej_Karpathy_Resume.pdf\n", "\r 0% 0.00/46.9k [00:00