Skip to content

Instantly share code, notes, and snippets.

@napsternxg
Created January 24, 2024 18:04
Show Gist options
  • Save napsternxg/346ce531c2bde3265974275249b74f11 to your computer and use it in GitHub Desktop.
Save napsternxg/346ce531c2bde3265974275249b74f11 to your computer and use it in GitHub Desktop.
Colbertv2_Torch_Scratch
Display the source blob
Display the rendered blob
Raw
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"provenance": []
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3"
},
"language_info": {
"name": "python"
},
"widgets": {
"application/vnd.jupyter.widget-state+json": {
"04606a30c3d946faaeeb54ea14602d5e": {
"model_module": "@jupyter-widgets/controls",
"model_name": "VBoxModel",
"model_module_version": "1.5.0",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "VBoxModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "VBoxView",
"box_style": "",
"children": [
"IPY_MODEL_83908b0e7b6a4ba99854a2e5ce9f0b85",
"IPY_MODEL_5df3fb203b5d4cf9850507ec88b37d25"
],
"layout": "IPY_MODEL_3bca8ebf0eb44d4580618cdb2fcedcb5"
}
},
"83908b0e7b6a4ba99854a2e5ce9f0b85": {
"model_module": "@jupyter-widgets/controls",
"model_name": "HBoxModel",
"model_module_version": "1.5.0",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "HBoxModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "HBoxView",
"box_style": "",
"children": [
"IPY_MODEL_48f392f62e2d4c71935accf6d60d6000",
"IPY_MODEL_2cae93a345ea430190fcb451d5bfe64c"
],
"layout": "IPY_MODEL_eb5cc153af274d88b8c8646fecc042ad"
}
},
"5df3fb203b5d4cf9850507ec88b37d25": {
"model_module": "@jupyter-widgets/output",
"model_name": "OutputModel",
"model_module_version": "1.0.0",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/output",
"_model_module_version": "1.0.0",
"_model_name": "OutputModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/output",
"_view_module_version": "1.0.0",
"_view_name": "OutputView",
"layout": "IPY_MODEL_9e286a0264304824be2449bfe4d75c43",
"msg_id": "",
"outputs": []
}
},
"3bca8ebf0eb44d4580618cdb2fcedcb5": {
"model_module": "@jupyter-widgets/base",
"model_name": "LayoutModel",
"model_module_version": "1.2.0",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"48f392f62e2d4c71935accf6d60d6000": {
"model_module": "@jupyter-widgets/controls",
"model_name": "IntSliderModel",
"model_module_version": "1.5.0",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "IntSliderModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "IntSliderView",
"continuous_update": true,
"description": "Query Id:",
"description_tooltip": null,
"disabled": false,
"layout": "IPY_MODEL_6d864429b1fd4c2a9b5b2129fb3886d3",
"max": 2,
"min": 0,
"orientation": "horizontal",
"readout": true,
"readout_format": "d",
"step": 1,
"style": "IPY_MODEL_8e313403ddf7459aa875a520796aa49b",
"value": 2
}
},
"2cae93a345ea430190fcb451d5bfe64c": {
"model_module": "@jupyter-widgets/controls",
"model_name": "IntSliderModel",
"model_module_version": "1.5.0",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "IntSliderModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "IntSliderView",
"continuous_update": true,
"description": "Doc Id:",
"description_tooltip": null,
"disabled": false,
"layout": "IPY_MODEL_9f8b3a016ed542e48d5ec2eb91c25d7d",
"max": 5,
"min": 0,
"orientation": "horizontal",
"readout": true,
"readout_format": "d",
"step": 1,
"style": "IPY_MODEL_de1f4d155abc4592a9315e8be99154c3",
"value": 3
}
},
"eb5cc153af274d88b8c8646fecc042ad": {
"model_module": "@jupyter-widgets/base",
"model_name": "LayoutModel",
"model_module_version": "1.2.0",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"6d864429b1fd4c2a9b5b2129fb3886d3": {
"model_module": "@jupyter-widgets/base",
"model_name": "LayoutModel",
"model_module_version": "1.2.0",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"8e313403ddf7459aa875a520796aa49b": {
"model_module": "@jupyter-widgets/controls",
"model_name": "SliderStyleModel",
"model_module_version": "1.5.0",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "SliderStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": "",
"handle_color": null
}
},
"9f8b3a016ed542e48d5ec2eb91c25d7d": {
"model_module": "@jupyter-widgets/base",
"model_name": "LayoutModel",
"model_module_version": "1.2.0",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"de1f4d155abc4592a9315e8be99154c3": {
"model_module": "@jupyter-widgets/controls",
"model_name": "SliderStyleModel",
"model_module_version": "1.5.0",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "SliderStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": "",
"handle_color": null
}
},
"9e286a0264304824be2449bfe4d75c43": {
"model_module": "@jupyter-widgets/base",
"model_name": "LayoutModel",
"model_module_version": "1.2.0",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
}
}
}
},
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"id": "Lmh6ReKd1bT4"
},
"outputs": [],
"source": [
"import torch"
]
},
{
"cell_type": "code",
"source": [
"Bq, Lq, D = 3, 8, 8\n",
"# docs are more than query to demonstrate in-batch negatives along with some uniform negatives\n",
"Bd, Ld = 6, 16\n",
"\n",
"seq_lengths_q = torch.randint(3, Lq, size=(Bq, 1))\n",
"seq_lengths_d = torch.randint(3, Ld, size=(Bd, 1))\n",
"mask_q = torch.arange(Lq).view(1, -1) < seq_lengths_q\n",
"mask_d = torch.arange(Ld).view(1, -1) < seq_lengths_d\n",
"\n",
"queries = torch.randn(Bq, Lq, D, names=('Bq', 'Lq', 'D'))\n",
"docs = torch.randn(Bd, Ld, D, names=('Bd', 'Ld', 'D'))\n",
"queries.shape, docs.shape, seq_lengths_q, seq_lengths_d, mask_q, mask_d"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "dQMjECNH1gku",
"outputId": "539a9bc3-8b92-4aea-c196-19035abacb60"
},
"execution_count": 2,
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": [
"<ipython-input-2-5d5cf191cc85>:10: UserWarning: Named tensors and all their associated APIs are an experimental feature and subject to change. Please do not use them for anything important until they are released as stable. (Triggered internally at ../c10/core/TensorImpl.h:1900.)\n",
" queries = torch.randn(Bq, Lq, D, names=('Bq', 'Lq', 'D'))\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
"(torch.Size([3, 8, 8]),\n",
" torch.Size([6, 16, 8]),\n",
" tensor([[7],\n",
" [7],\n",
" [6]]),\n",
" tensor([[15],\n",
" [10],\n",
" [ 9],\n",
" [14],\n",
" [ 8],\n",
" [ 8]]),\n",
" tensor([[ True, True, True, True, True, True, True, False],\n",
" [ True, True, True, True, True, True, True, False],\n",
" [ True, True, True, True, True, True, False, False]]),\n",
" tensor([[ True, True, True, True, True, True, True, True, True, True,\n",
" True, True, True, True, True, False],\n",
" [ True, True, True, True, True, True, True, True, True, True,\n",
" False, False, False, False, False, False],\n",
" [ True, True, True, True, True, True, True, True, True, False,\n",
" False, False, False, False, False, False],\n",
" [ True, True, True, True, True, True, True, True, True, True,\n",
" True, True, True, True, False, False],\n",
" [ True, True, True, True, True, True, True, True, False, False,\n",
" False, False, False, False, False, False],\n",
" [ True, True, True, True, True, True, True, True, False, False,\n",
" False, False, False, False, False, False]]))"
]
},
"metadata": {},
"execution_count": 2
}
]
},
{
"cell_type": "code",
"source": [
"all_pair_q2d_seq_scores = torch.einsum('qid,pjd-> qpij', queries.rename(None), docs.rename(None)).rename('Bq', 'Bd', 'Lq', 'Ld')\n",
"all_pair_q2d_seq_scores.shape"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "tNSfNFiO3Xoa",
"outputId": "665d6768-273f-4cc0-c97c-645bc9ba2022"
},
"execution_count": 3,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"torch.Size([3, 6, 8, 16])"
]
},
"metadata": {},
"execution_count": 3
}
]
},
{
"cell_type": "code",
"source": [
"mask_q.unsqueeze(1).unsqueeze(3).shape"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "7FXTsN0Vo43S",
"outputId": "d5c430ed-79dd-4ca4-d41a-285b504d0352"
},
"execution_count": 4,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"torch.Size([3, 1, 8, 1])"
]
},
"metadata": {},
"execution_count": 4
}
]
},
{
"cell_type": "code",
"source": [
"mask_d.unsqueeze(0).unsqueeze(2).shape"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "AMBSpe7zpmnF",
"outputId": "fdc3d620-894e-45fc-a014-d69e9f420fe6"
},
"execution_count": 5,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"torch.Size([1, 6, 1, 16])"
]
},
"metadata": {},
"execution_count": 5
}
]
},
{
"cell_type": "code",
"source": [
"all_pair_q2d_seq_scores_masked = all_pair_q2d_seq_scores.rename(None).where(\n",
" mask_q.unsqueeze(1).unsqueeze(3), -float(\"inf\")\n",
").where(\n",
" mask_d.unsqueeze(0).unsqueeze(2),\n",
" -float(\"inf\")\n",
").rename('Bq', 'Bd', 'Lq', 'Ld')\n",
"all_pair_q2d_seq_scores_masked[0, 0]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "LeeL9WCAojdT",
"outputId": "1bfb3489-af4c-43e4-9494-419cbbe9817d"
},
"execution_count": 6,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"tensor([[-4.6388, 3.6923, -0.6877, -1.3383, -5.6682, 1.1038, 1.7953, -3.1368,\n",
" -5.0032, 2.8309, 3.2277, 6.2932, 5.7348, 1.8574, -0.0584, -inf],\n",
" [-0.3429, -1.8452, 1.5105, -3.6404, 3.0029, -1.3682, -6.8090, 2.7352,\n",
" 0.9572, 3.3275, 0.2888, -0.4670, -1.1542, -1.6377, 3.8893, -inf],\n",
" [ 1.2261, -4.5122, -1.7725, 6.6289, -3.7465, -7.1837, 0.7517, -4.0848,\n",
" 10.5343, 1.2728, -4.2876, 2.6561, -7.7647, -2.9420, 4.9048, -inf],\n",
" [ 1.4286, -0.7730, 3.0713, 0.6263, 4.4360, 6.6916, -4.8178, 2.5016,\n",
" -3.0394, -0.2348, -0.7773, -1.9248, 2.8146, -2.6832, -2.5901, -inf],\n",
" [-0.3554, -3.3012, -2.0490, -0.1606, -3.0804, -9.9800, -1.8839, -1.3306,\n",
" 10.8226, 4.8251, -1.7982, 4.4324, -7.8706, -0.2221, 7.9724, -inf],\n",
" [-3.5941, -1.7159, -0.0904, -1.0209, -4.9115, -1.4813, 3.6789, -7.8932,\n",
" -5.3836, 0.7506, 1.1414, 4.0424, 5.2168, 3.6954, 2.1764, -inf],\n",
" [-0.4968, 0.9602, 0.2641, -3.1034, 3.8744, 7.0671, -2.6017, 3.0912,\n",
" -1.4013, -1.8851, 2.6505, -1.1343, 0.1869, 0.5191, -4.8574, -inf],\n",
" [ -inf, -inf, -inf, -inf, -inf, -inf, -inf, -inf,\n",
" -inf, -inf, -inf, -inf, -inf, -inf, -inf, -inf]],\n",
" names=('Lq', 'Ld'))"
]
},
"metadata": {},
"execution_count": 6
}
]
},
{
"cell_type": "code",
"source": [
"q2d_max_scores, q2d_max_idx = all_pair_q2d_seq_scores_masked.max(axis=-1)\n",
"q2d_max_scores"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "iCLtsbdA2Rd2",
"outputId": "95825a97-d24a-4aee-fcb2-6da1184de174"
},
"execution_count": 7,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"tensor([[[ 6.2932, 3.8893, 10.5343, 6.6916, 10.8226, 5.2168, 7.0671,\n",
" -inf],\n",
" [ 4.6064, 7.5279, 6.9446, 4.7150, 9.0548, 6.6985, 4.2039,\n",
" -inf],\n",
" [ 2.9985, 1.6460, 7.1178, 4.0458, 4.8017, 4.6528, 5.0524,\n",
" -inf],\n",
" [ 7.1527, 4.0324, 3.2873, 6.8621, 3.6909, 6.7601, 4.1988,\n",
" -inf],\n",
" [ 4.8859, 5.0968, 7.6736, 4.8509, 10.3849, 7.1461, 2.1598,\n",
" -inf],\n",
" [ 4.7754, 2.2348, 2.1624, 4.8211, 2.0331, 4.9582, 3.3807,\n",
" -inf]],\n",
"\n",
" [[ 8.9228, 2.6629, 1.7500, 5.0792, 6.1416, 6.9458, 6.8117,\n",
" -inf],\n",
" [ 6.3145, 4.9799, 4.4714, 3.4928, 2.8654, 7.6267, 5.6953,\n",
" -inf],\n",
" [ 6.3578, 3.5791, 3.3141, 6.6870, 3.0479, 4.7341, 3.3528,\n",
" -inf],\n",
" [ 7.0920, 2.9973, 4.2396, 6.6221, 7.0279, 4.7654, 7.4497,\n",
" -inf],\n",
" [ 3.7646, 5.0707, 4.2015, 6.0160, 0.9445, 3.3719, 5.6791,\n",
" -inf],\n",
" [ 5.0131, 2.8329, 2.5878, 5.7618, 2.5077, 6.5373, 2.0882,\n",
" -inf]],\n",
"\n",
" [[ 4.0455, 7.6979, 7.7047, 5.1881, 4.8790, 3.7699, -inf,\n",
" -inf],\n",
" [ 4.1243, 6.7086, 4.2076, 5.0602, 2.8144, 2.3972, -inf,\n",
" -inf],\n",
" [ 1.1072, 5.3716, 4.6458, 2.8686, 2.3248, 1.8187, -inf,\n",
" -inf],\n",
" [ 2.4395, 7.5305, 7.0689, 2.0641, 4.3234, 3.1292, -inf,\n",
" -inf],\n",
" [ 3.2770, 9.0733, 1.2642, 2.5956, 0.9211, 5.0989, -inf,\n",
" -inf],\n",
" [ 0.9007, 6.8348, 2.3240, 1.1961, 4.2113, 3.3441, -inf,\n",
" -inf]]], names=('Bq', 'Bd', 'Lq'))"
]
},
"metadata": {},
"execution_count": 7
}
]
},
{
"cell_type": "code",
"source": [
"q2d_max_scores"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "f59QRMzNqUnd",
"outputId": "07742068-444d-4d33-bea0-82a11639428a"
},
"execution_count": 8,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"tensor([[[ 6.2932, 3.8893, 10.5343, 6.6916, 10.8226, 5.2168, 7.0671,\n",
" -inf],\n",
" [ 4.6064, 7.5279, 6.9446, 4.7150, 9.0548, 6.6985, 4.2039,\n",
" -inf],\n",
" [ 2.9985, 1.6460, 7.1178, 4.0458, 4.8017, 4.6528, 5.0524,\n",
" -inf],\n",
" [ 7.1527, 4.0324, 3.2873, 6.8621, 3.6909, 6.7601, 4.1988,\n",
" -inf],\n",
" [ 4.8859, 5.0968, 7.6736, 4.8509, 10.3849, 7.1461, 2.1598,\n",
" -inf],\n",
" [ 4.7754, 2.2348, 2.1624, 4.8211, 2.0331, 4.9582, 3.3807,\n",
" -inf]],\n",
"\n",
" [[ 8.9228, 2.6629, 1.7500, 5.0792, 6.1416, 6.9458, 6.8117,\n",
" -inf],\n",
" [ 6.3145, 4.9799, 4.4714, 3.4928, 2.8654, 7.6267, 5.6953,\n",
" -inf],\n",
" [ 6.3578, 3.5791, 3.3141, 6.6870, 3.0479, 4.7341, 3.3528,\n",
" -inf],\n",
" [ 7.0920, 2.9973, 4.2396, 6.6221, 7.0279, 4.7654, 7.4497,\n",
" -inf],\n",
" [ 3.7646, 5.0707, 4.2015, 6.0160, 0.9445, 3.3719, 5.6791,\n",
" -inf],\n",
" [ 5.0131, 2.8329, 2.5878, 5.7618, 2.5077, 6.5373, 2.0882,\n",
" -inf]],\n",
"\n",
" [[ 4.0455, 7.6979, 7.7047, 5.1881, 4.8790, 3.7699, -inf,\n",
" -inf],\n",
" [ 4.1243, 6.7086, 4.2076, 5.0602, 2.8144, 2.3972, -inf,\n",
" -inf],\n",
" [ 1.1072, 5.3716, 4.6458, 2.8686, 2.3248, 1.8187, -inf,\n",
" -inf],\n",
" [ 2.4395, 7.5305, 7.0689, 2.0641, 4.3234, 3.1292, -inf,\n",
" -inf],\n",
" [ 3.2770, 9.0733, 1.2642, 2.5956, 0.9211, 5.0989, -inf,\n",
" -inf],\n",
" [ 0.9007, 6.8348, 2.3240, 1.1961, 4.2113, 3.3441, -inf,\n",
" -inf]]], names=('Bq', 'Bd', 'Lq'))"
]
},
"metadata": {},
"execution_count": 8
}
]
},
{
"cell_type": "code",
"source": [
"q2d_max_scores_masked = (q2d_max_scores.rename(None).where(mask_q.unsqueeze(1), 0)).rename(*q2d_max_scores.names)\n",
"q2d_max_scores_masked"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "fYqCxwQhq0cj",
"outputId": "ea32ea73-255b-4503-a9bb-a264c95177d8"
},
"execution_count": 9,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"tensor([[[ 6.2932, 3.8893, 10.5343, 6.6916, 10.8226, 5.2168, 7.0671,\n",
" 0.0000],\n",
" [ 4.6064, 7.5279, 6.9446, 4.7150, 9.0548, 6.6985, 4.2039,\n",
" 0.0000],\n",
" [ 2.9985, 1.6460, 7.1178, 4.0458, 4.8017, 4.6528, 5.0524,\n",
" 0.0000],\n",
" [ 7.1527, 4.0324, 3.2873, 6.8621, 3.6909, 6.7601, 4.1988,\n",
" 0.0000],\n",
" [ 4.8859, 5.0968, 7.6736, 4.8509, 10.3849, 7.1461, 2.1598,\n",
" 0.0000],\n",
" [ 4.7754, 2.2348, 2.1624, 4.8211, 2.0331, 4.9582, 3.3807,\n",
" 0.0000]],\n",
"\n",
" [[ 8.9228, 2.6629, 1.7500, 5.0792, 6.1416, 6.9458, 6.8117,\n",
" 0.0000],\n",
" [ 6.3145, 4.9799, 4.4714, 3.4928, 2.8654, 7.6267, 5.6953,\n",
" 0.0000],\n",
" [ 6.3578, 3.5791, 3.3141, 6.6870, 3.0479, 4.7341, 3.3528,\n",
" 0.0000],\n",
" [ 7.0920, 2.9973, 4.2396, 6.6221, 7.0279, 4.7654, 7.4497,\n",
" 0.0000],\n",
" [ 3.7646, 5.0707, 4.2015, 6.0160, 0.9445, 3.3719, 5.6791,\n",
" 0.0000],\n",
" [ 5.0131, 2.8329, 2.5878, 5.7618, 2.5077, 6.5373, 2.0882,\n",
" 0.0000]],\n",
"\n",
" [[ 4.0455, 7.6979, 7.7047, 5.1881, 4.8790, 3.7699, 0.0000,\n",
" 0.0000],\n",
" [ 4.1243, 6.7086, 4.2076, 5.0602, 2.8144, 2.3972, 0.0000,\n",
" 0.0000],\n",
" [ 1.1072, 5.3716, 4.6458, 2.8686, 2.3248, 1.8187, 0.0000,\n",
" 0.0000],\n",
" [ 2.4395, 7.5305, 7.0689, 2.0641, 4.3234, 3.1292, 0.0000,\n",
" 0.0000],\n",
" [ 3.2770, 9.0733, 1.2642, 2.5956, 0.9211, 5.0989, 0.0000,\n",
" 0.0000],\n",
" [ 0.9007, 6.8348, 2.3240, 1.1961, 4.2113, 3.3441, 0.0000,\n",
" 0.0000]]], names=('Bq', 'Bd', 'Lq'))"
]
},
"metadata": {},
"execution_count": 9
}
]
},
{
"cell_type": "code",
"source": [
"q2d_max_scores_masked_sum = q2d_max_scores_masked.sum(axis=-1)\n",
"q2d_max_scores_masked_sum"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "Qpr6G1Nx3Het",
"outputId": "6652b7bf-3a11-4439-f0ea-d684a5f08113"
},
"execution_count": 10,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"tensor([[50.5149, 43.7510, 30.3149, 35.9842, 42.1980, 24.3658],\n",
" [38.3139, 35.4460, 31.0728, 40.1940, 29.0483, 27.3288],\n",
" [33.2852, 25.3121, 18.1367, 26.5555, 22.2301, 18.8111]],\n",
" names=('Bq', 'Bd'))"
]
},
"metadata": {},
"execution_count": 10
}
]
},
{
"cell_type": "code",
"source": [
"import seaborn as sns"
],
"metadata": {
"id": "DBFRSFqtt_em"
},
"execution_count": 11,
"outputs": []
},
{
"cell_type": "code",
"source": [
"def plot_colbert_scores(q, d):\n",
" return sns.heatmap(all_pair_q2d_seq_scores_masked[q, d], cmap=\"viridis\")"
],
"metadata": {
"id": "U24Jh2FKuEQh"
},
"execution_count": 12,
"outputs": []
},
{
"cell_type": "code",
"source": [
"plot_colbert_scores(0, 0)"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 452
},
"id": "31TlLUHnuQVf",
"outputId": "93cc6081-b3b6-4ca5-8cc6-ac1e9f3b5b76"
},
"execution_count": 13,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"<Axes: >"
]
},
"metadata": {},
"execution_count": 13
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 640x480 with 2 Axes>"
],
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAiAAAAGiCAYAAADeGX1SAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABCwklEQVR4nO3de1xVVf7/8fcB5WAqECocsLxlCeUtIRGrsYSE6lE5UqnR5IXRaUYspXGSbug0hU55TYuf46Wrac6jnMkajTBrGkkNsxlN7fJ1stSDGgmpcUTO/v3RozOdDSpH9z4ivZ6Px3pMrL32Z619Dmf8sNba+zgMwzAEAAAQRCFnewAAAODnhwQEAAAEHQkIAAAIOhIQAAAQdCQgAAAg6EhAAABA0JGAAACAoCMBAQAAQUcCAgAAgo4EBAAABB0JCAAAjcj8+fPVqVMnhYeHKyUlRRs3bjxh223btikrK0udOnWSw+HQ7NmzTytmdXW1xo0bpzZt2qhVq1bKyspSeXm5lZdVBwkIAACNxPLly5WXl6eCggJt3rxZvXr1UkZGhvbv319v+6NHj6pLly6aNm2aXC7XacecOHGiXn/9da1YsULvvvuu9u7dqyFDhthyjT9y8GV0AAA0DikpKbriiis0b948SZLX69WFF16o8ePHa/LkySc9t1OnTpowYYImTJgQUMzKykq1a9dOS5cu1a233ipJ2rFjhxITE1VaWqp+/fpZf6FiBgQAAFt5PB5VVVX5FY/HU6fdsWPHVFZWpvT0dF9dSEiI0tPTVVpaelp9NyRmWVmZampq/NokJCSoQ4cOp91vQzSzLXKArgu5zfY+1uz92Nb4GfG9bI3flNj9XgRDU3m/m8J7gYZLG5Fjex/vrLnf9j7s5nVfYlmswqI7NHXqVL+6goICTZkyxa/u4MGDqq2tVWxsrF99bGysduzYcVp9NySm2+1WWFiYoqKi6rRxu92n1W9DNJoEBACAxsIrr2Wx8vPzlZeX51fndDoti3+uIgEBAMBGTqezQQlH27ZtFRoaWufuk/Ly8hNuMLUipsvl0rFjx3To0CG/WZAz6bch2AMCAIBJreG1rDRUWFiYkpKSVFJS4qvzer0qKSlRamrqaV1HQ2ImJSWpefPmfm127typ3bt3n3a/DcEMCAAAJl6dnRtE8/LyNGLECCUnJ6tv376aPXu2jhw5olGjRkmS7rrrLrVv316FhYWSfthk+sknn/j+e8+ePdqyZYtatWqlrl27NihmZGSkcnJylJeXp+joaEVERGj8+PFKTU217Q4YiQQEAIA6rNwDEoihQ4fqwIEDeuSRR+R2u9W7d2+tXr3at4l09+7dCgn53+LF3r17dfnll/t+fvLJJ/Xkk09qwIABWrduXYNiStKsWbMUEhKirKwseTweZWRk6Omnn7b1WhvNc0C4C+bnpSncedFU3u+m8F6g4bgLpmGO7OtoWayWcV9aFqspYQYEAACT2sbxt3mTRgICAIDJ2doD8nPCXTAAACDomAEBAMCklhkQ25GAAABgwhKM/ViCAQAAQccMCAAAJtwFYz8SEAAATM7OY8h+XliCAQAAQccMCAAAJtwFYz8SEAAATGrJP2xHAgIAgAl7QOzHHhAAABB0zIAAAGBSK8fZHkKTF3ACcvDgQS1evFilpaVyu92SJJfLpf79+2vkyJFq166d5YMEACCYvOwBsV1ASzCbNm3SJZdcorlz5yoyMlK/+MUv9Itf/EKRkZGaO3euEhIS9OGHH54yjsfjUVVVlV/xGrWnfREAAODcEtAMyPjx43XbbbepqKhIDof/9JRhGLr77rs1fvx4lZaWnjROYWGhpk6d6lfXWYm6SJcFMhwAAGzBEoz9ApoB+fjjjzVx4sQ6yYckORwOTZw4UVu2bDllnPz8fFVWVvqVzkoIZCgAANimVg7LCuoX0AyIy+XSxo0blZBQf7KwceNGxcbGnjKO0+mU0+n0qwtxhAYyFAAAcA4LKAH5/e9/r7Fjx6qsrExpaWm+ZKO8vFwlJSX6y1/+oieffNKWgQIAECxeg5kLuwWUgIwbN05t27bVrFmz9PTTT6u29oeNo6GhoUpKStKzzz6r22+/3ZaBAgAQLCyd2C/g23CHDh2qoUOHqqamRgcPHpQktW3bVs2bN7d8cAAAoGk67QeRNW/eXHFxcVaOBQCARqGWB4XbjiehAgBgwh4Q+5GAAABgwh4Q+zHHBAAAgo4ZEAAATGoN/j63GwkIAAAmXhYIbMcrDAAAgo4ZEAAATNiEaj8SEAAATNgDYj9eYQAAEHTMgAAAYOJlCcZ2JCAAAJjwKHb78QoDAICgIwEBAMCk1gixrARq/vz56tSpk8LDw5WSkqKNGzeetP2KFSuUkJCg8PBw9ejRQ2+++abfcYfDUW954oknfG06depU5/i0adMCHnsgSEAAADDxKsSyEojly5crLy9PBQUF2rx5s3r16qWMjAzt37+/3vbr16/X8OHDlZOTo48++kiDBw/W4MGDtXXrVl+bffv2+ZXFixfL4XAoKyvLL9Yf//hHv3bjx48P/IULAAkIAAAmtYbDshKImTNnasyYMRo1apQuvfRSFRUV6bzzztPixYvrbT9nzhxlZmZq0qRJSkxM1KOPPqo+ffpo3rx5vjYul8uv/O1vf9O1116rLl26+MVq3bq1X7uWLVsG/sIFgAQEAAAbeTweVVVV+RWPx1On3bFjx1RWVqb09HRfXUhIiNLT01VaWlpv7NLSUr/2kpSRkXHC9uXl5XrjjTeUk5NT59i0adPUpk0bXX755XriiSd0/PjxQC4zYD+ru2Ay4nvZGn/N3o9tjS/Zfw1S07kOuwXjdULDNYXfqWAo2bsoCL3cH4Q+7GXlXTCFhYWaOnWqX11BQYGmTJniV3fw4EHV1tYqNjbWrz42NlY7duyoN7bb7a63vdvtrrf9c889p9atW2vIkCF+9ffcc4/69Omj6OhorV+/Xvn5+dq3b59mzpzZkEs8LT+rBAQAgIbwWvgk1Pz8fOXl5fnVOZ1Oy+IHYvHixcrOzlZ4eLhf/U/H17NnT4WFhek3v/mNCgsLbRsrCQgAADZyOp0N+ke8bdu2Cg0NVXl5uV99eXm5XC5Xvee4XK4Gt//nP/+pnTt3avny5accS0pKio4fP67//ve/6tat2ynbnw72gAAAYFKrEMtKQ4WFhSkpKUklJSW+Oq/Xq5KSEqWmptZ7Tmpqql97SSouLq63/aJFi5SUlKRevU69XLllyxaFhIQoJiamweMPFDMgAACYBHr3ilXy8vI0YsQIJScnq2/fvpo9e7aOHDmiUaNGSZLuuusutW/fXoWFhZKke++9VwMGDNCMGTN04403atmyZfrwww+1YMECv7hVVVVasWKFZsyYUafP0tJSbdiwQddee61at26t0tJSTZw4UXfeeafOP/98266VBAQAgEZi6NChOnDggB555BG53W717t1bq1ev9m003b17t0JC/jer0r9/fy1dulQPPfSQHnjgAV188cVauXKlunfv7hd32bJlMgxDw4cPr9On0+nUsmXLNGXKFHk8HnXu3FkTJ06ss2/Fag7DMAxbe2ig60JuO9tDOGNN5e6RpnIdduMumMalKfxOBUMwfm9DXJ/a3ofdnvusv2WxRly83rJYTQkzIAAAmJzOI9QRGF5hAAAQdMyAAABg4tXZ2YT6c0ICAgCACUsw9iMBAQDAxMpHsaN+vMIAACDomAEBAMDEe5YeRPZzQgICAIAJSzD24xUGAABBxwwIAAAmXu6CsR0JCAAAJrU8B8R2pHgAACDomAEBAMCEJRj7kYAAAGDCEoz9SPEAAEDQWZ6AfPXVVxo9evRJ23g8HlVVVfkVr1Fr9VAAADgtXiPEsoL6Wf7KVFRU6Lnnnjtpm8LCQkVGRvqVXdph9VAAADgttUaIZQX1C3gPyN///veTHv+///u/U8bIz89XXl6eX90vI0cGOhQAAGzhZQ+I7QJOQAYPHiyHwyHDME7YxuE4+RvndDrldDr96kIcoYEOBQAAnKMCnhuKi4vTq6++Kq/XW2/ZvHmzHeMEACBoWIKxX8CvTFJSksrKyk54/FSzIwAANHZew2FZQf0CXoKZNGmSjhw5csLjXbt21TvvvHNGgwIAAE1bwAnI1VdffdLjLVu21IABA057QAAAnG21PCbLdjwJFQAAE5ZO7EeKBwAAgo4ZEAAATLz8fW47EhAAAExqWYKxHSkeAAAIOmZAAAAwYROq/UhAAAAw4Vts7UcCAgCASS1fRmc7UjwAABB0zIAAAGDCHhD7kYAAAGDCHhD78QoDAICgIwEBAMDEK4dlJVDz589Xp06dFB4erpSUFG3cuPGk7VesWKGEhASFh4erR48eevPNN/2Ojxw5Ug6Hw69kZmb6tamoqFB2drYiIiIUFRWlnJwcHT58OOCxB4IEBAAAk1rDYVkJxPLly5WXl6eCggJt3rxZvXr1UkZGhvbv319v+/Xr12v48OHKycnRRx99pMGDB2vw4MHaunWrX7vMzEzt27fPV15++WW/49nZ2dq2bZuKi4u1atUqvffeexo7dmxgL1qASEAAAGgkZs6cqTFjxmjUqFG69NJLVVRUpPPOO0+LFy+ut/2cOXOUmZmpSZMmKTExUY8++qj69OmjefPm+bVzOp1yuVy+cv755/uObd++XatXr9bChQuVkpKiq666Sk899ZSWLVumvXv32natJCAAAJh4jRDLisfjUVVVlV/xeDx1+jx27JjKysqUnp7uqwsJCVF6erpKS0vrHWdpaalfe0nKyMio037dunWKiYlRt27d9Nvf/lbffPONX4yoqCglJyf76tLT0xUSEqINGzac1uvXEI3mLpg1ez+2vY+M+F7ndHypabxOwWL3a9VU3u9gaAqvVVP5XKBhrLwNt7CwUFOnTvWrKygo0JQpU/zqDh48qNraWsXGxvrVx8bGaseOHfXGdrvd9bZ3u92+nzMzMzVkyBB17txZX3zxhR544AFdf/31Ki0tVWhoqNxut2JiYvxiNGvWTNHR0X5xrNZoEhAAAJqi/Px85eXl+dU5nc6g9T9s2DDff/fo0UM9e/bURRddpHXr1iktLS1o4zAjAQEAwOR07l45EafT2aCEo23btgoNDVV5eblffXl5uVwuV73nuFyugNpLUpcuXdS2bVt9/vnnSktLk8vlqrPJ9fjx46qoqDhpnDPFHhAAAEy8hsOy0lBhYWFKSkpSSUnJ/8bh9aqkpESpqan1npOamurXXpKKi4tP2F6Svv76a33zzTeKi4vzxTh06JDKysp8bdauXSuv16uUlJQGjz9QzIAAAGBytp6EmpeXpxEjRig5OVl9+/bV7NmzdeTIEY0aNUqSdNddd6l9+/YqLCyUJN17770aMGCAZsyYoRtvvFHLli3Thx9+qAULFkiSDh8+rKlTpyorK0sul0tffPGF/vCHP6hr167KyMiQJCUmJiozM1NjxoxRUVGRampqlJubq2HDhik+Pt62ayUBAQCgkRg6dKgOHDigRx55RG63W71799bq1at9G013796tkJD/JUf9+/fX0qVL9dBDD+mBBx7QxRdfrJUrV6p79+6SpNDQUP373//Wc889p0OHDik+Pl6DBg3So48+6rcs9NJLLyk3N1dpaWkKCQlRVlaW5s6da+u1koAAAGByNr+MLjc3V7m5ufUeW7duXZ262267Tbfddlu97Vu0aKE1a9acss/o6GgtXbo0oHGeKRIQAABMrNyEivqxCRUAAAQdMyAAAJiczSWYnwsSEAAATEhA7McSDAAACDpmQAAAMGEGxH4kIAAAmJCA2I8lGAAAEHTMgAAAYMJzQOxHAgIAgAlLMPYjAQEAwIQExH7sAQEAAEHHDAgAACbMgNiPBAQAABMSEPuxBAMAAIIu4ATk+++/1/vvv69PPvmkzrHq6mo9//zzp4zh8XhUVVXlVzweb6BDAQDAFobhsKygfgElIJ9++qkSExP1i1/8Qj169NCAAQO0b98+3/HKykqNGjXqlHEKCwsVGRnpV6Y99W3gowcAwAZeOSwrqF9ACcj999+v7t27a//+/dq5c6dat26tK6+8Urt37w6o0/z8fFVWVvqVyePPDygGAAA4dwW0CXX9+vV6++231bZtW7Vt21avv/66fve73+nqq6/WO++8o5YtWzYojtPplNPp9KvzHmU7CgCgcWATqv0C+lf/+++/V7Nm/8tZHA6HnnnmGd10000aMGCAPv30U8sHCABAsLEHxH4BzYAkJCToww8/VGJiol/9vHnzJEk333yzdSMDAABNVkAzIL/85S/18ssv13ts3rx5Gj58uAzDsGRgAACcLV7DYVlB/QJKQPLz8/Xmm2+e8PjTTz8tr5fbaQEA5zaWYOzHk1ABADBh5sJ+3HoCAACCjhkQAABM2M5oPxIQAABMeIKp/ViCAQAAQccMCAAAJty9Yj8SEAAATLgLxn4swQAAgKBjBgQAABPugrEfCQgAACbsAbEfSzAAACDomAEBAMCEGRD7kYAAAGDCXTD2YwkGAAATw7CuBGr+/Pnq1KmTwsPDlZKSoo0bN560/YoVK5SQkKDw8HD16NHD71vra2pqdP/996tHjx5q2bKl4uPjddddd2nv3r1+MTp16iSHw+FXpk2bFvjgA0ACAgBAI7F8+XLl5eWpoKBAmzdvVq9evZSRkaH9+/fX2379+vUaPny4cnJy9NFHH2nw4MEaPHiwtm7dKkk6evSoNm/erIcfflibN2/Wq6++qp07d+rmm2+uE+uPf/yj9u3b5yvjx4+39VpZggEAwMTKPSAej0cej8evzul0yul01mk7c+ZMjRkzRqNGjZIkFRUV6Y033tDixYs1efLkOu3nzJmjzMxMTZo0SZL06KOPqri4WPPmzVNRUZEiIyNVXFzsd868efPUt29f7d69Wx06dPDVt27dWi6X64yvt6FIQCy0Zu/HZ3sIlmgq15ER38vW+MF4ney+hqaE97vx9FHstb0L21mZgBQWFmrq1Kl+dQUFBZoyZYpf3bFjx1RWVqb8/HxfXUhIiNLT01VaWlpv7NLSUuXl5fnVZWRkaOXKlSccT2VlpRwOh6Kiovzqp02bpkcffVQdOnTQHXfcoYkTJ6pZM/vSBBIQAABslJ+fXydJqG/24+DBg6qtrVVsbKxffWxsrHbs2FFvbLfbXW97t9tdb/vq6mrdf//9Gj58uCIiInz199xzj/r06aPo6GitX79e+fn52rdvn2bOnNmgazwdJCAAAJhY+SDUEy23BFtNTY1uv/12GYahZ555xu/YTxOknj17KiwsTL/5zW9UWFho29jZhAoAgIlhOCwrDdW2bVuFhoaqvLzcr768vPyEezNcLleD2v+YfHz55ZcqLi72m/2oT0pKio4fP67//ve/DR5/oEhAAABoBMLCwpSUlKSSkhJfndfrVUlJiVJTU+s9JzU11a+9JBUXF/u1/zH5+Oyzz/T222+rTZs2pxzLli1bFBISopiYmNO8mlNjCQYAALOz9GV0eXl5GjFihJKTk9W3b1/Nnj1bR44c8d0Vc9ddd6l9+/YqLCyUJN17770aMGCAZsyYoRtvvFHLli3Thx9+qAULFkj6Ifm49dZbtXnzZq1atUq1tbW+/SHR0dEKCwtTaWmpNmzYoGuvvVatW7dWaWmpJk6cqDvvvFPnn3++bddKAgIAgMnZehT70KFDdeDAAT3yyCNyu93q3bu3Vq9e7dtounv3boWE/G/xon///lq6dKkeeughPfDAA7r44ou1cuVKde/eXZK0Z88e/f3vf5ck9e7d26+vd955R9dcc42cTqeWLVumKVOmyOPxqHPnzpo4cWKdjbNWcxhG4/jSYa/7Etv7aAq36aHhmsL7zW24jQfvd8MVe1ec7SGcsa6v/MmyWJ/f/pBlsZoS9oAAAICgYwkGAAATvg3XfiQgAACYkYDYjiUYAAAQdMyAAABg0jhuz2jaSEAAADAjAbEdSzAAACDomAEBAMCEu2DsRwICAIAZSzC2YwkGAAAEHTMgAACYsARjPxIQAADMWIKxHQkIAAB1MANiN/aAAACAoDsrMyAej0cej8evrrnHK6eTfAgA0AiwBGO7gP/F3759u5YsWaIdO3ZIknbs2KHf/va3Gj16tNauXdugGIWFhYqMjPQr0576NtChAABgD8PCgnoFNAOyevVq3XLLLWrVqpWOHj2q1157TXfddZd69eolr9erQYMG6a233tLAgQNPGic/P195eXl+dc2/7RP46AEAwDkpoBmQP/7xj5o0aZK++eYbLVmyRHfccYfGjBmj4uJilZSUaNKkSZo2bdop4zidTkVERPgVll8AAI2G4bCuoF4B/au/bds2jRw5UpJ0++2367vvvtOtt97qO56dna1///vflg4QAIBgMwzr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V69emj9/viXxzN59912NGzdOH3zwgYqLi1VTU6NBgwbpyJEjlvVxwQUXaNq0aSorK9OHH36ogQMH6pZbbtG2bdss6+OnNm3apP/3//6fevbsaXnsyy67TPv27fOV999/37LY3377ra688ko1b95c//jHP/TJJ59oxowZAT1I51Q2bdrkN/7i4mJJ0m23WfdNm9OnT9czzzyjefPmafv27Zo+fbr+/Oc/66mnnrKsD0n69a9/reLiYr3wwgv6z3/+o0GDBik9PV179uw5rXin+qz9+c9/1ty5c1VUVKQNGzaoZcuWysjIUHV1tWV9HDlyRFdddZWmT59u+TUcPXpUmzdv1sMPP6zNmzfr1Vdf1c6dO3XzzTdb1ockXXLJJZo3b57+85//6P3331enTp00aNAgHThwwLI+fvTaa6/pgw8+OOU3rZ5uH5mZmX6fl5dffjngfnAOCfjG3bOsb9++xrhx43w/19bWGvHx8UZhYaHlfUkyXnvtNcvj/tT+/fsNSca7775raz/nn3++sXDhQsvjfvfdd8bFF19sFBcXGwMGDDDuvfdey2IXFBQYvXr1siye2f33329cddVVtsWvz7333mtcdNFFhtfrtSzmjTfeaIwePdqvbsiQIUZ2drZlfRw9etQIDQ01Vq1a5Vffp08f48EHHzzj+ObPmtfrNVwul/HEE0/46g4dOmQ4nU7j5ZdftqSPn/rxeQkfffTRacU+Vfwfbdy40ZBkfPnll7b18eOXu7399tuW9vH1118b7du3N7Zu3Wp07NjRmDVr1mnFP1EfI0aMqPMNq2jazqkZkGPHjqmsrEzp6em+upCQEKWnp6u0tPQsjuz0VVZWSpKio6NtiV9bW6tly5bpyJEjSk1NtTz+uHHjdOONN/q9J1b67LPPFB8fry5duig7O1u7d++2LPbf//53JScn67bbblNMTIwuv/xy/eUvf7EsvtmxY8f04osvavTo0XI4HJbF7d+/v0pKSvTpp59Kkj7++GO9//77uv766y3r4/jx46qtrVV4eLhffYsWLSydlfrRrl275Ha7/X6vIiMjlZKScs5+1qUfPu8Oh0NRUVG2xD927JgWLFigyMhI9erVy7K4Xq9Xv/rVrzRp0iRddtlllsU1W7dunWJiYtStWzf99re/1TfffGNbXzj7zqnvgjl48KBqa2sVGxvrVx8bG3tOfjug1+vVhAkTdOWVV6p79+6Wxv7Pf/6j1NRUVVdXq1WrVnrttdd06aWXWtrHsmXLtHnz5jPaB3AyKSkpevbZZ9WtWzft27dPU6dO1dVXX62tW7eqdevWZxz///7v//TMM88oLy9PDzzwgDZt2qR77rlHYWFhGjFihAVX4G/lypU6dOjQKb9oKlCTJ09WVVWVEhISFBoaqtraWj322GPKzs62rI/WrVsrNTVVjz76qBITExUbG6uXX35ZpaWl6tq1q2X9/MjtdktSvZ/1H4+da6qrq3X//fdr+PDhioiIsDT2qlWrNGzYMB09elRxcXEqLi5W27ZtLYs/ffp0NWvWTPfcc49lMc0yMzM1ZMgQde7cWV988YUeeOABXX/99SotLVVoaKht/eLsOacSkKZm3Lhx2rp1qy1/QXbr1k1btmxRZWWl/vrXv2rEiBF69913LUtCvvrqK917770qLi6u81exVX76F3zPnj2VkpKijh076pVXXlFOTs4Zx/d6vUpOTtbjjz8uSbr88su1detWFRUV2ZKALFq0SNdff/1prZ+fzCuvvKKXXnpJS5cu1WWXXaYtW7ZowoQJio+Pt/Q6XnjhBY0ePVrt27dXaGio+vTpo+HDh6usrMyyPpqqmpoa3X777TIMQ88884zl8a+99lpt2bJFBw8e1F/+8hfdfvvt2rBhg2JiYs44dllZmebMmaPNmzdbOnNnNmzYMN9/9+jRQz179tRFF12kdevWKS0tzbZ+cfacU0swbdu2VWhoaL1fA3wmXz98NuTm5mrVqlV65513dMEFF1gePywsTF27dlVSUpIKCwvVq1cvzZkzx7L4ZWVl2r9/v/r06aNmzZqpWbNmevfddzV37lw1a9ZMtbW1lvX1o6ioKF1yySW+L1E6U3FxcXUSssTEREuXeX705Zdf6u2339avf/1ry2NPmjRJkydP1rBhw9SjRw/96le/0sSJE1VYWGhpPxdddJHeffddHT58WF999ZU2btyompoadenSxdJ+pP99pXdT+Kz/mHx8+eWXKi4utnz2Q5Jatmyprl27ql+/flq0aJGaNWumRYsWWRL7n//8p/bv368OHTr4Putffvml7rvvPnXq1MmSPurTpUsXtW3b1rLPOxqfcyoBCQsLU1JSkkpKSnx1Xq9XJSUltuxvsINhGMrNzdVrr72mtWvXqnPnzkHp1+v1yuPxWBYvLS3N9y2KP5bk5GRlZ2dry5YttkyZHj58WF988YXi4uIsiXfllVfWuQX6008/VceOHS2J/1NLlixRTEyMbrzxRstjHz16VCEh/h/l0NBQeb1ey/uSfvjHLi4uTt9++63WrFmjW265xfI+OnfuLJfL5fdZr6qq0oYNG86Zz7r0v+Tjs88+09tvv602bdoEpV8rP++/+tWv9O9//9vvsx4fH69JkyZpzZo1lvRRn6+//lrffPONZZ93ND7n3BJMXl6eRowYoeTkZPXt21ezZ8/WkSNHNGrUKEviHz582C/j3rVrl7Zs2aLo6Gh16NDhjOOPGzdOS5cu1d/+9je1bt3at54dGRmpFi1anHF8ScrPz9f111+vDh066LvvvtPSpUu1bt06S//PonXr1nX2rbRs2VJt2rSxbD/L73//e910003q2LGj9u7dq4KCAoWGhmr48OGWxJ84caL69++vxx9/XLfffrs2btyoBQsWaMGCBZbE/5HX69WSJUs0YsQINWtm/Ufupptu0mOPPaYOHTrosssu00cffaSZM2dq9OjRlvazZs0aGYahbt266fPPP9ekSZOUkJBw2p+9U33WJkyYoD/96U+6+OKL1blzZz388MOKj4/X4MGDLeujoqJCu3fv9j2b48eE1OVyNWim5WTx4+LidOutt2rz5s1atWqVamtrfZ/36OhohYWFnfE1tGnTRo899phuvvlmxcXF6eDBg5o/f7727NkT0K3ep3qdzIlT8+bN5XK51K1bN0v6iI6O1tSpU5WVlSWXy6UvvvhCf/jDH9S1a1dlZGQ0uA+cY87yXTin5amnnjI6dOhghIWFGX379jU++OADy2K/88479X5V8YgRIyyJX19smb4K+UyNHj3a6NixoxEWFma0a9fOSEtLM9566y3L4p+I1bfhDh061IiLizPCwsKM9u3bG0OHDjU+//xzy+IbhmG8/vrrRvfu3Q2n02kkJCQYCxYssDS+YRjGmjVrDEnGzp07LY9tGIZRVVVl3HvvvUaHDh2M8PBwo0uXLsaDDz5oeDweS/tZvny50aVLFyMsLMxwuVzGuHHjjEOHDp12vFN91rxer/Hwww8bsbGxhtPpNNLS0gJ+DU/Vx5IlS+o9XlBQcMbxf7y1t77y069HP5M+vv/+e+OXv/ylER8fb4SFhRlxcXHGzTffbGzcuNHS18nsdG7DPVkfR48eNQYNGmS0a9fOaN68udGxY0djzJgxhtvtDqgPnFschmHx4xIBAABO4ZzaAwIAAJoGEhAAABB0JCAAACDoSEAAAEDQkYAAAICgIwEBAABBRwICAACCjgQEAAAEHQkIAAAIOhIQAAAQdCQgAAAg6P4/OhZ2n1+NYPUAAAAASUVORK5CYII=\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"from ipywidgets import Play, IntSlider, jslink, HBox, VBox, interactive_output, Output, interact"
],
"metadata": {
"id": "NOXy137V5k0f"
},
"execution_count": 17,
"outputs": []
},
{
"cell_type": "code",
"source": [
"# play = Play(\n",
"# # interval=10,\n",
"# value=0,\n",
"# min=0,\n",
"# max=Lq-1,\n",
"# step=1,\n",
"# description=\"Press play\",\n",
"# disabled=False\n",
"# )\n",
"slider_q = IntSlider(\n",
" min=0,\n",
" max=Bq-1,\n",
" description='Query Id:',\n",
")\n",
"slider_d = IntSlider(\n",
" min=0,\n",
" max=Bd-1,\n",
" description='Doc Id:',\n",
")\n",
"# jslink((play, 'value'), (slider_q, 'value'))\n",
"out = interactive_output(plot_colbert_scores, {'q': slider_q, 'd': slider_d})\n",
"\n",
"output_widget = VBox([\n",
" HBox([slider_q, slider_d]),\n",
" out\n",
"])\n",
"output_widget"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000,
"referenced_widgets": [
"04606a30c3d946faaeeb54ea14602d5e",
"83908b0e7b6a4ba99854a2e5ce9f0b85",
"5df3fb203b5d4cf9850507ec88b37d25",
"3bca8ebf0eb44d4580618cdb2fcedcb5",
"48f392f62e2d4c71935accf6d60d6000",
"2cae93a345ea430190fcb451d5bfe64c",
"eb5cc153af274d88b8c8646fecc042ad",
"6d864429b1fd4c2a9b5b2129fb3886d3",
"8e313403ddf7459aa875a520796aa49b",
"9f8b3a016ed542e48d5ec2eb91c25d7d",
"de1f4d155abc4592a9315e8be99154c3",
"9e286a0264304824be2449bfe4d75c43"
]
},
"id": "gYv-XLv4sU7k",
"outputId": "4c5d7a62-1e27-4542-da5b-3448c3d2bf87"
},
"execution_count": 30,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
"VBox(children=(HBox(children=(IntSlider(value=0, description='Query Id:', max=2), IntSlider(value=0, descripti…"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "04606a30c3d946faaeeb54ea14602d5e"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 640x480 with 2 Axes>"
],
"image/png": "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uCIiInz199xzj/r06aPo6GitX79e+fn52rdvn2bOnNmgazwdJCAAAJhY+SDUEy23BFtNTY1uv/12GYahZ555xu/YTxOknj17KiwsTL/5zW9UWFho29jZhAoAgIlhOCwrDdW2bVuFhoaqvLzcr768vPyEezNcLleD2v+YfHz55ZcqLi72m/2oT0pKio4fP67//ve/DR5/oEhAAABoBMLCwpSUlKSSkhJfndfrVUlJiVJTU+s9JzU11a+9JBUXF/u1/zH5+Oyzz/T222+rTZs2pxzLli1bFBISopiYmNO8mlNjCQYAALOz9GV0eXl5GjFihJKTk9W3b1/Nnj1bR44c8d0Vc9ddd6l9+/YqLCyUJN17770aMGCAZsyYoRtvvFHLli3Thx9+qAULFkj6Ifm49dZbtXnzZq1atUq1tbW+/SHR0dEKCwtTaWmpNmzYoGuvvVatW7dWaWmpJk6cqDvvvFPnn3++bddKAgIAgMnZehT70KFDdeDAAT3yyCNyu93q3bu3Vq9e7dtounv3boWE/G/xon///lq6dKkeeughPfDAA7r44ou1cuVKde/eXZK0Z88e/f3vf5ck9e7d26+vd955R9dcc42cTqeWLVumKVOmyOPxqHPnzpo4cWKdjbNWcxhG4/jSYa/7Etv7aAq36aHhmsL7zW24jQfvd8MVe1ec7SGcsa6v/MmyWJ/f/pBlsZoS9oAAAICgYwkGAAATvg3XfiQgAACYkYDYjiUYAAAQdMyAAABg0jhuz2jaSEAAADAjAbEdSzAAACDomAEBAMCEu2DsRwICAIAZSzC2YwkGAAAEHTMgAACYsARjPxIQAADMWIKxHQkIAAB1MANiN/aAAACAoDsrMyAej0cej8evrrnHK6eTfAgA0AiwBGO7gP/F3759u5YsWaIdO3ZIknbs2KHf/va3Gj16tNauXdugGIWFhYqMjPQr0576NtChAABgD8PCgnoFNAOyevVq3XLLLWrVqpWOHj2q1157TXfddZd69eolr9erQYMG6a233tLAgQNPGic/P195eXl+dc2/7RP46AEAwDkpoBmQP/7xj5o0aZK++eYbLVmyRHfccYfGjBmj4uJilZSUaNKkSZo2bdop4zidTkVERPgVll8AAI2G4bCuoF4B/au/bds2jRw5UpJ0++2367vvvtOtt97qO56dna1///vflg4QAIBgMwzr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V69emj9/viXxzN59912NGzdOH3zwgYqLi1VTU6NBgwbpyJEjlvVxwQUXaNq0aSorK9OHH36ogQMH6pZbbtG2bdss6+OnNm3apP/3//6fevbsaXnsyy67TPv27fOV999/37LY3377ra688ko1b95c//jHP/TJJ59oxowZAT1I51Q2bdrkN/7i4mJJ0m23WfdNm9OnT9czzzyjefPmafv27Zo+fbr+/Oc/66mnnrKsD0n69a9/reLiYr3wwgv6z3/+o0GDBik9PV179uw5rXin+qz9+c9/1ty5c1VUVKQNGzaoZcuWysjIUHV1tWV9HDlyRFdddZWmT59u+TUcPXpUmzdv1sMPP6zNmzfr1Vdf1c6dO3XzzTdb1ockXXLJJZo3b57+85//6P3331enTp00aNAgHThwwLI+fvTaa6/pgw8+OOU3rZ5uH5mZmX6fl5dffjngfnAOCfjG3bOsb9++xrhx43w/19bWGvHx8UZhYaHlfUkyXnvtNcvj/tT+/fsNSca7775raz/nn3++sXDhQsvjfvfdd8bFF19sFBcXGwMGDDDuvfdey2IXFBQYvXr1siye2f33329cddVVtsWvz7333mtcdNFFhtfrtSzmjTfeaIwePdqvbsiQIUZ2drZlfRw9etQIDQ01Vq1a5Vffp08f48EHHzzj+ObPmtfrNVwul/HEE0/46g4dOmQ4nU7j5ZdftqSPn/rxeQkfffTRacU+Vfwfbdy40ZBkfPnll7b18eOXu7399tuW9vH1118b7du3N7Zu3Wp07NjRmDVr1mnFP1EfI0aMqPMNq2jazqkZkGPHjqmsrEzp6em+upCQEKWnp6u0tPQsjuz0VVZWSpKio6NtiV9bW6tly5bpyJEjSk1NtTz+uHHjdOONN/q9J1b67LPPFB8fry5duig7O1u7d++2LPbf//53JScn67bbblNMTIwuv/xy/eUvf7EsvtmxY8f04osvavTo0XI4HJbF7d+/v0pKSvTpp59Kkj7++GO9//77uv766y3r4/jx46qtrVV4eLhffYsWLSydlfrRrl275Ha7/X6vIiMjlZKScs5+1qUfPu8Oh0NRUVG2xD927JgWLFigyMhI9erVy7K4Xq9Xv/rVrzRp0iRddtlllsU1W7dunWJiYtStWzf99re/1TfffGNbXzj7zqnvgjl48KBqa2sVGxvrVx8bG3tOfjug1+vVhAkTdOWVV6p79+6Wxv7Pf/6j1NRUVVdXq1WrVnrttdd06aWXWtrHsmXLtHnz5jPaB3AyKSkpevbZZ9WtWzft27dPU6dO1dVXX62tW7eqdevWZxz///7v//TMM88oLy9PDzzwgDZt2qR77rlHYWFhGjFihAVX4G/lypU6dOjQKb9oKlCTJ09WVVWVEhISFBoaqtraWj322GPKzs62rI/WrVsrNTVVjz76qBITExUbG6uXX35ZpaWl6tq1q2X9/MjtdktSvZ/1H4+da6qrq3X//fdr+PDhioiIsDT2qlWrNGzYMB09elRxcXEqLi5W27ZtLYs/ffp0NWvWTPfcc49lMc0yMzM1ZMgQde7cWV988YUeeOABXX/99SotLVVoaKht/eLsOacSkKZm3Lhx2rp1qy1/QXbr1k1btmxRZWWl/vrXv2rEiBF69913LUtCvvrqK917770qLi6u81exVX76F3zPnj2VkpKijh076pVXXlFOTs4Zx/d6vUpOTtbjjz8uSbr88su1detWFRUV2ZKALFq0SNdff/1prZ+fzCuvvKKXXnpJS5cu1WWXXaYtW7ZowoQJio+Pt/Q6XnjhBY0ePVrt27dXaGio+vTpo+HDh6usrMyyPpqqmpoa3X777TIMQ88884zl8a+99lpt2bJFBw8e1F/+8hfdfvvt2rBhg2JiYs44dllZmebMmaPNmzdbOnNnNmzYMN9/9+jRQz179tRFF12kdevWKS0tzbZ+cfacU0swbdu2VWhoaL1fA3wmXz98NuTm5mrVqlV65513dMEFF1gePywsTF27dlVSUpIKCwvVq1cvzZkzx7L4ZWVl2r9/v/r06aNmzZqpWbNmevfddzV37lw1a9ZMtbW1lvX1o6ioKF1yySW+L1E6U3FxcXUSssTEREuXeX705Zdf6u2339avf/1ry2NPmjRJkydP1rBhw9SjRw/96le/0sSJE1VYWGhpPxdddJHeffddHT58WF999ZU2btyompoadenSxdJ+pP99pXdT+Kz/mHx8+eWXKi4utnz2Q5Jatmyprl27ql+/flq0aJGaNWumRYsWWRL7n//8p/bv368OHTr4Putffvml7rvvPnXq1MmSPurTpUsXtW3b1rLPOxqfcyoBCQsLU1JSkkpKSnx1Xq9XJSUltuxvsINhGMrNzdVrr72mtWvXqnPnzkHp1+v1yuPxWBYvLS3N9y2KP5bk5GRlZ2dry5YttkyZHj58WF988YXi4uIsiXfllVfWuQX6008/VceOHS2J/1NLlixRTEyMbrzxRstjHz16VCEh/h/l0NBQeb1ey/uSfvjHLi4uTt9++63WrFmjW265xfI+OnfuLJfL5fdZr6qq0oYNG86Zz7r0v+Tjs88+09tvv602bdoEpV8rP++/+tWv9O9//9vvsx4fH69JkyZpzZo1lvRRn6+//lrffPONZZ93ND7n3BJMXl6eRowYoeTkZPXt21ezZ8/WkSNHNGrUKEviHz582C/j3rVrl7Zs2aLo6Gh16NDhjOOPGzdOS5cu1d/+9je1bt3at54dGRmpFi1anHF8ScrPz9f111+vDh066LvvvtPSpUu1bt06S//PonXr1nX2rbRs2VJt2rSxbD/L73//e910003q2LGj9u7dq4KCAoWGhmr48OGWxJ84caL69++vxx9/XLfffrs2btyoBQsWaMGCBZbE/5HX69WSJUs0YsQINWtm/Ufupptu0mOPPaYOHTrosssu00cffaSZM2dq9OjRlvazZs0aGYahbt266fPPP9ekSZOUkJBw2p+9U33WJkyYoD/96U+6+OKL1blzZz388MOKj4/X4MGDLeujoqJCu3fv9j2b48eE1OVyNWim5WTx4+LidOutt2rz5s1atWqVamtrfZ/36OhohYWFnfE1tGnTRo899phuvvlmxcXF6eDBg5o/f7727NkT0K3ep3qdzIlT8+bN5XK51K1bN0v6iI6O1tSpU5WVlSWXy6UvvvhCf/jDH9S1a1dlZGQ0uA+cY87yXTin5amnnjI6dOhghIWFGX379jU++OADy2K/88479X5V8YgRIyyJX19smb4K+UyNHj3a6NixoxEWFma0a9fOSEtLM9566y3L4p+I1bfhDh061IiLizPCwsKM9u3bG0OHDjU+//xzy+IbhmG8/vrrRvfu3Q2n02kkJCQYCxYssDS+YRjGmjVrDEnGzp07LY9tGIZRVVVl3HvvvUaHDh2M8PBwo0uXLsaDDz5oeDweS/tZvny50aVLFyMsLMxwuVzGuHHjjEOHDp12vFN91rxer/Hwww8bsbGxhtPpNNLS0gJ+DU/Vx5IlS+o9XlBQcMbxf7y1t77y069HP5M+vv/+e+OXv/ylER8fb4SFhRlxcXHGzTffbGzcuNHS18nsdG7DPVkfR48eNQYNGmS0a9fOaN68udGxY0djzJgxhtvtDqgPnFschmHx4xIBAABO4ZzaAwIAAJoGEhAAABB0JCAAACDoSEAAAEDQkYAAAICgIwEBAABBRwICAACCjgQEAAAEHQkIAAAIOhIQAAAQdCQgAAAg6P4/OhZ2n1+NYPUAAAAASUVORK5CYII=\n"
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 640x480 with 2 Axes>"
],
"image/png": "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\n"
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 640x480 with 2 Axes>"
],
"image/png": "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8ssvV/PmzfX3v/9dn332mWbPnh3Qi3ROZfPmzX7jLywslCTdcot137Q5a9YsPf3001q4cKG2b9+uWbNm6c9//rOefPJJy/qQpN/+9rcqLCzUCy+8oH/9618aPHiw0tLStGfPntOKd6rP2p///GctWLBABQUF2rhxo1q2bKn09HRVVVVZ1seRI0d0xRVXaNasWZZfw9GjR1VaWqqHHnpIpaWlevXVV7Vz507deOONlvUhSRdddJEWLlyof/3rX/rggw/UuXNnDR48WAcOHLCsj5+89tpr+uijj075Taun20dGRobf5+Xll18OuB+cRQJ+cLeB9evXz5gwYYLv55qaGiMuLs7Iz8+3vC9JxmuvvWZ53J/bv3+/Icl47733bO3n3HPPNZ555hnL4/7www/GhRdeaBQWFhoDBw407rnnHsti5+XlGb1797Ysntl9991nXHHFFbbFr8s999xjXHDBBYbX67Us5vXXX2+MGTPGr27o0KFGVlaWZX0cPXrUCA0NNdasWeNX37dvX+OBBx444/jmz5rX6zVcLpfx+OOP++oOHTpkOJ1O4+WXX7akj5/76X0Jn3zyyWnFPlX8n2zatMmQZHz99de29fHTl7u98847lvbx7bffGh06dDC2bt1qdOrUyZg7d+5pxT9RHyNHjqz1Dato2s6qGZBjx46ppKREaWlpvrqQkBClpaWpuLi4AUd2+ioqKiRJ0dHRtsSvqanRihUrdOTIEaWkpFgef8KECbr++uv9/k6s9MUXXyguLk5du3ZVVlaWdu/ebVnsv/3tb0pKStItt9yi9u3b69JLL9Vf/vIXy+KbHTt2TC+++KLGjBkjh8NhWdwBAwaoqKhIn3/+uSTp008/1QcffKBrr73Wsj6OHz+umpoahYeH+9W3aNHC0lmpn+zatUtut9vvv6vIyEglJyeftZ916T+fd4fDoaioKFviHzt2TIsXL1ZkZKR69+5tWVyv16vf/OY3mjp1qi655BLL4pqtX79e7du3V/fu3XXXXXfpu+++s60vNLyz6rtgDh48qJqaGsXExPjVx8TEnJXfDuj1ejVp0iRdfvnl6tGjh6Wx//WvfyklJUVVVVVq1aqVXnvtNV188cWW9rFixQqVlpae0T6Ak0lOTtazzz6r7t27a9++fZoxY4auvPJKbd26Va1btz7j+P/3f/+np59+Wjk5Obr//vu1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\n"
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 640x480 with 2 Axes>"
],
"image/png": "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\n"
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 640x480 with 2 Axes>"
],
"image/png": "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77/XpZdequbNm+uf//ynPvvsM82aNSugB+mcyMaNG/3GX1RUJEm66Sbrvmlz5syZeuqppzR//nxt3bpVM2fO1J///Gc98cQTlvUhSb/97W9VVFSk559/Xp9++qkGDRqk9PR07dq166Tineiz9uc//1nz5s1TYWGh1q9fr5YtWyojI0PV1dWW9XHo0CFddtllmjlzpuXXcPjwYZWVlemBBx5QWVmZXnnlFW3fvl3XX3+9ZX1I0gUXXKD58+fr008/1fvvv69OnTpp0KBB2rdvn2V9/OTVV1/Vhx9+eMJvWj3ZPjIzM/0+Ly+99FLA/eAMEvCNu6dZ3759jXHjxvle19bWGvHx8UZBQYHlfUkyXn31Vcvj/tzevXsNSca7775raz9nn3228fTTT1se94cffjDOP/98o6ioyBgwYIBx1113WRY7Pz/f6NWrl2XxzO655x7jsssusy1+fe666y7jvPPOM7xer2Uxr732WmP06NF+dUOGDDGys7Mt6+Pw4cNGaGiosWrVKr/6Pn36GPfdd98pxzd/1rxer+FyuYxHH33UV3fgwAHD6XQaL730kiV9/NxPz0v4+OOPTyr2ieL/ZMOGDYYk4+uvv7atj5++3O3tt9+2tI9vv/3WaN++vbF582ajY8eOxpw5c04q/rH6GDFiRJ1vWEXTdkbNgBw5ckSlpaVKT0/31YWEhCg9PV0lJSWncWQnr7KyUpIUHR1tS/za2lotW7ZMhw4dUmpqquXxx40bp2uvvdbvZ2KlL774QvHx8erSpYuys7O1c+dOy2L/4x//UHJysm666SbFxMTo4osv1l/+8hfL4psdOXJEL7zwgkaPHi2Hw2FZ3P79+6u4uFiff/65JOmTTz7R+++/r6uvvtqyPo4ePara2lqFh4f71bdo0cLSWamf7NixQ2632+/3KjIyUikpKWfsZ1367+fd4XAoKirKlvhHjhzRwoULFRkZqV69elkW1+v16je/+Y2mTJmiiy66yLK4ZmvXrlVMTIy6deumO+64Q999951tfeH0O6O+C2b//v2qra1VbGysX31sbOwZ+e2AXq9XEydO1KWXXqru3btbGvvTTz9Vamqqqqur1apVK7366qu68MILLe1j2bJlKisrO6V9AMeTkpKiZ555Rt26ddOePXs0ffp0XX755dq8ebNat259yvH/7//+T0899ZRyc3N17733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\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"# interact(q=(0, Bq-1, 1), d=(0, Bd-1, 1))(plot_colbert_scores)"
],
"metadata": {
"id": "9RTL2pJDsx6v"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [],
"metadata": {
"id": "RMPqEnbVoKlY"
},
"execution_count": null,
"outputs": []
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment