{ "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": { "26f1d5f367aa49c9a572adcded83219a": { "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_b5eaae22aefd429d9946c7c644c0cd02", "IPY_MODEL_3d95f755191647889171d659ddd6c755", "IPY_MODEL_322e6c92a93845d683028f1ac77fd991" ], "layout": "IPY_MODEL_a1edcaafe9a349a487875ad77ccd00c9" } }, "b5eaae22aefd429d9946c7c644c0cd02": { "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_f1d9de6c2e864d5481f04af80d92058e", "placeholder": "​", "style": "IPY_MODEL_e2124cb283c045f5822a395ce8b5fe6d", "value": "Downloading builder script: 100%" } }, "3d95f755191647889171d659ddd6c755": { "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_e4e57cf95df04f56a4ef4ae990344116", "max": 3208, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_cccb07d8327342fa8f30de34f056543e", "value": 3208 } }, "322e6c92a93845d683028f1ac77fd991": { "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_a1fa218698f64411a80bcf999ca1e786", "placeholder": "​", "style": "IPY_MODEL_3cf8102ac99f4c419dda058164653aaa", "value": " 3.21k/3.21k [00:00<00:00, 158kB/s]" } }, "a1edcaafe9a349a487875ad77ccd00c9": { "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 } }, "f1d9de6c2e864d5481f04af80d92058e": { "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 } }, "e2124cb283c045f5822a395ce8b5fe6d": { "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": "" } }, "e4e57cf95df04f56a4ef4ae990344116": { "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 } }, "cccb07d8327342fa8f30de34f056543e": { "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": "" } }, "a1fa218698f64411a80bcf999ca1e786": { "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 } }, "3cf8102ac99f4c419dda058164653aaa": { "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": "" } }, "fc229165f10d40d59c6d751a13848f6d": { "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_bdafd6edd15c45f0849ec4973f4f0930", "IPY_MODEL_9e821b7e6efa4cbcb200944969338ac0", "IPY_MODEL_043b8b140ad54391ba0aff7062628eea" ], "layout": "IPY_MODEL_6730bd27c7404ccba47d535da42dc4df" } }, "bdafd6edd15c45f0849ec4973f4f0930": { "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_9ea0e304a63548bfa044e31f8b4c15d5", "placeholder": "​", "style": "IPY_MODEL_0d1e9d91e7dc4707b20266aaef49eb1c", "value": "Downloading metadata: 100%" } }, "9e821b7e6efa4cbcb200944969338ac0": { "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_6eac05fb740f4483953ba2e1ad610019", "max": 1687, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_28d758c4f4a8401c9a30fb87a71be070", "value": 1687 } }, "043b8b140ad54391ba0aff7062628eea": { "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_c36f89ddd4b847c2a0cceeae00aee173", "placeholder": "​", "style": "IPY_MODEL_68ad89e9846d479ba7d4e3828e0cfb77", "value": " 1.69k/1.69k [00:00<00:00, 82.7kB/s]" } }, "6730bd27c7404ccba47d535da42dc4df": { "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 } }, "9ea0e304a63548bfa044e31f8b4c15d5": { "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 } }, "0d1e9d91e7dc4707b20266aaef49eb1c": { "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": "" } }, "6eac05fb740f4483953ba2e1ad610019": { "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 } }, "28d758c4f4a8401c9a30fb87a71be070": { "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": "" } }, "c36f89ddd4b847c2a0cceeae00aee173": { "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 } }, "68ad89e9846d479ba7d4e3828e0cfb77": { "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": "" } }, "39e2d7303cdf4d02bf2d31352a6e1e46": { "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_50e674ad4a94415cb45eacd4fc3fe267", "IPY_MODEL_ac515908ad4e48e392ab95322b9fce70", "IPY_MODEL_5a286626f8824392a545c771d84a9c1e" ], "layout": "IPY_MODEL_05abdaeba97b4cdba119f09cdd7d6dd5" } }, "50e674ad4a94415cb45eacd4fc3fe267": { "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_a2497b2b41e94dad9750dd9dafe56685", "placeholder": "​", "style": "IPY_MODEL_abff67fe155a4646a27f821911e433ad", "value": "Downloading readme: 100%" } }, "ac515908ad4e48e392ab95322b9fce70": { "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_269fd836fbb0407a9e9eff325fdf8abe", "max": 4872, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_f102c4257ca545b88da535d532c912c8", "value": 4872 } }, "5a286626f8824392a545c771d84a9c1e": { "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_4a00e2b3f66f4bfc8f17cc4ceeaec36c", "placeholder": "​", "style": "IPY_MODEL_ad54e2070fe04f699966193c4f009599", "value": " 4.87k/4.87k [00:00<00:00, 216kB/s]" } }, "05abdaeba97b4cdba119f09cdd7d6dd5": { "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 } }, "a2497b2b41e94dad9750dd9dafe56685": { "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 } }, "abff67fe155a4646a27f821911e433ad": { "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": "" } }, "269fd836fbb0407a9e9eff325fdf8abe": { "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 } }, "f102c4257ca545b88da535d532c912c8": { "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": "" } }, "4a00e2b3f66f4bfc8f17cc4ceeaec36c": { "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 } }, "ad54e2070fe04f699966193c4f009599": { "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": "" } }, "1b3b7113964f4323ba191fcf81234c9e": { "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_97271051ebb84baf817732aa9a0c40ed", "IPY_MODEL_522da98c97d347de8ff5e6e2dda3dda7", "IPY_MODEL_fae8dbc9f7924039aebcda0a044323ec" ], "layout": "IPY_MODEL_16d7fdc67b144af7a4a1d310d90aeb7a" } }, "97271051ebb84baf817732aa9a0c40ed": { "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_1150dfcfc607448b8cb6e7d2d81717f4", "placeholder": "​", "style": "IPY_MODEL_c88918df12b44f1a8cefebab628eb4bd", "value": "Downloading data: 100%" } }, "522da98c97d347de8ff5e6e2dda3dda7": { "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_9395f6da4e5c437d80b65c207e81f9bd", "max": 203415, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_7d20ee84bb5e45f282e960a37f544901", "value": 203415 } }, "fae8dbc9f7924039aebcda0a044323ec": { "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_fc689018e6f04ad0aeae11caca7ec1e6", "placeholder": "​", "style": "IPY_MODEL_2e0c88489b06443d849ca955b77b2577", "value": " 203k/203k [00:00<00:00, 423kB/s]" } }, "16d7fdc67b144af7a4a1d310d90aeb7a": { "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 } }, "1150dfcfc607448b8cb6e7d2d81717f4": { "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 } }, "c88918df12b44f1a8cefebab628eb4bd": { "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": "" } }, "9395f6da4e5c437d80b65c207e81f9bd": { "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 } }, "7d20ee84bb5e45f282e960a37f544901": { "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": "" } }, "fc689018e6f04ad0aeae11caca7ec1e6": { "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 } }, "2e0c88489b06443d849ca955b77b2577": { "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": "" } }, "442c9a346ffe451eb7fb70e906b554a7": { "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_25980d4dc17b412c9e76a9efdf251759", "IPY_MODEL_704713f8cceb4792bb986520698d0be5", "IPY_MODEL_6f4fc94edab84a65ba57b34a2d0b2422" ], "layout": "IPY_MODEL_429b0cd8d6a643ac8a69c5b6adbd53a4" } }, "25980d4dc17b412c9e76a9efdf251759": { "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_0d71e715ffeb445e9e233a6d6bc2de2b", "placeholder": "​", "style": "IPY_MODEL_c713be1ba0904e7a8e95a6eb7108b630", "value": "Generating train split: 100%" } }, "704713f8cceb4792bb986520698d0be5": { "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_91b3bd32d53b4fe5ad21814fcb73a4a2", "max": 5574, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_0cbf05e2f58f4bd289e3e845f64dce7e", "value": 5574 } }, "6f4fc94edab84a65ba57b34a2d0b2422": { "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_edbf793856b24cb3a0d81c110e2c58fd", "placeholder": "​", "style": "IPY_MODEL_d57ed46f96fa4d51bac74fcc326700cc", "value": " 5574/5574 [00:19<00:00, 17709.20 examples/s]" } }, "429b0cd8d6a643ac8a69c5b6adbd53a4": { "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 } }, "0d71e715ffeb445e9e233a6d6bc2de2b": { "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 } }, "c713be1ba0904e7a8e95a6eb7108b630": { "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": "" } }, "91b3bd32d53b4fe5ad21814fcb73a4a2": { "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 } }, "0cbf05e2f58f4bd289e3e845f64dce7e": { "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": "" } }, "edbf793856b24cb3a0d81c110e2c58fd": { "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 } }, "d57ed46f96fa4d51bac74fcc326700cc": { "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": "" } }, "bab7298185af41188969a03e81489efc": { "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_b0fba461ad5f4826a082787223335564", "IPY_MODEL_e6ec15b30b8040d38098ea1fd383b77d", "IPY_MODEL_678b9387f0454322b78f873de4febbda" ], "layout": "IPY_MODEL_146e93df04c6431fbc5f810541f61bc4" } }, "b0fba461ad5f4826a082787223335564": { "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_0632ab2656404dd4b64330fc98a9a229", "placeholder": "​", "style": "IPY_MODEL_61d2037630ad44d5ad6204724fe62108", "value": "100%" } }, "e6ec15b30b8040d38098ea1fd383b77d": { "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_c7465ee25ec341709908366f2c1e6cb9", "max": 1, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_0f57b73714264ca8b6b5a83e7d03a340", "value": 1 } }, "678b9387f0454322b78f873de4febbda": { "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_0d83fcf09db44518889abe9e2d3a4756", "placeholder": "​", "style": "IPY_MODEL_3da9d5cbd9ce48758e5a86242c5c74a3", "value": " 1/1 [00:00<00:00, 31.16it/s]" } }, "146e93df04c6431fbc5f810541f61bc4": { "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 } }, "0632ab2656404dd4b64330fc98a9a229": { "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 } }, "61d2037630ad44d5ad6204724fe62108": { "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": "" } }, "c7465ee25ec341709908366f2c1e6cb9": { "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 } }, "0f57b73714264ca8b6b5a83e7d03a340": { "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": "" } }, "0d83fcf09db44518889abe9e2d3a4756": { "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 } }, "3da9d5cbd9ce48758e5a86242c5c74a3": { "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": "" } }, "645d79ef5a2143af93b9dd7a66398ef4": { "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_3a5a82fb677b49fa964e7841a2a384c5", "IPY_MODEL_c4e7374b8fdf420bb7024c820aac501d", "IPY_MODEL_9e9b5577000f43d0a8c14ef9e17f2770" ], "layout": "IPY_MODEL_a73714a6ba874de28edc7a6b61db1289" } }, "3a5a82fb677b49fa964e7841a2a384c5": { "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_5b745905ea6d4f08b51dbaaa05dba69c", "placeholder": "​", "style": "IPY_MODEL_c83ab170d2704a1f8e32f70f6b40006b", "value": "Downloading (…)solve/main/vocab.txt: 100%" } }, "c4e7374b8fdf420bb7024c820aac501d": { "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_38ace4c2fd31432e801fd5f073c40a4f", "max": 231508, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_9de94d9afbf6465a9f23898d1789da67", "value": 231508 } }, "9e9b5577000f43d0a8c14ef9e17f2770": { "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_0c1e159cc977492fb1ff554818f8b90c", "placeholder": "​", "style": "IPY_MODEL_b78fb9ef1ff9445d86a68eb37d7f6959", "value": " 232k/232k [00:00<00:00, 1.94MB/s]" } }, "a73714a6ba874de28edc7a6b61db1289": { "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 } }, "5b745905ea6d4f08b51dbaaa05dba69c": { "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 } }, "c83ab170d2704a1f8e32f70f6b40006b": { "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": "" } }, "38ace4c2fd31432e801fd5f073c40a4f": { "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 } }, "9de94d9afbf6465a9f23898d1789da67": { "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": "" } }, "0c1e159cc977492fb1ff554818f8b90c": { "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 } }, "b78fb9ef1ff9445d86a68eb37d7f6959": { "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": "" } }, "4e79563a33e345a28ebd242f88f1391d": { "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_b0e31c0236d043099a916902a79baa3b", "IPY_MODEL_0d50f317048c4b3b9d0e433fc2b8b81f", "IPY_MODEL_a74a190e28764f86980748e1861d4ae9" ], "layout": "IPY_MODEL_d3e4e3c42fec41afa141c27b1f0ed279" } }, "b0e31c0236d043099a916902a79baa3b": { "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_bf117c3c64c04ee6b94e03e82408ed2e", "placeholder": "​", "style": "IPY_MODEL_b3ec2fe604104083986a7720d5a2dd65", "value": "Downloading (…)okenizer_config.json: 100%" } }, "0d50f317048c4b3b9d0e433fc2b8b81f": { "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_2247bfff362241e7bf036cf2596aea99", "max": 28, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_07383fac57cf498e9eed23259a2d5763", "value": 28 } }, "a74a190e28764f86980748e1861d4ae9": { "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_30e3e89595d541be81a95b2d600e4fba", "placeholder": "​", "style": "IPY_MODEL_65f61b687a2041bbbb0f6807d2f5b01c", "value": " 28.0/28.0 [00:00<00:00, 759B/s]" } }, "d3e4e3c42fec41afa141c27b1f0ed279": { "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 } }, "bf117c3c64c04ee6b94e03e82408ed2e": { "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 } }, "b3ec2fe604104083986a7720d5a2dd65": { "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": "" } }, "2247bfff362241e7bf036cf2596aea99": { "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 } }, "07383fac57cf498e9eed23259a2d5763": { "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": "" } }, "30e3e89595d541be81a95b2d600e4fba": { "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 } }, "65f61b687a2041bbbb0f6807d2f5b01c": { "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": "" } }, "71f3be8385a74b10a015974e168e6bd1": { "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_f1b905ed8a0a412caab7515ea016267f", "IPY_MODEL_a7fa5557847f453b89ded8dde3c372db", "IPY_MODEL_a81e4849602f473386cb1782fa4de83d" ], "layout": "IPY_MODEL_026b251acf294bb8902aff109a7f6f5d" } }, "f1b905ed8a0a412caab7515ea016267f": { "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_6a4966cc6cc841fe86a704cd98bdb52d", "placeholder": "​", "style": "IPY_MODEL_371e82101aa14e90839490638c90a68e", "value": "Downloading (…)lve/main/config.json: 100%" } }, "a7fa5557847f453b89ded8dde3c372db": { "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_8dd3f484a6e94b8aae8b7cb1675e7ec1", "max": 570, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_72a3ecffa85948169f786ab1154b943f", "value": 570 } }, "a81e4849602f473386cb1782fa4de83d": { "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_79621956769e4912bb6965df4e2c574a", "placeholder": "​", "style": "IPY_MODEL_e9a97237031d4bbd9a3582936f25d72b", "value": " 570/570 [00:00<00:00, 17.2kB/s]" } }, "026b251acf294bb8902aff109a7f6f5d": { "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 } }, "6a4966cc6cc841fe86a704cd98bdb52d": { "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 } }, "371e82101aa14e90839490638c90a68e": { "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": "" } }, "8dd3f484a6e94b8aae8b7cb1675e7ec1": { "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 } }, "72a3ecffa85948169f786ab1154b943f": { "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": "" } }, "79621956769e4912bb6965df4e2c574a": { "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 } }, "e9a97237031d4bbd9a3582936f25d72b": { "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": "" } }, "371154699498422189229c97ccbfa508": { "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_51de31720ffc40ba8067dd2c2033851b", "IPY_MODEL_8c1eaf11c9db4c09aa6936a201615412", "IPY_MODEL_57ac64a5a8534de889c977d558fb81b8" ], "layout": "IPY_MODEL_7fb1c882a0524cbd8a71ab42cf54d02a" } }, "51de31720ffc40ba8067dd2c2033851b": { "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_981ae04516214af6995cd9f846f5f45a", "placeholder": "​", "style": "IPY_MODEL_815a8f36e137412aa54aa012adb7306d", "value": "Downloading (…)"pytorch_model.bin";: 100%" } }, "8c1eaf11c9db4c09aa6936a201615412": { "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_83723a5f3104486193880e58b7e9228c", "max": 440473133, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_9947d9cd0a124c26b132c75e3bcafd2b", "value": 440473133 } }, "57ac64a5a8534de889c977d558fb81b8": { "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_a323a1744edb4e84b7f2b80530abc097", "placeholder": "​", "style": "IPY_MODEL_665af58d5b5349f1a85dd4493407020f", "value": " 440M/440M [00:02<00:00, 145MB/s]" } }, "7fb1c882a0524cbd8a71ab42cf54d02a": { "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 } }, "981ae04516214af6995cd9f846f5f45a": { "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 } }, "815a8f36e137412aa54aa012adb7306d": { "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": "" } }, "83723a5f3104486193880e58b7e9228c": { "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 } }, "9947d9cd0a124c26b132c75e3bcafd2b": { "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": "" } }, "a323a1744edb4e84b7f2b80530abc097": { "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 } }, "665af58d5b5349f1a85dd4493407020f": { "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": "t2xXKpOpcZg_" } }, { "cell_type": "code", "execution_count": 1, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "fdpN7ugfauLD", "outputId": "e96c1a3b-4a4a-4ebc-b71c-163dd775c5ca" }, "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[31m51.3 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[31m43.3 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 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[31m107.7 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: 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: tqdm>=4.27 in /usr/local/lib/python3.8/dist-packages (from transformers) (4.64.1)\n", "Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.8/dist-packages (from transformers) (6.0)\n", "Requirement already satisfied: filelock in /usr/local/lib/python3.8/dist-packages (from transformers) (3.9.0)\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[31m27.2 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 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[31m20.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: pandas in /usr/local/lib/python3.8/dist-packages (from datasets) (1.3.5)\n", "Requirement already satisfied: fsspec[http]>=2021.11.1 in /usr/local/lib/python3.8/dist-packages (from datasets) (2023.1.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[31m24.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: pyarrow>=6.0.0 in /usr/local/lib/python3.8/dist-packages (from datasets) (9.0.0)\n", "Requirement already satisfied: dill<0.3.7 in /usr/local/lib/python3.8/dist-packages (from datasets) (0.3.6)\n", "Collecting responses<0.19\n", " Downloading responses-0.18.0-py3-none-any.whl (38 kB)\n", "Requirement already satisfied: typing-extensions in /usr/local/lib/python3.8/dist-packages (from torch) (4.4.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: attrs>=17.3.0 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (22.2.0)\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: aiosignal>=1.1.2 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (1.3.1)\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: frozenlist>=1.1.1 in /usr/local/lib/python3.8/dist-packages (from aiohttp->datasets) (1.3.3)\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: urllib3<1.27,>=1.21.1 in /usr/local/lib/python3.8/dist-packages (from requests->transformers) (1.24.3)\n", "Requirement already satisfied: idna<3,>=2.5 in /usr/local/lib/python3.8/dist-packages (from requests->transformers) (2.10)\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[31m18.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: pytz>=2017.3 in /usr/local/lib/python3.8/dist-packages (from pandas->datasets) (2022.7.1)\n", "Requirement 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: 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, 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 tokenizers-0.13.2 transformers-4.26.1 urllib3-1.26.14 xxhash-3.2.0\n" ] } ], "source": [ "!pip install transformers datasets torch" ] }, { "cell_type": "markdown", "source": [ "# Załadowanie pakietów" ], "metadata": { "id": "s8cfdy_6ldCn" } }, { "cell_type": "code", "source": [ "from datasets import load_dataset\n", "from transformers import BertTokenizer\n", "import torch\n", "from torch.utils.data import TensorDataset, random_split\n", "from torch.utils.data import DataLoader, RandomSampler, SequentialSampler\n", "from transformers import BertForSequenceClassification, BertConfig\n", "from transformers import get_linear_schedule_with_warmup\n", "import numpy as np\n", "import time\n", "import datetime\n", "import random" ], "metadata": { "id": "yLS_x9DIlgSs" }, "execution_count": 2, "outputs": [] }, { "cell_type": "markdown", "source": [ "# Załadowanie datasetu\n", "sms_spam" ], "metadata": { "id": "fPwDyJd5cdaE" } }, { "cell_type": "code", "source": [ "dataset = load_dataset(\"sms_spam\")" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 244, "referenced_widgets": [ "26f1d5f367aa49c9a572adcded83219a", "b5eaae22aefd429d9946c7c644c0cd02", "3d95f755191647889171d659ddd6c755", "322e6c92a93845d683028f1ac77fd991", "a1edcaafe9a349a487875ad77ccd00c9", "f1d9de6c2e864d5481f04af80d92058e", "e2124cb283c045f5822a395ce8b5fe6d", "e4e57cf95df04f56a4ef4ae990344116", "cccb07d8327342fa8f30de34f056543e", "a1fa218698f64411a80bcf999ca1e786", "3cf8102ac99f4c419dda058164653aaa", "fc229165f10d40d59c6d751a13848f6d", "bdafd6edd15c45f0849ec4973f4f0930", "9e821b7e6efa4cbcb200944969338ac0", "043b8b140ad54391ba0aff7062628eea", "6730bd27c7404ccba47d535da42dc4df", "9ea0e304a63548bfa044e31f8b4c15d5", "0d1e9d91e7dc4707b20266aaef49eb1c", "6eac05fb740f4483953ba2e1ad610019", "28d758c4f4a8401c9a30fb87a71be070", "c36f89ddd4b847c2a0cceeae00aee173", "68ad89e9846d479ba7d4e3828e0cfb77", "39e2d7303cdf4d02bf2d31352a6e1e46", "50e674ad4a94415cb45eacd4fc3fe267", "ac515908ad4e48e392ab95322b9fce70", "5a286626f8824392a545c771d84a9c1e", "05abdaeba97b4cdba119f09cdd7d6dd5", "a2497b2b41e94dad9750dd9dafe56685", "abff67fe155a4646a27f821911e433ad", "269fd836fbb0407a9e9eff325fdf8abe", "f102c4257ca545b88da535d532c912c8", "4a00e2b3f66f4bfc8f17cc4ceeaec36c", "ad54e2070fe04f699966193c4f009599", "1b3b7113964f4323ba191fcf81234c9e", "97271051ebb84baf817732aa9a0c40ed", "522da98c97d347de8ff5e6e2dda3dda7", "fae8dbc9f7924039aebcda0a044323ec", "16d7fdc67b144af7a4a1d310d90aeb7a", "1150dfcfc607448b8cb6e7d2d81717f4", "c88918df12b44f1a8cefebab628eb4bd", "9395f6da4e5c437d80b65c207e81f9bd", "7d20ee84bb5e45f282e960a37f544901", "fc689018e6f04ad0aeae11caca7ec1e6", "2e0c88489b06443d849ca955b77b2577", "442c9a346ffe451eb7fb70e906b554a7", "25980d4dc17b412c9e76a9efdf251759", "704713f8cceb4792bb986520698d0be5", "6f4fc94edab84a65ba57b34a2d0b2422", "429b0cd8d6a643ac8a69c5b6adbd53a4", "0d71e715ffeb445e9e233a6d6bc2de2b", "c713be1ba0904e7a8e95a6eb7108b630", "91b3bd32d53b4fe5ad21814fcb73a4a2", "0cbf05e2f58f4bd289e3e845f64dce7e", "edbf793856b24cb3a0d81c110e2c58fd", "d57ed46f96fa4d51bac74fcc326700cc", "bab7298185af41188969a03e81489efc", "b0fba461ad5f4826a082787223335564", "e6ec15b30b8040d38098ea1fd383b77d", "678b9387f0454322b78f873de4febbda", "146e93df04c6431fbc5f810541f61bc4", "0632ab2656404dd4b64330fc98a9a229", "61d2037630ad44d5ad6204724fe62108", "c7465ee25ec341709908366f2c1e6cb9", "0f57b73714264ca8b6b5a83e7d03a340", "0d83fcf09db44518889abe9e2d3a4756", "3da9d5cbd9ce48758e5a86242c5c74a3" ] }, "id": "N1EWeM0KcYtO", "outputId": "a323ce09-0f64-4317-b1ef-a154e54994d6" }, "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": "vH3yXhA0hT3n", "outputId": "1023a01b-60b0-4de0-ba97-28518b935a21" }, "execution_count": 9, "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": "z1hVsejihpO2" } }, { "cell_type": "code", "source": [ "batch_size = 32\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": "k4pXght6hre3" }, "execution_count": 10, "outputs": [] }, { "cell_type": "markdown", "source": [ "# Device check" ], "metadata": { "id": "MnErwHAbl_rF" } }, { "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": "aUvyBFxzmBUy", "outputId": "830f843f-f1ab-47ee-def7-0dfa3943b264" }, "execution_count": 11, "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 BERT model" ], "metadata": { "id": "o-YrojT-iIfY" } }, { "cell_type": "code", "source": [ "model = BertForSequenceClassification.from_pretrained(\n", " \"bert-base-uncased\",\n", " num_labels = 2,\n", " output_attentions = False,\n", " output_hidden_states = False,\n", ")\n", "\n", "model.cuda()" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 1000, "referenced_widgets": [ "371154699498422189229c97ccbfa508", "51de31720ffc40ba8067dd2c2033851b", "8c1eaf11c9db4c09aa6936a201615412", "57ac64a5a8534de889c977d558fb81b8", "7fb1c882a0524cbd8a71ab42cf54d02a", "981ae04516214af6995cd9f846f5f45a", "815a8f36e137412aa54aa012adb7306d", "83723a5f3104486193880e58b7e9228c", "9947d9cd0a124c26b132c75e3bcafd2b", "a323a1744edb4e84b7f2b80530abc097", "665af58d5b5349f1a85dd4493407020f" ] }, "id": "sIP3VGZmiK9s", "outputId": "2f4e0a13-f379-4033-cca7-92dfc0155cd5" }, "execution_count": 12, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "Downloading (…)\"pytorch_model.bin\";: 0%| | 0.00/440M [00:0012}\".format(p[0], str(tuple(p[1].size()))))\n", "\n", "print('\\n==== First Transformer ====\\n')\n", "\n", "for p in params[5:21]:\n", " print(\"{:<55} {:>12}\".format(p[0], str(tuple(p[1].size()))))\n", "\n", "print('\\n==== Output Layer ====\\n')\n", "\n", "for p in params[-4:]:\n", " print(\"{:<55} {:>12}\".format(p[0], str(tuple(p[1].size()))))" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "QRAQLbNuigcW", "outputId": "b01b3fc8-1c72-4529-bd88-cc019c097361" }, "execution_count": 13, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "The BERT model has 201 different named parameters.\n", "\n", "==== Embedding Layer ====\n", "\n", "bert.embeddings.word_embeddings.weight (30522, 768)\n", "bert.embeddings.position_embeddings.weight (512, 768)\n", "bert.embeddings.token_type_embeddings.weight (2, 768)\n", "bert.embeddings.LayerNorm.weight (768,)\n", "bert.embeddings.LayerNorm.bias (768,)\n", "\n", "==== First Transformer ====\n", "\n", "bert.encoder.layer.0.attention.self.query.weight (768, 768)\n", "bert.encoder.layer.0.attention.self.query.bias (768,)\n", "bert.encoder.layer.0.attention.self.key.weight (768, 768)\n", "bert.encoder.layer.0.attention.self.key.bias (768,)\n", "bert.encoder.layer.0.attention.self.value.weight (768, 768)\n", "bert.encoder.layer.0.attention.self.value.bias (768,)\n", "bert.encoder.layer.0.attention.output.dense.weight (768, 768)\n", "bert.encoder.layer.0.attention.output.dense.bias (768,)\n", "bert.encoder.layer.0.attention.output.LayerNorm.weight (768,)\n", "bert.encoder.layer.0.attention.output.LayerNorm.bias (768,)\n", "bert.encoder.layer.0.intermediate.dense.weight (3072, 768)\n", "bert.encoder.layer.0.intermediate.dense.bias (3072,)\n", "bert.encoder.layer.0.output.dense.weight (768, 3072)\n", "bert.encoder.layer.0.output.dense.bias (768,)\n", "bert.encoder.layer.0.output.LayerNorm.weight (768,)\n", "bert.encoder.layer.0.output.LayerNorm.bias (768,)\n", "\n", "==== Output Layer ====\n", "\n", "bert.pooler.dense.weight (768, 768)\n", "bert.pooler.dense.bias (768,)\n", "classifier.weight (2, 768)\n", "classifier.bias (2,)\n" ] } ] }, { "cell_type": "markdown", "source": [ "# Init training parameters" ], "metadata": { "id": "NZDC4iiQizdX" } }, { "cell_type": "code", "source": [ "optimizer = torch.optim.AdamW(model.parameters(),\n", " lr = 2e-5,\n", " eps = 1e-8\n", " )\n", "\n", "epochs = 4\n", "\n", "total_steps = len(train_dataloader) * epochs\n", "\n", "scheduler = get_linear_schedule_with_warmup(optimizer, \n", " num_warmup_steps = 0,\n", " num_training_steps = total_steps)" ], "metadata": { "id": "_uffUPNEi3S5" }, "execution_count": 14, "outputs": [] }, { "cell_type": "markdown", "source": [ "# Helper functions" ], "metadata": { "id": "bnAwgfZekeYD" } }, { "cell_type": "code", "source": [ "def flat_accuracy(preds, labels):\n", " pred_flat = np.argmax(preds, axis=1).flatten()\n", " labels_flat = labels.flatten()\n", " return np.sum(pred_flat == labels_flat) / len(labels_flat)\n", "\n", "def format_time(elapsed):\n", " '''\n", " Takes a time in seconds and returns a string hh:mm:ss\n", " '''\n", " elapsed_rounded = int(round((elapsed)))\n", " \n", " return str(datetime.timedelta(seconds=elapsed_rounded))" ], "metadata": { "id": "Z3XSZuFmkgVr" }, "execution_count": 15, "outputs": [] }, { "cell_type": "markdown", "source": [ "# Training" ], "metadata": { "id": "L-ZeLPfbkqy9" } }, { "cell_type": "code", "source": [ "# This training code is based on the `run_glue.py` script here:\n", "# https://github.com/huggingface/transformers/blob/5bfcd0485ece086ebcbed2d008813037968a9e58/examples/run_glue.py#L128\n", "\n", "seed_val = 42\n", "\n", "random.seed(seed_val)\n", "np.random.seed(seed_val)\n", "torch.manual_seed(seed_val)\n", "torch.cuda.manual_seed_all(seed_val)\n", "\n", "training_stats = []\n", "total_t0 = time.time()\n", "\n", "for epoch_i in range(0, epochs):\n", " \n", " # ========================================\n", " # Training\n", " # ========================================\n", "\n", " print(\"\")\n", " print('======== Epoch {:} / {:} ========'.format(epoch_i + 1, epochs))\n", " print('Training...')\n", "\n", " t0 = time.time()\n", " total_train_loss = 0\n", "\n", " model.train()\n", "\n", " for step, batch in enumerate(train_dataloader):\n", " if step % 40 == 0 and not step == 0:\n", " elapsed = format_time(time.time() - t0)\n", " print(' Batch {:>5,} 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", " b_labels = batch[2].to(device)\n", "\n", " model.zero_grad() \n", "\n", " outputs = model(b_input_ids, \n", " token_type_ids=None, \n", " attention_mask=b_input_mask, \n", " labels=b_labels)\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", " training_time = format_time(time.time() - t0)\n", "\n", " print(\"\")\n", " print(\" Average training loss: {0:.2f}\".format(avg_train_loss))\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_accuracy = 0\n", " total_eval_loss = 0\n", " nb_eval_steps = 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", " b_labels = batch[2].to(device)\n", " \n", " with torch.no_grad(): \n", " outputs = model(b_input_ids, \n", " token_type_ids=None, \n", " attention_mask=b_input_mask,\n", " labels=b_labels)\n", " loss = outputs['loss']\n", " logits = outputs['logits']\n", " \n", " total_eval_loss += loss.item()\n", "\n", " logits = logits.detach().cpu().numpy()\n", " label_ids = b_labels.to('cpu').numpy()\n", "\n", " total_eval_accuracy += flat_accuracy(logits, label_ids)\n", " \n", "\n", " avg_val_accuracy = total_eval_accuracy / len(validation_dataloader)\n", " print(\" Accuracy: {0:.2f}\".format(avg_val_accuracy))\n", "\n", " avg_val_loss = total_eval_loss / len(validation_dataloader)\n", " validation_time = format_time(time.time() - t0)\n", " \n", " print(\" Validation Loss: {0:.2f}\".format(avg_val_loss))\n", " print(\" Validation took: {:}\".format(validation_time))\n", "\n", " training_stats.append(\n", " {\n", " 'epoch': epoch_i + 1,\n", " 'Training Loss': avg_train_loss,\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": "QZ9H2EJNksT_", "outputId": "7c5d39fb-13d3-48c0-8d04-1dba8740bfcd" }, "execution_count": 16, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "\n", "======== Epoch 1 / 4 ========\n", "Training...\n", " Batch 40 of 129. Elapsed: 0:00:49.\n", " Batch 80 of 129. Elapsed: 0:01:34.\n", " Batch 120 of 129. Elapsed: 0:02:19.\n", "\n", " Average training loss: 0.11\n", " Training epcoh took: 0:02:29\n", "\n", "Running Validation...\n", " Accuracy: 0.99\n", " Validation Loss: 0.07\n", " Validation took: 0:00:06\n", "\n", "======== Epoch 2 / 4 ========\n", "Training...\n", " Batch 40 of 129. Elapsed: 0:00:46.\n", " Batch 80 of 129. Elapsed: 0:01:30.\n", " Batch 120 of 129. Elapsed: 0:02:15.\n", "\n", " Average training loss: 0.02\n", " Training epcoh took: 0:02:25\n", "\n", "Running Validation...\n", " Accuracy: 0.99\n", " Validation Loss: 0.08\n", " Validation took: 0:00:06\n", "\n", "======== Epoch 3 / 4 ========\n", "Training...\n", " Batch 40 of 129. Elapsed: 0:00:45.\n", " Batch 80 of 129. Elapsed: 0:01:30.\n", " Batch 120 of 129. Elapsed: 0:02:15.\n", "\n", " Average training loss: 0.00\n", " Training epcoh took: 0:02:25\n", "\n", "Running Validation...\n", " Accuracy: 0.98\n", " Validation Loss: 0.10\n", " Validation took: 0:00:06\n", "\n", "======== Epoch 4 / 4 ========\n", "Training...\n", " Batch 40 of 129. Elapsed: 0:00:45.\n", " Batch 80 of 129. Elapsed: 0:01:30.\n", " Batch 120 of 129. Elapsed: 0:02:15.\n", "\n", " Average training loss: 0.00\n", " Training epcoh took: 0:02:25\n", "\n", "Running Validation...\n", " Accuracy: 0.99\n", " Validation Loss: 0.09\n", " Validation took: 0:00:06\n", "\n", "Training complete!\n", "Total training took 0:10:06 (h:mm:ss)\n" ] } ] }, { "cell_type": "markdown", "source": [ "# Train summary" ], "metadata": { "id": "eZ1fmJMjrRgc" } }, { "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": 206 }, "id": "w4ov2mClrLGW", "outputId": "ad5057e3-f0e5-44c0-8c5a-bf4d69c600ab" }, "execution_count": 17, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ " Training Loss Valid. Loss Valid. Accur. Training Time Validation Time\n", "epoch \n", "1 1.07e-01 0.07 0.99 0:02:29 0:00:06\n", "2 1.89e-02 0.08 0.99 0:02:25 0:00:06\n", "3 4.73e-03 0.10 0.98 0:02:25 0:00:06\n", "4 1.93e-03 0.09 0.99 0:02:25 0:00:06" ], "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", "
Training LossValid. LossValid. Accur.Training TimeValidation Time
epoch
11.07e-010.070.990:02:290:00:06
21.89e-020.080.990:02:250:00:06
34.73e-030.100.980:02:250:00:06
41.93e-030.090.990:02:250:00:06
\n", "
\n", " \n", " \n", " \n", "\n", " \n", "
\n", "
\n", " " ] }, "metadata": {}, "execution_count": 17 } ] }, { "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": "4Jg3MOeZrTf9", "outputId": "1782176d-be6e-43c8-8903-d1e698d3d700" }, "execution_count": 18, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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Z6NXr16IjIzE0KFDsXr1apSXl9vsq9Fo8Pbbb2PAgAGIiIhA7969MW3aNBw+fNhm35ycHLz00kvo2bMnOnfujOeeew6XLl1qkOsmIrJX7IEnImrmSkpKcP36dZt2uVwOpVJp+f2BAweQnp6OiRMnwsfHBwcOHMCnn36KzMxMvPfee5b9zpw5g0mTJkEqlVr2PXjwIJYuXYqUlBR88MEHln0zMjLw9NNPIy8vDyNHjkRERARKSkpw+vRpHDlyBH369LHsW1xcjGeeeQadO3fGwoULkZGRgfXr12PWrFnYvn07JBJJA/0JERHZFwZ4IqJmLiYmBjExMTbt/fr1w+eff275fUpKCjZv3ozw8HAAwDPPPIM5c+YgNjYW48ePR5cuXQAA77zzDgwGA7799luEhYVZ9l2wYAG2b9+OsWPHonfv3gCAf//738jNzcWaNWvw8MMPW53fZDJZ/f7GjRt47rnnMH36dEubl5cXlixZgiNHjtgcT0TUVDHAExE1c+PHj0d0dLRNu5eXl9XvH3roIUt4BwCRSITnn38e+/btw969e9GlSxfk5eXh5MmTGDRokCW8V+774osvYteuXdi7dy969+6N/Px8/PLLL3j44YerDd+3v0QrFottZs158MEHAQCXL19mgCeiZoMBnoiomQsODsZDDz101/1CQkJs2tq1awcASE9PB1AxJObW9lu1bdsWYrHYsu+VK1dgNpvRqVOnWtXp6+sLhUJh1ebh4QEAyM/Pr9VnEBE1BXyJlYiIHMKdxribzeZGrISISFgM8EREVCupqak2bRcuXAAABAUFAQACAwOt2m918eJFmEwmy76tWrWCSCRCcnJyQ5VMRNQkMcATEVGtHDlyBGfPnrX83mw2Y82aNQCAgQMHAgC8vb3RtWtXHDx4EOfPn7fad9WqVQCAQYMGAagY/vLII4/g0KFDOHLkiM352KtORFQ9joEnImrmkpKSEB8fX+22ymAOAGFhYZgyZQomTpwItVqN/fv348iRIxg5ciS6du1q2W/RokWYNGkSJk6ciAkTJkCtVuPgwYP49ddfMWzYMMsMNADwz3/+E0lJSZg+fTpGjRqF8PBw6PV6nD59Gi1btsTf//73hrtwIiIHxQBPRNTMbd++Hdu3b6922549eyxjzx977DG0adMGn3/+OS5dugRvb2/MmjULs2bNsjomMjIS3377LT755BP873//Q3FxMYKCgvDyyy/j2Weftdo3KCgIW7ZswfLly3Ho0CHEx8fDzc0NYWFhGD9+fMNcMBGRgxOZ+YySiIjuICMjAwMGDMCcOXMwd+5cocshImr2OAaeiIiIiMiBMMATERERETkQBngiIiIiIgfCMfBERERERA6EPfBERERERA6EAZ6IiIiIyIEwwBMRERERORAGeCIiIiIiB8IAT0RERETkQBjgiYiIiIgcyP8HWCG5ih+5mMkAAAAASUVORK5CYII=\n" }, "metadata": {} } ] }, { "cell_type": "markdown", "source": [ "# Create test loader" ], "metadata": { "id": "kn87qhtR9MP4" } }, { "cell_type": "code", "source": [ "prediction_dataloader = DataLoader(\n", " test_dataset,\n", " sampler = SequentialSampler(test_dataset),\n", " batch_size = batch_size\n", " )" ], "metadata": { "id": "ENqiBZio9a7a" }, "execution_count": 19, "outputs": [] }, { "cell_type": "markdown", "source": [ "# Evaluate on test dataset" ], "metadata": { "id": "dAF9Iqol-kAP" } }, { "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", " batch = tuple(t.to(device) for t in batch)\n", " \n", " b_input_ids, b_input_mask, b_labels = batch\n", " \n", " with torch.no_grad():\n", " outputs = model(b_input_ids, token_type_ids=None, \n", " attention_mask=b_input_mask)\n", "\n", " logits = outputs['logits']\n", "\n", " logits = logits.detach().cpu().numpy()\n", " label_ids = b_labels.to('cpu').numpy()\n", " \n", " predictions.append(logits)\n", " true_labels.append(label_ids)\n", "\n", "print(' DONE.')" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "XXCWIk8c9Oun", "outputId": "ad95fd9e-f132-4cef-d848-57d126687d8b" }, "execution_count": 20, "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", " predictions_i = np.argmax(predictions[idx], axis=1).flatten()\n", " for bidx, true_label in enumerate(true_labels_batch):\n", " if true_label == predictions_i[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": "TVIFBFmFEwNv", "outputId": "8d0a7751-cb1b-40ed-a705-40944ec75309" }, "execution_count": 21, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Correct predictions: 994, incorrect results: 6, accuracy: 0.994\n" ] } ] }, { "cell_type": "markdown", "source": [ "# MCC Score" ], "metadata": { "id": "6gTgKchs_OXY" } }, { "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", " pred_labels_i = np.argmax(predictions[i], axis=1).flatten()\n", "\n", " matthews = matthews_corrcoef(true_labels[i], pred_labels_i) \n", " matthews_set.append(matthews)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "hOelDEdn_QDE", "outputId": "022d5656-09cb-4279-878e-13611ceb68fc" }, "execution_count": 22, "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": "cF34A88N_UgQ", "outputId": "439ba21c-94a3-4a7b-bbc8-c2b828dbc6ba" }, "execution_count": 23, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "iVBORw0KGgoAAAANSUhEUgAAAuUAAAGaCAYAAACopj13AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nOzde3yMZ/7/8ffkLAkSaaKKoIg4xbGUUqVo1JlQiji0qNJt9asbtr92d7vdUlR10RZtldAqkkixDqXdHpyLChWKOoRsmSIhiUgk8/vDV76NScYkmXGTvJ6Ph8fKdd/X5/5MJmbfuXvNNSaLxWIRAAAAAMO4GN0AAAAAUNYRygEAAACDEcoBAAAAgxHKAQAAAIMRygEAAACDEcoBAAAAgxHKAQC4SwwbNkydOnUyug0ABnAzugEAKKmdO3cqMjJSkjRkyBC9/vrrVudcuHBBHTp0UHZ2tlq1aqXo6Gircw4cOKBly5Zp9+7dMpvNcnFxUbVq1dSmTRsNGjRItWvXznf+1atX9cUXX2jTpk06duyY0tPTVbFiRTVs2FDdunVTr1695OZm+2X2ypUrio6O1saNG3X27Fnl5OTI399foaGh6tixowYMGFCC7wxu1alTJ509ezbva5PJpICAANWqVUuDBw9W9+7di1178+bNSkxM1AsvvOCIVgGUMYRyAKWGp6en1q5dq8mTJ8vDwyPfsfj4eFkslkJD8ty5czV37lz5+/urR48eqlOnjnJzc3Xs2DGtX79ey5Yt065du+Tr6ytJOnXqlMaMGaOTJ0+qbdu2GjNmjPz9/XXhwgVt375dU6ZM0bFjx/TnP/+50H7T0tIUERGhpKQkPfHEE+rfv7/c3d2VlJSkvXv3asmSJYRyJ7j//vv18ssvS5Jyc3N17tw5xcXF6eWXX5bZbNaIESOKVXfz5s2Ki4sjlAMoFkI5gFKjS5cuWrt2rTZv3qwnn3wy37HY2Fg9+uij2rFjh9W8VatWac6cOWrdurXmzZun8uXL5zv+yiuvaO7cuXlfZ2ZmauzYsTpz5ozmzJmjrl275jt/zJgxSkhI0IEDB2z2u2LFCp08eVJ/+ctfNHz4cKvjZrP5to/ZGdLS0vJ++biXWCwWZWRkyMfHx+Z55cuXV+/evfONPfXUU2rfvr1iY2OLHcoBoCRYUw6g1GjQoIHq1aun2NjYfOMJCQk6evSo+vfvbzUnKytLs2fPlre3t2bPnm0VyCXJy8tLkyZNyguqK1eu1IkTJzRy5EirQH5TWFiYhgwZYrPfkydPSpLatGlT4PHAwECrsVOnTmnKlCl69NFH1ahRI7Vr107jxo3TwYMH8523efNmDRo0SE2bNlWzZs00aNAgbd682apep06dNGzYMB06dEjPPPOMWrRooV69euXr8ZVXXlG7du3UqFEjderUSW+//bYyMjJsPrZb6//888+KjIxUs2bN1KpVK0VFRenChQtW52dlZenDDz9U9+7d1bhxY7Vs2VLPPfecDh06lO+8nTt35j3Xy5Yt05NPPqnGjRvrk08+sauvW1WsWFEeHh5yd3fPN56QkKDJkyfriSeeUJMmTfK+l1999VW+84YNG6a4uDhJUr169fL+/PFn0Ww2680339Tjjz+uRo0aqU2bNho5cqS2bt1q1c+5c+f08ssv66GHHlKTJk30zDPP6MSJE8V6bADuDdwpB1Cq9O/fX9OmTdO5c+dUuXJlSTfuhAcEBOixxx6zOn/v3r0ym83q3bu3KlWqZNc1Nm7cKOnG3dWSCA4OlnTjLv6kSZNuu/78wIEDGjFihK5fv66IiAjVrVtXqamp2rVrl/bt26dGjRpJkpYtW6Y33nhDDz74oJ5//nlJUlxcnMaPH6833njDqu/k5GQNHz5c4eHh6tq1a17gPnjwoIYPH64KFSroqaeeUuXKlXX48GFFR0dr3759io6OtgqxBfntt980YsQIde3aVU888YQOHTqkmJgYHTx4UKtWrVK5cuUkSdnZ2XrmmWe0b98+9e7dW0OGDFFaWppWrFihwYMHa+nSpWrcuHG+2osXL1ZKSooGDBigwMBA3X///bftJycnRxcvXpR0Y/mK2WzWkiVLlJ6erkGDBuU796uvvtKvv/6q8PBwVa1aVSkpKYqLi9OECRM0c+ZM9ezZU5L03HPPKTc3Vz/++KOmT5+eN7958+aSpDNnzmjw4MG6cOGCevfurUaNGunq1avav3+/tm3bpkceeSRvTkZGhoYOHaomTZpo4sSJOnPmjJYsWaLnn39ea9eulaur620fI4B7kAUA7nE7duywhISEWD766CPLxYsXLQ0bNrR88MEHFovFYrl69aqlRYsWlmnTplksFouladOmlqFDh+bNXbJkiSUkJMTyySef2H29Vq1aWZo3b17ivlNSUiwdOnSwhISEWNq0aWN54YUXLPPnz7fs3r3bkpOTk+/c3NxcS/fu3S2NGjWyJCYmWtW6eX5KSoqladOmls6dO1uuXLmSd/zKlSuWxx9/3NK0aVNLampq3njHjh0tISEhlhUrVljV7Nmzp+WJJ57IV8disVg2bdpkCQkJscTExNz2Md6sv2jRonzjixYtsoSEhFjmz59vNfbdd9/lO/fKlSuWDh065Hvebj7nDz30kOX333+/bR+39nPrn8aNG1uWL19udX56errVWEZGhqVr166Wbt265RuPioqyhISEFHjdZ599tsDHZrFY8j3XQ4cOtYSEhFgWLFiQ75yFCxcWOh9A6cDyFQClir+/vzp16pS3lGDTpk26cuVKgUtXpBvrpyUVaQ11Wlrabdct26NixYqKjY3V6NGjVb58eW3cuFHvvPOOhgwZos6dO+uHH37IOzcxMVFHjx5Vv379FBoaalXLxeXGy/nWrVuVkZGhYcOG5XtMvr6+GjZsmDIyMrRt27Z8c/38/NSvX798Y0eOHNGRI0fUo0cPZWVl6eLFi3l/WrRoIW9v7wKXXRTE19dXTz/9dL6xp59+Wr6+vvmWgXz55Zd68MEH1bBhw3zXy8rKUtu2bbVnzx5lZmbmq9O7d28FBATY1cdNVatW1aJFi7Ro0SJ98sknmjZtmpo0aaK//e1viomJyXeut7d33t+vXr2qS5cu6erVq3r44Yd1/PjxvJ8fW1JSUvT999+rffv2at++vdXxm8/dH7++uZvQTQ8//LCkG8uXAJROLF8BUOr0799fY8aM0Y8//qiYmBiFhYWpTp06BZ57M7imp6fbXd/X17dI59tSqVIlTZo0SZMmTdKlS5f0008/af369fryyy81YcIExcfHq0aNGnnrzxs0aGCz3pkzZyRJdevWtTp2cywpKSnfePXq1a2WRBw/flySNGfOHM2ZM6fAa/3++++3f4D/W//W3XA8PDxUvXr1fL0cP35cmZmZha6xl6RLly6pSpUqeV/XrFnTrh7+yNvbW23bts031rNnT/Xt21dvvvmmOnXqJH9/f0k3ttKcPXu2tmzZUuAa+MuXL9/2F7rTp0/LYrHc9rm7KSgoSJ6envnG/Pz8JN0I+ABKJ0I5gFKnXbt2qly5subNm6edO3fqb3/7W6Hn3gyqt76R0Ja6detq9+7dSkpKUvXq1Uvabh5/f3917NhRHTt2VJUqVfThhx9q3bp1eevCneXmmu6CjBo1qsC7u5JUoUIFh/ZhsVgUEhKiKVOmFHrOrev+bfVeFG5ubnr44Ye1ZMkSJSQkqEOHDrJYLBo1apSOHz+uyMhINWrUSOXLl5erq6tiYmK0du1a5ebmOuT6f2RrzbjFYnH49QDcHQjlAEodV1dX9enTR/Pnz5eXl5d69OhR6LnNmzdXYGCgNm/erEuXLuXdIbWla9eu2r17t1auXJm337WjNWnSRNKNXTgkqVatWpJuLGOx5eYvCUePHrW643zs2LF859hSo0YNSTeWUtx6V7mokpKSlJWVle9ueVZWlpKSkvTggw/mu+alS5f08MMPWy3puBOuX78u6f/+q8mRI0d0+PBhjR8/Xn/605/ynbty5Uqr+SaTqcC6wcHBMplMt33uAJRtrCkHUCoNGjRIEyZM0N///nebyws8PDz00ksvKT09XRMnTixwjfC1a9c0a9asvGMDBgxQrVq19MknnxS4zaB0Y+eSZcuW2exx3759unz5coHHbta9uewmNDRUdevWVUxMjI4ePWp1/s07qI888oi8vb21dOnSfI8lLS1NS5culbe3d76dPgrToEEDhYSEaPny5VbLXaQbAdbepRRpaWn67LPP8o199tlnSktLU+fOnfPG+vTpI7PZrEWLFhVYx97lMsVx7do1ff/995L+b4nQzV8Mbr07/csvv1htiSj93/rzW78vfn5+evTRR/Xdd99ZrecvqD6Asok75QBKpQceeMDuT1aMiIjQb7/9prlz56pr1675PtHz+PHj2rBhgy5evKgxY8ZIurFkYv78+RozZozGjx+vdu3aqW3btvLz89PFixe1c+dO/fDDD3r22WdtXnfNmjWKjY1Vhw4dFBYWJj8/P6WkpOjbb7/Vzp07VadOnbw3qJpMJr311lsaMWKEBgwYkLcl4uXLl7V79261b99ew4YNU4UKFTRp0iS98cYbGjhwoPr27SvpxpaIp06d0htvvFHgXuy3MplMmj59uoYPH65evXqpf//+qlOnjjIzM3Xq1Cl99dVXevnll63eIFqQ4OBgzZs3T0ePHlXDhg31888/KyYmRg8++KCGDRuWd15kZKS2bdum6dOna8eOHXr44Yfl6+ur5ORk7dixQx4eHoqOjr7t9W7nypUrio+P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d999RSpWtWpV/eUvf9Ho0aNve25CQoLWrVunKVOmaMSIEZKkPn36qEePHpo5c6aWLVtW6Nxly5YpMDBQixcvloeHhyRp4MCBevzxxxUfH08oBwAAwD2l0N1XihrI/ygwMPC252zYsEHu7u75ArSnp6ciIiK0Z88enT9/vtC5aWlpqlixYl4glyQPDw9VrFiR9ewAAAC45xi2JWJiYqJq1aolHx+ffONhYWGyWCxKTEwsdG6rVq109OhRzZ49W6dPn9bp06c1e/ZsnTx5UqNGjXJ26wAAAIBD2b0l4u1888032rRpk6ZOnWrX+WazWZUrV7Yav3mX3dad8ueee06nT5/Whx9+qA8++ECS5O3trffff1+PPPJIMboHAAAAjOOwUH748GGtXr3a7lCemZkpd3d3q/Gby0+uXbtW6FwPDw/VrFlT4eHh6tKli3JycrRixQq99NJL+vTTTxUWFlbk/gMCfIs8pzCBgeUdVqus17wXeqQmNalZdmreCz1Sk5rUvDtr3q6ew0J5UXl5eSk7O9tq/GYYt7U2/B//+IcOHDigVatWycXlxgqcbt26qUePHnrrrbe0fPnyIvdz4UKaw4K52Xwl7++OekLLas0/1ivLNe/W54ea1CxrNXn9oCY1qVmSei4upkLzps1QHhkZafeFkpOTi9RYYGBggUtUzGazJCkoKKjAeVlZWVq1apXGjh2bF8glyd3dXe3bt9fnn3+u69evy83NsN83AAAAgCKxmVx37dolNze3ApeZ3Or69etFunBoaKiio6OVnp6e782e+/fvzztekJSUFF2/fl05OTkF9nD9+vVCP3kUAAAAuBvZ3H2lcuXKateunfbt23fbP+PGjSvShcPDw5Wdna2VK1fmjWVlZSk2NlbNmzfPexNocnKyjh8/nndOQECAKlSooK+++irf8pf09HR98803CgkJseuXCAAAAOBuYfNOeYMGDXTgwAG7CplMpiJduEmTJgoPD9fMmTNlNpsVHBysuLg4JScn53uzaFRUlHbt2qUjR45IklxdXTVq1CjNnj1bTz31lHr16qXc3FytWrVKv/32m6KioorUBwAAAGA0m6G8YcOG+uabb3Tu3LkCty/8o/Lly6tKlSpFuvj06dM1e/ZsxcfHKzU1VfXq1dOCBQvUokULm/PGjRunatWqacmSJZo3b56ysrJUr149zZ07V126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U1hYmAYOHKjt27cXqYYkjR49WvXq1dM///nPIs8FAAAAjGZ3KG/btq1WrVpVYDA/duyYYmJi1LZt2yJdfPLkyVq8eLF69eqlV199VS4uLho9erT27dtnd43//Oc/+vHHH4t0XQAAAOBuYveWiOPGjdOmTZsUERGh/v37q379+pKkxMRExcTEyN3dXc8//7zdF05ISNC6des0ZcoUjRgxQpLUp08f9ejRQzNnzrS508tNWVlZmjp1qp555hk+TRQAAAD3LLtDeXBwsD799FNNmTJFn332Wb5jdevW1VtvvaWaNWvafeENGzbI3d1dAwYMyBvz9PRURESE3n33XZ0/f15BQUE2ayxZskSZmZmEcgAAANzTivThQY0bN9batWuVmJiokydPSpJq1aql0NDQIl84MTFRtWrVko+PT77xsLAwWSwWJSYm2gzlZrNZ77//vl5//XWVK1euyNcHAAAA7hZF/kRPSapfv37e8pXiMpvNqly5stV4YGCgJOn8+fM258+aNUu1atVS7969S9QHAAAAYLRihXJJSkpK0rp163Tu3DnVqVNH/fv3l5eXl93zMzMz5e7ubjXu6ekpSbp27VqhcxMSErR69WpFR0fLZDIVvfkCBAT4OqSOJAUGlndYrbJe817okZrUpGbZqXkv9EhNalLz7qx5u3o2Q/nKlSsVHR2tRYsWKSAgIG9869atmjBhgjIzM2WxWGQymbR8+XItX77cajlKYby8vJSdnW01fjOM3wznt7JYLPrnP/+prl27qmXLlnZdyx4XLqQ5LJibzVfy/u6oJ7Ss1vxjvbJc8259fqhJzbJWk9cPalKTmiWp5+JiKjRv2twS8T//+Y98fHzyBXKLxaLXX39dmZmZGjNmjD744AP17dtXR48e1aeffmp3Y4GBgQUuUTGbzZJU6Hryr776SgkJCRo8eLDOnDmT90eS0tLSdObMGWVmZtrdBwAAAGA0m3fKDx8+rG7duuUb27t3r86ePas+ffpo4sSJkqSOHTvq7Nmz2rJli8aPH2/XhUNDQxUdHa309PR8d9f379+fd7wgycnJys3N1fDhw62OxcbGKjY2VgsXLtSjjz5qVx8AAACA0WyG8osXL6p69er5xvbu3SuTyWQV1jt06KB58+bZfeHw8HB98sknWrlyZd4+5VlZWYqNjVXz5s3z3gSanJysq1evqnbt2pKk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\n" }, "metadata": {} } ] }, { "cell_type": "code", "source": [ "flat_predictions = np.concatenate(predictions, axis=0)\n", "\n", "flat_predictions = np.argmax(flat_predictions, axis=1).flatten()\n", "flat_true_labels = np.concatenate(true_labels, axis=0)\n", "\n", "mcc = matthews_corrcoef(flat_true_labels, flat_predictions)\n", "\n", "print('Total MCC: %.3f' % mcc)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "vx_SM19o_XqD", "outputId": "a37b67e7-4b48-4c69-cef1-21dbb0513829" }, "execution_count": 24, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Total MCC: 0.973\n" ] } ] }, { "cell_type": "markdown", "source": [ "# Save model" ], "metadata": { "id": "ZE7xxmFJ-oBM" } }, { "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/BERT_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)\n" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "fJAqcU8F-p2Z", "outputId": "329483d2-97dd-4f1e-ee10-b94869c8e5ac" }, "execution_count": 25, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Mounted at /content/gdrive/\n", "Saving model to /content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/BERT_Model\n" ] }, { "output_type": "execute_result", "data": { "text/plain": [ "('/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/BERT_Model/tokenizer_config.json',\n", " '/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/BERT_Model/special_tokens_map.json',\n", " '/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/BERT_Model/vocab.txt',\n", " '/content/gdrive/My Drive/UAM/Przetwarzanie-tekstu/BERT_Model/added_tokens.json')" ] }, "metadata": {}, "execution_count": 25 } ] }, { "cell_type": "markdown", "source": [ "# Bibliografia\n", "https://mccormickml.com/2019/07/22/BERT-fine-tuning/#a1-saving--loading-fine-tuned-model" ], "metadata": { "id": "6pFz8n_aHca9" } } ] }