diff --git a/notebooks/metrics.ipynb b/notebooks/metrics.ipynb new file mode 100644 index 0000000..ce695f9 --- /dev/null +++ b/notebooks/metrics.ipynb @@ -0,0 +1,200 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
MetricValueRetriever
1faithfulness0.800000Ensemble Retriever
2answer_relevancy0.730352Ensemble Retriever
3context_precision0.777833Ensemble Retriever
4context_recall0.950000Ensemble Retriever
6faithfulness0.733333Multiquery Retriever
7answer_relevancy0.735988Multiquery Retriever
8context_precision0.873333Multiquery Retriever
9context_recall1.000000Multiquery Retriever
\n", + "
" + ], + "text/plain": [ + " Metric Value Retriever\n", + "1 faithfulness 0.800000 Ensemble Retriever\n", + "2 answer_relevancy 0.730352 Ensemble Retriever\n", + "3 context_precision 0.777833 Ensemble Retriever\n", + "4 context_recall 0.950000 Ensemble Retriever\n", + "6 faithfulness 0.733333 Multiquery Retriever\n", + "7 answer_relevancy 0.735988 Multiquery Retriever\n", + "8 context_precision 0.873333 Multiquery Retriever\n", + "9 context_recall 1.000000 Multiquery Retriever" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "\n", + "df_ensemble = pd.read_csv('../samples/mean_metric_ensemble.csv', header=None, names=['Metric', 'Value'])\n", + "df_multiquery = pd.read_csv('../samples/mean_metrics.csv', header=None, names=['Metric', 'Value'])\n", + "\n", + "df_ensemble['Retriever'] = 'Ensemble Retriever'\n", + "df_multiquery['Retriever'] = 'Multiquery Retriever'\n", + "\n", + "df_combined = pd.concat([df_ensemble, df_multiquery], ignore_index=True)\n", + "df_cleaned = df_combined.dropna(subset=['Metric'])\n", + "df_cleaned.head(10)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA+kAAAK9CAYAAABYVS0qAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAAB0XElEQVR4nO3dd3QUVePG8WcT0guhhIQSCJ3QqwgYQk8QEFSqUQhNKREBQcVCU4ioFJUqSFBf+IE0CyBSJPRXpIt0DEXpSkcSSO7vD072ZUmABAMZ4Ps5Z8/Jzty5c2cyk82z986MzRhjBAAAAAAAspxTVjcAAAAAAABcR0gHAAAAAMAiCOkAAAAAAFgEIR0AAAAAAIsgpAMAAAAAYBGEdAAAAAAALIKQDgAAAACARRDSAQAAAACwCEI6AAAAAAAWQUgHANxzNptNgwcPzupm/GtfffWVSpUqJRcXF/n5+WV1c3AHBw8elM1m07Rp0+7bOn/55RfVrFlTXl5estls2rp1631bd1aqU6eO6tSpk9XNAICHAiEdAO6DAwcO6KWXXlKRIkXk7u4uX19f1apVSx9//LH++eefrG4e0mH37t2KiopS0aJFNXnyZH322We3LDt48GDZbDb7y8XFRcHBwerVq5fOnj17y+Vee+012Ww2tWnT5rZtiY+PV3R0tEqUKCFPT095enqqdOnS6tmzp7Zv3/6v68+olDBss9n03nvvpVkmMjJSNptN3t7ed7WORYsWWf6LnqtXr6pVq1b6+++/NXr0aH311VcqVKjQPVtfXFycw3Hm7OysPHnyqGXLltq1a9dd1Xn06FENHjz4kflyAQCsyGaMMVndCAB4mC1cuFCtWrWSm5ub2rdvr7JlyyoxMVFr1qzR3LlzFRUVddvA9zC4cuWKsmXLpmzZsmV1U+7axIkT1b17d+3bt0/FihW7bdnBgwdryJAhmjBhgry9vXXp0iUtX75cs2fPVq1atbRmzZpUyxhjVLBgQWXLlk0nTpzQiRMn5OPjk6rcggUL1KZNG2XLlk2RkZGqUKGCnJyctHv3bs2bN0+HDh1SfHx8qnCY3vrvxsGDB1W4cGG5u7urSJEi+u233xzmX7p0SQEBAUpKSpKzs7MuXryY4XVER0dr3Lhxysi/LcYYJSQkyMXFRc7OzhleZ0bt3r1bISEhmjx5srp06XLP1xcXF6e6deuqV69eqlatmq5evart27dr4sSJ8vLy0o4dOxQYGJihOjdu3Khq1aopNjZWUVFR6V4uMTFRkuTq6pqh9QEAUntw/1sCgAdAfHy82rZtq0KFCumnn35S3rx57fN69uyp/fv3a+HChVnYwnsnOTlZiYmJcnd3l7u7e1Y35187efKkJGVomHvLli2VO3duSdJLL72ktm3batasWdqwYYMee+wxh7JxcXH6448/9NNPPyk8PFzz5s1Thw4dHMocOHDAfjwtX77c4XiSpBEjRmj8+PFycko9UC499f9bTz75pObNm6dt27apQoUK9unffvutEhMTFRERoZ9++ilT15mWa9euKTk5Wa6urvf12LubY+ROLl26JC8vr9uWCQ0NVcuWLe3vS5Ysqe7du+vLL7/Ua6+9lmltScvly5fl6elp6XBujNGVK1fk4eGR1U0BgHRhuDsA3EMffPCBLl68qM8//zxVoJKkYsWK6ZVXXrG/v3btmt59910VLVpUbm5uCg4O1ptvvqmEhASH5YKDg9W0aVPFxcWpatWq8vDwULly5RQXFydJmjdvnsqVKyd3d3dVqVJFW7ZscVg+KipK3t7e+v333xUeHi4vLy/ly5dPQ4cOTdVT+dFHH6lmzZrKlSuXPDw8VKVKFc2ZMyfVtthsNkVHR2v69OkqU6aM3NzctHjxYvu8G4cqX7hwQb1791ZwcLDc3NyUJ08eNWzYUJs3b3aoc/bs2apSpYo8PDyUO3duPf/88/rzzz/T3JY///xTLVq0kLe3t/z9/dWvXz8lJSXd4jfjaPz48fY258uXTz179nQYlh4cHKxBgwZJkvz9/e/6GvvQ0FBJ18P2zaZPn67SpUurbt26atCggaZPn56qzAcffKBLly4pNjY2zeMpW7Zs6tWrl4KCgu6qfkn69NNPVaZMGXl6eipHjhyqWrWqZsyYka7tq1GjhgoXLpyq/PTp0xUREaGcOXOmudwPP/yg0NBQeXl5ycfHR02aNHHojY+KitK4ceMkyWF4t/S/ofYfffSRxowZYz93du7cectr0nfv3q3WrVvL399fHh4eKlmypN566y37/PQenzeKiopSWFiYJKlVq1ay2WwO12j/9NNP9m308/NT8+bNUw1JT7lMYufOnXruueeUI0cOPfHEE7dc563c6jj7888/1alTJwUEBMjNzU1lypTR1KlT7fPj4uJUrVo1SVLHjh3t+zll/9WpU0dly5bVpk2bVLt2bXl6eurNN9+0z7v5mvSEhAQNGjRIxYoVk5ubm4KCgvTaa685/D0rW7as6tatm2obkpOTlT9/focvH5KTkzVmzBiVKVNG7u7uCggI0EsvvaQzZ844LJvy9/HHH3+0/32cNGmSJGnp0qV64okn5OfnJ29vb5UsWdK+DQBgFfSkA8A99P3336tIkSKqWbNmusp36dJFX3zxhVq2bKlXX31VP//8s2JiYrRr1y7Nnz/foez+/fv13HPP6aWXXtLzzz+vjz76SM2aNdPEiRP15ptvqkePHpKkmJgYtW7dWnv27HHoYU1KSlJERIQef/xxffDBB1q8eLEGDRqka9euaejQofZyH3/8sZ566ilFRkYqMTFRM2fOVKtWrbRgwQI1adLEoU0//fSTvv76a0VHRyt37twKDg5Oczu7deumOXPmKDo6WqVLl9Zff/2lNWvWaNeuXapcubIkadq0aerYsaOqVaummJgYnThxQh9//LHWrl2rLVu2OPRWJiUlKTw8XNWrV9dHH32kZcuWaeTIkSpatKi6d+9+232eMjS9QYMG6t69u/bs2aMJEybol19+0dq1a+Xi4qIxY8boyy+/1Pz58+1D2MuXL3/H3+fNDh48KEnKkSOHw/SEhATNnTtXr776qiSpXbt26tixo44fP+4wXHnBggUqVqyYqlevnqH1prf+yZMnq1evXmrZsqVeeeUVXblyRdu3b9fPP/+s5557Ll3rateunf7zn//o/fffl81m0+nTp7VkyRJ99dVX9i9tbvTVV1+pQ4cOCg8P14gRI3T58mVNmDBBTzzxhLZs2aLg4GC99NJLOnr0qJYuXaqvvvoqzfXGxsbqypUrevHFF+Xm5qacOXMqOTk5Vbnt27crNDRULi4uevHFFxUcHKwDBw7o+++/17BhwySl7/i82UsvvaT8+fNr+PDh9uHnAQEBkqRly5apcePGKlKkiAYPHqx//vlHn376qWrVqqXNmzenOk9atWql4sWLa/jw4Rka3p8irePsxIkTevzxx+1fpvn7++uHH35Q586ddf78efXu3VshISEaOnSoBg4cqBdffNEe9m/8+/XXX3+pcePGatu2rZ5//nn7Nt4sOTlZTz31lNasWaMXX3xRISEh+vXXXzV69Gjt3btX33zzjSSpTZs2Gjx4cKpjcc2aNTp69Kjatm3rsI9T/i706tVL8fHxGjt2rLZs2WI/V1Ps2bNH7dq100svvaSuXbuqZMmS+u2339S0aVOVL19eQ4cOlZubm/bv36+1a9dmeB8DwD1lAAD3xLlz54wk07x583SV37p1q5FkunTp4jC9X79+RpL56aef7NMKFSpkJJl169bZp/34449GkvHw8DCHDh2yT580aZKRZFasWGGf1qFDByPJvPzyy/ZpycnJpkmTJsbV1dWcOnXKPv3y5csO7UlMTDRly5Y19erVc5guyTg5OZnffvst1bZJMoMGDbK/z549u+nZs+ct90ViYqLJkyePKVu2rPnnn3/s0xcsWGAkmYEDB6balqFDhzrUUalSJVOlSpVbrsMYY06ePGlcXV1No0aNTFJSkn362LFjjSQzdepU+7RBgwYZSQ775lZSyu7Zs8ecOnXKHDx40EydOtV4eHgYf39/c+nSJYfyc+bMMZLMvn37jDHGnD9/3ri7u5vRo0fby6QcTy1atEi1vjNnzphTp07ZXzf/ztJTvzHGNG/e3JQpU+aO23ez+Ph4I8l8+OGHZseOHUaSWb16tTHGmHHjxhlvb29z6dIl06FDB+Pl5WVf7sKFC8bPz8907drVob7jx4+b7NmzO0zv2bOnSevflpR1+/r6mpMnT6Y5LzY21j6tdu3axsfHx+EcMeb68Z/iTsfnraxYscJIMrNnz3aYXrFiRZMnTx7z119/2adt27bNODk5mfbt29unpRw37dq1y9D6pk6dak6dOmWOHj1qFi9ebIoVK2ZsNpvZsGGDvWznzp1N3rx5zenTpx3qaNu2rcmePbv9mPnll19S7bMUYWFhRpKZOHFimvPCwsLs77/66ivj5ORkPw5STJw40Ugya9euNcYYs2fPHiPJfPrppw7levToYby9ve3tWr16tZFkpk+f7lBu8eLFqaan/H1cvHixQ9nRo0en+xwGgKzEcHcAuEfOnz8vSem+OdeiRYskSX379nWYntL7efO166VLl1aNGjXs71N6V+vVq6eCBQummv7777+nWmd0dLT955QetsTERC1btsw+/cbrOM+cOaNz584pNDQ0zaG/YWFhKl269B229Po1uz///LOOHj2a5vyNGzfq5MmT6tGjh8M1xU2aNFGpUqXSvI6/W7duDu9DQ0PT3OYbLVu2TImJierdu7fDKIOuXbvK19f3X98voGTJkvL391dwcLA6deqkYsWK6YcffpCnp6dDuenTp6tq1ar2G9KlDPm+cUh6yvGU1t3R69SpI39/f/srZWh4RuqXrv9e/vjjD/3yyy93vc1lypRR+fLl9X//93+SpBkzZqh58+aptlm6PvT47NmzateunU6fPm1/OTs7q3r16lqxYkW61/vss8/K39//tmVOnTqlVatWqVOnTg7niCT78HnpzsdnRhw7dkxbt25VVFSUw3D/8uXLq2HDhvbz/kY3H8t30qlTJ/n7+ytfvnyKiIjQuXPn9NVXX9mHrhtjNHfuXDVr1kzGGId9HR4ernPnzt12KP+N3Nzc1LFjxzuWmz17tkJCQlSqVCmH9dWrV0+S7L/bEiVKqGLFipo1a5Z92aSkJM2ZM0fNmjWz//2ZPXu2smfProYNGzrUV6VKFXl7e6c6VgoXLqzw8HCHaSmjb7799ts0R1kAgFUQ0gHgHvH19ZV0/frW9Dh06JCcnJxS3Tk8MDBQfn5+OnTokMP0m0NG9uzZJSnV9cgp02++btPJyUlFihRxmFaiRAlJ/xsuK10fYv3444/L3d1dOXPmlL+/vyZMmKBz586l2obChQvfaTMlXb+2eseOHQoKCtJjjz2mwYMHOwTqlG0tWbJkqmVLlSqVal+4u7unCmg5cuRItc03u9V6XF1dVaRIkVTryai5c+dq6dKlmjFjhh5//HGdPHky1c2rzp49q0WLFiksLEz79++3v2rVqqWNGzdq7969kv73ZU9ad0afNGmSli5dqv/85z+p5qW3fkl6/fXX5e3trccee0zFixdXz54972oo8HPPPafZs2dr//79Wrdu3S2Hyu/bt0/S9S+WbvySwd/fX0uWLLHfiC090nPspRxjZcuWvW25Ox2fGXG7YzkkJESnT5/WpUuXHKan9zxKMXDgQC1dulTz589X+/btde7cOYcvnU6dOqWzZ8/qs88+S7WfUwJ3evd1/vz503WTuH379um3335Ltb6UvzE3rq9NmzZau3at/X4TcXFxOnnypMOjAvft26dz584pT548qeq8ePFiqvantQ/btGmjWrVqqUuXLgoICFDbtm319ddfE9gBWA7XpAPAPeLr66t8+fJpx44dGVruxh6927nVI6VuNd3cxbWtq1ev1lNPPaXatWtr/Pjxyps3r1xcXBQbG5vmzcTSe/fk1q1bKzQ0VPPnz9eSJUv04YcfasSIEZo3b54aN26c4Xbej8dr3Y3atWvb7+7erFkzlStXTpGRkdq0aZM9RM2ePVsJCQkaOXKkRo4cmaqO6dOna8iQIcqePbvy5s2b5vGUMlrixi9XUqS3ful6aNyzZ48WLFigxYsXa+7cuRo/frwGDhxoL5Me7dq104ABA9S1a1flypVLjRo1SrNcSjj66quv0nxUWEYe2ZeZd+7O7OMzozK6LeXKlVODBg0kSS1atNDly5fVtWtXPfHEEwoKCrLv5+eff/6Wd/RP7z0W0tu25ORklStXTqNGjUpz/o1fJrZp00YDBgzQ7Nmz1bt3b3399dfKnj27IiIiHOrLkyfPLW94ePOXdGm108PDQ6tWrdKKFSu0cOFCLV68WLNmzVK9evW0ZMkSy/4dAfDoIaQDwD3UtGlTffbZZ1q/fr3D0PS0FCpUSMnJydq3b59CQkLs00+cOKGzZ8+meu71v5WcnKzff//d3rMlyd6rmnIjq7lz58rd3V0//vij3Nzc7OViY2P/9frz5s2rHj16qEePHjp58qQqV66sYcOGqXHjxvZt3bNnj314bIo9e/Zk2r64cT03jipITExUfHy8PfhkBm9vbw0aNEgdO3bU119/bb8h1vTp01W2bFn73eNvNGnSJM2YMcMekJs0aaIpU6ak+Qi3W8lI/ZLk5eWlNm3aqE2bNkpMTNQzzzyjYcOGacCAAel+nFnBggVVq1YtxcXFqXv37rcM20WLFpUk5cmT5477Or1fXt1Oyu84PV+c3e74zIgbj7Gb7d69W7lz577jI9Yy6v3339f8+fM1bNgwTZw4Uf7+/vLx8VFSUtJ92c/S9d/ttm3bVL9+/TvWWbhwYT322GOaNWuWoqOjNW/ePLVo0cLhb07RokW1bNky1apV6199IePk5KT69eurfv36GjVqlIYPH6633npLK1asyNTzHQD+DYa7A8A99Nprr8nLy0tdunTRiRMnUs0/cOCAPv74Y0nXnzEtSWPGjHEok9ITdfOd1DPD2LFj7T8bYzR27Fi5uLiofv36kq73UNtsNodHmR08eNB+Z+a7kZSUlGqofJ48eZQvXz77o5mqVq2qPHnyaOLEiQ6Pa/rhhx+0a9euTNsXDRo0kKurqz755BOHkQaff/65zp07l+n7PDIyUgUKFNCIESMkSUeOHNGqVavUunVrtWzZMtWrY8eO2r9/v37++WdJ148nT09PderUKc3j6ebREhmt/6+//nJY3tXVVaVLl5YxRlevXs3Qtr733nsaNGiQXn755VuWCQ8Pl6+vr4YPH55m/adOnbL/nBJkb3w0Xkb5+/urdu3amjp1qg4fPuwwL2Xfpef4zIi8efOqYsWK+uKLLxzavmPHDi1ZssR+3memokWL6tlnn9W0adN0/PhxOTs769lnn9XcuXPT/IIis/ezdH00wp9//qnJkyenmvfPP/+kGuLfpk0b/fe//9XUqVN1+vRph6HuKfUlJSXp3XffTVXftWvX0tXev//+O9W0ihUrStJd/W4B4F6hJx0A7qGiRYtqxowZatOmjUJCQtS+fXuVLVtWiYmJWrdunWbPnq2oqChJUoUKFdShQwd99tlnOnv2rMLCwrRhwwZ98cUXatGiRZrPEv433N3dtXjxYnXo0EHVq1fXDz/8oIULF+rNN9+0Dx1t0qSJRo0apYiICD333HM6efKkxo0bp2LFimn79u13td4LFy6oQIECatmypSpUqCBvb28tW7ZMv/zyi304touLi0aMGKGOHTsqLCxM7dq1sz+CLTg4WH369MmUfeDv768BAwZoyJAhioiI0FNPPaU9e/Zo/Pjxqlatmp5//vlMWU8KFxcXvfLKK+rfv78WL16sbdu2yRijp556Ks3yTz75pLJly6bp06erevXqKl68uGbMmKF27dqpZMmSioyMVIUKFWSMUXx8vGbMmCEnJycVKFBA0vWbtmWk/kaNGikwMFC1atVSQECAdu3apbFjx6pJkybpvgFiirCwMPtzw2/F19dXEyZM0AsvvKDKlSurbdu28vf31+HDh7Vw4ULVqlXL/kVSlSpVJEm9evVSeHi4nJ2dHR7PlV6ffPKJnnjiCVWuXFkvvviiChcurIMHD2rhwoXaunVruo7PjPrwww/VuHFj1ahRQ507d7Y/gi179uwaPHjwXdV5J/3799fXX3+tMWPG6P3339f777+vFStWqHr16uratatKly6tv//+W5s3b9ayZcvsAbZo0aLy8/PTxIkT5ePjIy8vL1WvXj3D18m/8MIL+vrrr9WtWzetWLFCtWrVUlJSknbv3q2vv/7a/gzzFK1bt1a/fv3Ur18/5cyZM1WvdlhYmF566SXFxMRo69atatSokVxcXLRv3z7Nnj1bH3/8scMz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Ii1dulT169dXz5499dFHH+nixYuqUqWKQzBOcWM4Tav+263zbly8eFEvvfSSevXqlWpewYIFb7mck5OTff+EhITowIED6t69u7766it7vUOGDNEzzzyTatmU68xvJaU3/nZtdnZ21qZNm+zD61N4e3tLklxdXdWyZUvNmDFDbdu21YwZM9SmTRtly5bNXkd6fgd3agsAAAAA6yKkw4G/v786dOigDh06KDQ0VP3799dHH32kypUra9asWcqTJ498fX0zfb3//e9/Vbt2bUnStWvXtGnTplteY165cmXt3Lnzjl9I3Mkbb7yhokWLqk+fPqpcubIqV66sPXv23LZeFxcXJSUlZXhdlSpVUlJSkk6ePKnQ0NBblouMjFTDhg3122+/6aefftJ7771nn3evfwcAAAAAsh7XpD9EEhISdPz4cYfX6dOn0738wIED9e2332r//v367bfftGDBAvvQ8cjISOXOnVvNmzfX6tWrFR8fr7i4OPXq1SvVTeDuxrhx4zR//nzt3r1bPXv21JkzZ9SpU6c0y77++utat26doqOjtXXrVu3bt0/ffvtthm4cJ0lBQUF6+umnNXDgQEnXt//LL7/UkCFD9Ntvv2nXrl2aOXOm3n77bfsywcHBWr58uY4fP64zZ86ke10lSpRQZGSk2rdvr3nz5ik+Pl4bNmxQTEyMFi5caC9Xu3ZtBQYGKjIyUoULF1b16tXt8+717wAAAABA1qMnPZ2ervLvem3vh8WLFytv3rwO00qWLKndu3ena3lXV1cNGDBABw8elIeHh0JDQzVz5kxJkqenp1atWqXXX39dzzzzjC5cuKD8+fOrfv36mdKr+/777+v999/X1q1bVaxYMX333Xf2O8vfrHz58lq5cqXeeusthYaGyhijokWLqk2bNhleb58+fVSjRg1t2LBB4eHhWrBggYYOHaoRI0bIxcVFpUqVUpcuXezlR44cqb59+2ry5MnKnz+/w+PP7iQ2NlbvvfeeXn31Vf3555/KnTu3Hn/8cTVt2tRexmazqV27dvrggw/sXx6kuNe/AwAAAABZz2aMMVndiPvp/Pnzyp49u86dO5cq2Fy5ckXx8fEOz7oGHhUc/wAAANZSpf+XWd2ER86mD9vfk3pvl0NvxnB3AAAAAAAsgpAOAAAAAIBFENIBAAAAALAIQjoAAAAAABZBSAcAAAAAwCII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exUWFnbLde/bt0+XL1+2v69cubJmzZqlPHnyyNfX9w5b6yhbtmzq0KGDYmNj5erqqrZt28rDwyNDdbRs2VIDBw7U+PHj1adPH1WuXFlz585VcHCwsmVL+5RxdXW97b65lYCAAOXLl0+///67/WZ/aWnevLlefPFFLV68WDNmzFD79u3t8ypVqqSkpCSdPHnSPhweAAAAwIOJG8c9hJydnbVr1y7t3LkzVc9qinr16umrr77S6tWr9euvv6pDhw63LCtJefLkkYeHh/2maefOnUtVxtvbW507d1b//v31008/aceOHYqKipKTk+NhVq9ePY0dO1ZbtmzRxo0b1a1bN/vQcul6r3Hu3LnVvHlzrV69WvHx8YqLi1OvXr30xx9/3HH7u3Tpop9++kmLFy9Wp06d7lj+ZjabTb169dL777+vy5cvq2fPnvr777/Vrl07/fLLLzpw4IB+/PFHdezY0R7Mg4OD9fPPP+vgwYM6ffp0hh5vNmTIEMXExOiTTz7R3r179euvvyo2NlajRo2yl/Hy8lKLFi30zjvvaNeuXWrXrp19XokSJRQZGan27dtr3rx5io+P14YNGxQTE6OFCxdmePsBAAAAZB160tNp04ft71zIQu7UAz1gwADFx8eradOmyp49u959993b9qRny5ZNn3zyiYYOHaqBAwcqNDQ0zZvRffjhh/bh4T4+Pnr11VdTBfqRI0eqY8eOCg0NVb58+fTxxx9r06ZN9vmenp5atWqVXn/9dT3zzDO6cOGC8ufPr/r166erZ7148eKqWbOm/v7771RDyNOrQ4cOeuuttzR27Fi99tprWrt2rV5//XU1atRICQkJKlSokCIiIuxfQPTr108dOnRQ6dKl9c8//9x2X96sS5cu8vT01Icffqj+/fvLy8tL5cqVc3g8nnT9y4snn3xStWvXTvXc+9jYWL333nt69dVX9eeffyp37tx6/PHH1bRp07vafgAAAABZw2Zuvjj4IXf+/Hllz55d586dSxX4rly5ovj4eBUuXFju7u5Z1MKHT506dRyek36vGWNUvHhx9ejRQ3379r0v63wYcPwDAIDb4Tnp9997M9dldRMeOfeqc/Z2OfRm9KTjoXLq1CnNnDlTx48fz5TnwwMAAADA/URIx0MlT548yp07tz777DPlyJEjq5sDAAAAABlCSMc9l9a16/fKI3b1BgAA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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import seaborn as sns\n", + "\n", + "plt.figure(figsize=(12, 8))\n", + "\n", + "sns.barplot(data=df_cleaned, x='Metric', y='Value', hue='Retriever', palette='Paired')\n", + "\n", + "plt.title('Comparison of RAGAs Metrics for Retrievers')\n", + "plt.xlabel('Metric')\n", + "plt.ylabel('Value')\n", + "\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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a9eOsLAwRo8ejdVqdZXMdevW0bBhQx588EEOHjzIt99+y4cffujaExocHJxmOd999x2DBw8mKCiIcuXKZZjv9OnTNGzYkMuXL/PEE09QtWpVTp06xQ8//EB8fDweHh6MGTOGcePGMXDgQBo2bEh0dDRbt25l+/bttGrV6rrPffHixXh5edG1a9ebeq3GjBnD2LFjadmyJU899RQHDhxwvS8bNmzA3d3dNW9UVBQdO3akR48edOvWjc8++4wePXowe/ZsnnvuOZ588kkeeeQRJkyYQNeuXTl58iR+fn5p1te9e3fKlSvHuHHj+PPPP/n444+Jiopi1qxZrnk+++wzatSowf3334+bmxtLlizh6aefxul08swzz6RZ3oEDB+jZsyeDBg3i8ccfp0qVKtd9nv/1eq5cuZJ27dpRvnx5xowZQ0JCApMnT+auu+5i+/bt6d7P7t27Exoayrhx49i+fTvTpk2jaNGirs9tRj766CNmzZrFwoULXYfM16pVK9PvxcWLF2nXrh09evTg0UcfpVixYjd4lzOW0bYgp78LZ8+e5c4773T9KBAcHMwvv/zCgAEDiI6O5rnnnqNYsWI0b96c7777Lt0RP/PmzcNms9GtWzfg6pEMzZs359SpUwwaNIgyZcqwceNGRo0a5fph8n+Fh4eTmJjIE088gaenJ4ULF+bLL79kyJAhdO3a1fUD1O7du9m0aROPPPJIpl9nEZFczRARkTwhPDzcAIyVK1ca58+fN06ePGn88MMPRnBwsOHp6WmcPHkyzfxbt241AGPFihWGYRiG0+k0SpcubQwdOjTNfIGBgUadOnXSrS86Oto4f/686y82NvaWlj906FDD39/fSElJyfRzBoxnnnnGuHTpkuHh4WF8/fXXhmEYxtKlSw2LxWIcO3bMGD16tAEY58+fd+WoVKmS0aZNG8PpdLqWFR8fb4SGhhqtWrVyTZswYYIBGBERERmu22q1Gnv37s3wvtGjR7tu9+7d27BarcaWLVvSzXstQ+3atY0OHTpk+jUIDAw0ateufVPznjt3zvDw8DBat25tpKamuqZPmTLFAIzp06e7pjVv3twAjDlz5rim7d+/3/W8//zzT9f0X3/91QCM8PBw17Rrr/v999+fJsPTTz9tAMauXbtc0+Lj49NlbdOmjVG+fPk008qWLWsAxrJly9LNX7ZsWaNPnz6u2zfzetapU8coWrSocfHiRde0Xbt2GVar1ejdu3e659K/f/80j3/ggQeMIkWK3HAd//v4a59Bw7i19+Lzzz//z3X97/oOHDhgnD9/3jh27Jgxffp0w8vLywgODjbi4uIMwzDnuzBgwACjRIkSxoULF9LM16NHD6NQoUKuz8LUqVMNwNizZ0+a+apXr27ce++9rttvvvmm4ePjYxw8eDDNfCNHjjRsNptx4sQJwzAMIyIiwgAMf39/49y5c2nm7dy5s1GjRo102UVE8iMdoi8ikse0bNmS4OBgQkJC6Nq1Kz4+PixevJjSpUunmW/27NkUK1aMe+65B7h6KO3DDz/M3LlzSU1Ndc0XHR2Nr69vuvU89thjBAcHu/5eeumlW1p+QEAAcXFx/3ko+o0EBgbStm1bvv32WwDmzJlDkyZNKFu2bLp5d+7cyaFDh3jkkUe4ePEiFy5c4MKFC8TFxXHfffexdu3aNIf23kjz5s2pXr36DedxOp0sWrSITp06ucZG+F8WiwW4+jrs3buXQ4cO3dS6r4mOjk631/x6Vq5cSXJyMs8991yaAekef/xx/P39Wbp0aZr5fX196dGjh+t2lSpVCAgIoFq1ammuinDtv48ePZpunf/eA//ss88C8PPPP7um/e/4DVeuXOHChQs0b96co0ePcuXKlTSPDw0NpU2bNv/5XP/r9YyMjGTnzp307duXwoULu6bXqlWLVq1apcl3zZNPPpnmdtOmTbl48SLR0dH/meffMvteeHp60q9fv0yto0qVKgQHB1OuXDn69+9PxYoV+eWXX1zn7uf0d8EwDObPn0+nTp0wDMO1vgsXLtCmTRuuXLnC9u3bAXjwwQdxc3Nj3rx5rsf/9ddf7Nu3j4cfftg17fvvv6dp06YEBgamWV7Lli1JTU1l7dq1aTI89NBDaY48gKuflX/++YctW7bc1HMVEcnLVPBFRPKYTz75hBUrVvDDDz/Qvn17Lly4kG4AstTUVObOncs999xDREQEhw8f5vDhwzRq1IizZ8+yatUq17x+fn7ExsamW88bb7zBihUrMizmmVn+008/TeXKlWnXrh2lS5emf//+rvN3M+ORRx5hxYoVnDhxgkWLFl330Nprha9Pnz5pfqAIDg5m2rRpJCUlpSuV1xMaGvqf85w/f57o6OjrjgVwzRtvvMHly5epXLkyNWvWZMSIEezevfs/l+/v709MTMxN5T1+/DhAusPaPTw8KF++vOv+a0qXLu36AeKaQoUKERISkm4aXD2k/98qVaqU5naFChWwWq2uw8UBNmzYQMuWLV3nwQcHB7vOMc+o4N+M/3o9r/daAFSrVs1VdP9XmTJl0ty+dqh7Rs/7v2T2vShVqlSmB4ObP38+K1asYM6cOdx5552cO3cuzY8pZnwXLl++zBdffJFufdd+vLg2IGFQUBD33Xcf3333nevx8+bNw83NLc3pQocOHWLZsmXplteyZcs0y7tRzpdeeglfX18aNmxIpUqVeOaZZ9KMQSAikp/oHHwRkTymYcOGrj3FXbp04e677+aRRx7hwIEDrj3xv/32G5GRkcydO5e5c+emW8bs2bNp3bo1AFWrVmXXrl04HI405wRfO484I5lZftGiRdm5cye//vorv/zyC7/88gvh4eH07t2bmTNn3vTzvv/++/H09KRPnz4kJSWlu2LANdf2SE6YMIE6depkOE9GRyxkJKMrB9yqZs2aceTIEX788UeWL1/OtGnT+PDDD/n8888ZOHDgdR9XtWpVdu7cSXJycpaPBm6z2TI13TCM/1zmv38wOHLkCPfddx9Vq1Zl4sSJhISE4OHhwc8//8yHH36Ybg/yzb7mt/p63sjtPO/bdSuftWbNmrnOl+/UqRM1a9akV69ebNu2DavVmuPfhWvre/TRR+nTp0+G8/zvdqVHjx7069ePnTt3UqdOHb777jvuu+8+13O6tsxWrVrx4osvZri8ypUr/2fOatWqceDAAX766SeWLVvmuuzm66+/nuFAfyIieZkKvohIHmaz2Rg3bhz33HMPU6ZMYeTIkcDVgl20aFE++eSTdI9ZsGABCxcu5PPPP8fLy4uOHTvy559/snDhwuuW5n/LzPLh6l7LTp060alTJ5xOJ08//TRTp07ltddeu+nrhnt5edGlSxe++eYb2rVrl6YE/K8KFSoAV/d8X9vLdz3/LqO3Ijg4GH9/f/7666//nLdw4cL069ePfv36ERsbS7NmzRgzZswNC2mnTp34448/mD9/Pj179rzh8q+dsnDgwAHKly/vmp6cnExERMR/vh634tChQ2n2mh4+fBin0+kahG3JkiUkJSWxePHiNHvIf//999te941ez/99Lf5t//79BAUF4ePjc9sZrien3wtfX19Gjx5Nv379+O677+jRo4cp3wU/Pz9SU1Nv6vl16dKFQYMGuQ7TP3jwIKNGjUozT4UKFYiNjb3t18vHx4eHH36Yhx9+mOTkZB588EHefvttRo0alasv9Sciklk6RF9EJI9r0aIFDRs25KOPPiIxMZGEhAQWLFhAx44d6dq1a7q/wYMHExMTw+LFiwF46qmnKFasGM8//zwHDx5Mt/x/773M7PIvXryY5vFWq9W1Fy8pKSlTz3X48OGMHj2a11577brzhIWFUaFCBd5///0MTz04f/6867+vFbx/X7YsM6xWK126dGHJkiVs3bo13f3XXr9/vw6+vr5UrFjxP1+DJ598khIlSvDCCy9k+P6cO3eOt956C7g6PoOHhwcff/xxmvftq6++4sqVK3To0CHTz++//PtHnsmTJwPQrl074P/2iv9vnitXrhAeHn5b6/2v17NEiRLUqVOHmTNnpnl///rrL5YvX0779u1va/3/xYz3olevXpQuXdo16n9OfxdsNhsPPfQQ8+fPz/AHr/9dH1w9N75NmzZ89913zJ07Fw8PD7p06ZJmnu7du/PHH3/w66+/plve5cuXSUlJ+c9c//6seHh4UL16dQzDwOFw3MQzExHJO7QHX0QkHxgxYgTdunVjxowZBAYGEhMTw/3335/hvHfeeSfBwcHMnj2bhx9+mMKFC7Nw4UI6depE7dq16dGjBw0aNMDd3Z2TJ0/y/fffA/93fvLixYsztfyBAwdy6dIl7r33XkqXLs3x48eZPHkyderUoVq1apl6nrVr16Z27do3nMdqtTJt2jTatWtHjRo16NevH6VKleLUqVP8/vvv+Pv7s2TJEuBqAQJ45ZVX6NGjB+7u7nTq1CnTe3bfeecdli9fTvPmzXniiSeoVq0akZGRfP/996xfv56AgACqV69OixYtCAsLo3DhwmzdupUffviBwYMH33DZgYGBLFy4kPbt21OnTh0effRRV+7t27fz7bff0rhxY+DqHtRRo0YxduxY2rZty/3338+BAwf49NNPadCgAY8++mimntfNiIiI4P7776dt27b88ccffPPNNzzyyCOu96l169auIzgGDRpEbGwsX375JUWLFiUyMvKW13szr+eECRNo164djRs3ZsCAAa7L5BUqVCjdtduzmhnvhbu7O0OHDmXEiBEsW7aMtm3b5vh34d133+X333+nUaNGPP7441SvXp1Lly6xfft2Vq5cyaVLl9LM//DDD/Poo4/y6aef0qZNGwICAtLcP2LECBYvXkzHjh3p27cvYWFhxMXFsWfPHn744QeOHTt23aN5rmndujXFixfnrrvuolixYvz9999MmTKFDh063PQAliIieYZZw/eLiEjmXLtMXkaXYktNTTUqVKhgVKhQwejYsaNht9tdl8rKSN++fQ13d/c0l7KKjIw0RowYYVSvXt3w8vIyPD09jfLlyxu9e/c21q5d65qvU6dOmVr+Dz/8YLRu3dooWrSo4eHhYZQpU8YYNGiQERkZ+Z/Pmf9/mbwbyegSZYZhGDt27DAefPBBo0iRIoanp6dRtmxZo3v37saqVavSzPfmm28apUqVMqxWa5rLhN1o3fzr0mCGYRjHjx83evfu7bpsYfny5Y1nnnnGSEpKMgzDMN566y2jYcOGRkBAgOHl5WVUrVrVePvtt43k5OT/fB0MwzBOnz5tPP/880blypUNu91ueHt7G2FhYcbbb79tXLlyJc28U6ZMMapWrWq4u7sbxYoVM5566ikjKioqzTzNmzfP8NJhZcuWzfDyc/9+Pa697vv27TO6du1q+Pn5GYGBgcbgwYONhISENI9dvHixUatWLcNutxvlypUzxo8fb0yfPj3dZdmut+5r9/3vZfJu9vVcuXKlcddddxleXl6Gv7+/0alTJ2Pfvn1p5rneZ+jady6jS8fdzOMN4/bei1tZ35UrV4xChQoZzZs3d03L6e/C2bNnjWeeecYICQkx3N3djeLFixv33Xef8cUXX6R7fHR0tOHl5WUAxjfffJPhOmJiYoxRo0YZFStWNDw8PIygoCCjSZMmxvvvv+96v69dJm/ChAnpHj916lSjWbNmrudfoUIFY8SIEem+NyIi+YHFMHJg5BgRERHJV8aMGcPYsWM5f/78f+5BFRERkZyhc/BFRERERERE8gEVfBEREREREZF8QAVfREREREREJB/QOfgiIiIiIiIi+YD24IuIiIiIiIjkAyr4IiIiIiIiIvmAm9kBciOn08np06fx8/PDYrGYHUdERERERETyOcMwiImJoWTJklitt7YvXgU/A6dPnyYkJMTsGCIiIiIiIlLAnDx5ktKlS9/SY1XwM+Dn5wdcfWH9/f1NTnN9DoeD5cuX07p1a9zd3c2OIyL5kLYzIpLdtJ0RkeyWV7Yz0dHRhISEuProrVDBz8C1w/L9/f1zfcH39vbG398/V39QRSTv0nZGRLKbtjMikt3y2nbmdk4T1yB7IiIiIiIiIvmACr6IiIiIiIhIPqCCLyIiIiIiIpIP6Bz8W2QYBikpKaSmppqWweFw4ObmRmJioqk5pGCw2Wy4ubnp0pEiIiIiIrmUCv4tSE5OJjIykvj4eFNzGIZB8eLFOXnypEqX5Ahvb29KlCiBh4eH2VFERERERORfVPAzyel0EhERgc1mo2TJknh4eJhWrp1OJ7Gxsfj6+mK16mwLyT6GYZCcnMz58+eJiIigUqVK+syJiIiIiOQyKviZlJycjNPpJCQkBG9vb1OzOJ1OkpOTsdvtKluS7by8vHB3d+f48eOuz52IiIiIiOQeaoW3SIVaCiJ97kVEREREci/9a11EREREREQkH1DBFxEREREREckHVPAlz7BYLCxatMjsGCIiIiIiIrmSCr7csr59+2KxWLBYLLi7uxMaGsqLL75IYmLiTT1+9erVWCwWLl++fFPzR0ZG0q5du9tILCIiIiIikn9pFH25LW3btiU8PByHw8G2bdvo06cPFouF8ePHZ9k6kpOT8fDwoHjx4lm2zNvNIiIiIiIikttoD77cFk9PT4oXL05ISAhdunShZcuWrFixArh6Gb9x48YRGhqKl5cXtWvX5ocffgDg2LFj3HPPPQAEBgZisVjo27cvAC1atGDw4ME899xzBAUF0aZNGyD9IfonT56ke/fuBAQEULhwYTp37syxY8cAWL58OXa7Pd3RAUOHDuXee+913V6/fj1NmzbFy8uLkJAQhgwZQlxcnOv+cuXK8eabb9K7d2/8/f154oknsvLlExERERERyTIq+JJl/vrrLzZu3Ojawz1u3DhmzZrF559/zt69e3n++ed59NFHWbNmDSEhIcyfPx+AAwcOEBkZyaRJk1zLmjlzJh4eHmzYsIHPP/883bocDgdt2rTBz8+PdevWsWHDBnx9fWnbti3Jycncd999BAQEuNYBkJqayrx58+jVqxcAR44coW3btjz00EPs3r2befPmsX79egYPHpxmXe+//z61a9dmx44dvPbaa1n+uomIiIiIiGQFHaIvt+Wnn37C19eXlJQUkpKSsFqtTJkyhaSkJN555x1WrlxJ48aNAShfvjzr169n6tSpNG/enMKFCwNQtGhRAgIC0iy3UqVKvPfee9dd77x5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jI+PzyNvj4+Ph5eXl67cExER0dNhwSciIiKd4cOHY/z48QCAH3/8sdRteXl5AIBt27bB3t6+1G1PcqE8ExOTR95+/+n8RERE9PRY8ImIiEgnJCQEJSUlkMlkugvh3dO0aVMolUqkp6cjKCiozPsbGBgAADQazVM/dosWLbBs2TLcunWL7+ITERE9A15Fn4iIiHQUCgXOnj2LM2fOQKFQlLrNzMwMkyZNwvvvv4/Vq1cjNTUVsbGxWLBgAVavXg0AcHR0hEwmw9atW5GVlaV71/9J9O/fH7a2tujduzeOHDmC8+fPY9OmTTh69Gi5PkciIqLqigWfiIiISjE3N4e5uXmZt82aNQtTp07F3Llz4e7ujpCQEGzbtg3Ozs4AAHt7e8ycORNTpkyBjY2N7nT/J2FgYIBdu3ahbt266NGjBzw8PPDll18+8IcGIiIiKptMCCGkDkFEREREREREz4fv4BMRERERERFVAyz4RERERERERNUACz4RERERERFRNcCCT0RERERERFQNsOATERERERERVQMs+ERERERERETVAAs+ERERERERUTXAgk9ERERERERUDbDgExEREREREVUDLPhERERERERE1QALPhEREREREVE18P9zsT02a0psCAAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure(figsize=(12, 8))\n", + "\n", + "sns.lineplot(data=df_combined, x='Metric', y='Value', hue='Retriever', marker='o', palette='viridis')\n", + "\n", + "plt.title('RAGAs Metrics Comparison for Retrievers')\n", + "plt.xlabel('Metric')\n", + "plt.ylabel('Value')\n", + "\n", + "plt.grid(True)\n", + "plt.show()\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "myenv", + "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.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/samples/mean_metric_ensemble.csv b/samples/mean_metric_ensemble.csv new file mode 100644 index 0000000..057a918 --- /dev/null +++ b/samples/mean_metric_ensemble.csv @@ -0,0 +1,5 @@ +,0 +faithfulness,0.8 +answer_relevancy,0.7303519445666862 +context_precision,0.7778333333140975 +context_recall,0.95 diff --git a/samples/mean_metrics.csv b/samples/mean_metrics.csv new file mode 100644 index 0000000..41cfd94 --- /dev/null +++ b/samples/mean_metrics.csv @@ -0,0 +1,5 @@ +,0 +faithfulness,0.7333333333333333 +answer_relevancy,0.7359878053275298 +context_precision,0.8733333333151666 +context_recall,1.0 diff --git a/samples/ragas.csv b/samples/ragas.csv new file mode 100644 index 0000000..596ed9c --- /dev/null +++ b/samples/ragas.csv @@ -0,0 +1,38 @@ +,question,answer,contexts,ground_truth,context_precision,context_recall,faithfulness,answer_relevancy +0,What should be included in the invoice?,"The invoice should include the following items: + +1. The Contract Number +2. Contractor’s name and address +3. A description of the Services performed +4. The dates such Services were performed +5. A pricing calculation based on the payment terms +6. Properly reimbursable expenses (if any) incurred along with receipts for such expenses for all individual expenses exceeding $25 USD +7. Such other information as Mercy Corps may reasonably request.","['Invoicing and Payment.' + 'have no obligation to pay any portion of invoices received more than 60 days after the end date of the Contract. Each invoice will include (i)\xa0the Contract Number; (ii)\xa0Contractor’s name and address; (iii)\xa0a description of the Services performed, (iv)\xa0the dates such Services were performed, (v)\xa0a pricing calculation based on the payment terms, (vi)\xa0properly reimbursable expenses (if any) incurred along with receipts for such expenses (if applicable) for all individual expenses exceeding $25' + 'for all individual expenses exceeding $25 USD, and (vii) such other information as Mercy Corps may reasonably request. Invoices will only be deemed received on the date they are delivered to the Authorized Representative pursuant to the Payment Terms (see Schedule I). If Mercy Corps determines that Services that are the subject of an invoice have not been performed in accordance with the Statement of Services, Mercy Corps may dispute the invoice by sending Contractor notice of such dispute' + 'Terms, and the time required of Contractor to complete the Services.' + 'Liability/Indemnity\nUnder no circumstances nor for any reason whatsoever will the European Union be held liable for damages as a result of the work pursuant to this Contract. \nRight of Access/ Audit\nThe Vendor will be responsible for holding all invoices, receipts and financial and accounting documents relating to this Contract for at least seven years following final payment made under this Contract.' + 'Except as otherwise provided in the Statement of Services, Mercy Corps will pay each invoice (or adjusted invoice if the subject of dispute) in accordance with the Payment Terms within 30 days after the later of (i)\xa0receipt of the invoice or (ii)\xa0resolution of the items set forth in the notice of disputed charges.\nMercy Corps may off-set any amount it owes Contractor against any amount Contractor owes Mercy Corps.\nTaxes, Duties and Expenses.']","Each invoice will include (i) the Contract Number; (ii) Contractor’s name and address; (iii) a description of the Services performed, (iv) the dates such Services were performed, (v) a pricing calculation based on the payment terms, (vi) properly reimbursable expenses (if any) incurred along with receipts for such expenses (if applicable) for all individual expenses exceeding $25 USD, and (vii) such other information as Mercy Corps may reasonably request.",0.9999999999833333,1.0,1.0,0.9815858311463699 +1,What happens if a contractor breaches the contract?,"If a contractor breaches the contract, Mercy Corps may terminate the contract immediately upon written notice. Mercy Corps may withhold any amounts owed to the contractor until the breach is remedied. Additionally, if the termination is due to the contractor's breach, Mercy Corps will not be obligated to pay the contractor for any partially completed work.","['Terms, and the time required of Contractor to complete the Services.' + 'Contractor possesses all governmental and other certifications and licenses necessary to perform the Services. Performance by Contractor of its obligations under this Contract will not infringe on any patent, copyright, trademark, trade secret or other proprietary right of any third party.\nContractor will comply with all applicable law, regulations and rules in the performance of its obligations under this Contract.' + 'by Mercy Corps immediately upon written notice if Mercy Corps using its sole discretion determines that Contractor has or will breach any of its warranties, covenants or representations in this Contract, in which case Mercy Corps may withhold any and all amounts owed to Contractor until such breach is remedied.' + 'Contractor has not engaged in, and will not engage in, any of the following conduct: (A) trafficking in persons (as defined in the Protocol to Prevent, Suppress, and Punish Trafficking in Persons, especially Women and Children, supplementing the UN Convention against Transnational Organized Crime); (B) procuring a commercial sex act; or (C) using forced labor.' + 'Definitions:' 'Invoicing and Payment.' 'Anti-terrorism' + 'of business on the next business day for the recipient).' + 'and also may require the Contractor to refund a portion or all of any amounts paid to the Contractor under this contract.' + 'In the event of termination due to Contractor’s breach of this Contract or by Contractor for Contractor’s convenience, Mercy Corps will not be obligated to pay Contractor for any partially completed work. In the event termination is due to Mercy Corps’ breach of this Contract, by Mercy Corps for Mercy Corps’ convenience, due to force majeure event, or due to loss of funding, Mercy Corps will be obligated to pay Contractor for its reasonable, pro-rated costs of work completed and expenses']","In the event of termination due to Contractor’s breach of this Contract or by Contractor for Contractor’s convenience, Mercy Corps will not be obligated to pay Contractor for any partially completed work. ",0.344444444432963,1.0,1.0,0.8543245266783456 +2,What is the deadline for submitting the invoicing schedule?,I don't know.,"['Invoicing and Payment.' + 'Contractor will submit invoices to Mercy Corps in accordance with the invoicing schedule and invoicing delivery terms set forth in the Statement of Services (Schedule I). Final invoices must be submitted within 60 days of the end date of the Contract. Contractor recognizes that in many cases Mercy Corps’ donor will not reimburse Mercy Corps for invoices submitted beyond 60 days after the termination of a contract and therefore Mercy Corps will have no obligation to pay any portion of invoices' + 'have no obligation to pay any portion of invoices received more than 60 days after the end date of the Contract. Each invoice will include (i)\xa0the Contract Number; (ii)\xa0Contractor’s name and address; (iii)\xa0a description of the Services performed, (iv)\xa0the dates such Services were performed, (v)\xa0a pricing calculation based on the payment terms, (vi)\xa0properly reimbursable expenses (if any) incurred along with receipts for such expenses (if applicable) for all individual expenses exceeding $25' + 'for all individual expenses exceeding $25 USD, and (vii) such other information as Mercy Corps may reasonably request. Invoices will only be deemed received on the date they are delivered to the Authorized Representative pursuant to the Payment Terms (see Schedule I). If Mercy Corps determines that Services that are the subject of an invoice have not been performed in accordance with the Statement of Services, Mercy Corps may dispute the invoice by sending Contractor notice of such dispute']",Final invoices must be submitted within 60 days of the end date of the Contract. Contractor recognizes that in many cases Mercy Corps’ donor will not reimburse Mercy Corps for invoices submitted beyond 60 days after the termination of a contract and therefore Mercy Corps will have no obligation to pay any portion of invoices received more than 60 days after the end date of the Contract.,0.999999999975,1.0,0.0,0.0 +3,When will Mercy Corps submit payment?,Mercy Corps will pay each invoice (or adjusted invoice if the subject of dispute) within 30 days after the later of (i) receipt of the invoice or (ii) resolution of the items set forth in the notice of disputed charges.,"['Contractor will submit invoices to Mercy Corps in accordance with the invoicing schedule and invoicing delivery terms set forth in the Statement of Services (Schedule I). Final invoices must be submitted within 60 days of the end date of the Contract. Contractor recognizes that in many cases Mercy Corps’ donor will not reimburse Mercy Corps for invoices submitted beyond 60 days after the termination of a contract and therefore Mercy Corps will have no obligation to pay any portion of invoices' + 'Except as otherwise provided in the Statement of Services, Mercy Corps will pay each invoice (or adjusted invoice if the subject of dispute) in accordance with the Payment Terms within 30 days after the later of (i)\xa0receipt of the invoice or (ii)\xa0resolution of the items set forth in the notice of disputed charges.\nMercy Corps may off-set any amount it owes Contractor against any amount Contractor owes Mercy Corps.\nTaxes, Duties and Expenses.' + 'Delivery of Services. \nContractor will perform the Services, and Mercy Corps will pay for the Services, in accordance with the terms and conditions and within the Performance Period set forth in this Contract and the Statement of Services.' + 'for all individual expenses exceeding $25 USD, and (vii) such other information as Mercy Corps may reasonably request. Invoices will only be deemed received on the date they are delivered to the Authorized Representative pursuant to the Payment Terms (see Schedule I). If Mercy Corps determines that Services that are the subject of an invoice have not been performed in accordance with the Statement of Services, Mercy Corps may dispute the invoice by sending Contractor notice of such dispute' + 'by Mercy Corps immediately upon written notice if Mercy Corps using its sole discretion determines that Contractor has or will breach any of its warranties, covenants or representations in this Contract, in which case Mercy Corps may withhold any and all amounts owed to Contractor until such breach is remedied.']","Except as otherwise provided in the Statement of Services, Mercy Corps will pay each invoice (or adjusted invoice if the subject of dispute) in accordance with the Payment Terms within 30 days after the later of (i) receipt of the invoice or (ii) resolution of the items set forth in the notice of disputed charges.",0.99999999998,1.0,1.0,0.9458873108716661 +4,Who is responsible for paying taxes in the agreement?,"The Contractor is responsible for all expenses incurred in performing under the Contract, including all taxes, duties, and other governmental charges. However, if the law requires Mercy Corps to withhold taxes from payments to the Contractor, Mercy Corps may withhold those taxes and pay them to the appropriate taxing authority.","['Except as otherwise provided in the Statement of Services, Contractor is responsible for all expenses incurred by it in performing under this Contract and all taxes, duties and other governmental charges with respect to the provision of Services. If the law requires Mercy Corps to withhold taxes from payments to Contractor, Mercy Corps may withhold those taxes and pay them to the appropriate taxing authority. Mercy Corps will deliver to Contractor an official notice for such taxes. Mercy' + 'Invoicing and Payment.' + 'paid (at each of their own cost, unless otherwise agreed).' + 'Liability/Indemnity\nUnder no circumstances nor for any reason whatsoever will the European Union be held liable for damages as a result of the work pursuant to this Contract. \nRight of Access/ Audit\nThe Vendor will be responsible for holding all invoices, receipts and financial and accounting documents relating to this Contract for at least seven years following final payment made under this Contract.' + 'The Vendor will seek to ensure that none of the funds or assets provided under this Agreement are made available or used to provide support to individuals, groups or entities associated with terrorism.' + 'Except as otherwise provided in the Statement of Services, Mercy Corps will pay each invoice (or adjusted invoice if the subject of dispute) in accordance with the Payment Terms within 30 days after the later of (i)\xa0receipt of the invoice or (ii)\xa0resolution of the items set forth in the notice of disputed charges.\nMercy Corps may off-set any amount it owes Contractor against any amount Contractor owes Mercy Corps.\nTaxes, Duties and Expenses.']","Except as otherwise provided in the Statement of Services, Contractor is responsible for all expenses incurred by it in performing under this Contract and all taxes, duties and other governmental charges with respect to the provision of Services. If the law requires Mercy Corps to withhold taxes from payments to Contractor, Mercy Corps may withhold those taxes and pay them to the appropriate taxing authority. Mercy Corps will deliver to Contractor an official notice for such taxes. Mercy Corps will use reasonable efforts to minimize any taxes withheld to the extent allowed by law.",0.9666666666473333,0.75,1.0,0.8967428990913818 diff --git a/screenshots_plots/Figure_sample_ensemble.png b/screenshots_plots/Figure_sample_ensemble.png new file mode 100644 index 0000000..ab2c6a1 Binary files /dev/null and b/screenshots_plots/Figure_sample_ensemble.png differ diff --git a/screenshots_plots/Figure_samples_multiquery.png b/screenshots_plots/Figure_samples_multiquery.png new file mode 100644 index 0000000..0de3d31 Binary files /dev/null and b/screenshots_plots/Figure_samples_multiquery.png differ diff --git a/scripts/evaluate.py b/scripts/evaluate.py index 5dc91ba..9392c89 100644 --- a/scripts/evaluate.py +++ b/scripts/evaluate.py @@ -11,61 +11,92 @@ import seaborn as sns import matplotlib.pyplot as plt from matplotlib.colors import LinearSegmentedColormap +from langchain.text_splitter import RecursiveCharacterTextSplitter +from langchain.docstore.document import Document +import fitz # PyMuPDF +from docx import Document as DocxDocument +from langchain.retrievers import EnsembleRetriever +from langchain_community.retrievers import BM25Retriever + load_dotenv() llm = ChatOpenAI( - model_name="gpt-3.5-turbo", + model_name="gpt-4o-mini", api_key=os.getenv("OPENAI_API_KEY"), temperature=0, max_tokens=800, model_kwargs={"top_p": 0, "frequency_penalty": 0, "presence_penalty": 0}, ) -# Path to the Chroma DB -chroma_db_path = "/home/daisy/Desktop/tenx/ContractAdvisorRAG/scripts/db1" - -# Load Chroma DB vector store -vectorstore = Chroma( - persist_directory=chroma_db_path, - embedding_function=OpenAIEmbeddings() -) - -# Initialize retriever from the vector store -#retriever = vectorstore.as_retriever() - -#multiquery retriever +#text_splitter = RecursiveCharacterTextSplitter(chunk_size=chunk_size, chunk_overlap=chunk_overlap) +embedding = OpenAIEmbeddings() + +def extract_text_from_docx(file_path): + text = "" + doc = DocxDocument(file_path) + for para in doc.paragraphs: + text += para.text + "\n" + return text +def extract_text_from_pdf(file_path): + text = "" + with fitz.open(file_path) as doc: + for page in doc: + text += page.get_text() + return text + +file_paths = ["/home/daisy/Desktop/tenx/ContractAdvisorRAG/samples/Sample_Contract.docx"] +texts = [] + +for file_path in file_paths: + if file_path.endswith('.pdf'): + texts.append(extract_text_from_pdf(file_path)) + elif file_path.endswith('.docx'): + texts.append(extract_text_from_docx(file_path)) + + +chunk_size = 500 +chunk_overlap = 50 +text_splitter = RecursiveCharacterTextSplitter(chunk_size=chunk_size, chunk_overlap=chunk_overlap) + +chunks = [] +for text in texts: + chunks.extend(text_splitter.split_text(text)) + +documents = [Document(page_content=chunk) for chunk in chunks] + +# bm25_retriever = BM25Retriever.from_documents(documents) +# bm25_retriever.k = 2 + +# chroma_vectorstore = Chroma.from_documents(documents, embedding) +# chroma_retriever = chroma_vectorstore.as_retriever() + +# ensemble_retriever = EnsembleRetriever( +# retrievers=[bm25_retriever, chroma_retriever], weights=[0.5, 0.5] +# ) + +# multiquery +vectorstore = Chroma.from_documents(documents=documents, embedding=embedding) retriever = MultiQueryRetriever.from_llm( - retriever=vectorstore.as_retriever(), llm=llm -) -# Set up the RAG chain -rag_chain = RetrievalQA.from_chain_type(llm, chain_type="stuff", retriever=retriever) - -def rag_qa(query): - response = rag_chain.invoke(query) - return response + retriever=vectorstore.as_retriever(), llm=llm) -#query = "In which street does the Advisor live?" -#answer = rag_qa(query) -#print(answer) +rag_chain = RetrievalQA.from_chain_type(llm, chain_type="stuff", retriever=retriever) #RAGAS from datasets import Dataset questions = [ - "Who are the parties to the Agreement and what are their defined names?", - "What is the termination notice?", - "In which street does the Advisor live?", - "How much is the escrow amount?", - "Does any of the Sellers provide a representation with respect to any Tax matters related to the Company?", - "Whose consent is required for the assignment of the Agreement by the Buyer?", + "What should be included in the invoice?", + "What happens if a contractor breaches the contract?", + "What is the deadline for submitting the invoicing schedule?", + "When will Mercy Corps submit payment?", + "Who is responsible for paying taxes in the agreement?" ] ground_truths = [ - "Cloud Investments Ltd. (“Company”) and Jack Robinson (“Advisor”)", - "According to section 4:14 days for convenience by both parties. The Company may terminate without notice if the Advisor refuses or cannot perform the Services or is in breach of any provision of this Agreement.", - "1 Rabin st, Tel Aviv, Israel", - "The escrow amount is equal to $1,000,000.", - "No. Only the Company provides such a representation. ", - "If the assignment is to an Affiliate or purchaser of all of the Buyer assets, no consent is required. Otherwise, the consent of the Company and the Seller Representative is required." + "Each invoice will include (i) the Contract Number; (ii) Contractor’s name and address; (iii) a description of the Services performed, (iv) the dates such Services were performed, (v) a pricing calculation based on the payment terms, (vi) properly reimbursable expenses (if any) incurred along with receipts for such expenses (if applicable) for all individual expenses exceeding $25 USD, and (vii) such other information as Mercy Corps may reasonably request.", + "In the event of termination due to Contractor’s breach of this Contract or by Contractor for Contractor’s convenience, Mercy Corps will not be obligated to pay Contractor for any partially completed work. ", + "Final invoices must be submitted within 60 days of the end date of the Contract. Contractor recognizes that in many cases Mercy Corps’ donor will not reimburse Mercy Corps for invoices submitted beyond 60 days after the termination of a contract and therefore Mercy Corps will have no obligation to pay any portion of invoices received more than 60 days after the end date of the Contract.", + "Except as otherwise provided in the Statement of Services, Mercy Corps will pay each invoice (or adjusted invoice if the subject of dispute) in accordance with the Payment Terms within 30 days after the later of (i) receipt of the invoice or (ii) resolution of the items set forth in the notice of disputed charges.", + "Except as otherwise provided in the Statement of Services, Contractor is responsible for all expenses incurred by it in performing under this Contract and all taxes, duties and other governmental charges with respect to the provision of Services. If the law requires Mercy Corps to withhold taxes from payments to Contractor, Mercy Corps may withhold those taxes and pay them to the appropriate taxing authority. Mercy Corps will deliver to Contractor an official notice for such taxes. Mercy Corps will use reasonable efforts to minimize any taxes withheld to the extent allowed by law." ] answers = [] @@ -111,8 +142,9 @@ def rag_qa(query): ) df = result.to_pandas() - -#print(df.head()) +print(df.head()) +mean_df=df[['faithfulness','answer_relevancy', 'context_precision', 'context_recall']].mean(axis=0) +mean_df.to_csv('mean_metric_ensemble.csv, encoding="utf-8", index=True') heatmap_data = df[['context_precision', 'context_recall', 'faithfulness', 'answer_relevancy']] cmap = LinearSegmentedColormap.from_list('green_red', ['red', 'green'])