assistance-engine/scratches/pseco/evaluation/embeddings/n00 Beir Analysis.ipynb

81 lines
3.3 KiB
Plaintext

{
"cells": [
{
"cell_type": "markdown",
"id": "66cbbaf8",
"metadata": {},
"source": [
"# Libraries"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "230aae25",
"metadata": {},
"outputs": [
{
"ename": "ModuleNotFoundError",
"evalue": "No module named 'beir'",
"output_type": "error",
"traceback": [
"\u001b[31m---------------------------------------------------------------------------\u001b[39m",
"\u001b[31mModuleNotFoundError\u001b[39m Traceback (most recent call last)",
"\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[2]\u001b[39m\u001b[32m, line 1\u001b[39m\n\u001b[32m----> \u001b[39m\u001b[32m1\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mbeir\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mdatasets\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mdata_loader\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m GenericDataLoader\n\u001b[32m 2\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mbeir\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mretrieval\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01msearch\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mdense\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m DenseRetrievalExactSearch\n\u001b[32m 3\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mbeir\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mretrieval\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mevaluation\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m EvaluateRetrieval\n",
"\u001b[31mModuleNotFoundError\u001b[39m: No module named 'beir'"
]
}
],
"source": [
"from beir.datasets.data_loader import GenericDataLoader\n",
"from beir.retrieval.search.dense import DenseRetrievalExactSearch\n",
"from beir.retrieval.evaluation import EvaluateRetrieval\n",
"\n",
"DATA_PATH = \"path/to/beir_dataset\"\n",
"\n",
"corpus, queries, qrels = GenericDataLoader(DATA_PATH).load(split=\"test\")\n",
"\n",
"model = BEIROllamaEmbeddings(\n",
" base_url=\"http://localhost:11434\",\n",
" model=\"nomic-embed-text\",\n",
" batch_size=64,\n",
")\n",
"\n",
"retriever = DenseRetrievalExactSearch(model, batch_size=64)\n",
"evaluator = EvaluateRetrieval(retriever, score_function=\"cos_sim\")\n",
"\n",
"results = evaluator.retrieve(corpus, queries)\n",
"ndcg, _map, recall, precision = evaluator.evaluate(\n",
" qrels, results, [1, 3, 5, 10, 100]\n",
")\n",
"\n",
"print(\"NDCG:\", ndcg)\n",
"print(\"MAP:\", _map)\n",
"print(\"Recall:\", recall)\n",
"print(\"Precision:\", precision)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "assistance-engine",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.11"
}
},
"nbformat": 4,
"nbformat_minor": 5
}