diff --git a/lab-agent-vector-store.ipynb b/lab-agent-vector-store.ipynb index c0f762e..50b16dc 100644 --- a/lab-agent-vector-store.ipynb +++ b/lab-agent-vector-store.ipynb @@ -34,7 +34,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "id": "12df91e0-7322-43c2-96cd-0159d017a1e1", "metadata": { "tags": [] @@ -46,18 +46,55 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, + "id": "19192a67", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1.3.13\n" + ] + } + ], + "source": [ + "import langchain\n", + "print(langchain.__version__)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "371e79ec", + "metadata": {}, + "outputs": [], + "source": [ + "from langchain_core.prompts import ChatPromptTemplate\n", + "from langchain_core.runnables import RunnablePassthrough\n", + "from langchain_core.output_parsers import StrOutputParser\n", + "from langchain_openai import ChatOpenAI" + ] + }, + { + "cell_type": "code", + "execution_count": 4, "id": "2868cff1-a3ef-426f-b8d7-7fe89047a5b7", "metadata": { "tags": [] }, "outputs": [], "source": [ - "from langchain.chains import RetrievalQA\n", - "from langchain_community.vectorstores import Chroma\n", - "from langchain_openai import OpenAI, OpenAIEmbeddings\n", - "from langchain_text_splitters import CharacterTextSplitter\n", - "from langchain_community.document_loaders import TextLoader" + "# The following are lod version and instead I used the above cell\n", + "# from langchain.chains import RetrievalQA \n", + "\n", + "# from langchain.chains import create_retrieval_chain\n", + "# from langchain.chains.combine_documents import create_stuff_documents_chain\n", + "\n", + "# from langchain_community.vectorstores import Chroma\n", + "# from langchain_openai import OpenAI, OpenAIEmbeddings\n", + "# from langchain_text_splitters import CharacterTextSplitter\n", + "# from langchain_community.document_loaders import TextLoader" ] }, { @@ -70,10 +107,11 @@ "outputs": [], "source": [ "import os\n", - "from dotenv import load_dotenv, find_dotenv\n", - "_ = load_dotenv(find_dotenv())\n", + "from langchain_community.llms import OpenAI # give your pth for the OpenAI key file at below\n", + "with open(r'D:\\edu_laptop\\Ironhack_AI_&_DataScience\\OpenAI_key.txt', 'r') as file:\n", + " OPENAI_API_KEY = file.read().strip()\n", "\n", - "OPENAI_API_KEY = os.getenv('OPENAI_API_KEY')" + "os.environ['OPENAI_API_KEY'] = OPENAI_API_KEY" ] }, { @@ -89,7 +127,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 38, "id": "14331eec-fd46-42e0-b6e7-adaf21824ef7", "metadata": { "tags": [] @@ -101,7 +139,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 39, "id": "0b7b772b", "metadata": { "tags": [] @@ -120,13 +158,33 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 43, "id": "f2675861", "metadata": { "tags": [] }, - "outputs": [], + "outputs": [ + { + "ename": "RuntimeError", + "evalue": "Error loading d:\\edu_laptop\\Ironhack_AI_&_DataScience\\Months3-5\\week34\\Thursday\\lab-agent-vector-store\\state_of_the_union.txt", + "output_type": "error", + "traceback": [ + "\u001b[31m---------------------------------------------------------------------------\u001b[39m", + "\u001b[31mUnicodeDecodeError\u001b[39m Traceback (most recent call last)", + "\u001b[36mFile \u001b[39m\u001b[32mc:\\Users\\ASUS\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\langchain_community\\document_loaders\\text.py:43\u001b[39m, in \u001b[36mTextLoader.lazy_load\u001b[39m\u001b[34m(self)\u001b[39m\n\u001b[32m 42\u001b[39m \u001b[38;5;28;01mwith\u001b[39;00m \u001b[38;5;28mopen\u001b[39m(\u001b[38;5;28mself\u001b[39m.file_path, encoding=\u001b[38;5;28mself\u001b[39m.encoding) \u001b[38;5;28;01mas\u001b[39;00m f:\n\u001b[32m---> \u001b[39m\u001b[32m43\u001b[39m text = \u001b[43mf\u001b[49m\u001b[43m.\u001b[49m\u001b[43mread\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 44\u001b[39m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mUnicodeDecodeError\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m e:\n", + "\u001b[36mFile \u001b[39m\u001b[32mc:\\Users\\ASUS\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\encodings\\cp1252.py:23\u001b[39m, in \u001b[36mIncrementalDecoder.decode\u001b[39m\u001b[34m(self, input, final)\u001b[39m\n\u001b[32m 22\u001b[39m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34mdecode\u001b[39m(\u001b[38;5;28mself\u001b[39m, \u001b[38;5;28minput\u001b[39m, final=\u001b[38;5;28;01mFalse\u001b[39;00m):\n\u001b[32m---> \u001b[39m\u001b[32m23\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m codecs.charmap_decode(\u001b[38;5;28minput\u001b[39m,\u001b[38;5;28mself\u001b[39m.errors,decoding_table)[\u001b[32m0\u001b[39m]\n", + "\u001b[31mUnicodeDecodeError\u001b[39m: 'charmap' codec can't decode byte 0x9d in position 1225: character maps to ", + "\nThe above exception was the direct cause of the following exception:\n", + "\u001b[31mRuntimeError\u001b[39m Traceback (most recent call last)", + "\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[43]\u001b[39m\u001b[32m, line 3\u001b[39m\n\u001b[32m 1\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mlangchain_community\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mdocument_loaders\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m TextLoader\n\u001b[32m 2\u001b[39m loader = TextLoader(doc_path)\n\u001b[32m----> \u001b[39m\u001b[32m3\u001b[39m documents = \u001b[43mloader\u001b[49m\u001b[43m.\u001b[49m\u001b[43mload\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 4\u001b[39m text_splitter = CharacterTextSplitter(chunk_size=\u001b[32m1000\u001b[39m, chunk_overlap=\u001b[32m0\u001b[39m)\n\u001b[32m 5\u001b[39m texts = text_splitter.split_documents(documents)\n", + "\u001b[36mFile \u001b[39m\u001b[32mc:\\Users\\ASUS\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\langchain_core\\document_loaders\\base.py:43\u001b[39m, in \u001b[36mBaseLoader.load\u001b[39m\u001b[34m(self)\u001b[39m\n\u001b[32m 37\u001b[39m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34mload\u001b[39m(\u001b[38;5;28mself\u001b[39m) -> \u001b[38;5;28mlist\u001b[39m[Document]:\n\u001b[32m 38\u001b[39m \u001b[38;5;250m \u001b[39m\u001b[33;03m\"\"\"Load data into `Document` objects.\u001b[39;00m\n\u001b[32m 39\u001b[39m \n\u001b[32m 40\u001b[39m \u001b[33;03m Returns:\u001b[39;00m\n\u001b[32m 41\u001b[39m \u001b[33;03m The documents.\u001b[39;00m\n\u001b[32m 42\u001b[39m \u001b[33;03m \"\"\"\u001b[39;00m\n\u001b[32m---> \u001b[39m\u001b[32m43\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mlist\u001b[39;49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m.\u001b[49m\u001b[43mlazy_load\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m\n", + "\u001b[36mFile \u001b[39m\u001b[32mc:\\Users\\ASUS\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\langchain_community\\document_loaders\\text.py:56\u001b[39m, in \u001b[36mTextLoader.lazy_load\u001b[39m\u001b[34m(self)\u001b[39m\n\u001b[32m 54\u001b[39m \u001b[38;5;28;01mcontinue\u001b[39;00m\n\u001b[32m 55\u001b[39m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[32m---> \u001b[39m\u001b[32m56\u001b[39m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mRuntimeError\u001b[39;00m(\u001b[33mf\u001b[39m\u001b[33m\"\u001b[39m\u001b[33mError loading \u001b[39m\u001b[38;5;132;01m{\u001b[39;00m\u001b[38;5;28mself\u001b[39m.file_path\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m\"\u001b[39m) \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01me\u001b[39;00m\n\u001b[32m 57\u001b[39m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mException\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m e:\n\u001b[32m 58\u001b[39m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mRuntimeError\u001b[39;00m(\u001b[33mf\u001b[39m\u001b[33m\"\u001b[39m\u001b[33mError loading \u001b[39m\u001b[38;5;132;01m{\u001b[39;00m\u001b[38;5;28mself\u001b[39m.file_path\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m\"\u001b[39m) \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01me\u001b[39;00m\n", + "\u001b[31mRuntimeError\u001b[39m: Error loading d:\\edu_laptop\\Ironhack_AI_&_DataScience\\Months3-5\\week34\\Thursday\\lab-agent-vector-store\\state_of_the_union.txt" + ] + } + ], "source": [ + "from langchain_community.document_loaders import TextLoader\n", "loader = TextLoader(doc_path)\n", "documents = loader.load()\n", "text_splitter = CharacterTextSplitter(chunk_size=1000, chunk_overlap=0)\n", @@ -602,7 +660,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3 (ipykernel)", + "display_name": "Python 3", "language": "python", "name": "python3" }, @@ -616,7 +674,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.8" + "version": "3.11.9" } }, "nbformat": 4,