1
|
-
{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"authorship_tag":"ABX9TyNCbmX1gKLG82xv6yy1I5Dt"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"code","execution_count":null,"metadata":{"id":"kEyrD3yeMs7Y","executionInfo":{"status":"ok","timestamp":1738945017077,"user_tz":-180,"elapsed":10,"user":{"displayName":"Rawan Alqassimi","userId":"02524741001548264321"}}},"outputs":[],"source":[]},{"cell_type":"code","source":["from google.colab import drive\n","drive.mount('/content/drive')"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"jn35zY3-M791","executionInfo":{"status":"ok","timestamp":1738945094815,"user_tz":-180,"elapsed":18664,"user":{"displayName":"Rawan Alqassimi","userId":"02524741001548264321"}},"outputId":"7cdd1463-fe66-4127-8512-1892b0bc97cd"},"execution_count":1,"outputs":[{"output_type":"stream","name":"stdout","text":["Mounted at /content/drive\n"]}]},{"cell_type":"code","source":["import faiss\n","import numpy as np\n","from sentence_transformers import SentenceTransformer\n","\n","# Load an Arabic embedding model\n","embedding_model = SentenceTransformer(\"sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2\")\n","\n","# Function to generate embeddings\n","def get_embedding(text):\n"," return embedding_model.encode([text])[0]\n","\n","# Function to create a FAISS knowledge base\n","def create_faiss_index(texts):\n"," embeddings = np.array([get_embedding(text) for text in texts], dtype=\"float32\")\n"," index = faiss.IndexFlatL2(embeddings.shape[1])\n"," index.add(embeddings)\n"," return index, texts\n","\n","# Function to find relevant texts\n","def search_faiss(index, texts, query, top_k=3):\n"," query_embedding = np.array([get_embedding(query)], dtype=\"float32\")\n"," _, indices = index.search(query_embedding, top_k)\n"," return [texts[i] for i in indices[0]]"],"metadata":{"id":"bqsDGDDINQYp","executionInfo":{"status":"error","timestamp":1738945149305,"user_tz":-180,"elapsed":223,"user":{"displayName":"Rawan Alqassimi","userId":"02524741001548264321"}},"outputId":"ca73cbf0-ad23-4215-fe6b-6c79caabd44d","colab":{"base_uri":"https://localhost:8080/","height":397}},"execution_count":2,"outputs":[{"output_type":"error","ename":"ModuleNotFoundError","evalue":"No module named 'faiss'","traceback":["\u001b[0;31m---------------------------------------------------------------------------\u001b[0m","\u001b[0;31mModuleNotFoundError\u001b[0m Traceback (most recent call last)","\u001b[0;32m<ipython-input-2-c8eb4511e69a>\u001b[0m in \u001b[0;36m<cell line: 1>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0;32mimport\u001b[0m \u001b[0mfaiss\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mnumpy\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0msentence_transformers\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mSentenceTransformer\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0;31m# Load an Arabic embedding model\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n","\u001b[0;31mModuleNotFoundError\u001b[0m: No module named 'faiss'","","\u001b[0;31m---------------------------------------------------------------------------\u001b[0;32m\nNOTE: If your import is failing due to a missing package, you can\nmanually install dependencies using either !pip or !apt.\n\nTo view examples of installing some common dependencies, click the\n\"Open Examples\" button below.\n\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n"],"errorDetails":{"actions":[{"action":"open_url","actionText":"Open Examples","url":"/notebooks/snippets/importing_libraries.ipynb"}]}}]}]}
|