{ "nbformat": 4, "nbformat_minor": 0, "metadata": { "colab": { "provenance": [] }, "kernelspec": { "name": "python3", "display_name": "Python 3" }, "language_info": { "name": "python" }, "gpuClass": "standard", "accelerator": "GPU", "widgets": { "application/vnd.jupyter.widget-state+json": { "137fa30b14f34f57a0beb8a6c6e60cf5": { "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_755a0a2d6a154feab203d06a6daf9848", "IPY_MODEL_c0c63e8ee5e84757a66dc953b11116d7", "IPY_MODEL_cf211c4bc94c47e2a9b752d4a9890271" ], "layout": "IPY_MODEL_070471ec9b8d4523be8e8779c87e7d9e" } }, "755a0a2d6a154feab203d06a6daf9848": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_c22bd9c427b34a7dad89b1293da20e65", "placeholder": "​", "style": "IPY_MODEL_39348508617043c8a3cbec645ef49331", "value": "Downloading builder script: 100%" } }, "c0c63e8ee5e84757a66dc953b11116d7": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_d1f02d9191c6458a9fc42f5ebb2d5961", "max": 3208, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_11b4792c447c4b56acbdc5b3f7427c54", "value": 3208 } }, "cf211c4bc94c47e2a9b752d4a9890271": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_633950f724a8490b9425bb2fa2e4e84a", "placeholder": "​", "style": "IPY_MODEL_fe588dfbdc0f4fabaf54a1c3e02c0be3", "value": " 3.21k/3.21k [00:00<00:00, 67.3kB/s]" } }, "070471ec9b8d4523be8e8779c87e7d9e": { "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 } }, "c22bd9c427b34a7dad89b1293da20e65": { "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 } }, "39348508617043c8a3cbec645ef49331": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "d1f02d9191c6458a9fc42f5ebb2d5961": { "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 } }, "11b4792c447c4b56acbdc5b3f7427c54": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "633950f724a8490b9425bb2fa2e4e84a": { "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 } }, "fe588dfbdc0f4fabaf54a1c3e02c0be3": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "47463520a286401ba3d5d29fce07ede5": { "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_f26179b81ddd477588764f8262560e2f", "IPY_MODEL_5d6c567d1f2a430c9632cf063572c8de", "IPY_MODEL_25f45b49e5f643ee994fbb5998807676" ], "layout": "IPY_MODEL_6030ad10c42c4993ac7d6610c8f0d77f" } }, "f26179b81ddd477588764f8262560e2f": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_945360806d6445418fd779166c114994", "placeholder": "​", "style": "IPY_MODEL_d24b647f4a1542e5a4ebfa59bcf2bb2b", "value": "Downloading metadata: 100%" } }, "5d6c567d1f2a430c9632cf063572c8de": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_1bc411a48f1c4f849351440d4e9c646f", "max": 1687, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_dd1c430002dd4fd6a08cb5b576bf0290", "value": 1687 } }, "25f45b49e5f643ee994fbb5998807676": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_2d551e5c6a4548ae82c34d827f919d18", "placeholder": "​", "style": "IPY_MODEL_02cb3347a1be49bf8808e95a45a34801", "value": " 1.69k/1.69k [00:00<00:00, 36.1kB/s]" } }, "6030ad10c42c4993ac7d6610c8f0d77f": { "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 } }, "945360806d6445418fd779166c114994": { "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 } }, "d24b647f4a1542e5a4ebfa59bcf2bb2b": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "1bc411a48f1c4f849351440d4e9c646f": { "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 } }, "dd1c430002dd4fd6a08cb5b576bf0290": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "2d551e5c6a4548ae82c34d827f919d18": { "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 } }, "02cb3347a1be49bf8808e95a45a34801": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "0926a24353a94b82a8e405ec72bef775": { "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_7e44b8cbc06f4d3bb5f073fad6a0b151", "IPY_MODEL_bcca70a24e7d4a5b9b2a98cebc5c5eda", "IPY_MODEL_0d26ce82d9f1424dbe8d08ce7b7e5b0b" ], "layout": "IPY_MODEL_9bdccfd08b814f4fb1f53c5a8a0bded0" } }, "7e44b8cbc06f4d3bb5f073fad6a0b151": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_3977c23fd48348b1b3855c3cc0db6827", "placeholder": "​", "style": "IPY_MODEL_2573a6dce3d94ca79cadee9a793d9e91", "value": "Downloading readme: 100%" } }, "bcca70a24e7d4a5b9b2a98cebc5c5eda": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_f01fad907cf742f6aae936051f36579d", "max": 4872, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_86661cdb45b44daeaf1581ca1b8d4cc6", "value": 4872 } }, "0d26ce82d9f1424dbe8d08ce7b7e5b0b": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_04f96b4447a547b8ba8ff13b9bbedc04", "placeholder": "​", "style": "IPY_MODEL_dbdeaaff21924caca89dc32b633f80da", "value": " 4.87k/4.87k [00:00<00:00, 157kB/s]" } }, "9bdccfd08b814f4fb1f53c5a8a0bded0": { "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 } }, "3977c23fd48348b1b3855c3cc0db6827": { "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 } }, "2573a6dce3d94ca79cadee9a793d9e91": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "f01fad907cf742f6aae936051f36579d": { "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 } }, "86661cdb45b44daeaf1581ca1b8d4cc6": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "04f96b4447a547b8ba8ff13b9bbedc04": { "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 } }, "dbdeaaff21924caca89dc32b633f80da": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "320ba3e1e74541288c307eedbd5e2754": { "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_e9675016075e4ec89c891033452ec11c", "IPY_MODEL_305a6be9c48c4381983307f584c5c6c8", "IPY_MODEL_cbfc39d75c494de284e2b8a3c95e6057" ], "layout": "IPY_MODEL_6bc6798a84944c9e8dad7391d1baa997" } }, "e9675016075e4ec89c891033452ec11c": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_86c211b9dac34fd0ad51d81385d59fd8", "placeholder": "​", "style": "IPY_MODEL_21df98aa3cdc403f91acd1c21f4b4e9d", "value": "Downloading data: 100%" } }, "305a6be9c48c4381983307f584c5c6c8": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_eeb508fdb9064c09b8152b800fe61214", "max": 203415, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_ce0d0132b7904f1794037e81880a563a", "value": 203415 } }, "cbfc39d75c494de284e2b8a3c95e6057": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_113ab2100a894a16b74040611824c91d", "placeholder": "​", "style": "IPY_MODEL_834964317e404dd5a9a28c63a58ce6c9", "value": " 203k/203k [00:00<00:00, 1.05MB/s]" } }, "6bc6798a84944c9e8dad7391d1baa997": { "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 } }, "86c211b9dac34fd0ad51d81385d59fd8": { "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 } }, "21df98aa3cdc403f91acd1c21f4b4e9d": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "eeb508fdb9064c09b8152b800fe61214": { "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 } }, "ce0d0132b7904f1794037e81880a563a": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "113ab2100a894a16b74040611824c91d": { "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 } }, "834964317e404dd5a9a28c63a58ce6c9": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "a950c7427a174b22abdd17fb7710ece7": { "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_b72789fe47914768ba2808926ad54c86", "IPY_MODEL_327a1bc8f6c644d6b3168f708a2c6876", "IPY_MODEL_5f8f6e108647479eb92fb44ec1916d0d" ], "layout": "IPY_MODEL_7fa6a321dd3a4e198451da879be60a9b" } }, "b72789fe47914768ba2808926ad54c86": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_b179785454d8400fb495f810ae2aede2", "placeholder": "​", "style": "IPY_MODEL_2b16bccddc0e4be78d83cc012c2224e9", "value": "Generating train split: 96%" } }, "327a1bc8f6c644d6b3168f708a2c6876": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_6d601c96a62c46ff96cbc4fd8e0fbbb6", "max": 5574, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_498224e7a7b54c56ba45261a1b39c1c3", "value": 5574 } }, "5f8f6e108647479eb92fb44ec1916d0d": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_e9319122f48e43a5b15ef55823347507", "placeholder": "​", "style": "IPY_MODEL_7ea7ab8cba484142b5a3d8019e9c9c84", "value": " 5359/5574 [00:00<00:00, 11295.24 examples/s]" } }, "7fa6a321dd3a4e198451da879be60a9b": { "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": "hidden", "width": null } }, "b179785454d8400fb495f810ae2aede2": { "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 } }, "2b16bccddc0e4be78d83cc012c2224e9": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "6d601c96a62c46ff96cbc4fd8e0fbbb6": { "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 } }, "498224e7a7b54c56ba45261a1b39c1c3": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "e9319122f48e43a5b15ef55823347507": { "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 } }, "7ea7ab8cba484142b5a3d8019e9c9c84": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "fddd4ee4bc054b0f90ed88018fc3e3a0": { "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_55b5df3163a34561a4a5ba27efada434", "IPY_MODEL_2823c1041e914dd8887498410baaab43", "IPY_MODEL_fba57e030f624bbab5b51b65d7d36722" ], "layout": "IPY_MODEL_86fa9ce6cd9b4ec9af6d24d943aac75b" } }, "55b5df3163a34561a4a5ba27efada434": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_97a0725bbb044103911e1e29bb07360e", "placeholder": "​", "style": "IPY_MODEL_1cf99cee3c374e30abd95c03e9696bbe", "value": "100%" } }, "2823c1041e914dd8887498410baaab43": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_d17a7d096d964a41a7ee183f5028c037", "max": 1, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_c6a51ab4f16649c0899bbfd14fdc9cb8", "value": 1 } }, "fba57e030f624bbab5b51b65d7d36722": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_876c522f96a64809a82d316f4afa1bae", "placeholder": "​", "style": "IPY_MODEL_1c38d46a00224aa791cad25fdd4d33e2", "value": " 1/1 [00:00<00:00, 24.93it/s]" } }, "86fa9ce6cd9b4ec9af6d24d943aac75b": { "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 } }, "97a0725bbb044103911e1e29bb07360e": { "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 } }, "1cf99cee3c374e30abd95c03e9696bbe": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "d17a7d096d964a41a7ee183f5028c037": { "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 } }, "c6a51ab4f16649c0899bbfd14fdc9cb8": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "876c522f96a64809a82d316f4afa1bae": { "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 } }, "1c38d46a00224aa791cad25fdd4d33e2": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "6e2b903343ad49c89339a38a1c626619": { "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_b1e96f5c00d048c69c1c0fadeb31dcd9", "IPY_MODEL_ec994f6daafb4ef8a08371f2394918dd", "IPY_MODEL_699d9f4479854372ada35ab38fe80352" ], "layout": "IPY_MODEL_cb36ca390eac4c76ad8cfbcbdb5b6950" } }, "b1e96f5c00d048c69c1c0fadeb31dcd9": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_5ffe2a0b8e3342a9b764fbbdf1395f1c", "placeholder": "​", "style": "IPY_MODEL_ea92e7a968d4479e842c368ece4b60c1", "value": "Downloading (…)ve/main/spiece.model: 100%" } }, "ec994f6daafb4ef8a08371f2394918dd": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_95a4496f03414cf8a8d7cf5e6cc3f37b", "max": 791656, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_7b1d15df592048fe8a8c043e7a8461ad", "value": 791656 } }, "699d9f4479854372ada35ab38fe80352": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_cc73442788a3462a8d5d53c9c799df7a", "placeholder": "​", "style": "IPY_MODEL_ee75218b2c4047fdb265df7a54feea78", "value": " 792k/792k [00:00<00:00, 2.55MB/s]" } }, "cb36ca390eac4c76ad8cfbcbdb5b6950": { "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 } }, "5ffe2a0b8e3342a9b764fbbdf1395f1c": { "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 } }, "ea92e7a968d4479e842c368ece4b60c1": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "95a4496f03414cf8a8d7cf5e6cc3f37b": { "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 } }, "7b1d15df592048fe8a8c043e7a8461ad": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "cc73442788a3462a8d5d53c9c799df7a": { "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 } }, "ee75218b2c4047fdb265df7a54feea78": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "e720c7e5ef0849918eb6e7123673c95e": { "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_8b2ff14cab9941388b547140d06e1dd5", "IPY_MODEL_0eb67bf20ecf4cc0b5f3bd0589440e6b", "IPY_MODEL_4e976d7959e640f4b098d9a02320f228" ], "layout": "IPY_MODEL_48de3465dc194fff9903fd3813aae91a" } }, "8b2ff14cab9941388b547140d06e1dd5": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_29558f7cc7574024879d274548ac4cd7", "placeholder": "​", "style": "IPY_MODEL_ce5531904574465d84d65365b0fc2951", "value": "Downloading (…)lve/main/config.json: 100%" } }, "0eb67bf20ecf4cc0b5f3bd0589440e6b": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_10cc03c556cf4fb791697277b3deef35", "max": 1208, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_2113acabfb014e7ab55d099d28845914", "value": 1208 } }, "4e976d7959e640f4b098d9a02320f228": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_504b320daae543b78b8777cebbe65dea", "placeholder": "​", "style": "IPY_MODEL_5ea6f5fa80184fe58ef86a536ec0f8f0", "value": " 1.21k/1.21k [00:00<00:00, 41.1kB/s]" } }, "48de3465dc194fff9903fd3813aae91a": { "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 } }, "29558f7cc7574024879d274548ac4cd7": { "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 } }, "ce5531904574465d84d65365b0fc2951": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "10cc03c556cf4fb791697277b3deef35": { "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 } }, "2113acabfb014e7ab55d099d28845914": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "504b320daae543b78b8777cebbe65dea": { "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 } }, "5ea6f5fa80184fe58ef86a536ec0f8f0": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "b1d7a5cf900b48408e515baa4c66a1cd": { "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_6846a2acd95b45a3a0e2cb79f552f0c0", "IPY_MODEL_fce901d34cc34feeb92854999e98c0f9", "IPY_MODEL_5a89ce40643247fda326742531912a01" ], "layout": "IPY_MODEL_bcc7a0cd035e485680b41e7c4a78b8f8" } }, "6846a2acd95b45a3a0e2cb79f552f0c0": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_bd0a578fefb44fb4b2662d59fd2ff12e", "placeholder": "​", "style": "IPY_MODEL_6585bd6115c047fd881c0bfd323142f0", "value": "Downloading (…)"pytorch_model.bin";: 100%" } }, "fce901d34cc34feeb92854999e98c0f9": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_dbc7f7aa90174ff68b5cc829a6fd8690", "max": 891691430, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_ca3a8e4611c6422380351b947882876a", "value": 891691430 } }, "5a89ce40643247fda326742531912a01": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_2470365762844b62a09dc6fa818c4a09", "placeholder": "​", "style": "IPY_MODEL_3f2489ce0ae941a1a720c60a3052ee70", "value": " 892M/892M [00:03<00:00, 274MB/s]" } }, "bcc7a0cd035e485680b41e7c4a78b8f8": { "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 } }, "bd0a578fefb44fb4b2662d59fd2ff12e": { "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 } }, "6585bd6115c047fd881c0bfd323142f0": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "dbc7f7aa90174ff68b5cc829a6fd8690": { "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 } }, "ca3a8e4611c6422380351b947882876a": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "2470365762844b62a09dc6fa818c4a09": { "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 } }, "3f2489ce0ae941a1a720c60a3052ee70": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "0795a8385c68409fb5539b9ea6756a47": { "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_05dfc6dc9f78483da34b2c6513315e7d", "IPY_MODEL_5cfe28a638cb42fc914dc81eb02a46f4", "IPY_MODEL_d061dcb2f3e840ec9ba6a6ec4d972619" ], "layout": "IPY_MODEL_df418dee3efd4da8aa57ca0044190b2e" } }, "05dfc6dc9f78483da34b2c6513315e7d": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_9d3d394c756d4eabb0f3fd66ba8ef05a", "placeholder": "​", "style": "IPY_MODEL_00612595fa42467a83aa6e4b55343339", "value": "Downloading (…)neration_config.json: 100%" } }, "5cfe28a638cb42fc914dc81eb02a46f4": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_33521be9887b4c368915b4f8f2438440", "max": 147, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_990a862f07894fa9b9f08d3bb7e082ca", "value": 147 } }, "d061dcb2f3e840ec9ba6a6ec4d972619": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_1b793ae9c46740bdbbec5e617a899683", "placeholder": "​", "style": "IPY_MODEL_cbfde7f5f0204417abdced523c5621e9", "value": " 147/147 [00:00<00:00, 5.72kB/s]" } }, "df418dee3efd4da8aa57ca0044190b2e": { "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 } }, "9d3d394c756d4eabb0f3fd66ba8ef05a": { "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 } }, "00612595fa42467a83aa6e4b55343339": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "33521be9887b4c368915b4f8f2438440": { "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 } }, "990a862f07894fa9b9f08d3bb7e082ca": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "1b793ae9c46740bdbbec5e617a899683": { "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 } }, "cbfde7f5f0204417abdced523c5621e9": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } } } } }, "cells": [ { "cell_type": "markdown", "source": [ "# Instalacja pakietów" ], "metadata": { "id": "ZXsOR6oJOJbd" } }, { "cell_type": "code", "execution_count": 1, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "8l0hzptKNiZS", "outputId": "49caa437-96c0-41bc-fc92-1d6c6847e100" }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/\n", "Collecting transformers\n", " Downloading transformers-4.26.1-py3-none-any.whl (6.3 MB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m6.3/6.3 MB\u001b[0m \u001b[31m45.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting datasets\n", " Downloading datasets-2.9.0-py3-none-any.whl (462 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m462.8/462.8 KB\u001b[0m \u001b[31m28.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: torch in /usr/local/lib/python3.8/dist-packages (1.13.1+cu116)\n", "Collecting sentencepiece\n", " Downloading sentencepiece-0.1.97-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.3/1.3 MB\u001b[0m \u001b[31m40.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: tqdm>=4.27 in /usr/local/lib/python3.8/dist-packages (from transformers) (4.64.1)\n", "Requirement already satisfied: filelock in /usr/local/lib/python3.8/dist-packages (from transformers) (3.9.0)\n", "Collecting tokenizers!=0.11.3,<0.14,>=0.11.1\n", " Downloading tokenizers-0.13.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.6 MB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m7.6/7.6 MB\u001b[0m \u001b[31m59.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: requests in /usr/local/lib/python3.8/dist-packages (from transformers) (2.25.1)\n", "Requirement already satisfied: regex!=2019.12.17 in /usr/local/lib/python3.8/dist-packages (from transformers) (2022.6.2)\n", "Collecting huggingface-hub<1.0,>=0.11.0\n", " Downloading huggingface_hub-0.12.0-py3-none-any.whl (190 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m190.3/190.3 KB\u001b[0m \u001b[31m10.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.8/dist-packages (from transformers) (23.0)\n", "Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.8/dist-packages (from transformers) (1.21.6)\n", "Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.8/dist-packages (from transformers) (6.0)\n", "Collecting xxhash\n", " Downloading xxhash-3.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (213 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m213.0/213.0 KB\u001b[0m \u001b[31m1.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: fsspec[http]>=2021.11.1 in /usr/local/lib/python3.8/dist-packages (from datasets) (2023.1.0)\n", "Requirement already satisfied: dill<0.3.7 in /usr/local/lib/python3.8/dist-packages (from datasets) (0.3.6)\n", "Requirement already satisfied: pyarrow>=6.0.0 in /usr/local/lib/python3.8/dist-packages (from datasets) (9.0.0)\n", "Collecting multiprocess\n", " Downloading multiprocess-0.70.14-py38-none-any.whl (132 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m132.0/132.0 KB\u001b[0m \u001b[31m8.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: aiohttp in /usr/local/lib/python3.8/dist-packages (from datasets) (3.8.3)\n", "Collecting responses<0.19\n", " Downloading responses-0.18.0-py3-none-any.whl (38 kB)\n", "Requirement already satisfied: pandas in /usr/local/lib/python3.8/dist-packages (from datasets) (1.3.5)\n", "Requirement already satisfied: typing-extensions in /usr/local/lib/python3.8/dist-packages (from torch) (4.4.0)\n", "Requirement already satisfied: charset-normalizer<3.0,>=2.0 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (2.1.1)\n", "Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (1.8.2)\n", "Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (22.2.0)\n", "Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (6.0.4)\n", "Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (1.3.1)\n", "Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (1.3.3)\n", "Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (4.0.2)\n", "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.8/dist-packages (from requests->transformers) (2022.12.7)\n", "Requirement already satisfied: chardet<5,>=3.0.2 in /usr/local/lib/python3.8/dist-packages (from requests->transformers) (4.0.0)\n", "Requirement already satisfied: idna<3,>=2.5 in /usr/local/lib/python3.8/dist-packages (from requests->transformers) (2.10)\n", "Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/local/lib/python3.8/dist-packages (from requests->transformers) (1.24.3)\n", "Collecting urllib3<1.27,>=1.21.1\n", " Downloading urllib3-1.26.14-py2.py3-none-any.whl (140 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m140.6/140.6 KB\u001b[0m \u001b[31m4.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: python-dateutil>=2.7.3 in /usr/local/lib/python3.8/dist-packages (from pandas->datasets) (2.8.2)\n", "Requirement already satisfied: pytz>=2017.3 in /usr/local/lib/python3.8/dist-packages (from pandas->datasets) (2022.7.1)\n", "Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.8/dist-packages (from python-dateutil>=2.7.3->pandas->datasets) (1.15.0)\n", "Installing collected packages: tokenizers, sentencepiece, xxhash, urllib3, multiprocess, responses, huggingface-hub, transformers, datasets\n", " Attempting uninstall: urllib3\n", " Found existing installation: urllib3 1.24.3\n", " Uninstalling urllib3-1.24.3:\n", " Successfully uninstalled urllib3-1.24.3\n", "Successfully installed datasets-2.9.0 huggingface-hub-0.12.0 multiprocess-0.70.14 responses-0.18.0 sentencepiece-0.1.97 tokenizers-0.13.2 transformers-4.26.1 urllib3-1.26.14 xxhash-3.2.0\n" ] } ], "source": [ "!pip install transformers datasets torch sentencepiece" ] }, { "cell_type": "markdown", "source": [ "# Załadowanie datasetu" ], "metadata": { "id": "dhN0rmb5Oi3d" } }, { "cell_type": "code", "source": [ "from datasets import load_dataset" ], "metadata": { "id": "tnaDkwZ2Pbnn" }, "execution_count": 2, "outputs": [] }, { "cell_type": "code", "source": [ "dataset = load_dataset(\"sms_spam\")" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 231, "referenced_widgets": [ "137fa30b14f34f57a0beb8a6c6e60cf5", "755a0a2d6a154feab203d06a6daf9848", "c0c63e8ee5e84757a66dc953b11116d7", "cf211c4bc94c47e2a9b752d4a9890271", "070471ec9b8d4523be8e8779c87e7d9e", "c22bd9c427b34a7dad89b1293da20e65", "39348508617043c8a3cbec645ef49331", "d1f02d9191c6458a9fc42f5ebb2d5961", "11b4792c447c4b56acbdc5b3f7427c54", "633950f724a8490b9425bb2fa2e4e84a", "fe588dfbdc0f4fabaf54a1c3e02c0be3", "47463520a286401ba3d5d29fce07ede5", "f26179b81ddd477588764f8262560e2f", "5d6c567d1f2a430c9632cf063572c8de", "25f45b49e5f643ee994fbb5998807676", "6030ad10c42c4993ac7d6610c8f0d77f", "945360806d6445418fd779166c114994", "d24b647f4a1542e5a4ebfa59bcf2bb2b", "1bc411a48f1c4f849351440d4e9c646f", "dd1c430002dd4fd6a08cb5b576bf0290", "2d551e5c6a4548ae82c34d827f919d18", "02cb3347a1be49bf8808e95a45a34801", "0926a24353a94b82a8e405ec72bef775", "7e44b8cbc06f4d3bb5f073fad6a0b151", "bcca70a24e7d4a5b9b2a98cebc5c5eda", "0d26ce82d9f1424dbe8d08ce7b7e5b0b", "9bdccfd08b814f4fb1f53c5a8a0bded0", "3977c23fd48348b1b3855c3cc0db6827", "2573a6dce3d94ca79cadee9a793d9e91", "f01fad907cf742f6aae936051f36579d", "86661cdb45b44daeaf1581ca1b8d4cc6", "04f96b4447a547b8ba8ff13b9bbedc04", "dbdeaaff21924caca89dc32b633f80da", "320ba3e1e74541288c307eedbd5e2754", "e9675016075e4ec89c891033452ec11c", "305a6be9c48c4381983307f584c5c6c8", "cbfc39d75c494de284e2b8a3c95e6057", "6bc6798a84944c9e8dad7391d1baa997", "86c211b9dac34fd0ad51d81385d59fd8", "21df98aa3cdc403f91acd1c21f4b4e9d", "eeb508fdb9064c09b8152b800fe61214", "ce0d0132b7904f1794037e81880a563a", "113ab2100a894a16b74040611824c91d", "834964317e404dd5a9a28c63a58ce6c9", "a950c7427a174b22abdd17fb7710ece7", "b72789fe47914768ba2808926ad54c86", "327a1bc8f6c644d6b3168f708a2c6876", "5f8f6e108647479eb92fb44ec1916d0d", "7fa6a321dd3a4e198451da879be60a9b", "b179785454d8400fb495f810ae2aede2", "2b16bccddc0e4be78d83cc012c2224e9", "6d601c96a62c46ff96cbc4fd8e0fbbb6", "498224e7a7b54c56ba45261a1b39c1c3", "e9319122f48e43a5b15ef55823347507", "7ea7ab8cba484142b5a3d8019e9c9c84", "fddd4ee4bc054b0f90ed88018fc3e3a0", "55b5df3163a34561a4a5ba27efada434", "2823c1041e914dd8887498410baaab43", "fba57e030f624bbab5b51b65d7d36722", "86fa9ce6cd9b4ec9af6d24d943aac75b", "97a0725bbb044103911e1e29bb07360e", "1cf99cee3c374e30abd95c03e9696bbe", "d17a7d096d964a41a7ee183f5028c037", "c6a51ab4f16649c0899bbfd14fdc9cb8", "876c522f96a64809a82d316f4afa1bae", "1c38d46a00224aa791cad25fdd4d33e2" ] }, "id": "cCiAuRqrOkvV", "outputId": "b8dfca85-8b7a-4321-da77-ec7eea1843e9" }, "execution_count": 3, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "Downloading builder script: 0%| | 0.00/3.21k [00:005,} test samples'.format(test_size))\n", "print('{:>5,} training samples'.format(train_size))\n", "print('{:>5,} validation samples'.format(val_size))" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "Mm6vc6lLVW3l", "outputId": "af8a7007-791f-426c-c277-1c77a1fd9d78" }, "execution_count": 14, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "1,000 test samples\n", "4,116 training samples\n", " 458 validation samples\n" ] } ] }, { "cell_type": "markdown", "source": [ "# Create train and validation loaders" ], "metadata": { "id": "bmgQOP4EVfA1" } }, { "cell_type": "code", "source": [ "from torch.utils.data import DataLoader, RandomSampler, SequentialSampler" ], "metadata": { "id": "CxnQ3cmIVlNh" }, "execution_count": 15, "outputs": [] }, { "cell_type": "code", "source": [ "batch_size = 16\n", "\n", "train_dataloader = DataLoader(\n", " train_dataset,\n", " sampler = RandomSampler(train_dataset),\n", " batch_size = batch_size\n", " )\n", "\n", "validation_dataloader = DataLoader(\n", " val_dataset,\n", " sampler = SequentialSampler(val_dataset),\n", " batch_size = batch_size\n", " )" ], "metadata": { "id": "0hcpO_onVjEC" }, "execution_count": 16, "outputs": [] }, { "cell_type": "markdown", "source": [ "# Device check" ], "metadata": { "id": "efwhqLyyVu9z" } }, { "cell_type": "code", "source": [ "if torch.cuda.is_available(): \n", " device = torch.device(\"cuda\")\n", "\n", " print('There are %d GPU(s) available.' % torch.cuda.device_count())\n", " print('We will use the GPU:', torch.cuda.get_device_name(0))\n", "\n", "else:\n", " print('No GPU available, using the CPU instead.')\n", " device = torch.device(\"cpu\")" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "ANBCfNGnVwVk", "outputId": "02086b95-30b8-4be0-aa4b-ac0041b4b007" }, "execution_count": 17, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "There are 1 GPU(s) available.\n", "We will use the GPU: Tesla T4\n" ] } ] }, { "cell_type": "markdown", "source": [ "# Load T5 model" ], "metadata": { "id": "okTx_ynMV0rH" } }, { "cell_type": "code", "source": [ "from transformers import T5ForConditionalGeneration" ], "metadata": { "id": "Eu-7Eed8WgN0" }, "execution_count": 18, "outputs": [] }, { "cell_type": "code", "source": [ "model = T5ForConditionalGeneration.from_pretrained('t5-base')\n", "\n", "model.cuda()" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 1000, "referenced_widgets": [ "b1d7a5cf900b48408e515baa4c66a1cd", "6846a2acd95b45a3a0e2cb79f552f0c0", "fce901d34cc34feeb92854999e98c0f9", "5a89ce40643247fda326742531912a01", "bcc7a0cd035e485680b41e7c4a78b8f8", "bd0a578fefb44fb4b2662d59fd2ff12e", "6585bd6115c047fd881c0bfd323142f0", "dbc7f7aa90174ff68b5cc829a6fd8690", "ca3a8e4611c6422380351b947882876a", "2470365762844b62a09dc6fa818c4a09", "3f2489ce0ae941a1a720c60a3052ee70", "0795a8385c68409fb5539b9ea6756a47", "05dfc6dc9f78483da34b2c6513315e7d", "5cfe28a638cb42fc914dc81eb02a46f4", "d061dcb2f3e840ec9ba6a6ec4d972619", "df418dee3efd4da8aa57ca0044190b2e", "9d3d394c756d4eabb0f3fd66ba8ef05a", "00612595fa42467a83aa6e4b55343339", "33521be9887b4c368915b4f8f2438440", "990a862f07894fa9b9f08d3bb7e082ca", "1b793ae9c46740bdbbec5e617a899683", "cbfde7f5f0204417abdced523c5621e9" ] }, "id": "JKv9O8kfV2zZ", "outputId": "b4b823d6-f7dc-4b78-a12b-4a2bae4e463f" }, "execution_count": 19, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "Downloading (…)\"pytorch_model.bin\";: 0%| | 0.00/892M [00:005,} of {:>5,}. Elapsed: {:}.'.format(step, len(train_dataloader), elapsed))\n", "\n", " b_input_ids = batch[0].to(device)\n", " b_input_mask = batch[1].to(device)\n", "\n", " y = batch[2].to(device)\n", " y_ids = y[:, :-1].contiguous()\n", " lm_labels = y[:, 1:].clone().detach()\n", " lm_labels[y[:, 1:] == tokenizer.pad_token_id] = -100\n", "\n", " model.zero_grad() \n", "\n", " outputs = model(\n", " input_ids=b_input_ids,\n", " attention_mask=b_input_mask,\n", " decoder_input_ids=y_ids,\n", " labels=lm_labels\n", " )\n", "\n", " generated_ids = model.generate(\n", " input_ids = b_input_ids,\n", " attention_mask = b_input_mask, \n", " max_length=2, \n", " num_beams=2,\n", " repetition_penalty=2.5, \n", " length_penalty=1.0, \n", " early_stopping=True\n", " )\n", "\n", " preds = [tokenizer.decode(g, skip_special_tokens=True, clean_up_tokenization_spaces=True) for g in generated_ids]\n", " target = [tokenizer.decode(t, skip_special_tokens=True, clean_up_tokenization_spaces=True) for t in y]\n", " total_train_acc += calculate_accuracy(preds, target) \n", "\n", " loss = outputs['loss']\n", " total_train_loss += loss.item()\n", "\n", " loss.backward()\n", " torch.nn.utils.clip_grad_norm_(model.parameters(), 1.0)\n", "\n", " optimizer.step()\n", " scheduler.step()\n", "\n", " avg_train_loss = total_train_loss / len(train_dataloader) \n", " avg_train_acc = total_train_acc / len(train_dataloader) \n", " training_time = format_time(time.time() - t0)\n", "\n", " print(\"\")\n", " print(\" Average training loss: {0:.2f}\".format(avg_train_loss))\n", " print(\" Average training acc: {0:.2f}\".format(avg_train_acc))\n", " print(\" Training epcoh took: {:}\".format(training_time))\n", " \n", " # ========================================\n", " # Validation\n", " # ========================================\n", "\n", " print(\"\")\n", " print(\"Running Validation...\")\n", "\n", " t0 = time.time()\n", " model.eval()\n", "\n", " total_eval_loss = 0\n", " total_eval_accuracy = 0\n", "\n", " for batch in validation_dataloader:\n", " b_input_ids = batch[0].to(device)\n", " b_input_mask = batch[1].to(device)\n", "\n", " y = batch[2].to(device)\n", " y_ids = y[:, :-1].contiguous()\n", " lm_labels = y[:, 1:].clone().detach()\n", " lm_labels[y[:, 1:] == tokenizer.pad_token_id] = -100\n", " \n", " with torch.no_grad(): \n", "\n", " outputs = model(\n", " input_ids=b_input_ids,\n", " attention_mask=b_input_mask,\n", " decoder_input_ids=y_ids,\n", " labels=lm_labels\n", " )\n", "\n", " loss = outputs['loss']\n", " total_eval_loss += loss.item()\n", "\n", " generated_ids = model.generate(\n", " input_ids = b_input_ids,\n", " attention_mask = b_input_mask, \n", " max_length=2, \n", " num_beams=2,\n", " repetition_penalty=2.5, \n", " length_penalty=1.0, \n", " early_stopping=True\n", " )\n", "\n", " preds = [tokenizer.decode(g, skip_special_tokens=True, clean_up_tokenization_spaces=True) for g in generated_ids]\n", " target = [tokenizer.decode(t, skip_special_tokens=True, clean_up_tokenization_spaces=True) for t in y]\n", " total_eval_accuracy += calculate_accuracy(preds, target) \n", "\n", " avg_val_loss = total_eval_loss / len(validation_dataloader)\n", "\n", " avg_val_accuracy = total_eval_accuracy / len(validation_dataloader)\n", " print(\" Accuracy: {0:.2f}\".format(avg_val_accuracy))\n", " \n", " validation_time = format_time(time.time() - t0)\n", " print(\" Validation took: {:}\".format(validation_time))\n", " print(\" Validation Loss: {0:.2f}\".format(avg_val_loss))\n", "\n", " training_stats.append(\n", " {\n", " 'epoch': epoch_i + 1,\n", " 'Training Loss': avg_train_loss,\n", " 'Training Accur.': avg_train_acc,\n", " 'Valid. Loss': avg_val_loss,\n", " 'Valid. Accur.': avg_val_accuracy,\n", " 'Training Time': training_time,\n", " 'Validation Time': validation_time\n", " }\n", " )\n", "\n", "print(\"\")\n", "print(\"Training complete!\")\n", "\n", "print(\"Total training took {:} (h:mm:ss)\".format(format_time(time.time()-total_t0)))" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "xsHxfslka1u5", "outputId": "60bea81f-a963-4599-ca22-b1992c14a3e5" }, "execution_count": 25, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "\n", "======== Epoch 1 / 4 ========\n", "Training...\n", " Batch 40 of 258. Elapsed: 0:01:06.\n", " Batch 80 of 258. Elapsed: 0:02:13.\n", " Batch 120 of 258. Elapsed: 0:03:22.\n", " Batch 160 of 258. Elapsed: 0:04:32.\n", " Batch 200 of 258. Elapsed: 0:05:42.\n", " Batch 240 of 258. Elapsed: 0:06:52.\n", "\n", " Average training loss: 0.09\n", " Average training acc: 0.42\n", " Training epcoh took: 0:07:22\n", "\n", "Running Validation...\n", " Accuracy: 0.68\n", " Validation took: 0:00:25\n", " Validation Loss: 0.00\n", "\n", "======== Epoch 2 / 4 ========\n", "Training...\n", " Batch 40 of 258. Elapsed: 0:01:10.\n", " Batch 80 of 258. Elapsed: 0:02:19.\n", " Batch 120 of 258. Elapsed: 0:03:29.\n", " Batch 160 of 258. Elapsed: 0:04:39.\n", " Batch 200 of 258. Elapsed: 0:05:48.\n", " Batch 240 of 258. Elapsed: 0:06:58.\n", "\n", " Average training loss: 0.00\n", " Average training acc: 0.49\n", " Training epcoh took: 0:07:28\n", "\n", "Running Validation...\n", " Accuracy: 0.72\n", " Validation took: 0:00:25\n", " Validation Loss: 0.00\n", "\n", "======== Epoch 3 / 4 ========\n", "Training...\n", " Batch 40 of 258. Elapsed: 0:01:10.\n", " Batch 80 of 258. Elapsed: 0:02:19.\n", " Batch 120 of 258. Elapsed: 0:03:29.\n", " Batch 160 of 258. Elapsed: 0:04:39.\n", " Batch 200 of 258. Elapsed: 0:05:49.\n", " Batch 240 of 258. Elapsed: 0:06:58.\n", "\n", " Average training loss: 0.00\n", " Average training acc: 0.50\n", " Training epcoh took: 0:07:29\n", "\n", "Running Validation...\n", " Accuracy: 0.72\n", " Validation took: 0:00:25\n", " Validation Loss: 0.00\n", "\n", "======== Epoch 4 / 4 ========\n", "Training...\n", " Batch 40 of 258. Elapsed: 0:01:10.\n", " Batch 80 of 258. Elapsed: 0:02:19.\n", " Batch 120 of 258. Elapsed: 0:03:29.\n", " Batch 160 of 258. Elapsed: 0:04:39.\n", " Batch 200 of 258. Elapsed: 0:05:49.\n", " Batch 240 of 258. Elapsed: 0:06:58.\n", "\n", " Average training loss: 0.00\n", " Average training acc: 0.50\n", " Training epcoh took: 0:07:29\n", "\n", "Running Validation...\n", " Accuracy: 0.72\n", " Validation took: 0:00:25\n", " Validation Loss: 0.00\n", "\n", "Training complete!\n", "Total training took 0:31:29 (h:mm:ss)\n" ] } ] }, { "cell_type": "markdown", "source": [ "# Train summary" ], "metadata": { "id": "xIpFPoRb91Or" } }, { "cell_type": "code", "source": [ "import pandas as pd\n", "\n", "pd.set_option('precision', 2)\n", "df_stats = pd.DataFrame(data=training_stats)\n", "\n", "df_stats = df_stats.set_index('epoch')\n", "df_stats" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 204 }, "id": "GjYqBrrO93Oh", "outputId": "d5742682-1cb4-4910-ab30-9424671b31e4" }, "execution_count": 26, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ " Training Loss Training Accur. Valid. Loss Valid. Accur. \\\n", "epoch \n", "1 8.67e-02 0.42 1.46e-08 0.68 \n", "2 2.02e-06 0.49 2.65e-10 0.72 \n", "3 1.50e-06 0.50 0.00e+00 0.72 \n", "4 1.10e-06 0.50 0.00e+00 0.72 \n", "\n", " Training Time Validation Time \n", "epoch \n", "1 0:07:22 0:00:25 \n", "2 0:07:28 0:00:25 \n", "3 0:07:29 0:00:25 \n", "4 0:07:29 0:00:25 " ], "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", " \n", " \n", " \n", "
Training LossTraining Accur.Valid. LossValid. Accur.Training TimeValidation Time
epoch
18.67e-020.421.46e-080.680:07:220:00:25
22.02e-060.492.65e-100.720:07:280:00:25
31.50e-060.500.00e+000.720:07:290:00:25
41.10e-060.500.00e+000.720:07:290:00:25
\n", "
\n", " \n", " \n", " \n", "\n", " \n", "
\n", "
\n", " " ] }, "metadata": {}, "execution_count": 26 } ] }, { "cell_type": "code", "source": [ "import matplotlib.pyplot as plt\n", "%matplotlib inline\n", "\n", "import seaborn as sns\n", "\n", "sns.set(style='darkgrid')\n", "\n", "sns.set(font_scale=1.5)\n", "plt.rcParams[\"figure.figsize\"] = (12,6)\n", "\n", "plt.plot(df_stats['Training Loss'], 'b-o', label=\"Training\")\n", "plt.plot(df_stats['Valid. Loss'], 'g-o', label=\"Validation\")\n", "\n", "plt.title(\"Training & Validation Loss\")\n", "plt.xlabel(\"Epoch\")\n", "plt.ylabel(\"Loss\")\n", "plt.legend()\n", "plt.xticks([1, 2, 3, 4])\n", "\n", "plt.show()" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 427 }, "id": "Xk3gzkeU96v3", "outputId": "11211824-04f4-43b2-984f-56f9965d38bc" }, "execution_count": 27, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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zp8/r8TERF24cEGvvvqq6XiAW2jRokWN3zdWr14tLy8vt/mewm9idWMRERE1jrdr107bt29v4DSAe4qPj9e+fftqPMZaAf5r/fr1SkpK0qlTp3T16lW1aNFCvXv31owZM9SvXz/T8QC3Fh8f71a/iZUCDwAAAHgQ3kIDAAAAeBAKPAAAAOBBKPAAAACAB6HAAwAAAB6EAg8AAAB4EAo8AAAA4EEo8AAAAIAHocADANxefHy87r33XtMxAMAtNDMdAABgxt69ezVt2rRaj3t5eSk1NbUBEwEA6oICDwBN3JgxY3T33XdXG7da+SEtALgjCjwANHHR0dEaN26c6RgAgDri8QoA4LqysrIUERGhpUuXKjk5WWPHjlWPHj00ZMgQLV26VBUVFdXOSU9P19y5c9W/f3/16NFDo0aN0vLly1VZWVltrt1u1x//+EcNGzZMMTExGjBggKZPn67du3dXm3vx4kX95je/0R133KFevXrpkUce0enTp+vlvgHAXfEEHgCauOLiYl26dKnauI+PjwIDA11fb9++XefOndOUKVN0yy23aPv27frrX/+q7OxsvfDCC655R48eVXx8vJo1a+aau2PHDi1evFjp6elasmSJa25WVpZ++ctfKjc3V+PGjVNMTIyKi4t1+PBh7dmzR4MGDXLNLSoq0tSpU9WrVy8tWLBAWVlZevvttzVnzhwlJyfLy8urnv6GAMC9UOABoIlbunSpli5dWm18yJAhevPNN11fp6ena/369erevbskaerUqXr88ceVmJioSZMmqXfv3pKkP/3pTyorK9N7772nyMhI19z58+crOTlZEyZM0IABAyRJ//u//6ucnBwlJCTorrvuqnJ9h8NR5evLly/rkUce0axZs1xjISEheuWVV7Rnz55q5wNAY0WBB4AmbtKkSYqLi6s2HhISUuXrgQMHusq7JFksFs2cOVMff/yxtm7dqt69eys3N1cHDx7UiBEjXOX92txf/epX2rx5s7Zu3aoBAwYoLy9P//nPf3TXXXfVWL6//yFaq9Va7a05d955pyTp7NmzFHgATQYFHgCauLCwMA0cOPAH54WHh1cb69KliyTp3Llzkr7dEvPd8e+67bbbZLVaXXO/+uorOZ1ORUdH1ylnaGiofH19q4wFBQVJkvLy8ur0ZwBAY8CHWAEAHuF6e9ydTmcDJgEAsyjwAIA6ycjIqDZ26tQpSVKHDh0kSe3bt68y/l2ZmZlyOByuuR07dpTFYlFaWlp9RQaARokCDwCokz179ujLL790fe10OpWQkCBJGj58uCSpdevW6tOnj3bs2KETJ05UmfvWW29JkkaMGCHp2+0vd999t3bt2qU9e/ZUux5P1QGgZuyBB4AmLjU1VUlJSTUeu1bMJSkyMlIPPfSQpkyZIpvNpm3btmnPnj0aN26c+vTp45q3aNEixcfHa8qUKZo8ebJsNpt27NihTz75RGPGjHG9gUaSnn32WaWmpmrWrFkaP368unfvrtLSUh0+fFjt2rXTb3/72/q7cQDwUBR4AGjikpOTlZycXOOxLVu2uPae33vvvercubPefPNNnT59Wq1bt9acOXM0Z86cKuf06NFD7733nv7yl7/o3XffVVFRkTp06KCFCxdqxowZVeZ26NBB77//vl5//XXt2rVLSUlJatmypSIjIzVp0qT6uWEA8HAWJz+jBABcR1ZWloYNG6bHH39cv/71r03HAYAmjz3wAAAAgAehwAMAAAAehAIPAAAAeBD2wAMAAAAehCfwAAAAgAehwAMAAAAehAIPAAAAeBBGG+55AAAAHElEQVQKPAAAAOBBKPAAAACAB6HAAwAAAB7k/wE9KnI746BFMQAAAABJRU5ErkJggg==\n" }, "metadata": {} } ] }, { "cell_type": "markdown", "source": [ "# Create test loader" ], "metadata": { "id": "UJlKxl0r-W-m" } }, { "cell_type": "code", "source": [ "prediction_dataloader = DataLoader(\n", " test_dataset,\n", " sampler = SequentialSampler(test_dataset),\n", " batch_size = batch_size\n", " )" ], "metadata": { "id": "eQGsEEDh-YxG" }, "execution_count": 28, "outputs": [] }, { "cell_type": "markdown", "source": [ "# Evaluate on test dataset" ], "metadata": { "id": "gHSDNWvA-aq9" } }, { "cell_type": "code", "source": [ "print('Predicting labels for {:,} test sentences...'.format(len(test_dataset)))\n", "\n", "model.eval()\n", "predictions , true_labels = [], []\n", "\n", "for batch in prediction_dataloader:\n", "\n", " b_input_ids = batch[0].to(device)\n", " b_input_mask = batch[1].to(device)\n", " y = batch[2].to(device)\n", " \n", " with torch.no_grad(): \n", "\n", " generated_ids = model.generate(\n", " input_ids = b_input_ids,\n", " attention_mask = b_input_mask, \n", " max_length=2, \n", " num_beams=2,\n", " repetition_penalty=2.5, \n", " length_penalty=1.0, \n", " early_stopping=True\n", " )\n", " \n", " preds = [tokenizer.decode(g, skip_special_tokens=True, clean_up_tokenization_spaces=True) for g in generated_ids]\n", " target = [tokenizer.decode(t, skip_special_tokens=True, clean_up_tokenization_spaces=True) for t in y]\n", "\n", " predictions.append(preds)\n", " true_labels.append(target)\n", "\n", "print(' DONE.')" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "OPcQkHnJ-c9A", "outputId": "ba586e95-e91f-4424-aee0-67493db5a99a" }, "execution_count": 29, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Predicting labels for 1,000 test sentences...\n", " DONE.\n" ] } ] }, { "cell_type": "code", "source": [ "results_ok = 0\n", "results_false = 0\n", "for idx, true_labels_batch in enumerate(true_labels):\n", " for bidx, true_label in enumerate(true_labels_batch):\n", " if true_label == predictions[idx][bidx]:\n", " results_ok += 1\n", " else:\n", " results_false += 1\n", "\n", "print(\"Correct predictions: {}, incorrect results: {}, accuracy: {}\".format(results_ok, results_false, float(results_ok) / (results_ok + results_false)))" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "ifz56jYW-zBN", "outputId": "005fd31f-28de-422a-9ccf-d1a15568c706" }, "execution_count": 30, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Correct predictions: 738, incorrect results: 262, accuracy: 0.738\n" ] } ] }, { "cell_type": "code", "source": [ "print(\"Sample prediction: {}, expected: {}\".format(predictions[2][0], true_labels[2][0]))" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "1LqVo4wW-2g-", "outputId": "084746aa-4677-4c54-b2ac-9d9af4a2488c" }, "execution_count": 31, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Sample prediction: 0, expected: 0\n" ] } ] }, { "cell_type": "markdown", "source": [ "# MCC Score" ], "metadata": { "id": "dLYc9WXz_B1o" } }, { "cell_type": "code", "source": [ "from sklearn.metrics import matthews_corrcoef\n", "\n", "matthews_set = []\n", "print('Calculating Matthews Corr. Coef. for each batch...')\n", "\n", "for i in range(len(true_labels)):\n", " matthews = matthews_corrcoef(true_labels[i], predictions[i]) \n", " matthews_set.append(matthews)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "hPEPpXXX_DXR", "outputId": "eaac6737-fc5b-4aee-c7e3-3c2cffedb073" }, "execution_count": 32, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Calculating Matthews Corr. Coef. for each batch...\n" ] } ] }, { "cell_type": "code", "source": [ "ax = sns.barplot(x=list(range(len(matthews_set))), y=matthews_set, ci=None)\n", "\n", "plt.title('MCC Score per Batch')\n", "plt.ylabel('MCC Score (-1 to +1)')\n", "plt.xlabel('Batch #')\n", "\n", "plt.show()" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 427 }, "id": "qjtAYcme_EyM", "outputId": "697cb818-7af9-4237-e9c4-1712222ec85b" }, "execution_count": 33, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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L7zgcDgcjq5duzomTZpUue3atWsdsbGxjlWrVrm8v549ezq6d+9+zXnn5eU5+vXr54iNjXX06tXL8fjjjzuWL1/u2L9/v6OsrKxKbHl5ueO+++5zdOrUyZGdnV1trIr4vLw8R9euXR2DBg1yFBQUVPYXFBQ4Bg4c6OjatasjPz+/sr1///6O2NhYx8aNG6uNOWzYMMeQIUOqjONwOBy7du1yxMbGOtLS0mo9xorxV69eXaV99erVjtjYWMfy5curtb3//vtVYgsKChz9+vWr8r5VvOe3336747vvvqs1jx/n8+N/nTt3drz99tvV4ouKiqq1Xbx40TF48GDHPffcU6U9OTnZERsbW+N+H3nkkRqPzeFwVHmvJ02a5IiNjXWsWLGiSsxrr73mdHsA/o0pOgBueI0aNdKAAQMqp0vs2rVLBQUFNU7Pka7MN5fk1pzzwsLCWud5uyIiIkLp6emaNm2awsPD9e677+r3v/+9HnjgAQ0aNEj/+Mc/KmOzs7N17NgxjR49WnFxcdXGCgi48iNgz549unjxoiZPnlzlmMLCwjR58mRdvHhRH374YZVtIyMjNXr06CptR48e1dGjRzV06FDZ7Xbl5uZW/uvRo4dCQkJqnFpSk7CwMN1///1V2u6//36FhYVVmeqydetW/fSnP1XHjh2r7M9ut6t37946cOCAiouLq4wzYsQINWnSxKU8KrRo0UKrV6/W6tWrtWrVKr3wwgvq0qWLfvvb3yotLa1KbEhISOX/L126pPPnz+vSpUu68847deLEicrzx0heXp4++OAD9e3bV3379q3WX/He/fDrilWhKtx5552SrkzRAnBjYYoOAOjKNJ3p06frk08+UVpamuLj49WuXbsaYyuK4KKiIpfHDwsLcyveSOPGjTVnzhzNmTNH58+f1//+7//qnXfe0datWzVr1ixlZmaqdevWlfP1b731VsPxzpw5I0lq3759tb6KttOnT1dpb9WqVbVpHydOnJAkLVmyREuWLKlxX999913tB/h/4/94VSOLxaJWrVpVyeXEiRMqLi52ek+CJJ0/f17Nmzev/PonP/mJSzn8UEhIiHr37l2lbdiwYRo1apSee+45DRgwQI0aNZJ0ZXnVRYsW6b333qvxnoELFy7U+svh119/LYfDUet7VyE6OlrBwcFV2iIjIyVd+WUBwI2FAh8AJPXp00fN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\n" }, "metadata": {} } ] }, { "cell_type": "code", "source": [ "flat_predictions = np.concatenate(predictions, axis=0)\n", "flat_true_labels = np.concatenate(true_labels, axis=0)\n", "\n", "mcc = matthews_corrcoef(flat_true_labels, flat_predictions)\n", "print('Total MCC: %.3f' % mcc)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "rkonN244_HPz", "outputId": "83396102-49b8-4351-ea83-92231720881e" }, "execution_count": 34, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Total MCC: 0.190\n" ] } ] }, { "cell_type": "markdown", "source": [ "# Save model" ], "metadata": { "id": "GPhCp068_Iwq" } }, { "cell_type": "code", "source": [ "from google.colab import drive\n", "\n", "drive.mount('/content/gdrive/', force_remount=True)\n", "\n", "output_dir = '/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/T5_Model'\n", "print(\"Saving model to %s\" % output_dir)\n", "\n", "model_to_save = model.module if hasattr(model, 'module') else model \n", "model_to_save.save_pretrained(output_dir)\n", "tokenizer.save_pretrained(output_dir)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "avafCMoS_KDF", "outputId": "baf501e6-b6c2-4394-db6c-4a971328d464" }, "execution_count": 35, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Mounted at /content/gdrive/\n", "Saving model to /content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/T5_Model\n" ] }, { "output_type": "execute_result", "data": { "text/plain": [ "('/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/T5_Model/tokenizer_config.json',\n", " '/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/T5_Model/special_tokens_map.json',\n", " '/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/T5_Model/spiece.model',\n", " '/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/T5_Model/added_tokens.json')" ] }, "metadata": {}, "execution_count": 35 } ] }, { "cell_type": "markdown", "source": [ "# Bibliografia\n", "- https://github.com/Shivanandroy/T5-Finetuning-PyTorch/blob/main/notebook/T5_Fine_tuning_with_PyTorch.ipynb\n", "- https://mccormickml.com/2019/07/22/BERT-fine-tuning/#a1-saving--loading-fine-tuned-model\n", "- https://huggingface.co/docs/transformers/model_doc/t5#training" ], "metadata": { "id": "wHzm2_nDA6i-" } } ] }