{ "cells": [ { "cell_type": "markdown", "id": "nk6-0Tu0rWmp", "metadata": { "id": "nk6-0Tu0rWmp" }, "source": [ "# Searching for machine learning models using semantic search\n", "\n", "> Finding models on the Hugging Face hub using semantic search\n", "\n", "- toc: true \n", "- badges: false\n", "- comments: true\n", "- categories: [huggingface, huggingface-datasets, semantic-search]\n", "- search_exclude: false\n", "- badges: true\n", "- image: https://github.com/davanstrien/blog/blob/master/images/hub_model_search.webp?raw=true" ] }, { "cell_type": "markdown", "id": "6d3b7adf-e1d9-45bb-a663-debef927125d", "metadata": { "id": "6d3b7adf-e1d9-45bb-a663-debef927125d" }, "source": [ "The [Hugging Face model hub](https://huggingface.co/models) has (at the time of the last checking) 60,509 models publicly available. Some of these models are useful as base models for further fine-tuning; these include your classics like `bert-base-uncased`. \n", "\n", "The hub also has more obscure indie hits that might already do a good job on your desired downstream task or be a closer start. For example, if one wanted to classify the genre of 18th Century books, it might make sense to start with [a model for classifying 19th Century books](https://huggingface.co/BritishLibraryLabs/bl-books-genre). \n", "\n", "## Finding candidate models\n", "\n", "Ideally, we'd like a quick way to identify if a model might already do close to what we want. From there, we would likely want to review a bunch of other info about the model before deciding if it might be helpful for us or not. \n", "\n", "Unfortunately, finding suitable models on the hub isn't always that easy. Even knowing that models for genre classification exist on the hub, we don't find any results.\n", "\n", "![](../images/hub_model_search.webp)\n", "\n", "It's not documented exactly how the search on the hub works, but it seems to be based mainly on the model's name rather than the README or other information. In this blog post, I will continue some [previous experiments with embeddings](https://danielvanstrien.xyz/metadata/deployment/huggingface/ethics/huggingface-datasets/faiss/2022/01/13/image_search.html) to see if there might be different ways in which we could identify potential models. \n", "\n", "This will be a very rough experiment and is more about establishing whether this is an avenue worth exploring rather than a fully fleshed-out approach. " ] }, { "cell_type": "markdown", "id": "J6T4-TL7ZO4x", "metadata": { "id": "J6T4-TL7ZO4x" }, "source": [ "First install some libraries we'll use:" ] }, { "cell_type": "code", "execution_count": 1, "id": "4NYGk1z2859D", "metadata": { "id": "4NYGk1z2859D" }, "outputs": [], "source": [ "import torch" ] }, { "cell_type": "code", "execution_count": 2, "id": "aM_Rgsey87zT", "metadata": { "id": "aM_Rgsey87zT" }, "outputs": [], "source": [ "deps = [\"datasets\" ,\"sentence-transformers\", \"rich['jupyter']\", \"requests\"]\n", "if torch.cuda.is_available():\n", " deps.append(\"faiss-gpu\")\n", "else:\n", " deps.append(\"faise-cpu\")" ] }, { "cell_type": "code", "execution_count": 3, "id": "9iRSQjuh9Zcv", "metadata": { "id": "9iRSQjuh9Zcv" }, "outputs": [], "source": [ "%%capture\n", "!pip install {\" \".join(deps)} --upgrade" ] }, { "cell_type": "code", "execution_count": 4, "id": "Q1aENjqJQd9-", "metadata": { "id": "Q1aENjqJQd9-" }, "outputs": [], "source": [ "!git config --global credential.helper store" ] }, { "cell_type": "markdown", "id": "UXIvkrdJZTUa", "metadata": { "id": "UXIvkrdJZTUa" }, "source": [ "These days I almost always have the rich extension loaded!" ] }, { "cell_type": "code", "execution_count": 5, "id": "b96767fb-42cc-43c0-ad41-e8b6acad55e2", "metadata": { "id": "b96767fb-42cc-43c0-ad41-e8b6acad55e2" }, "outputs": [], "source": [ "%load_ext rich" ] }, { "cell_type": "markdown", "id": "LNHwRQYVZcV9", "metadata": { "id": "LNHwRQYVZcV9" }, "source": [ "## Using the huggingface_hub API to download some model metadata \n", "\n", "Our goal is to see if we might be able to find suitable models more efficiently using some form of semantic search (i.e. using embeddings). To do this, we should grab some model data from the hub. The easiest way to do this is using the hub API. " ] }, { "cell_type": "code", "execution_count": 6, "id": "067510aa-422e-4df0-a96e-954b2e3e7b4c", "metadata": { "id": "067510aa-422e-4df0-a96e-954b2e3e7b4c" }, "outputs": [], "source": [ "from huggingface_hub import hf_api\n", "import re\n", "from rich import print" ] }, { "cell_type": "code", "execution_count": 7, "id": "b267170f-c18f-48d7-9b74-a4cda2b6f7ec", "metadata": { "id": "b267170f-c18f-48d7-9b74-a4cda2b6f7ec" }, "outputs": [], "source": [ "api = hf_api.HfApi()" ] }, { "cell_type": "code", "execution_count": 8, "id": "7951900f-2e41-4d6d-875d-21d6e0191325", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "id": "7951900f-2e41-4d6d-875d-21d6e0191325", "outputId": "61ea0a7c-20fa-4759-f942-6d3d381a2958" }, "outputs": [ { "data": { "text/html": [ "
<huggingface_hub.hf_api.HfApi object at 0x7f63832ff810>\n", "\n" ], "text/plain": [ "\u001b[1m<\u001b[0m\u001b[1;95mhuggingface_hub.hf_api.HfApi\u001b[0m\u001b[39m object at \u001b[0m\u001b[1;36m0x7f63832ff810\u001b[0m\u001b[1m>\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "api" ] }, { "cell_type": "markdown", "id": "SIxLLDrJZ3eR", "metadata": { "id": "SIxLLDrJZ3eR" }, "source": [ "We can take a look at some example models" ] }, { "cell_type": "code", "execution_count": 9, "id": "f48afd68-f454-446b-895f-72fa4db1b0b0", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 644 }, "id": "f48afd68-f454-446b-895f-72fa4db1b0b0", "outputId": "f562419a-3aa8-400f-fd21-ee8704b78eca" }, "outputs": [ { "data": { "text/html": [ "
\n", "[\n", " ModelInfo: {\n", " modelId: hfl/chinese-macbert-base\n", " sha: None\n", " lastModified: None\n", " tags: []\n", " pipeline_tag: fill-mask\n", " siblings: None\n", " private: False\n", " author: None\n", " config: None\n", " id: hfl/chinese-macbert-base\n", "},\n", " ModelInfo: {\n", " modelId: bert-base-uncased\n", " sha: None\n", " lastModified: None\n", " tags: []\n", " pipeline_tag: fill-mask\n", " siblings: None\n", " private: False\n", " author: None\n", " config: None\n", " id: bert-base-uncased\n", "},\n", " ModelInfo: {\n", " modelId: microsoft/deberta-base\n", " sha: None\n", " lastModified: None\n", " tags: []\n", " pipeline_tag: None\n", " siblings: None\n", " private: False\n", " author: None\n", " config: None\n", " id: microsoft/deberta-base\n", "}\n", "]\n", "\n" ], "text/plain": [ "\n", "\u001b[1m[\u001b[0m\n", " ModelInfo: \u001b[1m{\u001b[0m\n", " modelId: hfl/chinese-macbert-base\n", " sha: \u001b[3;35mNone\u001b[0m\n", " lastModified: \u001b[3;35mNone\u001b[0m\n", " tags: \u001b[1m[\u001b[0m\u001b[1m]\u001b[0m\n", " pipeline_tag: fill-mask\n", " siblings: \u001b[3;35mNone\u001b[0m\n", " private: \u001b[3;91mFalse\u001b[0m\n", " author: \u001b[3;35mNone\u001b[0m\n", " config: \u001b[3;35mNone\u001b[0m\n", " id: hfl/chinese-macbert-base\n", "\u001b[1m}\u001b[0m,\n", " ModelInfo: \u001b[1m{\u001b[0m\n", " modelId: bert-base-uncased\n", " sha: \u001b[3;35mNone\u001b[0m\n", " lastModified: \u001b[3;35mNone\u001b[0m\n", " tags: \u001b[1m[\u001b[0m\u001b[1m]\u001b[0m\n", " pipeline_tag: fill-mask\n", " siblings: \u001b[3;35mNone\u001b[0m\n", " private: \u001b[3;91mFalse\u001b[0m\n", " author: \u001b[3;35mNone\u001b[0m\n", " config: \u001b[3;35mNone\u001b[0m\n", " id: bert-base-uncased\n", "\u001b[1m}\u001b[0m,\n", " ModelInfo: \u001b[1m{\u001b[0m\n", " modelId: microsoft/deberta-base\n", " sha: \u001b[3;35mNone\u001b[0m\n", " lastModified: \u001b[3;35mNone\u001b[0m\n", " tags: \u001b[1m[\u001b[0m\u001b[1m]\u001b[0m\n", " pipeline_tag: \u001b[3;35mNone\u001b[0m\n", " siblings: \u001b[3;35mNone\u001b[0m\n", " private: \u001b[3;91mFalse\u001b[0m\n", " author: \u001b[3;35mNone\u001b[0m\n", " config: \u001b[3;35mNone\u001b[0m\n", " id: microsoft/deberta-base\n", "\u001b[1m}\u001b[0m\n", "\u001b[1m]\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "all_models = api.list_models()\n", "all_models[:3]" ] }, { "cell_type": "markdown", "id": "B8YWpW-4Z6Rf", "metadata": { "id": "B8YWpW-4Z6Rf" }, "source": [ "For a particular model we can also see what files there are. " ] }, { "cell_type": "code", "execution_count": 10, "id": "21bc5f59-7bc7-4771-aeb2-b72de638415d", "metadata": { "id": "21bc5f59-7bc7-4771-aeb2-b72de638415d" }, "outputs": [], "source": [ "files = api.list_repo_files(all_models[0].modelId)" ] }, { "cell_type": "code", "execution_count": 11, "id": "016488e0-a684-476c-acfa-b141ba4333bb", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 232 }, "id": "016488e0-a684-476c-acfa-b141ba4333bb", "outputId": "bb1ce4f6-bd86-4cd2-dd31-57f670527f99" }, "outputs": [ { "data": { "text/html": [ "
\n", "[\n", " '.gitattributes',\n", " 'README.md',\n", " 'added_tokens.json',\n", " 'config.json',\n", " 'flax_model.msgpack',\n", " 'pytorch_model.bin',\n", " 'special_tokens_map.json',\n", " 'tf_model.h5',\n", " 'tokenizer.json',\n", " 'tokenizer_config.json',\n", " 'vocab.txt'\n", "]\n", "\n" ], "text/plain": [ "\n", "\u001b[1m[\u001b[0m\n", " \u001b[32m'.gitattributes'\u001b[0m,\n", " \u001b[32m'README.md'\u001b[0m,\n", " \u001b[32m'added_tokens.json'\u001b[0m,\n", " \u001b[32m'config.json'\u001b[0m,\n", " \u001b[32m'flax_model.msgpack'\u001b[0m,\n", " \u001b[32m'pytorch_model.bin'\u001b[0m,\n", " \u001b[32m'special_tokens_map.json'\u001b[0m,\n", " \u001b[32m'tf_model.h5'\u001b[0m,\n", " \u001b[32m'tokenizer.json'\u001b[0m,\n", " \u001b[32m'tokenizer_config.json'\u001b[0m,\n", " \u001b[32m'vocab.txt'\u001b[0m\n", "\u001b[1m]\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "files" ] }, { "cell_type": "markdown", "id": "DavSHjuQZ-eS", "metadata": { "id": "DavSHjuQZ-eS" }, "source": [ "### Filtering \n", "\n", "To limit the scope of this blog post, we'll focus only on Pytorch models and 'text classification' models. The metadata about the model type is likely usually pretty reliable. The model task metadata, on the other hand, is not always reliable in my experience. This means we probably have some models that aren't text-classification models and don't include some actual text classification models in our dataset. For now, we won't worry too much about this. " ] }, { "cell_type": "code", "execution_count": 12, "id": "3e0d7349-7a39-4560-ad2b-cea6729841d6", "metadata": { "id": "3e0d7349-7a39-4560-ad2b-cea6729841d6" }, "outputs": [], "source": [ "from huggingface_hub import ModelSearchArguments" ] }, { "cell_type": "code", "execution_count": 13, "id": "c8acc3a4-daa6-47eb-b33e-41a24839fdbf", "metadata": { "id": "c8acc3a4-daa6-47eb-b33e-41a24839fdbf" }, "outputs": [], "source": [ "model_args = ModelSearchArguments()" ] }, { "cell_type": "code", "execution_count": 14, "id": "2395c5be-021b-4936-8a59-17dc1c72faad", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 265 }, "id": "2395c5be-021b-4936-8a59-17dc1c72faad", "outputId": "c4084327-bb26-4fa8-c9a4-4697f08f0dbf" }, "outputs": [ { "data": { "text/html": [ "
\n", "ModelInfo: {\n", " modelId: distilbert-base-uncased-finetuned-sst-2-english\n", " sha: 00c3f1ef306e837efb641eaca05d24d161d9513c\n", " lastModified: 2022-07-22T08:00:55.000Z\n", " tags: ['pytorch', 'tf', 'rust', 'distilbert', 'text-classification', 'en', 'dataset:sst2', 'dataset:glue', 'transformers', 'license:apache-2.0', 'model-index']\n", " pipeline_tag: text-classification\n", " siblings: [RepoFile(rfilename='.gitattributes'), RepoFile(rfilename='README.md'), RepoFile(rfilename='config.json'), RepoFile(rfilename='map.jpeg'), RepoFile(rfilename='pytorch_model.bin'), RepoFile(rfilename='rust_model.ot'), RepoFile(rfilename='tf_model.h5'), RepoFile(rfilename='tokenizer_config.json'), RepoFile(rfilename='vocab.txt')]\n", " private: False\n", " author: None\n", " config: None\n", " id: distilbert-base-uncased-finetuned-sst-2-english\n", " downloads: 5185721\n", " likes: 76\n", " library_name: transformers\n", "}\n", "\n" ], "text/plain": [ "\n", "ModelInfo: \u001b[1m{\u001b[0m\n", " modelId: distilbert-base-uncased-finetuned-sst-\u001b[1;36m2\u001b[0m-english\n", " sha: 00c3f1ef306e837efb641eaca05d24d161d9513c\n", " lastModified: \u001b[1;36m2022\u001b[0m-\u001b[1;36m07\u001b[0m-22T\u001b[1;92m08:00:55\u001b[0m.000Z\n", " tags: \u001b[1m[\u001b[0m\u001b[32m'pytorch'\u001b[0m, \u001b[32m'tf'\u001b[0m, \u001b[32m'rust'\u001b[0m, \u001b[32m'distilbert'\u001b[0m, \u001b[32m'text-classification'\u001b[0m, \u001b[32m'en'\u001b[0m, \u001b[32m'dataset:sst2'\u001b[0m, \u001b[32m'dataset:glue'\u001b[0m, \u001b[32m'transformers'\u001b[0m, \u001b[32m'license:apache-2.0'\u001b[0m, \u001b[32m'model-index'\u001b[0m\u001b[1m]\u001b[0m\n", " pipeline_tag: text-classification\n", " siblings: \u001b[1m[\u001b[0m\u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'.gitattributes'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'README.md'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'config.json'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'map.jpeg'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'pytorch_model.bin'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'rust_model.ot'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'tf_model.h5'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'tokenizer_config.json'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'vocab.txt'\u001b[0m\u001b[1m)\u001b[0m\u001b[1m]\u001b[0m\n", " private: \u001b[3;91mFalse\u001b[0m\n", " author: \u001b[3;35mNone\u001b[0m\n", " config: \u001b[3;35mNone\u001b[0m\n", " id: distilbert-base-uncased-finetuned-sst-\u001b[1;36m2\u001b[0m-english\n", " downloads: \u001b[1;36m5185721\u001b[0m\n", " likes: \u001b[1;36m76\u001b[0m\n", " library_name: transformers\n", "\u001b[1m}\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from huggingface_hub import ModelFilter\n", "\n", "model_filter = ModelFilter(\n", " task=model_args.pipeline_tag.TextClassification, \n", " library=model_args.library.PyTorch\n", ")\n", "api.list_models(filter=model_filter)[0]" ] }, { "cell_type": "markdown", "id": "Y7-Jk_OdcR19", "metadata": { "id": "Y7-Jk_OdcR19" }, "source": [ "Now we have a filter we'll use that to grab all the models that match this filter. " ] }, { "cell_type": "code", "execution_count": 15, "id": "ae5c2a2b-f38d-40db-b869-96d9e07a0a25", "metadata": { "id": "ae5c2a2b-f38d-40db-b869-96d9e07a0a25" }, "outputs": [], "source": [ "all_models = api.list_models(filter=model_filter)" ] }, { "cell_type": "code", "execution_count": 16, "id": "437595fb-489f-4537-98cd-dbae244be69b", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 265 }, "id": "437595fb-489f-4537-98cd-dbae244be69b", "outputId": "35d1942b-42f3-478d-c0d0-aad067b52a77" }, "outputs": [ { "data": { "text/html": [ "
\n", "ModelInfo: {\n", " modelId: distilbert-base-uncased-finetuned-sst-2-english\n", " sha: 00c3f1ef306e837efb641eaca05d24d161d9513c\n", " lastModified: 2022-07-22T08:00:55.000Z\n", " tags: ['pytorch', 'tf', 'rust', 'distilbert', 'text-classification', 'en', 'dataset:sst2', 'dataset:glue', 'transformers', 'license:apache-2.0', 'model-index']\n", " pipeline_tag: text-classification\n", " siblings: [RepoFile(rfilename='.gitattributes'), RepoFile(rfilename='README.md'), RepoFile(rfilename='config.json'), RepoFile(rfilename='map.jpeg'), RepoFile(rfilename='pytorch_model.bin'), RepoFile(rfilename='rust_model.ot'), RepoFile(rfilename='tf_model.h5'), RepoFile(rfilename='tokenizer_config.json'), RepoFile(rfilename='vocab.txt')]\n", " private: False\n", " author: None\n", " config: None\n", " id: distilbert-base-uncased-finetuned-sst-2-english\n", " downloads: 5185721\n", " likes: 76\n", " library_name: transformers\n", "}\n", "\n" ], "text/plain": [ "\n", "ModelInfo: \u001b[1m{\u001b[0m\n", " modelId: distilbert-base-uncased-finetuned-sst-\u001b[1;36m2\u001b[0m-english\n", " sha: 00c3f1ef306e837efb641eaca05d24d161d9513c\n", " lastModified: \u001b[1;36m2022\u001b[0m-\u001b[1;36m07\u001b[0m-22T\u001b[1;92m08:00:55\u001b[0m.000Z\n", " tags: \u001b[1m[\u001b[0m\u001b[32m'pytorch'\u001b[0m, \u001b[32m'tf'\u001b[0m, \u001b[32m'rust'\u001b[0m, \u001b[32m'distilbert'\u001b[0m, \u001b[32m'text-classification'\u001b[0m, \u001b[32m'en'\u001b[0m, \u001b[32m'dataset:sst2'\u001b[0m, \u001b[32m'dataset:glue'\u001b[0m, \u001b[32m'transformers'\u001b[0m, \u001b[32m'license:apache-2.0'\u001b[0m, \u001b[32m'model-index'\u001b[0m\u001b[1m]\u001b[0m\n", " pipeline_tag: text-classification\n", " siblings: \u001b[1m[\u001b[0m\u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'.gitattributes'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'README.md'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'config.json'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'map.jpeg'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'pytorch_model.bin'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'rust_model.ot'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'tf_model.h5'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'tokenizer_config.json'\u001b[0m\u001b[1m)\u001b[0m, \u001b[1;35mRepoFile\u001b[0m\u001b[1m(\u001b[0m\u001b[33mrfilename\u001b[0m=\u001b[32m'vocab.txt'\u001b[0m\u001b[1m)\u001b[0m\u001b[1m]\u001b[0m\n", " private: \u001b[3;91mFalse\u001b[0m\n", " author: \u001b[3;35mNone\u001b[0m\n", " config: \u001b[3;35mNone\u001b[0m\n", " id: distilbert-base-uncased-finetuned-sst-\u001b[1;36m2\u001b[0m-english\n", " downloads: \u001b[1;36m5185721\u001b[0m\n", " likes: \u001b[1;36m76\u001b[0m\n", " library_name: transformers\n", "\u001b[1m}\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "all_models[0]" ] }, { "cell_type": "markdown", "id": "SJGBGJdUcY29", "metadata": { "id": "SJGBGJdUcY29" }, "source": [ "Let's see how many models that gives us. " ] }, { "cell_type": "code", "execution_count": 17, "id": "cc2ebb52-22a0-4b5c-827f-a30fb1888127", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "id": "cc2ebb52-22a0-4b5c-827f-a30fb1888127", "outputId": "cb4843c7-c2a5-4ce4-88e2-8a3ca61d0b62" }, "outputs": [ { "data": { "text/html": [ "
6860\n",
"
\n"
],
"text/plain": [
"\u001b[1;36m6860\u001b[0m\n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"len(all_models)"
]
},
{
"cell_type": "markdown",
"id": "styP6k8mcdf5",
"metadata": {
"id": "styP6k8mcdf5"
},
"source": [
"Later on, in this blog, we'll want to work with the `config.json` files (we'll get back to why later!), so we'll quickly check that all our models have this. "
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "874f1d37-e12d-4e96-8ba6-c3e34375c808",
"metadata": {
"id": "874f1d37-e12d-4e96-8ba6-c3e34375c808"
},
"outputs": [],
"source": [
"def has_config(model):\n",
" has_config = False\n",
" files = model.siblings\n",
" for file in files:\n",
" if \"config.json\" in file.rfilename:\n",
" has_config = True\n",
" return has_config\n",
" else:\n",
" continue"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "004ba1c9-6399-4f30-8874-3293d473ae82",
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 34
},
"id": "004ba1c9-6399-4f30-8874-3293d473ae82",
"outputId": "6170ebb0-3e34-4fd7-c65d-168f44cdc0a1"
},
"outputs": [
{
"data": {
"text/html": [
"True\n",
"
\n"
],
"text/plain": [
"\u001b[3;92mTrue\u001b[0m\n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"has_config(all_models[0])"
]
},
{
"cell_type": "code",
"execution_count": 20,
"id": "3a5685b2-c398-4b68-931b-8555dff260f4",
"metadata": {
"id": "3a5685b2-c398-4b68-931b-8555dff260f4"
},
"outputs": [],
"source": [
"has_config = [model for model in all_models if has_config(model)]"
]
},
{
"cell_type": "markdown",
"id": "5M08yVc2c7_h",
"metadata": {
"id": "5M08yVc2c7_h"
},
"source": [
"Let's check how many we have now"
]
},
{
"cell_type": "code",
"execution_count": 21,
"id": "2a10c2d8-a651-4ab9-9a63-2c16d1c0ca6c",
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 34
},
"id": "2a10c2d8-a651-4ab9-9a63-2c16d1c0ca6c",
"outputId": "a2781c38-844b-4e53-f384-955162485784"
},
"outputs": [
{
"data": {
"text/html": [
"6858\n",
"
\n"
],
"text/plain": [
"\u001b[1;36m6858\u001b[0m\n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"len(has_config)"
]
},
{
"cell_type": "markdown",
"id": "QNmffwkcdCUg",
"metadata": {
"id": "QNmffwkcdCUg"
},
"source": [
"We can also download a particular file from the hub "
]
},
{
"cell_type": "code",
"execution_count": 22,
"id": "407bf115-4fcc-404f-b087-07713bddba08",
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 49,
"referenced_widgets": [
"b0a08dc1a7ae40aaa3c5d10e5ac6b711",
"73b673eb01584887a9cc11e627256faa",
"99e8f5a24f954c4e950e7bdb7e0d1af6",
"6240285db4444d648b6dadec3dbf76c4",
"2aa31aa07c574edcb2b94503d955d74b",
"12f542afbb2942fea0f4f9b1e6483983",
"ed8f6bb5270d48489a7f8c2ae52f1ef4",
"b7f39a86824b403da2a24973ff2e0f6d",
"2f6781c7ba1845379a54323def5e0cd6",
"56ced24d012d486fb8eac7dd70c49a6e",
"a34afb994d24462ea6d707100fe6dba9"
]
},
"id": "407bf115-4fcc-404f-b087-07713bddba08",
"outputId": "b35734dc-07a4-4a84-da67-8545de2db38e"
},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "b0a08dc1a7ae40aaa3c5d10e5ac6b711",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
"Downloading: 0%| | 0.00/629 [00:00, ?B/s]"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from huggingface_hub import hf_hub_download\n",
"file = hf_hub_download(repo_id=all_models[0].modelId, filename=\"config.json\")"
]
},
{
"cell_type": "code",
"execution_count": 23,
"id": "49ca43cc-fe31-41a5-a320-3455287676c5",
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 34
},
"id": "49ca43cc-fe31-41a5-a320-3455287676c5",
"outputId": "8b1df43f-4790-42ee-ac42-2a5ef2c48a49"
},
"outputs": [
{
"data": {
"text/html": [
"'/root/.cache/huggingface/hub/models--distilbert-base-uncased-finetuned-sst-2-english/snapshots/00c3f1ef306e837efb641eaca05d24d161d9513c/config.json'\n",
"
\n"
],
"text/plain": [
"\u001b[32m'/root/.cache/huggingface/hub/models--distilbert-base-uncased-finetuned-sst-2-english/snapshots/00c3f1ef306e837efb641eaca05d24d161d9513c/config.json'\u001b[0m\n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "string"
}
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"file"
]
},
{
"cell_type": "code",
"execution_count": 24,
"id": "82b0df42-0a43-444d-8c95-20416fbbe1e7",
"metadata": {
"id": "82b0df42-0a43-444d-8c95-20416fbbe1e7"
},
"outputs": [],
"source": [
"import json\n",
"with open(file) as f:\n",
" data = json.load(f)"
]
},
{
"cell_type": "code",
"execution_count": 25,
"id": "0e74566e-7454-4821-835f-48bcbf9994ee",
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 397
},
"id": "0e74566e-7454-4821-835f-48bcbf9994ee",
"outputId": "70e58eca-c14f-4233-ad3e-11ba57ec22db"
},
"outputs": [
{
"data": {
"text/html": [
"\n", "{\n", " 'activation': 'gelu',\n", " 'architectures': ['DistilBertForSequenceClassification'],\n", " 'attention_dropout': 0.1,\n", " 'dim': 768,\n", " 'dropout': 0.1,\n", " 'finetuning_task': 'sst-2',\n", " 'hidden_dim': 3072,\n", " 'id2label': {'0': 'NEGATIVE', '1': 'POSITIVE'},\n", " 'initializer_range': 0.02,\n", " 'label2id': {'NEGATIVE': 0, 'POSITIVE': 1},\n", " 'max_position_embeddings': 512,\n", " 'model_type': 'distilbert',\n", " 'n_heads': 12,\n", " 'n_layers': 6,\n", " 'output_past': True,\n", " 'pad_token_id': 0,\n", " 'qa_dropout': 0.1,\n", " 'seq_classif_dropout': 0.2,\n", " 'sinusoidal_pos_embds': False,\n", " 'tie_weights_': True,\n", " 'vocab_size': 30522\n", "}\n", "\n" ], "text/plain": [ "\n", "\u001b[1m{\u001b[0m\n", " \u001b[32m'activation'\u001b[0m: \u001b[32m'gelu'\u001b[0m,\n", " \u001b[32m'architectures'\u001b[0m: \u001b[1m[\u001b[0m\u001b[32m'DistilBertForSequenceClassification'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[32m'attention_dropout'\u001b[0m: \u001b[1;36m0.1\u001b[0m,\n", " \u001b[32m'dim'\u001b[0m: \u001b[1;36m768\u001b[0m,\n", " \u001b[32m'dropout'\u001b[0m: \u001b[1;36m0.1\u001b[0m,\n", " \u001b[32m'finetuning_task'\u001b[0m: \u001b[32m'sst-2'\u001b[0m,\n", " \u001b[32m'hidden_dim'\u001b[0m: \u001b[1;36m3072\u001b[0m,\n", " \u001b[32m'id2label'\u001b[0m: \u001b[1m{\u001b[0m\u001b[32m'0'\u001b[0m: \u001b[32m'NEGATIVE'\u001b[0m, \u001b[32m'1'\u001b[0m: \u001b[32m'POSITIVE'\u001b[0m\u001b[1m}\u001b[0m,\n", " \u001b[32m'initializer_range'\u001b[0m: \u001b[1;36m0.02\u001b[0m,\n", " \u001b[32m'label2id'\u001b[0m: \u001b[1m{\u001b[0m\u001b[32m'NEGATIVE'\u001b[0m: \u001b[1;36m0\u001b[0m, \u001b[32m'POSITIVE'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m,\n", " \u001b[32m'max_position_embeddings'\u001b[0m: \u001b[1;36m512\u001b[0m,\n", " \u001b[32m'model_type'\u001b[0m: \u001b[32m'distilbert'\u001b[0m,\n", " \u001b[32m'n_heads'\u001b[0m: \u001b[1;36m12\u001b[0m,\n", " \u001b[32m'n_layers'\u001b[0m: \u001b[1;36m6\u001b[0m,\n", " \u001b[32m'output_past'\u001b[0m: \u001b[3;92mTrue\u001b[0m,\n", " \u001b[32m'pad_token_id'\u001b[0m: \u001b[1;36m0\u001b[0m,\n", " \u001b[32m'qa_dropout'\u001b[0m: \u001b[1;36m0.1\u001b[0m,\n", " \u001b[32m'seq_classif_dropout'\u001b[0m: \u001b[1;36m0.2\u001b[0m,\n", " \u001b[32m'sinusoidal_pos_embds'\u001b[0m: \u001b[3;91mFalse\u001b[0m,\n", " \u001b[32m'tie_weights_'\u001b[0m: \u001b[3;92mTrue\u001b[0m,\n", " \u001b[32m'vocab_size'\u001b[0m: \u001b[1;36m30522\u001b[0m\n", "\u001b[1m}\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data" ] }, { "cell_type": "markdown", "id": "1b-KIcNXd_Mh", "metadata": { "id": "1b-KIcNXd_Mh" }, "source": [ "We can also check if the model has a `README.md`" ] }, { "cell_type": "code", "execution_count": 26, "id": "14a01e6e-0bed-4c77-a448-aee48942d50b", "metadata": { "id": "14a01e6e-0bed-4c77-a448-aee48942d50b" }, "outputs": [], "source": [ "def has_file_in_repo(model,file_name):\n", " has_file = False\n", " files = model.siblings\n", " for file in files:\n", " if file_name in file.rfilename:\n", " has_file = True\n", " return has_file\n", " else:\n", " continue " ] }, { "cell_type": "code", "execution_count": 27, "id": "f3569532-b79d-43b3-b6de-dd7bccbebec6", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "id": "f3569532-b79d-43b3-b6de-dd7bccbebec6", "outputId": "526f5015-acb4-4f1d-f9e3-890a780091dd" }, "outputs": [ { "data": { "text/html": [ "
True\n",
"
\n"
],
"text/plain": [
"\u001b[3;92mTrue\u001b[0m\n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"has_file_in_repo(has_config[0],'README.md')"
]
},
{
"cell_type": "code",
"execution_count": 28,
"id": "7c49793f-2c9b-44a2-8ca5-50aac39be0ce",
"metadata": {
"id": "7c49793f-2c9b-44a2-8ca5-50aac39be0ce"
},
"outputs": [],
"source": [
"has_readme = [model for model in has_config if has_file_in_repo(model,\"README.md\")]"
]
},
{
"cell_type": "markdown",
"id": "bBuJmT5jeKou",
"metadata": {
"id": "bBuJmT5jeKou"
},
"source": [
"We can see that there are more configs than READMEs"
]
},
{
"cell_type": "code",
"execution_count": 29,
"id": "431659b1-4913-4161-9de1-71d18fad467a",
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 34
},
"id": "431659b1-4913-4161-9de1-71d18fad467a",
"outputId": "ece8f7eb-585e-4449-ada1-0167aabfd0cf"
},
"outputs": [
{
"data": {
"text/html": [
"3482\n",
"
\n"
],
"text/plain": [
"\u001b[1;36m3482\u001b[0m\n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"len(has_readme)"
]
},
{
"cell_type": "code",
"execution_count": 30,
"id": "5a9d1090-b64e-4715-b5bc-16ed72024696",
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 34
},
"id": "5a9d1090-b64e-4715-b5bc-16ed72024696",
"outputId": "46efd8af-3b3a-45d3-dbaa-8f3c9c22447c"
},
"outputs": [
{
"data": {
"text/html": [
"6858\n",
"
\n"
],
"text/plain": [
"\u001b[1;36m6858\u001b[0m\n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"len(has_config)"
]
},
{
"cell_type": "markdown",
"id": "YA22bNqueQP2",
"metadata": {
"id": "YA22bNqueQP2"
},
"source": [
"We now write some functions to grab both the `README.md` and `config.json` files from the hub. "
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "8f2c70a3-6c96-4c82-a93f-0c65bfcd68b5",
"metadata": {
"id": "8f2c70a3-6c96-4c82-a93f-0c65bfcd68b5"
},
"outputs": [],
"source": [
"from requests.exceptions import JSONDecodeError\n",
"import concurrent.futures"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "ab2a6d98-e53e-49e3-b9dd-3f001e90ec09",
"metadata": {
"id": "ab2a6d98-e53e-49e3-b9dd-3f001e90ec09"
},
"outputs": [],
"source": [
"@lru_cache(maxsize=None)\n",
"def get_model_labels(model):\n",
" try:\n",
" url = hf_hub_url(repo_id=model.modelId, filename=\"config.json\")\n",
" return model.modelId, list(requests.get(url).json()['label2id'].keys())\n",
" except (KeyError, JSONDecodeError, AttributeError):\n",
" return model.modelId, None\n",
" "
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "5a80fea4-b7ec-4a4b-98fe-d9987029bc49",
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 34
},
"id": "5a80fea4-b7ec-4a4b-98fe-d9987029bc49",
"outputId": "13f8a44e-a0f0-46db-919a-c496fe045580"
},
"outputs": [
{
"data": {
"text/html": [
"('distilbert-base-uncased-finetuned-sst-2-english', ['NEGATIVE', 'POSITIVE'])\n", "\n" ], "text/plain": [ "\u001b[1m(\u001b[0m\u001b[32m'distilbert-base-uncased-finetuned-sst-2-english'\u001b[0m, \u001b[1m[\u001b[0m\u001b[32m'NEGATIVE'\u001b[0m, \u001b[32m'POSITIVE'\u001b[0m\u001b[1m]\u001b[0m\u001b[1m)\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "get_model_labels(has_config[0])" ] }, { "cell_type": "code", "execution_count": null, "id": "71ba4c5b-d302-4b7d-858b-0ecaecf65ad2", "metadata": { "id": "71ba4c5b-d302-4b7d-858b-0ecaecf65ad2" }, "outputs": [], "source": [ "def get_model_readme(model):\n", " url = hf_hub_url(repo_id=model.modelId, filename=\"README.md\")\n", " return requests.get(url).text\n" ] }, { "cell_type": "code", "execution_count": null, "id": "998611d1-911f-4b48-890e-2f952e412123", "metadata": { "id": "998611d1-911f-4b48-890e-2f952e412123" }, "outputs": [], "source": [ "def get_data(model):\n", " readme = get_model_readme(model)\n", " _, labels = get_model_labels(model)\n", " return model.modelId, labels, readme" ] }, { "cell_type": "markdown", "id": "Wp-wZQCqehcb", "metadata": { "id": "Wp-wZQCqehcb" }, "source": [ "Since this takes a little while we make a progress bar and do this using multiple threads" ] }, { "cell_type": "code", "execution_count": null, "id": "ki3UoGgBedzj", "metadata": { "id": "ki3UoGgBedzj" }, "outputs": [], "source": [ "from tqdm.auto import tqdm" ] }, { "cell_type": "code", "execution_count": null, "id": "3ff5f5c9-9c7a-4ace-b7bb-f85bca8b0051", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 49, "referenced_widgets": [ "228ce92c5f38428a95105d02358f781e", "557c1c17405e403da54b86d8b04b024e", "ad0337420f1f4671b875e87a15176452", "df0436126f5c4a08853c6be7ff939a3e", "3f3154328f74424c93e34dd89136ecf7", "05ae6cb62fb44d9e9f0d8104511d9c0e", "72b250bdd261446aa251e1b97c8b8162", "7e883b1d93b74e26b8aee6677df9c58d", "152207bbb68345d697cb66b40f02c8f3", "8485443f7a2e449bbf748278b971ec73", "55abd0d45c0b4b039520e4297dc46081" ] }, "id": "3ff5f5c9-9c7a-4ace-b7bb-f85bca8b0051", "outputId": "95fc39e4-d9a3-4d37-e795-7d568b11a2ab" }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "228ce92c5f38428a95105d02358f781e", "version_major": 2, "version_minor": 0 }, "text/plain": [ " 0%| | 0/6850 [00:00, ?it/s]" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "with tqdm(total=len(has_config)) as progress:\n", " with concurrent.futures.ThreadPoolExecutor() as e:\n", " tasks = []\n", " for model in has_config:\n", " future = e.submit(get_data, model)\n", " future.add_done_callback(lambda p: progress.update())\n", " tasks.append(future)\n", "results = [task.result() for task in tasks]" ] }, { "cell_type": "markdown", "id": "JZyNuv7FepS_", "metadata": { "id": "JZyNuv7FepS_" }, "source": [ "Load our data using Pandas. " ] }, { "cell_type": "code", "execution_count": null, "id": "b2215212-5dea-439e-a755-1d88fa304fe9", "metadata": { "id": "b2215212-5dea-439e-a755-1d88fa304fe9" }, "outputs": [], "source": [ "import pandas as pd" ] }, { "cell_type": "code", "execution_count": null, "id": "4cf45fc9-ff41-43ba-b555-acfe5a00fb4e", "metadata": { "id": "4cf45fc9-ff41-43ba-b555-acfe5a00fb4e" }, "outputs": [], "source": [ "df = pd.DataFrame(results,columns=['modelId','label','readme'])" ] }, { "cell_type": "code", "execution_count": null, "id": "07806467-b410-4a9d-b1c6-0fa915113fa8", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 424 }, "id": "07806467-b410-4a9d-b1c6-0fa915113fa8", "outputId": "ea7fba8c-ef67-4cc8-d7f6-1fe242092a1a" }, "outputs": [ { "data": { "text/html": [ "\n", "
\n", " | modelId | \n", "label | \n", "readme | \n", "
---|---|---|---|
0 | \n", "distilbert-base-uncased-finetuned-sst-2-english | \n", "[NEGATIVE, POSITIVE] | \n", "---\\nlanguage: en\\nlicense: apache-2.0\\ndatase... | \n", "
1 | \n", "cross-encoder/ms-marco-MiniLM-L-12-v2 | \n", "[LABEL_0] | \n", "---\\nlicense: apache-2.0\\n---\\n# Cross-Encoder... | \n", "
2 | \n", "cardiffnlp/twitter-xlm-roberta-base-sentiment | \n", "[Negative, Neutral, Positive] | \n", "---\\nlanguage: multilingual\\nwidget:\\n- text: ... | \n", "
3 | \n", "facebook/bart-large-mnli | \n", "[contradiction, entailment, neutral] | \n", "---\\nlicense: mit\\nthumbnail: https://huggingf... | \n", "
4 | \n", "ProsusAI/finbert | \n", "[positive, negative, neutral] | \n", "---\\nlanguage: \"en\"\\ntags:\\n- financial-sentim... | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "
6845 | \n", "jinwooChoi/SKKU_AP_SA_KBT6 | \n", "[LABEL_0, LABEL_1, LABEL_2] | \n", "Entry not found | \n", "
6846 | \n", "jinwooChoi/SKKU_AP_SA_KBT7 | \n", "[LABEL_0, LABEL_1, LABEL_2] | \n", "Entry not found | \n", "
6847 | \n", "naem1023/electra-phrase-clause-classification-... | \n", "None | \n", "Entry not found | \n", "
6848 | \n", "naem1023/electra-phrase-clause-classification-... | \n", "None | \n", "---\\nlicense: apache-2.0\\n---\\n | \n", "
6849 | \n", "YYAH/Bert_Roman_Urdu | \n", "[LABEL_0, LABEL_1, LABEL_2, LABEL_3] | \n", "---\\nlicense: unknown\\n---\\n | \n", "
6850 rows × 3 columns
\n", "\n", "count 6850.000000\n", "mean 1009.164818\n", "std 1750.509155\n", "min 0.000000\n", "25% 15.000000\n", "50% 20.500000\n", "75% 1736.000000\n", "max 56172.000000\n", "Name: readme, dtype: float64\n", "\n" ], "text/plain": [ "\n", "count \u001b[1;36m6850.000000\u001b[0m\n", "mean \u001b[1;36m1009.164818\u001b[0m\n", "std \u001b[1;36m1750.509155\u001b[0m\n", "min \u001b[1;36m0.000000\u001b[0m\n", "\u001b[1;36m25\u001b[0m% \u001b[1;36m15.000000\u001b[0m\n", "\u001b[1;36m50\u001b[0m% \u001b[1;36m20.500000\u001b[0m\n", "\u001b[1;36m75\u001b[0m% \u001b[1;36m1736.000000\u001b[0m\n", "max \u001b[1;36m56172.000000\u001b[0m\n", "Name: readme, dtype: float64\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df['readme'].apply(len).describe()" ] }, { "cell_type": "markdown", "id": "2fMnyRog6cuQ", "metadata": { "id": "2fMnyRog6cuQ" }, "source": [ "We might want to filter on the length of the README so we'll store that info in a new column. " ] }, { "cell_type": "code", "execution_count": null, "id": "b74ea3e4-0416-4b63-a9cc-0e071c787847", "metadata": { "id": "b74ea3e4-0416-4b63-a9cc-0e071c787847" }, "outputs": [], "source": [ "df['readme_len'] = df['readme'].apply(len)" ] }, { "cell_type": "markdown", "id": "kw2IipxF65Hx", "metadata": { "id": "kw2IipxF65Hx" }, "source": [ "Since we might want to work with this data again, let's load it into a `datasets` Dataset and use `push_to_hub` to store a copy. " ] }, { "cell_type": "code", "execution_count": 8, "id": "CToEfh1hoAd9", "metadata": { "id": "CToEfh1hoAd9" }, "outputs": [], "source": [ "from datasets import Dataset" ] }, { "cell_type": "code", "execution_count": null, "id": "wosRsA-kpSys", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 83 }, "id": "wosRsA-kpSys", "outputId": "a1c23174-caac-4f58-ff2e-053725d91293" }, "outputs": [ { "data": { "text/html": [ "
\n", "Dataset({\n", " features: ['modelId', 'label', 'readme', 'readme_len'],\n", " num_rows: 6850\n", "})\n", "\n" ], "text/plain": [ "\n", "\u001b[1;35mDataset\u001b[0m\u001b[1m(\u001b[0m\u001b[1m{\u001b[0m\n", " features: \u001b[1m[\u001b[0m\u001b[32m'modelId'\u001b[0m, \u001b[32m'label'\u001b[0m, \u001b[32m'readme'\u001b[0m, \u001b[32m'readme_len'\u001b[0m\u001b[1m]\u001b[0m,\n", " num_rows: \u001b[1;36m6850\u001b[0m\n", "\u001b[1m}\u001b[0m\u001b[1m)\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ds = Dataset.from_pandas(df)\n", "ds" ] }, { "cell_type": "code", "execution_count": 9, "id": "LLbMIkpeoNlQ", "metadata": { "id": "LLbMIkpeoNlQ" }, "outputs": [], "source": [ "from huggingface_hub import notebook_login" ] }, { "cell_type": "code", "execution_count": 10, "id": "NNeymt5hoPGi", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 301, "referenced_widgets": [ "a2d1bdee854d47ddb32183ba141ab55d", "b2562460de0543a9be20e043c148a7c9", "3863ff3758874c60b2b0bc9f54f09146", "70d817adcee24f09a552c2331f3cdda1", "e1dcca41db4a40d897ccfb1eb7f2a010", "971e2965699d4b8e8e2fa0b05b3470fe", "8293a44938a24eeca7ce248747fe6591", "3018252f61f74baba9d2e466299b14c9", "985a4e94a6624db497fb549ff81f3c2e", "664ded2a090346638482d62daee73c67", "b428cdfadaf74e4b96485f5ce78edd69", "f5767bdfda10449da6b0676263878762", "d6219fdb579946aeaa9f5be0d6288f27", "6b9113db7e73426f81b33624fa9acb42" ] }, "id": "NNeymt5hoPGi", "outputId": "968e23b7-6fa3-4125-c942-f204d0c26600" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Login successful\n", "Your token has been saved to /root/.huggingface/token\n" ] } ], "source": [ "notebook_login()" ] }, { "cell_type": "code", "execution_count": null, "id": "CH0d6FiJoFJi", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 106, "referenced_widgets": [ "28cc772b519d4347985897d4903dc19a", "d47a67acfc694b758283f8fae594de27", "d4c6d4a913934f77849324ece6ef59a2", "3609d0dac2c94e1ea6fce14a24743b06", "e9bb74009b3f4cde9aea41628994c59d", "3f2007f0e2ab440c9977bbad877ed1b9", "f3a113d77ef34ec9b16a507ff5a22086", "875fb41ac3274893b1a02098bc67e831", "3ddbc8b058884ec5bd5c2c0d67ce1d99", "643b5a68217146b484a666dbc7ee9745", "bb49a2f1f29447c18c655bad111193fb" ] }, "id": "CH0d6FiJoFJi", "outputId": "df5b9707-6ada-4115-92df-9ed7c3b01512" }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "28cc772b519d4347985897d4903dc19a", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Pushing dataset shards to the dataset hub: 0%| | 0/1 [00:00, ?it/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stderr", "output_type": "stream", "text": [ "/usr/local/lib/python3.7/dist-packages/huggingface_hub/hf_api.py:1951: FutureWarning: `identical_ok` has no effect and is deprecated. It will be removed in 0.11.0.\n", " FutureWarning,\n" ] } ], "source": [ "ds.push_to_hub('davanstrien/hf_model_metadata')" ] }, { "cell_type": "markdown", "id": "xuAKdyzF7FcH", "metadata": { "id": "xuAKdyzF7FcH" }, "source": [ "We can now load it again using `load_dataset`. " ] }, { "cell_type": "code", "execution_count": 11, "id": "YxAbSYhjp-eq", "metadata": { "id": "YxAbSYhjp-eq" }, "outputs": [], "source": [ "from datasets import load_dataset" ] }, { "cell_type": "code", "execution_count": 12, "id": "iaJDdJ2SqCB2", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 220, "referenced_widgets": [ "408e1a3ed2724e3888bd734e124fbef1", "6ce941902c0c4510874bab1f91196b56", "a3b867882afb4657bab489771024b17f", "6cf212dafcd84da0b5e84a5f4899fb83", "4ecd1d1edc564b7e9be8032565eccf78", "29ad188e695c48b5a50b535c94c6919a", "99a0601302d84eabaea0ec1e6f646f2e", "3aa80c9ca81f46f097be6bbb2125fa6a", "ff563b21736441a5b58e789fcba39ac6", "7fafbea798bd46cdbac84fe14eeeb8c1", "10f574b9abb74c18a093d93169cde138", "e7977f25a481447c8def638353f05f3a", "0df50b3cd48f433784ac28472888a8ee", "03558198374d45adb6a60c4511daef8f", "72cc30e8927a41ec96219d8b23adc203", "78b71d770f8243c1b30989663fb66e71", "31b40798d3e944a382be9e29b26ab5fb", "73acdd7b4eb14d2c9b0a74a5d7a388b9", "652d15a87ace4f0c9491adb5a78c3563", "9028b62043ca4735833de215ac2c905c", "0873431a1b604aad8f57f47973d96bfe", "50422b4cb49946bdbde298a1ca7a4d82", "bc7a4fb51c644d3a818211fa2f1f528c", "67157f4966c04307ab9d98db565710e9", "532bf1d4cb9a4d889c25d17c58de8126", "df3d7ca7c52c40e8938ac617520c6529", "adc518ea92664d9698c5636354cb38c0", "d372ffa65e3c42d3bab3fc8f3983343b", "4d365a117add484d9c4af179854cf5b2", "bd46010979294a3093b12ec2ba6dca49", "49ccbab6392d4c239c54d29135a03f68", "6656d7d4de174bcf9f2ab20394f6f539", "f7e8a5865fad4e498dbcbb026b69c19b", "4cd45d16679342b493b93eb3d36069e6", "f186f74ef1b647c28508e256c5eefd8d", "29136b3a1dbb4b818ee1810f6b09f0ea", "98ed677c85db4b97914f81c5022ee8ab", "1bcee916fc244aacb5d978818b078950", "ea27ababcccb4ec89dcd56d5aa929968", "3b3d72a3940a41958745f1d885e78476", "45a2bab895044d2c966e5c81df80f9fb", "9e807026f5bf452da8344be4588969d7", "66de8de2aef44b10b958bbf6088c1c6b", "52b7ab3ba9d742eca283a6c4bf54b50d", "2a6c2f8b6841459c83ce393208525562", "97fd2521c4b44577bc1413f589415a87", "bbd3531795294cee8423ef685b199795", "7b32fd2506cc4969a29bb19cc9cab3fc", "f097d6b175ee4ec58ab4684b8facf73e", "ff002ce173474d9cb255187e63ea31b9", "84aebdd4ddf74dc7996a44a1ae71eb57", "aa45b55c1f324102aa74e920c240e2f9", "45dab5cfa9794d389a50d567ada87247", "24c90186cd684a1bb3018fbc4b59b1f6", "c27096439b8a4b73948a20024dd00376" ] }, "id": "iaJDdJ2SqCB2", "outputId": "c88fbeb4-2c53-4d14-856f-6f8c7ea6c86e" }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "408e1a3ed2724e3888bd734e124fbef1", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/1.25k [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stderr", "output_type": "stream", "text": [ "Using custom data configuration davanstrien--hf_model_metadata-019f1ad4bdf705b5\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Downloading and preparing dataset None/None (download: 3.71 MiB, generated: 10.64 MiB, post-processed: Unknown size, total: 14.35 MiB) to /root/.cache/huggingface/datasets/davanstrien___parquet/davanstrien--hf_model_metadata-019f1ad4bdf705b5/0.0.0/2a3b91fbd88a2c90d1dbbb32b460cf621d31bd5b05b934492fdef7d8d6f236ec...\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "e7977f25a481447c8def638353f05f3a", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading data files: 0%| | 0/1 [00:00, ?it/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "bc7a4fb51c644d3a818211fa2f1f528c", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading data: 0%| | 0.00/3.89M [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "4cd45d16679342b493b93eb3d36069e6", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Extracting data files: 0%| | 0/1 [00:00, ?it/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "2a6c2f8b6841459c83ce393208525562", "version_major": 2, "version_minor": 0 }, "text/plain": [ "0 tables [00:00, ? tables/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Dataset parquet downloaded and prepared to /root/.cache/huggingface/datasets/davanstrien___parquet/davanstrien--hf_model_metadata-019f1ad4bdf705b5/0.0.0/2a3b91fbd88a2c90d1dbbb32b460cf621d31bd5b05b934492fdef7d8d6f236ec. Subsequent calls will reuse this data.\n" ] } ], "source": [ "ds = load_dataset('davanstrien/hf_model_metadata', split='train')" ] }, { "cell_type": "markdown", "id": "TwpjNvT3RtRu", "metadata": { "id": "TwpjNvT3RtRu" }, "source": [ "Clean up some memory... " ] }, { "cell_type": "code", "execution_count": null, "id": "8aX5KyADobXr", "metadata": { "id": "8aX5KyADobXr" }, "outputs": [], "source": [ "del df" ] }, { "cell_type": "markdown", "id": "EVQAc4Ba8cK7", "metadata": { "id": "EVQAc4Ba8cK7" }, "source": [ "## Semantic search of model cards\n", "\n", "We now get to the main point of all of this. Can we use semantic search to try and find models of interest? For this, we'll use the sentence-transformers library. This blog won't cover all the background of this library. The [docs](https://www.sbert.net/index.html) give a helpful overview and some tutorials. \n", "\n", "To start, we'll see if we can search using the information in the `README.md`. This should, in theory, contain data that might be similar to the kinds of things we want to search for when finding candidate models. We might prefer to use semantic search over an exact match because the terms we use might be different, or there is a related concept/model that might be close enough to make it worthwhile for fine-tuning. \n", "\n", "\n", "First, we import the `SentenceTransformer` class and some util functions. " ] }, { "cell_type": "code", "execution_count": 13, "id": "94dee729-8602-411e-a739-25905f6a2cea", "metadata": { "id": "94dee729-8602-411e-a739-25905f6a2cea" }, "outputs": [], "source": [ "from sentence_transformers import SentenceTransformer, util\n" ] }, { "cell_type": "markdown", "id": "a083133f-f958-4e23-a382-40154d1fe909", "metadata": { "id": "a083133f-f958-4e23-a382-40154d1fe909" }, "source": [ "We'll now download an embedding model. There are many we could choose from but since we're just trying things out at the moment we won't stress about the particular model we use here. " ] }, { "cell_type": "code", "execution_count": 14, "id": "1d121b46-c11e-4883-a909-b64678b51b3b", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 465, "referenced_widgets": [ "f3a0b5889f9a40a3a372f7a124e19a75", "5d83f3f951f9462e8528274d8e791b59", "69c57b0bc0984df98a32190c28b48c30", "4ed1dd83523845ef85f644b0e0e7bed8", "d8f0f0db2a694253a57be8262f399561", "e5ff8b1f877f4bb08a6610875a9faabf", "26359d6777ba49d6b66a63fab561d8f9", "2237c31d5dbd4256a0c68dd9a99fb727", "7ec65623806b4068bdcfe4fad4ff6d2e", "7b5367ba8f9446079ca265fab7da645f", "37b6d2bf7bf14e0b95908dd1ffeae818", "c6cca6bee5874814a6b0284f046affd7", "b67fdc4d37464768bb18715d8279c7f7", "cb7e80e820a04a34a8cb0684caf24844", "8f524ec15d6446b9b84ca0576316e5c8", "2f378e7d6e6448349b86ff542d480d70", "0f8967e49b3d4e469b7ed23b257b8ad0", "31188889a4374433b808df747de55f74", "b2189cace5e8404f968040d69fc089a7", "a0bd18d44b50491ea731b7d8ab75acc4", "f26b9fc22684458588a4d4178cca23c5", "c2fb6bf5565b494fa07629404ba4fbd4", "cf8315e50b0349028f1573fdf6fbcd1a", "bda3db7317cd46eeb1c6332c563be498", "605a9b727d2a4a68a9bf4aea33da21fa", "8de8c2ca79dc48b78fd85f87915ea7ec", "5069ee90e04a4d029201a595b69777ae", "cffc738342c5425f9dcdb06968ec5b91", "2b5175f5959d45ff8166ef3d6dda9f01", "ba5248d43abe43738a4af233813a1fd0", "c23a3d4ee3a4433cba4132d55d49d6eb", "c7ecbc2644aa41078ec45c50434a853b", "796d93fd3fb149e79ba08eb23b1f81e4", "8fc2797a9f5a4ed39310dd5f0f356534", "4c606befd6974d1aa76df56ce63b5373", "3c5c453584804e70a903ea1e79b0f152", "e40806367b634843934e80ee7f50518d", "0e4e91b2020244ee9e159efded797d01", "b39d99777a044f4e88175ca339c5fce4", "782124b6daf4443a824160a4c07c8eb9", "1b3bb8a37cac4b3e91e0786ff39583cd", "18bd8c864c164afaa3cb7d2df5b010b8", "46dd9bed94354e4db54c92922b22fcd2", "fff9b969cfe04b8a8a3e959238e34afa", "9ac9a69af1894aff91b59ef8c11c29a2", "49c47f7875b24c2ba58d8e45bed8dc92", "6bc2c116b79443a99a4784fc514f4060", "d9c04cf4fbe949d19fed6878a952cb0a", "37ab3fe1c7ef44e6b675d227a7710b3e", "fb0520ab5c8743fe8263a9abd3f8d3cb", "a603ff421abc4d3ebd3efdc6db0b7a2c", "e7a184e1299742728baaaad4e18f75de", "0fcc103f12ba41db9c99dca74b341230", "8a5a898a7a584c178bb774d99a790601", "69d60456a5a5426494f73c533af8d353", "15ac8a912e2c44be9d7207d3939637bf", "5213f124a359414bb3d39bcfd4e83408", "7d387dd5825046b7ac911642be2c9cd6", "2166deb9d85f4a37b5f13b54e6429203", "cc9f6e7d229f4b2f8ff7b9ce4984f748", "d5846474b08f41069c57c1ee99eed4c6", "1f5df51361c8459d9e324413ef7bc276", "fd8e9848b0844d80b5ad3962b20b2dde", "08faccbd3a6044a5922b4d9c52c4b39c", "e9597b74043944549fdf4999240cc996", "78ae8bc9c8b74e2d906c4005c4477aae", "dc30bece345d44b4bbf638a6c2f74485", "70ec2a49a4014a6cbbb09d17d41f8bec", "7181d2a459094d6490042416a5223313", "9dcf141e2fb84974b2af942ed2301d61", "2a4248e2588d4223b7b2a1cb7e3792bf", "1d8d74399fef435c8ae04333f3916f69", "531829e7b8104892b96e3592f834b701", "d897caeec6f742bea66e6a235c899939", "0eaf6e5be53b4e4bba169ac3d9049c81", "ab76a44666af4328a50f3a0346f9929d", "cb16b18d070f4c3780787b3c35292e7d", "18855d2579ca4564a4ad25fe7974b921", "44e11c5ecbaa4e3e9ee89de43593afb2", "0277ba9c060d439caee8c023f3d097bb", "4477cdd56f7d4a7ba2b892179b091f5c", "99bf8c34c9304d22929d7651ae20bfcc", "a443f29df3f9442e8abfde2cfdc03cf5", "e229125640f04911964e96b458466df7", "72ca461fed84435bbd4f3b862ecacf91", "9e9f0615ff274adf9ed7f1853d9042c3", "b35f9d0515cd495ea6f0a2089529cb13", "3354f4d030f14c29b3eaf954e28ddbff", "f5b776124d68413cbddd5111cfad76c9", "4748e8fcab124a3f869519d7340aa89c", "c01ffe313ab846da8ce193993daa7502", "c050e87dbaf04fb9afbfbc037032f06f", "7aa8a50643b84843bde029ff35ec2177", "b5b94d9434fb44968cfe55ca3aeb7faf", "95a963812d8d4bd0aada7ef926d62179", "bc6361dac0bf44028579c4dd42882bf3", "3ed1145da99a4a9cb782a6450ed0a580", "f92514bcef714cdf88e6a3b6fe2a38f4", "76d451e9a23047ee99e25b035ed24403", "20b2ddb4039749b1aabbe15ec0c04c4b", "67cf32585ec04b19a26cf15e8dcd245a", "eccc6ee58b79448db8fbdcbadfd10308", "1de6e85f6d284dae8658a78b1ea92da6", "01d242d4ea63479d83e6895085f0e469", "8501399a02ac4c6db8e39932f20111f8", "e4b994aa260342d2a5d07fb6ac6762cd", "bc8e93c839934102b18f659a0c5d448e", "ee32dd5817d543b7813fb443c198c5e5", "5c56e3c01c3d43dd832c095ea6c14ca6", "2ede9a5a3d844092af4688c20a4b1d7d", "1e22fbe1e9e343a8bd8d01089996d362", "a082d62711f44a378554e0199db7f745", "79383bd3a4c74ced87d51da0f883b7a2", "b10a14bf8f794207ad479fed732d6c98", "8dc05c72e99e4969bba81db5e9d7fbfb", "dfa4d01f439447c7ae394df26f11050b", "e6684be3a9b841759bd87e418889df3c", "3927e692b81944768512e244237c1665", "5c8b97937175436e9c48bb86f81be1f6", "681789d7e59249e8b81461af2629d117", "416e33981f8f4d9f9d493c95cac8283c", "55ce595a743d4f328ce11c77047236b2", "f097923733674556a3d530ec2de8f2a3", "1c5febefbb714e6f88a389b4e9b86a37", "658250b01a664dbdab7571df89489417", "02a9d8b5f65847458ec313ecc6406b02", "81f7ee006a914cd49e1c5f28b0e16ed9", "22b2178a50254ef3be67ea8636dd7f3a", "536aa159505e4b42a7409fb5ff84a7ad", "13548ea532e142469fb28b47623d9fdf", "0256b2f2320447cead25c4a137a6e9f8", "d6a7281e2c51422c87e3e468ee9a11be", "368866595611494c88cba4752f61d456", "509accb5461a4a75b65d1fee093d0908", "e3bbd9e4d6144d7dba3e891d33bbe87c", "8277a1fa8fc64cf2abd4a5806b932715", "1643434e405f47729cf7b24d0beefe05", "edb947af25f844c0a883a6fdd164fec6", "05b0c0766b3b4aa883a6ac0e03726bba", "aaf9a83c0b494806a37dcc73737a2289", "f52408d112c94f78b7be9fca784c60c7", "574217f720f34d7c8bdc3a9518abf1b2", "7ddb2d401cbb4e14a085ba696ed31a5b", "77a5a674eec24e8ebb4fc367997dcd60", "e06e23bd2688499ca8eb1431ab1f1086", "90a5d302b48f44f1ae2a7f6fb5233035", "4d6fcf9256134cb68791857d91c490b6", "fd771220aae24e76a46050c0a26e9f66", "d64a1ebeda694e2f9c963edb5af3f272", "03ba1bb6125f4c488ceca836a7c72881", "bf06e4360e334cad9010895f8a03c0ff", "fe9d25320f574ebd92ce1cc3c8e5002b", "a1fbd1a7e3bb4d77b023322019b99c63", "f72fc15a704149f4a996dea9d2721626" ] }, "id": "1d121b46-c11e-4883-a909-b64678b51b3b", "outputId": "520af8a8-9a99-407d-f218-4ffac17c4b88" }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "f3a0b5889f9a40a3a372f7a124e19a75", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/1.18k [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "c6cca6bee5874814a6b0284f046affd7", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/190 [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "cf8315e50b0349028f1573fdf6fbcd1a", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/10.6k [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "8fc2797a9f5a4ed39310dd5f0f356534", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/612 [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "9ac9a69af1894aff91b59ef8c11c29a2", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/116 [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "15ac8a912e2c44be9d7207d3939637bf", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/39.3k [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "dc30bece345d44b4bbf638a6c2f74485", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/90.9M [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "18855d2579ca4564a4ad25fe7974b921", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/53.0 [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "f5b776124d68413cbddd5111cfad76c9", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/112 [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "20b2ddb4039749b1aabbe15ec0c04c4b", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/466k [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "1e22fbe1e9e343a8bd8d01089996d362", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/350 [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "55ce595a743d4f328ce11c77047236b2", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/13.2k [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "368866595611494c88cba4752f61d456", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/232k [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "77a5a674eec24e8ebb4fc367997dcd60", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Downloading: 0%| | 0.00/349 [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "model = SentenceTransformer('all-MiniLM-L6-v2')" ] }, { "cell_type": "markdown", "id": "S4oOsKWcRyoY", "metadata": { "id": "S4oOsKWcRyoY" }, "source": [ "Let's start on longer README's, here i mean a long readme that is just not super short... " ] }, { "cell_type": "code", "execution_count": 15, "id": "03244a14-235a-4ed2-baeb-fb76d9f2e819", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 49, "referenced_widgets": [ "e8860ae0f2ee4b1f961865168fa0f178", "6a680a9f47154568a8b247750ba20b8a", "8acc6a366fce4d258568dfec4c82f2f9", "fd141207fabb4e6aaa84378198ddb1e9", "55804a1002454a3e88dcd6bfb5bee7e4", "a8c8fc9e7c344917a970344f5b6cc756", "37753a57a9f34662aa040ba2b022ca7c", "69841b98271941a4b64a0fdcc45dadbc", "675b072220944bfa8b74d25437c2f0b1", "05fbe3e085c6466a95f1448ca0a57695", "0af6072411554dec934df729a43003ec" ] }, "id": "03244a14-235a-4ed2-baeb-fb76d9f2e819", "outputId": "a578fe56-dde3-4c5d-cee3-c839a7c5bbb3" }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "e8860ae0f2ee4b1f961865168fa0f178", "version_major": 2, "version_minor": 0 }, "text/plain": [ " 0%| | 0/7 [00:00, ?ba/s]" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ds_longer_readmes = ds.filter(lambda x: x['readme_len']>100)" ] }, { "cell_type": "markdown", "id": "ddca70ce-2351-4e68-89a3-3d547fd24eb1", "metadata": { "id": "ddca70ce-2351-4e68-89a3-3d547fd24eb1" }, "source": [ "We now create embeddings for the `readme` column and store this in a new `embedding` column " ] }, { "cell_type": "code", "execution_count": 16, "id": "WH4bKP9Tb0UG", "metadata": { "id": "WH4bKP9Tb0UG" }, "outputs": [], "source": [ "def encode_readme(readme):\n", " return model.encode(readme,device='cuda')" ] }, { "cell_type": "code", "execution_count": 17, "id": "b47352c2-3fa7-4e9e-bcbe-df7ebbbfcf30", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 49, "referenced_widgets": [ "370b4cd2300449b48325c49182ada640", "a7c406fd736a4565ad7e0ba60be99a20", "6d06ce56b55944cba9aaf28bd3b3e508", "650c946a6dd04a1dad4a3ffdcbc7516c", "a114f7f350704e85b86c75117e5d9702", "8be00e4b45bf47ab825b99f70fe7cf30", "26626c55e36248829c67b10de605bea9", "3fdbf86e812c4142b49ff80dbcb59057", "a360fc81c930455f94d8d0dbebf1fff9", "33a54ceae027439fbb283cda95a39719", "b98bfe7ccbb9496fb8c172c1cf5a1f18" ] }, "id": "b47352c2-3fa7-4e9e-bcbe-df7ebbbfcf30", "outputId": "cfcf00ff-c9da-4569-9783-2639240f250f" }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "370b4cd2300449b48325c49182ada640", "version_major": 2, "version_minor": 0 }, "text/plain": [ " 0%| | 0/206 [00:00, ?ba/s]" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ds_with_embeddings = ds_longer_readmes.map(lambda example: \n", " {\"embedding\":encode_readme(example['readme'])},batched=True, batch_size=16)\n", " " ] }, { "cell_type": "code", "execution_count": 18, "id": "5097699f-8676-48c1-9470-a53d43b0248c", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 83 }, "id": "5097699f-8676-48c1-9470-a53d43b0248c", "outputId": "0c91419a-2419-4a65-c3c8-bf0789abbd32" }, "outputs": [ { "data": { "text/html": [ "
\n", "Dataset({\n", " features: ['modelId', 'label', 'readme', 'readme_len', 'embedding'],\n", " num_rows: 3284\n", "})\n", "\n" ], "text/plain": [ "\n", "\u001b[1;35mDataset\u001b[0m\u001b[1m(\u001b[0m\u001b[1m{\u001b[0m\n", " features: \u001b[1m[\u001b[0m\u001b[32m'modelId'\u001b[0m, \u001b[32m'label'\u001b[0m, \u001b[32m'readme'\u001b[0m, \u001b[32m'readme_len'\u001b[0m, \u001b[32m'embedding'\u001b[0m\u001b[1m]\u001b[0m,\n", " num_rows: \u001b[1;36m3284\u001b[0m\n", "\u001b[1m}\u001b[0m\u001b[1m)\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ds_with_embeddings" ] }, { "cell_type": "markdown", "id": "42442e08-0292-4fb0-ab70-4d7ab0195e9f", "metadata": { "id": "42442e08-0292-4fb0-ab70-4d7ab0195e9f" }, "source": [ "We can now use the `add_fais_index` to create an index which allows us to efficiently query these embeddings " ] }, { "cell_type": "code", "execution_count": 19, "id": "19424e6a-ef3d-4c8e-bf99-fbdedb4fdc65", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 115, "referenced_widgets": [ "ad63f7dfb31d4c3fb4c0ea73cab19917", "4a142d8f316a49aca701850ed01e3b79", "68c5bb5404724775885eac217430af35", "14004f118a1641528f9427d3c01d841e", "d473f6ab480542f4a1cc5cb622a54ad7", "be0ef18544614ed1b9da9f8931bbe6b8", "59ac58d5680147baa98cb9325e9f8087", "c5d45d8d6038433da4c538fc630da082", "c853942632cf4aaca95737b6c3f6cfba", "012e04123ad9478aace2cdbf396d24f2", "97a7930f16fc44eaa2ac91d3f24974fc" ] }, "id": "19424e6a-ef3d-4c8e-bf99-fbdedb4fdc65", "outputId": "2ee9c92d-f6b3-4b4d-d953-43497c538d03" }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "ad63f7dfb31d4c3fb4c0ea73cab19917", "version_major": 2, "version_minor": 0 }, "text/plain": [ " 0%| | 0/4 [00:00, ?it/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "Dataset({\n", " features: ['modelId', 'label', 'readme', 'readme_len', 'embedding'],\n", " num_rows: 3284\n", "})\n", "\n" ], "text/plain": [ "\n", "\u001b[1;35mDataset\u001b[0m\u001b[1m(\u001b[0m\u001b[1m{\u001b[0m\n", " features: \u001b[1m[\u001b[0m\u001b[32m'modelId'\u001b[0m, \u001b[32m'label'\u001b[0m, \u001b[32m'readme'\u001b[0m, \u001b[32m'readme_len'\u001b[0m, \u001b[32m'embedding'\u001b[0m\u001b[1m]\u001b[0m,\n", " num_rows: \u001b[1;36m3284\u001b[0m\n", "\u001b[1m}\u001b[0m\u001b[1m)\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ds_with_embeddings.add_faiss_index(column='embedding')" ] }, { "cell_type": "markdown", "id": "26d7bcfd-91b5-4f69-bc14-319db6fe8ee7", "metadata": { "id": "26d7bcfd-91b5-4f69-bc14-319db6fe8ee7" }, "source": [ "### Similar models\n", "\n", "To start, we'll take a readme for a model and see how well the model performs on finding similar models." ] }, { "cell_type": "code", "execution_count": 31, "id": "eefa5c39-54aa-4367-909e-16837b506c98", "metadata": { "id": "eefa5c39-54aa-4367-909e-16837b506c98" }, "outputs": [], "source": [ "query_readme = ds_with_embeddings[35]['readme']" ] }, { "cell_type": "code", "execution_count": 32, "id": "9c6e6f85-d27d-46ae-85fb-96e1cb137a23", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 1000 }, "id": "9c6e6f85-d27d-46ae-85fb-96e1cb137a23", "outputId": "542302b8-dbb5-4046-ec0f-e713e60d8c29" }, "outputs": [ { "data": { "text/html": [ "
# Twitter-roBERTa-base for Irony Detection\n", "\n", "This is a roBERTa-base model trained on ~58M tweets and finetuned for irony detection with the TweetEval benchmark.\n", "\n", "- Paper: [_TweetEval_ benchmark (Findings of EMNLP 2020)](https://arxiv.org/pdf/2010.12421.pdf). \n", "- Git Repo: [Tweeteval official repository](https://github.com/cardiffnlp/tweeteval).\n", "\n", "## Example of classification\n", "\n", "```python\n", "from transformers import AutoModelForSequenceClassification\n", "from transformers import TFAutoModelForSequenceClassification\n", "from transformers import AutoTokenizer\n", "import numpy as np\n", "from scipy.special import softmax\n", "import csv\n", "import urllib.request\n", "\n", "# Preprocess text (username and link placeholders)\n", "def preprocess(text):\n", " new_text = [\n", " ]\n", " for t in text.split(\" \"):\n", " t = '@user' if t.startswith('@') and len(t) > 1 else t\n", " t = 'http' if t.startswith('http') else t\n", " new_text.append(t)\n", " return \" \".join(new_text)\n", "\n", "# Tasks:\n", "# emoji, emotion, hate, irony, offensive, sentiment\n", "# stance/abortion, stance/atheism, stance/climate, stance/feminist, stance/hillary\n", "\n", "task='irony'\n", "MODEL = f\"cardiffnlp/twitter-roberta-base-{task}\"\n", "\n", "tokenizer = AutoTokenizer.from_pretrained(MODEL)\n", "\n", "# download label mapping\n", "labels=[]\n", "mapping_link = f\"https://raw.githubusercontent.com/cardiffnlp/tweeteval/main/datasets/{task}/mapping.txt\"\n", "with urllib.request.urlopen(mapping_link) as f:\n", " html = f.read().decode('utf-8').split(\"\\n\")\n", " csvreader = csv.reader(html, delimiter='\\t')\n", "labels = [row[1] for row in csvreader if len(row) > 1]\n", "\n", "# PT\n", "model = AutoModelForSequenceClassification.from_pretrained(MODEL)\n", "model.save_pretrained(MODEL)\n", "\n", "text = \"Great, it broke the first day...\"\n", "text = preprocess(text)\n", "encoded_input = tokenizer(text, return_tensors='pt')\n", "output = model(**encoded_input)\n", "scores = output[0][0].detach().numpy()\n", "scores = softmax(scores)\n", "\n", "# # TF\n", "# model = TFAutoModelForSequenceClassification.from_pretrained(MODEL)\n", "# model.save_pretrained(MODEL)\n", "\n", "# text = \"Great, it broke the first day...\"\n", "# encoded_input = tokenizer(text, return_tensors='tf')\n", "# output = model(encoded_input)\n", "# scores = output[0][0].numpy()\n", "# scores = softmax(scores)\n", "\n", "ranking = np.argsort(scores)\n", "ranking = ranking[::-1]\n", "for i in range(scores.shape[0]):\n", " l = labels[ranking]\n", " s = scores[ranking]\n", " print(f\"{i+1}) {l} {np.round(float(s), 4)}\")\n", "\n", "```\n", "\n", "Output: \n", "\n", "```\n", "1) irony 0.914\n", "2) non_irony 0.086\n", "```\n", "\n", "\n" ], "text/plain": [ "# Twitter-roBERTa-base for Irony Detection\n", "\n", "This is a roBERTa-base model trained on ~58M tweets and finetuned for irony detection with the TweetEval benchmark.\n", "\n", "- Paper: \u001b[1m[\u001b[0m_TweetEval_ benchmark \u001b[1m(\u001b[0mFindings of EMNLP \u001b[1;36m2020\u001b[0m\u001b[1m)\u001b[0m\u001b[1m]\u001b[0m\u001b[1m(\u001b[0m\u001b[4;94mhttps://arxiv.org/pdf/2010.12421.pdf\u001b[0m\u001b[4;94m)\u001b[0m\u001b[4;94m.\u001b[0m \n", "- Git Repo: \u001b[1m[\u001b[0mTweeteval official repository\u001b[1m]\u001b[0m\u001b[1m(\u001b[0m\u001b[4;94mhttps://github.com/cardiffnlp/tweeteval\u001b[0m\u001b[4;94m)\u001b[0m\u001b[4;94m.\u001b[0m\n", "\n", "## Example of classification\n", "\n", "```python\n", "from transformers import AutoModelForSequenceClassification\n", "from transformers import TFAutoModelForSequenceClassification\n", "from transformers import AutoTokenizer\n", "import numpy as np\n", "from scipy.special import softmax\n", "import csv\n", "import urllib.request\n", "\n", "# Preprocess text \u001b[1m(\u001b[0musername and link placeholders\u001b[1m)\u001b[0m\n", "def \u001b[1;35mpreprocess\u001b[0m\u001b[1m(\u001b[0mtext\u001b[1m)\u001b[0m:\n", " new_text = \u001b[1m[\u001b[0m\n", " \u001b[1m]\u001b[0m\n", " for t in \u001b[1;35mtext.split\u001b[0m\u001b[1m(\u001b[0m\u001b[32m\" \"\u001b[0m\u001b[1m)\u001b[0m:\n", " t = \u001b[32m'@user'\u001b[0m if \u001b[1;35mt.startswith\u001b[0m\u001b[1m(\u001b[0m\u001b[32m'@'\u001b[0m\u001b[1m)\u001b[0m and \u001b[1;35mlen\u001b[0m\u001b[1m(\u001b[0mt\u001b[1m)\u001b[0m > \u001b[1;36m1\u001b[0m else t\n", " t = \u001b[32m'http'\u001b[0m if \u001b[1;35mt.startswith\u001b[0m\u001b[1m(\u001b[0m\u001b[32m'http'\u001b[0m\u001b[1m)\u001b[0m else t\n", " \u001b[1;35mnew_text.append\u001b[0m\u001b[1m(\u001b[0mt\u001b[1m)\u001b[0m\n", " return \u001b[32m\" \"\u001b[0m\u001b[1;35m.join\u001b[0m\u001b[1m(\u001b[0mnew_text\u001b[1m)\u001b[0m\n", "\n", "# Tasks:\n", "# emoji, emotion, hate, irony, offensive, sentiment\n", "# stance/abortion, stance/atheism, stance/climate, stance/feminist, stance/hillary\n", "\n", "\u001b[33mtask\u001b[0m=\u001b[32m'irony'\u001b[0m\n", "MODEL = f\"cardiffnlp/twitter-roberta-base-\u001b[1m{\u001b[0mtask\u001b[1m}\u001b[0m\"\n", "\n", "tokenizer = \u001b[1;35mAutoTokenizer.from_pretrained\u001b[0m\u001b[1m(\u001b[0mMODEL\u001b[1m)\u001b[0m\n", "\n", "# download label mapping\n", "\u001b[33mlabels\u001b[0m=\u001b[1m[\u001b[0m\u001b[1m]\u001b[0m\n", "mapping_link = f\"\u001b[4;94mhttps://raw.githubusercontent.com/cardiffnlp/tweeteval/main/datasets/\u001b[0m\u001b[1m{\u001b[0mtask\u001b[1m}\u001b[0m\u001b[35m/\u001b[0m\u001b[95mmapping.txt\u001b[0m\"\n", "with \u001b[1;35murllib.request.urlopen\u001b[0m\u001b[1m(\u001b[0mmapping_link\u001b[1m)\u001b[0m as f:\n", " html = \u001b[1;35mf.read\u001b[0m\u001b[1m(\u001b[0m\u001b[1m)\u001b[0m\u001b[1;35m.decode\u001b[0m\u001b[1m(\u001b[0m\u001b[32m'utf-8'\u001b[0m\u001b[1m)\u001b[0m\u001b[1;35m.split\u001b[0m\u001b[1m(\u001b[0m\u001b[32m\"\\n\"\u001b[0m\u001b[1m)\u001b[0m\n", " csvreader = \u001b[1;35mcsv.reader\u001b[0m\u001b[1m(\u001b[0mhtml, \u001b[33mdelimiter\u001b[0m=\u001b[32m'\\t'\u001b[0m\u001b[1m)\u001b[0m\n", "labels = \u001b[1m[\u001b[0mrow\u001b[1m[\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1m]\u001b[0m for row in csvreader if \u001b[1;35mlen\u001b[0m\u001b[1m(\u001b[0mrow\u001b[1m)\u001b[0m > \u001b[1;36m1\u001b[0m\u001b[1m]\u001b[0m\n", "\n", "# PT\n", "model = \u001b[1;35mAutoModelForSequenceClassification.from_pretrained\u001b[0m\u001b[1m(\u001b[0mMODEL\u001b[1m)\u001b[0m\n", "\u001b[1;35mmodel.save_pretrained\u001b[0m\u001b[1m(\u001b[0mMODEL\u001b[1m)\u001b[0m\n", "\n", "text = \u001b[32m\"Great, it broke the first day...\"\u001b[0m\n", "text = \u001b[1;35mpreprocess\u001b[0m\u001b[1m(\u001b[0mtext\u001b[1m)\u001b[0m\n", "encoded_input = \u001b[1;35mtokenizer\u001b[0m\u001b[1m(\u001b[0mtext, \u001b[33mreturn_tensors\u001b[0m=\u001b[32m'pt'\u001b[0m\u001b[1m)\u001b[0m\n", "output = \u001b[1;35mmodel\u001b[0m\u001b[1m(\u001b[0m**encoded_input\u001b[1m)\u001b[0m\n", "scores = output\u001b[1m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m]\u001b[0m\u001b[1m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m]\u001b[0m\u001b[1;35m.detach\u001b[0m\u001b[1m(\u001b[0m\u001b[1m)\u001b[0m\u001b[1;35m.numpy\u001b[0m\u001b[1m(\u001b[0m\u001b[1m)\u001b[0m\n", "scores = \u001b[1;35msoftmax\u001b[0m\u001b[1m(\u001b[0mscores\u001b[1m)\u001b[0m\n", "\n", "# # TF\n", "# model = \u001b[1;35mTFAutoModelForSequenceClassification.from_pretrained\u001b[0m\u001b[1m(\u001b[0mMODEL\u001b[1m)\u001b[0m\n", "# \u001b[1;35mmodel.save_pretrained\u001b[0m\u001b[1m(\u001b[0mMODEL\u001b[1m)\u001b[0m\n", "\n", "# text = \u001b[32m\"Great, it broke the first day...\"\u001b[0m\n", "# encoded_input = \u001b[1;35mtokenizer\u001b[0m\u001b[1m(\u001b[0mtext, \u001b[33mreturn_tensors\u001b[0m=\u001b[32m'tf'\u001b[0m\u001b[1m)\u001b[0m\n", "# output = \u001b[1;35mmodel\u001b[0m\u001b[1m(\u001b[0mencoded_input\u001b[1m)\u001b[0m\n", "# scores = output\u001b[1m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m]\u001b[0m\u001b[1m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m]\u001b[0m\u001b[1;35m.numpy\u001b[0m\u001b[1m(\u001b[0m\u001b[1m)\u001b[0m\n", "# scores = \u001b[1;35msoftmax\u001b[0m\u001b[1m(\u001b[0mscores\u001b[1m)\u001b[0m\n", "\n", "ranking = \u001b[1;35mnp.argsort\u001b[0m\u001b[1m(\u001b[0mscores\u001b[1m)\u001b[0m\n", "ranking = ranking\u001b[1m[\u001b[0m::\u001b[1;36m-1\u001b[0m\u001b[1m]\u001b[0m\n", "for i in \u001b[1;35mrange\u001b[0m\u001b[1m(\u001b[0mscores.shape\u001b[1m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m]\u001b[0m\u001b[1m)\u001b[0m:\n", " l = labels\u001b[1m[\u001b[0mranking\u001b[1;3m]\u001b[0m\n", "\u001b[3m s = scores\u001b[0m\u001b[1;3m[\u001b[0m\u001b[3mranking\u001b[0m\u001b[1;3m]\u001b[0m\n", "\u001b[3m \u001b[0m\u001b[1;3;35mprint\u001b[0m\u001b[1;3m(\u001b[0m\u001b[3mf\"\u001b[0m\u001b[1;3m{\u001b[0m\u001b[3mi+\u001b[0m\u001b[1;3;36m1\u001b[0m\u001b[1;3m}\u001b[0m\u001b[1;3m)\u001b[0m\u001b[3m \u001b[0m\u001b[1;3m{\u001b[0m\u001b[3ml\u001b[0m\u001b[1;3m}\u001b[0m\u001b[3m \u001b[0m\u001b[1;3m{\u001b[0m\u001b[1;3;35mnp.round\u001b[0m\u001b[1;3m(\u001b[0m\u001b[1;3;35mfloat\u001b[0m\u001b[1;3m(\u001b[0m\u001b[3ms\u001b[0m\u001b[1;3m)\u001b[0m\u001b[3m, \u001b[0m\u001b[1;3;36m4\u001b[0m\u001b[1;3m)\u001b[0m\u001b[1;3m}\u001b[0m\u001b[3m\"\u001b[0m\u001b[1;3m)\u001b[0m\n", "\n", "\u001b[3m```\u001b[0m\n", "\n", "\u001b[3mOutput: \u001b[0m\n", "\n", "\u001b[3m```\u001b[0m\n", "\u001b[1;3;36m1\u001b[0m\u001b[1;3m)\u001b[0m\u001b[3m irony \u001b[0m\u001b[1;3;36m0.914\u001b[0m\n", "\u001b[1;3;36m2\u001b[0m\u001b[1;3m)\u001b[0m\u001b[3m non_irony \u001b[0m\u001b[1;3;36m0.086\u001b[0m\n", "\u001b[3m```\u001b[0m\n", "\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "print(query_readme)" ] }, { "cell_type": "markdown", "id": "0698667a-09cd-461e-98c6-92c74757eedf", "metadata": { "id": "0698667a-09cd-461e-98c6-92c74757eedf" }, "source": [ "We pass this README into the model we used to create our embedding. This creates a query embedding for this README." ] }, { "cell_type": "code", "execution_count": 33, "id": "58c521ae-952e-4fa8-82bf-8d5d81627f5b", "metadata": { "id": "58c521ae-952e-4fa8-82bf-8d5d81627f5b" }, "outputs": [], "source": [ "q = model.encode(query_readme)" ] }, { "cell_type": "markdown", "id": "36db4903-0104-40e9-bba8-4b1683fe79a3", "metadata": { "id": "36db4903-0104-40e9-bba8-4b1683fe79a3" }, "source": [ "We can use `get_nearest_examples` to look for the most similar results to this query. " ] }, { "cell_type": "code", "execution_count": 34, "id": "5ba977d4-7163-4edf-8dfe-cd789303918a", "metadata": { "id": "5ba977d4-7163-4edf-8dfe-cd789303918a" }, "outputs": [], "source": [ "scores, retrieved_examples = ds_with_embeddings.get_nearest_examples('embedding', q, k=10)\n" ] }, { "cell_type": "markdown", "id": "fe54c158-639f-4d93-9dbd-11337c1453b1", "metadata": { "id": "fe54c158-639f-4d93-9dbd-11337c1453b1" }, "source": [ "Let's take a look at the first result " ] }, { "cell_type": "code", "execution_count": 38, "id": "R2ii4efY6KQv", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "id": "R2ii4efY6KQv", "outputId": "da27ad73-add3-4a6c-c3af-0a3c59363dbf" }, "outputs": [ { "data": { "text/html": [ "
cardiffnlp/twitter-roberta-base-irony\n", "\n" ], "text/plain": [ "cardiffnlp/twitter-roberta-base-irony\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ " print(retrieved_examples['modelId'][0])" ] }, { "cell_type": "code", "execution_count": 39, "id": "44bad884-80c6-4ee6-af83-10e0ecf91082", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 1000 }, "id": "44bad884-80c6-4ee6-af83-10e0ecf91082", "outputId": "b6c18969-17bd-4248-a3a9-bd19f9297b73" }, "outputs": [ { "data": { "text/html": [ "
# Twitter-roBERTa-base for Irony Detection\n", "\n", "This is a roBERTa-base model trained on ~58M tweets and finetuned for irony detection with the TweetEval benchmark.\n", "\n", "- Paper: [_TweetEval_ benchmark (Findings of EMNLP 2020)](https://arxiv.org/pdf/2010.12421.pdf). \n", "- Git Repo: [Tweeteval official repository](https://github.com/cardiffnlp/tweeteval).\n", "\n", "## Example of classification\n", "\n", "```python\n", "from transformers import AutoModelForSequenceClassification\n", "from transformers import TFAutoModelForSequenceClassification\n", "from transformers import AutoTokenizer\n", "import numpy as np\n", "from scipy.special import softmax\n", "import csv\n", "import urllib.request\n", "\n", "# Preprocess text (username and link placeholders)\n", "def preprocess(text):\n", " new_text = [\n", " ]\n", " for t in text.split(\" \"):\n", " t = '@user' if t.startswith('@') and len(t) > 1 else t\n", " t = 'http' if t.startswith('http') else t\n", " new_text.append(t)\n", " return \" \".join(new_text)\n", "\n", "# Tasks:\n", "# emoji, emotion, hate, irony, offensive, sentiment\n", "# stance/abortion, stance/atheism, stance/climate, stance/feminist, stance/hillary\n", "\n", "task='irony'\n", "MODEL = f\"cardiffnlp/twitter-roberta-base-{task}\"\n", "\n", "tokenizer = AutoTokenizer.from_pretrained(MODEL)\n", "\n", "# download label mapping\n", "labels=[]\n", "mapping_link = f\"https://raw.githubusercontent.com/cardiffnlp/tweeteval/main/datasets/{task}/mapping.txt\"\n", "with urllib.request.urlopen(mapping_link) as f:\n", " html = f.read().decode('utf-8').split(\"\\n\")\n", " csvreader = csv.reader(html, delimiter='\\t')\n", "labels = [row[1] for row in csvreader if len(row) > 1]\n", "\n", "# PT\n", "model = AutoModelForSequenceClassification.from_pretrained(MODEL)\n", "model.save_pretrained(MODEL)\n", "\n", "text = \"Great, it broke the first day...\"\n", "text = preprocess(text)\n", "encoded_input = tokenizer(text, return_tensors='pt')\n", "output = model(**encoded_input)\n", "scores = output[0][0].detach().numpy()\n", "scores = softmax(scores)\n", "\n", "# # TF\n", "# model = TFAutoModelForSequenceClassification.from_pretrained(MODEL)\n", "# model.save_pretrained(MODEL)\n", "\n", "# text = \"Great, it broke the first day...\"\n", "# encoded_input = tokenizer(text, return_tensors='tf')\n", "# output = model(encoded_input)\n", "# scores = output[0][0].numpy()\n", "# scores = softmax(scores)\n", "\n", "ranking = np.argsort(scores)\n", "ranking = ranking[::-1]\n", "for i in range(scores.shape[0]):\n", " l = labels[ranking]\n", " s = scores[ranking]\n", " print(f\"{i+1}) {l} {np.round(float(s), 4)}\")\n", "\n", "```\n", "\n", "Output: \n", "\n", "```\n", "1) irony 0.914\n", "2) non_irony 0.086\n", "```\n", "\n", "\n" ], "text/plain": [ "# Twitter-roBERTa-base for Irony Detection\n", "\n", "This is a roBERTa-base model trained on ~58M tweets and finetuned for irony detection with the TweetEval benchmark.\n", "\n", "- Paper: \u001b[1m[\u001b[0m_TweetEval_ benchmark \u001b[1m(\u001b[0mFindings of EMNLP \u001b[1;36m2020\u001b[0m\u001b[1m)\u001b[0m\u001b[1m]\u001b[0m\u001b[1m(\u001b[0m\u001b[4;94mhttps://arxiv.org/pdf/2010.12421.pdf\u001b[0m\u001b[4;94m)\u001b[0m\u001b[4;94m.\u001b[0m \n", "- Git Repo: \u001b[1m[\u001b[0mTweeteval official repository\u001b[1m]\u001b[0m\u001b[1m(\u001b[0m\u001b[4;94mhttps://github.com/cardiffnlp/tweeteval\u001b[0m\u001b[4;94m)\u001b[0m\u001b[4;94m.\u001b[0m\n", "\n", "## Example of classification\n", "\n", "```python\n", "from transformers import AutoModelForSequenceClassification\n", "from transformers import TFAutoModelForSequenceClassification\n", "from transformers import AutoTokenizer\n", "import numpy as np\n", "from scipy.special import softmax\n", "import csv\n", "import urllib.request\n", "\n", "# Preprocess text \u001b[1m(\u001b[0musername and link placeholders\u001b[1m)\u001b[0m\n", "def \u001b[1;35mpreprocess\u001b[0m\u001b[1m(\u001b[0mtext\u001b[1m)\u001b[0m:\n", " new_text = \u001b[1m[\u001b[0m\n", " \u001b[1m]\u001b[0m\n", " for t in \u001b[1;35mtext.split\u001b[0m\u001b[1m(\u001b[0m\u001b[32m\" \"\u001b[0m\u001b[1m)\u001b[0m:\n", " t = \u001b[32m'@user'\u001b[0m if \u001b[1;35mt.startswith\u001b[0m\u001b[1m(\u001b[0m\u001b[32m'@'\u001b[0m\u001b[1m)\u001b[0m and \u001b[1;35mlen\u001b[0m\u001b[1m(\u001b[0mt\u001b[1m)\u001b[0m > \u001b[1;36m1\u001b[0m else t\n", " t = \u001b[32m'http'\u001b[0m if \u001b[1;35mt.startswith\u001b[0m\u001b[1m(\u001b[0m\u001b[32m'http'\u001b[0m\u001b[1m)\u001b[0m else t\n", " \u001b[1;35mnew_text.append\u001b[0m\u001b[1m(\u001b[0mt\u001b[1m)\u001b[0m\n", " return \u001b[32m\" \"\u001b[0m\u001b[1;35m.join\u001b[0m\u001b[1m(\u001b[0mnew_text\u001b[1m)\u001b[0m\n", "\n", "# Tasks:\n", "# emoji, emotion, hate, irony, offensive, sentiment\n", "# stance/abortion, stance/atheism, stance/climate, stance/feminist, stance/hillary\n", "\n", "\u001b[33mtask\u001b[0m=\u001b[32m'irony'\u001b[0m\n", "MODEL = f\"cardiffnlp/twitter-roberta-base-\u001b[1m{\u001b[0mtask\u001b[1m}\u001b[0m\"\n", "\n", "tokenizer = \u001b[1;35mAutoTokenizer.from_pretrained\u001b[0m\u001b[1m(\u001b[0mMODEL\u001b[1m)\u001b[0m\n", "\n", "# download label mapping\n", "\u001b[33mlabels\u001b[0m=\u001b[1m[\u001b[0m\u001b[1m]\u001b[0m\n", "mapping_link = f\"\u001b[4;94mhttps://raw.githubusercontent.com/cardiffnlp/tweeteval/main/datasets/\u001b[0m\u001b[1m{\u001b[0mtask\u001b[1m}\u001b[0m\u001b[35m/\u001b[0m\u001b[95mmapping.txt\u001b[0m\"\n", "with \u001b[1;35murllib.request.urlopen\u001b[0m\u001b[1m(\u001b[0mmapping_link\u001b[1m)\u001b[0m as f:\n", " html = \u001b[1;35mf.read\u001b[0m\u001b[1m(\u001b[0m\u001b[1m)\u001b[0m\u001b[1;35m.decode\u001b[0m\u001b[1m(\u001b[0m\u001b[32m'utf-8'\u001b[0m\u001b[1m)\u001b[0m\u001b[1;35m.split\u001b[0m\u001b[1m(\u001b[0m\u001b[32m\"\\n\"\u001b[0m\u001b[1m)\u001b[0m\n", " csvreader = \u001b[1;35mcsv.reader\u001b[0m\u001b[1m(\u001b[0mhtml, \u001b[33mdelimiter\u001b[0m=\u001b[32m'\\t'\u001b[0m\u001b[1m)\u001b[0m\n", "labels = \u001b[1m[\u001b[0mrow\u001b[1m[\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1m]\u001b[0m for row in csvreader if \u001b[1;35mlen\u001b[0m\u001b[1m(\u001b[0mrow\u001b[1m)\u001b[0m > \u001b[1;36m1\u001b[0m\u001b[1m]\u001b[0m\n", "\n", "# PT\n", "model = \u001b[1;35mAutoModelForSequenceClassification.from_pretrained\u001b[0m\u001b[1m(\u001b[0mMODEL\u001b[1m)\u001b[0m\n", "\u001b[1;35mmodel.save_pretrained\u001b[0m\u001b[1m(\u001b[0mMODEL\u001b[1m)\u001b[0m\n", "\n", "text = \u001b[32m\"Great, it broke the first day...\"\u001b[0m\n", "text = \u001b[1;35mpreprocess\u001b[0m\u001b[1m(\u001b[0mtext\u001b[1m)\u001b[0m\n", "encoded_input = \u001b[1;35mtokenizer\u001b[0m\u001b[1m(\u001b[0mtext, \u001b[33mreturn_tensors\u001b[0m=\u001b[32m'pt'\u001b[0m\u001b[1m)\u001b[0m\n", "output = \u001b[1;35mmodel\u001b[0m\u001b[1m(\u001b[0m**encoded_input\u001b[1m)\u001b[0m\n", "scores = output\u001b[1m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m]\u001b[0m\u001b[1m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m]\u001b[0m\u001b[1;35m.detach\u001b[0m\u001b[1m(\u001b[0m\u001b[1m)\u001b[0m\u001b[1;35m.numpy\u001b[0m\u001b[1m(\u001b[0m\u001b[1m)\u001b[0m\n", "scores = \u001b[1;35msoftmax\u001b[0m\u001b[1m(\u001b[0mscores\u001b[1m)\u001b[0m\n", "\n", "# # TF\n", "# model = \u001b[1;35mTFAutoModelForSequenceClassification.from_pretrained\u001b[0m\u001b[1m(\u001b[0mMODEL\u001b[1m)\u001b[0m\n", "# \u001b[1;35mmodel.save_pretrained\u001b[0m\u001b[1m(\u001b[0mMODEL\u001b[1m)\u001b[0m\n", "\n", "# text = \u001b[32m\"Great, it broke the first day...\"\u001b[0m\n", "# encoded_input = \u001b[1;35mtokenizer\u001b[0m\u001b[1m(\u001b[0mtext, \u001b[33mreturn_tensors\u001b[0m=\u001b[32m'tf'\u001b[0m\u001b[1m)\u001b[0m\n", "# output = \u001b[1;35mmodel\u001b[0m\u001b[1m(\u001b[0mencoded_input\u001b[1m)\u001b[0m\n", "# scores = output\u001b[1m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m]\u001b[0m\u001b[1m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m]\u001b[0m\u001b[1;35m.numpy\u001b[0m\u001b[1m(\u001b[0m\u001b[1m)\u001b[0m\n", "# scores = \u001b[1;35msoftmax\u001b[0m\u001b[1m(\u001b[0mscores\u001b[1m)\u001b[0m\n", "\n", "ranking = \u001b[1;35mnp.argsort\u001b[0m\u001b[1m(\u001b[0mscores\u001b[1m)\u001b[0m\n", "ranking = ranking\u001b[1m[\u001b[0m::\u001b[1;36m-1\u001b[0m\u001b[1m]\u001b[0m\n", "for i in \u001b[1;35mrange\u001b[0m\u001b[1m(\u001b[0mscores.shape\u001b[1m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m]\u001b[0m\u001b[1m)\u001b[0m:\n", " l = labels\u001b[1m[\u001b[0mranking\u001b[1;3m]\u001b[0m\n", "\u001b[3m s = scores\u001b[0m\u001b[1;3m[\u001b[0m\u001b[3mranking\u001b[0m\u001b[1;3m]\u001b[0m\n", "\u001b[3m \u001b[0m\u001b[1;3;35mprint\u001b[0m\u001b[1;3m(\u001b[0m\u001b[3mf\"\u001b[0m\u001b[1;3m{\u001b[0m\u001b[3mi+\u001b[0m\u001b[1;3;36m1\u001b[0m\u001b[1;3m}\u001b[0m\u001b[1;3m)\u001b[0m\u001b[3m \u001b[0m\u001b[1;3m{\u001b[0m\u001b[3ml\u001b[0m\u001b[1;3m}\u001b[0m\u001b[3m \u001b[0m\u001b[1;3m{\u001b[0m\u001b[1;3;35mnp.round\u001b[0m\u001b[1;3m(\u001b[0m\u001b[1;3;35mfloat\u001b[0m\u001b[1;3m(\u001b[0m\u001b[3ms\u001b[0m\u001b[1;3m)\u001b[0m\u001b[3m, \u001b[0m\u001b[1;3;36m4\u001b[0m\u001b[1;3m)\u001b[0m\u001b[1;3m}\u001b[0m\u001b[3m\"\u001b[0m\u001b[1;3m)\u001b[0m\n", "\n", "\u001b[3m```\u001b[0m\n", "\n", "\u001b[3mOutput: \u001b[0m\n", "\n", "\u001b[3m```\u001b[0m\n", "\u001b[1;3;36m1\u001b[0m\u001b[1;3m)\u001b[0m\u001b[3m irony \u001b[0m\u001b[1;3;36m0.914\u001b[0m\n", "\u001b[1;3;36m2\u001b[0m\u001b[1;3m)\u001b[0m\u001b[3m non_irony \u001b[0m\u001b[1;3;36m0.086\u001b[0m\n", "\u001b[3m```\u001b[0m\n", "\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "print(retrieved_examples[\"readme\"][0])" ] }, { "cell_type": "markdown", "id": "dce88a45-a7b7-401e-8678-86b490e7088a", "metadata": { "id": "dce88a45-a7b7-401e-8678-86b490e7088a" }, "source": [ "and a lower similarity result" ] }, { "cell_type": "code", "execution_count": 42, "id": "f956bd40-1ead-4c7f-80a9-1e7f95c33a27", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 850 }, "id": "f956bd40-1ead-4c7f-80a9-1e7f95c33a27", "outputId": "29added4-9de2-49bf-c5ea-0785c5a0ff8a" }, "outputs": [ { "data": { "text/html": [ "
---\n", "language: \"en\"\n", "tags:\n", "- roberta\n", "- sentiment\n", "- twitter\n", "\n", "widget:\n", "- text: \"Oh no. This is bad..\"\n", "- text: \"To be or not to be.\"\n", "- text: \"Oh Happy Day\"\n", "\n", "---\n", "\n", "This RoBERTa-based model can classify the sentiment of English language text in 3 classes:\n", "\n", "- positive 😀\n", "- neutral 😐\n", "- negative 🙁\n", "\n", "The model was fine-tuned on 5,304 manually annotated social media posts. \n", "The hold-out accuracy is 86.1%. \n", "For details on the training approach see Web Appendix F in Hartmann et al. (2021). \n", "\n", "# Application\n", "```python\n", "from transformers import pipeline\n", "classifier = pipeline(\"text-classification\", model=\"j-hartmann/sentiment-roberta-large-english-3-classes\", \n", "return_all_scores=True)\n", "classifier(\"This is so nice!\")\n", "```\n", "\n", "```python\n", "Output:\n", "[[{'label': 'negative', 'score': 0.00016451838018838316},\n", " {'label': 'neutral', 'score': 0.000174045650055632},\n", " {'label': 'positive', 'score': 0.9996614456176758}]]\n", "```\n", "\n", "# Reference\n", "Please cite (https://journals.sagepub.com/doi/full/10.1177/00222437211037258) when you use our model. Feel free to \n", "reach out to (mailto:j.p.hartmann@rug.nl) with any questions or feedback you may have.\n", "```\n", "@article{hartmann2021,\n", " title={The Power of Brand Selfies},\n", " author={Hartmann, Jochen and Heitmann, Mark and Schamp, Christina and Netzer, Oded},\n", " journal={Journal of Marketing Research}\n", " year={2021}\n", "}\n", "```\n", "\n" ], "text/plain": [ "---\n", "language: \u001b[32m\"en\"\u001b[0m\n", "tags:\n", "- roberta\n", "- sentiment\n", "- twitter\n", "\n", "widget:\n", "- text: \u001b[32m\"Oh no. This is bad..\"\u001b[0m\n", "- text: \u001b[32m\"To be or not to be.\"\u001b[0m\n", "- text: \u001b[32m\"Oh Happy Day\"\u001b[0m\n", "\n", "---\n", "\n", "This RoBERTa-based model can classify the sentiment of English language text in \u001b[1;36m3\u001b[0m classes:\n", "\n", "- positive 😀\n", "- neutral 😐\n", "- negative 🙁\n", "\n", "The model was fine-tuned on \u001b[1;36m5\u001b[0m,\u001b[1;36m304\u001b[0m manually annotated social media posts. \n", "The hold-out accuracy is \u001b[1;36m86.1\u001b[0m%. \n", "For details on the training approach see Web Appendix F in Hartmann et al. \u001b[1m(\u001b[0m\u001b[1;36m2021\u001b[0m\u001b[1m)\u001b[0m. \n", "\n", "# Application\n", "```python\n", "from transformers import pipeline\n", "classifier = \u001b[1;35mpipeline\u001b[0m\u001b[1m(\u001b[0m\u001b[32m\"text-classification\"\u001b[0m, \u001b[33mmodel\u001b[0m=\u001b[32m\"j\u001b[0m\u001b[32m-hartmann/sentiment-roberta-large-english-3-classes\"\u001b[0m, \n", "\u001b[33mreturn_all_scores\u001b[0m=\u001b[3;92mTrue\u001b[0m\u001b[1m)\u001b[0m\n", "\u001b[1;35mclassifier\u001b[0m\u001b[1m(\u001b[0m\u001b[32m\"This is so nice!\"\u001b[0m\u001b[1m)\u001b[0m\n", "```\n", "\n", "```python\n", "Output:\n", "\u001b[1m[\u001b[0m\u001b[1m[\u001b[0m\u001b[1m{\u001b[0m\u001b[32m'label'\u001b[0m: \u001b[32m'negative'\u001b[0m, \u001b[32m'score'\u001b[0m: \u001b[1;36m0.00016451838018838316\u001b[0m\u001b[1m}\u001b[0m,\n", " \u001b[1m{\u001b[0m\u001b[32m'label'\u001b[0m: \u001b[32m'neutral'\u001b[0m, \u001b[32m'score'\u001b[0m: \u001b[1;36m0.000174045650055632\u001b[0m\u001b[1m}\u001b[0m,\n", " \u001b[1m{\u001b[0m\u001b[32m'label'\u001b[0m: \u001b[32m'positive'\u001b[0m, \u001b[32m'score'\u001b[0m: \u001b[1;36m0.9996614456176758\u001b[0m\u001b[1m}\u001b[0m\u001b[1m]\u001b[0m\u001b[1m]\u001b[0m\n", "```\n", "\n", "# Reference\n", "Please cite \u001b[1m(\u001b[0m\u001b[4;94mhttps://journals.sagepub.com/doi/full/10.1177/00222437211037258\u001b[0m\u001b[4;94m)\u001b[0m when you use our model. Feel free to \n", "reach out to \u001b[1m(\u001b[0mmailto:j.p.hartmann@rug.nl\u001b[1m)\u001b[0m with any questions or feedback you may have.\n", "```\n", "@article\u001b[1m{\u001b[0mhartmann2021,\n", " \u001b[33mtitle\u001b[0m=\u001b[1m{\u001b[0mThe Power of Brand Selfies\u001b[1m}\u001b[0m,\n", " \u001b[33mauthor\u001b[0m=\u001b[1m{\u001b[0mHartmann, Jochen and Heitmann, Mark and Schamp, Christina and Netzer, Oded\u001b[1m}\u001b[0m,\n", " \u001b[33mjournal\u001b[0m=\u001b[1m{\u001b[0mJournal of Marketing Research\u001b[1m}\u001b[0m\n", " \u001b[33myear\u001b[0m=\u001b[1m{\u001b[0m\u001b[1;36m2021\u001b[0m\u001b[1m}\u001b[0m\n", "\u001b[1m}\u001b[0m\n", "```\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "print(retrieved_examples[\"readme\"][9])" ] }, { "cell_type": "markdown", "id": "08d809cf-84b5-4557-8e49-1a3c10e8d236", "metadata": { "id": "08d809cf-84b5-4557-8e49-1a3c10e8d236" }, "source": [ "The results seem pretty reasonable; the first result appears to be a duplicate. The lower result is for a slightly different task using social media data. " ] }, { "cell_type": "markdown", "id": "58a282f6-da24-4551-8081-1dd98b695b05", "metadata": { "id": "58a282f6-da24-4551-8081-1dd98b695b05" }, "source": [ "### Searching \n", "\n", "Being able to find similar model cards is a start but we actually wanted to be able to search directly. Let's see how our results do if we instead search for some terms we might use to try and find suitable models. " ] }, { "cell_type": "code", "execution_count": 43, "id": "5X1SP0zdqn0m", "metadata": { "id": "5X1SP0zdqn0m" }, "outputs": [], "source": [ "q = model.encode(\"fake news\")" ] }, { "cell_type": "code", "execution_count": 44, "id": "Gyu4kUT_rJN5", "metadata": { "id": "Gyu4kUT_rJN5" }, "outputs": [], "source": [ "scores, retrieved_examples = ds_with_embeddings.get_nearest_examples('embedding', q, k=10)\n" ] }, { "cell_type": "code", "execution_count": 45, "id": "ab6d70dc-9ece-4b14-aac5-9cb7e386dbae", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 67 }, "id": "ab6d70dc-9ece-4b14-aac5-9cb7e386dbae", "outputId": "72ba07c4-64ae-47c3-f7b3-4223feb9a78b" }, "outputs": [ { "data": { "text/html": [ "
This model is fined tuned for the Fake news classifier: Train a text classification model to detect fake news \n", "articles. Base on the Kaggle dataset(https://www.kaggle.com/clmentbisaillon/fake-and-real-news-dataset).\n", "\n", "\n" ], "text/plain": [ "This model is fined tuned for the Fake news classifier: Train a text classification model to detect fake news \n", "articles. Base on the Kaggle \u001b[1;35mdataset\u001b[0m\u001b[1m(\u001b[0m\u001b[4;94mhttps://www.kaggle.com/clmentbisaillon/fake-and-real-news-dataset\u001b[0m\u001b[4;94m)\u001b[0m\u001b[4;94m.\u001b[0m\n", "\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "print(retrieved_examples[\"readme\"][0])" ] }, { "cell_type": "code", "execution_count": 46, "id": "4d202459-7ae7-4dae-84b5-71da7a634b13", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 116 }, "id": "4d202459-7ae7-4dae-84b5-71da7a634b13", "outputId": "085a337f-2700-4274-87f7-e93b476b9d41" }, "outputs": [ { "data": { "text/html": [ "
Fake news classifier\n", "This model trains a text classification model to detect fake news articles, \n", "\n", "it uses distilbert-base-uncased-finetuned-sst-2-english pretrained model to work on \n", "\n", "fake and real news dataset from kaggle (https://www.kaggle.com/clmentbisaillon/fake-and-real-news-dataset)\n", "\n" ], "text/plain": [ "Fake news classifier\n", "This model trains a text classification model to detect fake news articles, \n", "\n", "it uses distilbert-base-uncased-finetuned-sst-\u001b[1;36m2\u001b[0m-english pretrained model to work on \n", "\n", "fake and real news dataset from kaggle \u001b[1m(\u001b[0m\u001b[4;94mhttps://www.kaggle.com/clmentbisaillon/fake-and-real-news-dataset\u001b[0m\u001b[4;94m)\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "print(retrieved_examples[\"readme\"][1])" ] }, { "cell_type": "code", "execution_count": 47, "id": "9a4284d7-33ba-4b06-938d-42b0a5a3c01f", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 248 }, "id": "9a4284d7-33ba-4b06-938d-42b0a5a3c01f", "outputId": "8942a90d-5e37-4cad-a51d-319a9bed69c8" }, "outputs": [ { "data": { "text/html": [ "
---\n", "license: mit\n", "---\n", "# Fake and real news classification task \n", "\n", "Model : [DistilRoBERTa base model](https://huggingface.co/distilroberta-base)\n", "\n", "Dataset : [Fake and real news dataset](https://www.kaggle.com/datasets/clmentbisaillon/fake-and-real-news-dataset)\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "---\n", "license: mit\n", "---\n", "# Fake and real news classification task \n", "\n", "Model : \u001b[1m[\u001b[0mDistilRoBERTa base model\u001b[1m]\u001b[0m\u001b[1m(\u001b[0m\u001b[4;94mhttps://huggingface.co/distilroberta-base\u001b[0m\u001b[4;94m)\u001b[0m\n", "\n", "Dataset : \u001b[1m[\u001b[0mFake and real news dataset\u001b[1m]\u001b[0m\u001b[1m(\u001b[0m\u001b[4;94mhttps://www.kaggle.com/datasets/clmentbisaillon/fake-and-real-news-dataset\u001b[0m\u001b[4;94m)\u001b[0m\n", "\n", "\n", "\n", "\n", "\n", "\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "print(retrieved_examples[\"readme\"][2])" ] }, { "cell_type": "markdown", "id": "9bfb2cfb-c946-4e91-9017-46a30dc7883f", "metadata": {}, "source": [ "Not a bad start. Let's try another one" ] }, { "cell_type": "code", "execution_count": 58, "id": "JtCctN1E6bP5", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 1000 }, "id": "JtCctN1E6bP5", "outputId": "136640bf-230e-4db2-9bc9-ac625b75a6ad" }, "outputs": [ { "data": { "text/html": [ "
---\n", "language: en\n", "tags:\n", "- financial-sentiment-analysis\n", "- sentiment-analysis\n", "datasets:\n", "- financial_phrasebank\n", "widget:\n", "- text: Operating profit rose to EUR 13.1 mn from EUR 8.7 mn in the corresponding period in 2007 representing 7.7 %\n", "of net sales.\n", "- text: Bids or offers include at least 1,000 shares and the value of the shares must correspond to at least EUR \n", "4,000.\n", "- text: Raute reported a loss per share of EUR 0.86 for the first half of 2009 , against EPS of EUR 0.74 in the \n", "corresponding period of 2008.\n", "---\n", "### FinancialBERT for Sentiment Analysis\n", "\n", "[*FinancialBERT*](https://huggingface.co/ahmedrachid/FinancialBERT) is a BERT model pre-trained on a large corpora \n", "of financial texts. The purpose is to enhance financial NLP research and practice in financial domain, hoping that \n", "financial practitioners and researchers can benefit from this model without the necessity of the significant \n", "computational resources required to train the model. \n", "\n", "The model was fine-tuned for Sentiment Analysis task on _Financial PhraseBank_ dataset. Experiments show that this \n", "model outperforms the general BERT and other financial domain-specific models.\n", " \n", "More details on `FinancialBERT`'s pre-training process can be found at: \n", "https://www.researchgate.net/publication/358284785_FinancialBERT_-_A_Pretrained_Language_Model_for_Financial_Text_M\n", "ining\n", "\n", "### Training data\n", "FinancialBERT model was fine-tuned on [Financial \n", "PhraseBank](https://www.researchgate.net/publication/251231364_FinancialPhraseBank-v10), a dataset consisting of \n", "4840 Financial News categorised by sentiment (negative, neutral, positive).\n", "\n", "### Fine-tuning hyper-parameters\n", "- learning_rate = 2e-5\n", "- batch_size = 32\n", "- max_seq_length = 512\n", "- num_train_epochs = 5\n", "\n", "### Evaluation metrics\n", "The evaluation metrics used are: Precision, Recall and F1-score. The following is the classification report on the \n", "test set.\n", "\n", "| sentiment | precision | recall | f1-score | support |\n", "| ------------- |:-------------:|:-------------:|:-------------:| -----:|\n", "| negative | 0.96 | 0.97 | 0.97 | 58 |\n", "| neutral | 0.98 | 0.99 | 0.98 | 279 |\n", "| positive | 0.98 | 0.97 | 0.97 | 148 |\n", "| macro avg | 0.97 | 0.98 | 0.98 | 485 |\n", "| weighted avg | 0.98 | 0.98 | 0.98 | 485 |\n", "\n", " ### How to use \n", "The model can be used thanks to Transformers pipeline for sentiment analysis.\n", "```python\n", "from transformers import BertTokenizer, BertForSequenceClassification\n", "from transformers import pipeline\n", "\n", "model = BertForSequenceClassification.from_pretrained(\"ahmedrachid/FinancialBERT-Sentiment-Analysis\",num_labels=3)\n", "tokenizer = BertTokenizer.from_pretrained(\"ahmedrachid/FinancialBERT-Sentiment-Analysis\")\n", "\n", "nlp = pipeline(\"sentiment-analysis\", model=model, tokenizer=tokenizer)\n", "\n", "sentences = [\"Operating profit rose to EUR 13.1 mn from EUR 8.7 mn in the corresponding period in 2007 representing\n", "7.7 % of net sales.\", \n", " \"Bids or offers include at least 1,000 shares and the value of the shares must correspond to at least \n", "EUR 4,000.\", \n", " \"Raute reported a loss per share of EUR 0.86 for the first half of 2009 , against EPS of EUR 0.74 in \n", "the corresponding period of 2008.\", \n", " ]\n", "results = nlp(sentences)\n", "print(results)\n", "\n", "[{'label': 'positive', 'score': 0.9998133778572083},\n", " {'label': 'neutral', 'score': 0.9997822642326355},\n", " {'label': 'negative', 'score': 0.9877365231513977}]\n", "```\n", "\n", "> Created by [Ahmed Rachid Hazourli](https://www.linkedin.com/in/ahmed-rachid/)\n", "\n", "\n" ], "text/plain": [ "---\n", "language: en\n", "tags:\n", "- financial-sentiment-analysis\n", "- sentiment-analysis\n", "datasets:\n", "- financial_phrasebank\n", "widget:\n", "- text: Operating profit rose to EUR \u001b[1;36m13.1\u001b[0m mn from EUR \u001b[1;36m8.7\u001b[0m mn in the corresponding period in \u001b[1;36m2007\u001b[0m representing \u001b[1;36m7.7\u001b[0m %\n", "of net sales.\n", "- text: Bids or offers include at least \u001b[1;36m1\u001b[0m,\u001b[1;36m000\u001b[0m shares and the value of the shares must correspond to at least EUR \n", "\u001b[1;36m4\u001b[0m,\u001b[1;36m000\u001b[0m.\n", "- text: Raute reported a loss per share of EUR \u001b[1;36m0.86\u001b[0m for the first half of \u001b[1;36m2009\u001b[0m , against EPS of EUR \u001b[1;36m0.74\u001b[0m in the \n", "corresponding period of \u001b[1;36m2008\u001b[0m.\n", "---\n", "### FinancialBERT for Sentiment Analysis\n", "\n", "\u001b[1m[\u001b[0m*FinancialBERT*\u001b[1m]\u001b[0m\u001b[1m(\u001b[0m\u001b[4;94mhttps://huggingface.co/ahmedrachid/FinancialBERT\u001b[0m\u001b[4;94m)\u001b[0m is a BERT model pre-trained on a large corpora \n", "of financial texts. The purpose is to enhance financial NLP research and practice in financial domain, hoping that \n", "financial practitioners and researchers can benefit from this model without the necessity of the significant \n", "computational resources required to train the model. \n", "\n", "The model was fine-tuned for Sentiment Analysis task on _Financial PhraseBank_ dataset. Experiments show that this \n", "model outperforms the general BERT and other financial domain-specific models.\n", " \n", "More details on `FinancialBERT`'s pre-training process can be found at: \n", "\u001b[4;94mhttps://www.researchgate.net/publication/358284785_FinancialBERT_-_A_Pretrained_Language_Model_for_Financial_Text_M\u001b[0m\n", "\u001b[4;94mining\u001b[0m\n", "\n", "### Training data\n", "FinancialBERT model was fine-tuned on \u001b[1m[\u001b[0mFinancial \n", "PhraseBank\u001b[1m]\u001b[0m\u001b[1m(\u001b[0m\u001b[4;94mhttps://www.researchgate.net/publication/251231364_FinancialPhraseBank-v10\u001b[0m\u001b[4;94m)\u001b[0m\u001b[4;94m,\u001b[0m a dataset consisting of \n", "\u001b[1;36m4840\u001b[0m Financial News categorised by sentiment \u001b[1m(\u001b[0mnegative, neutral, positive\u001b[1m)\u001b[0m.\n", "\n", "### Fine-tuning hyper-parameters\n", "- learning_rate = \u001b[1;36m2e-5\u001b[0m\n", "- batch_size = \u001b[1;36m32\u001b[0m\n", "- max_seq_length = \u001b[1;36m512\u001b[0m\n", "- num_train_epochs = \u001b[1;36m5\u001b[0m\n", "\n", "### Evaluation metrics\n", "The evaluation metrics used are: Precision, Recall and F1-score. The following is the classification report on the \n", "test set.\n", "\n", "| sentiment | precision | recall | f1-score | support |\n", "| ------------- |:-------------:|:-------------:|:-------------:| -----:|\n", "| negative | \u001b[1;36m0.96\u001b[0m | \u001b[1;36m0.97\u001b[0m | \u001b[1;36m0.97\u001b[0m | \u001b[1;36m58\u001b[0m |\n", "| neutral | \u001b[1;36m0.98\u001b[0m | \u001b[1;36m0.99\u001b[0m | \u001b[1;36m0.98\u001b[0m | \u001b[1;36m279\u001b[0m |\n", "| positive | \u001b[1;36m0.98\u001b[0m | \u001b[1;36m0.97\u001b[0m | \u001b[1;36m0.97\u001b[0m | \u001b[1;36m148\u001b[0m |\n", "| macro avg | \u001b[1;36m0.97\u001b[0m | \u001b[1;36m0.98\u001b[0m | \u001b[1;36m0.98\u001b[0m | \u001b[1;36m485\u001b[0m |\n", "| weighted avg | \u001b[1;36m0.98\u001b[0m | \u001b[1;36m0.98\u001b[0m | \u001b[1;36m0.98\u001b[0m | \u001b[1;36m485\u001b[0m |\n", "\n", " ### How to use \n", "The model can be used thanks to Transformers pipeline for sentiment analysis.\n", "```python\n", "from transformers import BertTokenizer, BertForSequenceClassification\n", "from transformers import pipeline\n", "\n", "model = \u001b[1;35mBertForSequenceClassification.from_pretrained\u001b[0m\u001b[1m(\u001b[0m\u001b[32m\"ahmedrachid/FinancialBERT-Sentiment-Analysis\"\u001b[0m,\u001b[33mnum_labels\u001b[0m=\u001b[1;36m3\u001b[0m\u001b[1m)\u001b[0m\n", "tokenizer = \u001b[1;35mBertTokenizer.from_pretrained\u001b[0m\u001b[1m(\u001b[0m\u001b[32m\"ahmedrachid/FinancialBERT-Sentiment-Analysis\"\u001b[0m\u001b[1m)\u001b[0m\n", "\n", "nlp = \u001b[1;35mpipeline\u001b[0m\u001b[1m(\u001b[0m\u001b[32m\"sentiment-analysis\"\u001b[0m, \u001b[33mmodel\u001b[0m=\u001b[35mmodel\u001b[0m, \u001b[33mtokenizer\u001b[0m=\u001b[35mtokenizer\u001b[0m\u001b[1m)\u001b[0m\n", "\n", "sentences = \u001b[1m[\u001b[0m\u001b[32m\"Operating profit rose to EUR 13.1 mn from EUR 8.7 mn in the corresponding period in 2007 representing\u001b[0m\n", "\u001b[32m7.7 % of net sales.\"\u001b[0m, \n", " \u001b[32m\"Bids or offers include at least 1,000 shares and the value of the shares must correspond to at least \u001b[0m\n", "\u001b[32mEUR 4,000.\"\u001b[0m, \n", " \u001b[32m\"Raute reported a loss per share of EUR 0.86 for the first half of 2009 , against EPS of EUR 0.74 in \u001b[0m\n", "\u001b[32mthe corresponding period of 2008.\"\u001b[0m, \n", " \u001b[1m]\u001b[0m\n", "results = \u001b[1;35mnlp\u001b[0m\u001b[1m(\u001b[0msentences\u001b[1m)\u001b[0m\n", "\u001b[1;35mprint\u001b[0m\u001b[1m(\u001b[0mresults\u001b[1m)\u001b[0m\n", "\n", "\u001b[1m[\u001b[0m\u001b[1m{\u001b[0m\u001b[32m'label'\u001b[0m: \u001b[32m'positive'\u001b[0m, \u001b[32m'score'\u001b[0m: \u001b[1;36m0.9998133778572083\u001b[0m\u001b[1m}\u001b[0m,\n", " \u001b[1m{\u001b[0m\u001b[32m'label'\u001b[0m: \u001b[32m'neutral'\u001b[0m, \u001b[32m'score'\u001b[0m: \u001b[1;36m0.9997822642326355\u001b[0m\u001b[1m}\u001b[0m,\n", " \u001b[1m{\u001b[0m\u001b[32m'label'\u001b[0m: \u001b[32m'negative'\u001b[0m, \u001b[32m'score'\u001b[0m: \u001b[1;36m0.9877365231513977\u001b[0m\u001b[1m}\u001b[0m\u001b[1m]\u001b[0m\n", "```\n", "\n", "> Created by \u001b[1m[\u001b[0mAhmed Rachid Hazourli\u001b[1m]\u001b[0m\u001b[1m(\u001b[0m\u001b[4;94mhttps://www.linkedin.com/in/ahmed-rachid/\u001b[0m\u001b[4;94m)\u001b[0m\n", "\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "q = model.encode(\"financial sentiment\")\n", "scores, retrieved_examples = ds_with_embeddings.get_nearest_examples('embedding', q, k=10)\n", "print(retrieved_examples[\"readme\"][0])" ] }, { "cell_type": "code", "execution_count": 59, "id": "vgxRIzp86hqj", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 545 }, "id": "vgxRIzp86hqj", "outputId": "2680360f-5af8-45d0-e96d-b3d2ab98fce6" }, "outputs": [ { "data": { "text/html": [ "
---\n", "language: \"en\"\n", "tags:\n", "- financial-sentiment-analysis\n", "- sentiment-analysis\n", "widget:\n", "- text: \"Stocks rallied and the British pound gained.\"\n", "---\n", "\n", "FinBERT is a pre-trained NLP model to analyze sentiment of financial text. It is built by further training the BERT\n", "language model in the finance domain, using a large financial corpus and thereby fine-tuning it for financial \n", "sentiment classification. [Financial \n", "PhraseBank](https://www.researchgate.net/publication/251231107_Good_Debt_or_Bad_Debt_Detecting_Semantic_Orientation\n", "s_in_Economic_Texts) by Malo et al. (2014) is used for fine-tuning. For more details, please see the paper \n", "[FinBERT: Financial Sentiment Analysis with Pre-trained Language Models](https://arxiv.org/abs/1908.10063) and our \n", "related (https://medium.com/prosus-ai-tech-blog/finbert-financial-sentiment-analysis-with-bert-b277a3607101) on \n", "Medium.\n", "\n", "The model will give softmax outputs for three labels: positive, negative or neutral.\n", "\n", "---\n", "\n", "About Prosus\n", "\n", "Prosus is a global consumer internet group and one of the largest technology investors in the world. Operating and \n", "investing globally in markets with long-term growth potential, Prosus builds leading consumer internet companies \n", "that empower people and enrich communities. For more information, please visit www.prosus.com.\n", "\n", "Contact information\n", "\n", "Please contact Dogu Araci dogu.araciprosuscom and Zulkuf Genc zulkuf.gencprosuscom about any FinBERT related issues\n", "and questions.\n", "\n" ], "text/plain": [ "---\n", "language: \u001b[32m\"en\"\u001b[0m\n", "tags:\n", "- financial-sentiment-analysis\n", "- sentiment-analysis\n", "widget:\n", "- text: \u001b[32m\"Stocks rallied and the British pound gained.\"\u001b[0m\n", "---\n", "\n", "FinBERT is a pre-trained NLP model to analyze sentiment of financial text. It is built by further training the BERT\n", "language model in the finance domain, using a large financial corpus and thereby fine-tuning it for financial \n", "sentiment classification. \u001b[1m[\u001b[0mFinancial \n", "PhraseBank\u001b[1m]\u001b[0m\u001b[1m(\u001b[0m\u001b[4;94mhttps://www.researchgate.net/publication/251231107_Good_Debt_or_Bad_Debt_Detecting_Semantic_Orientation\u001b[0m\n", "\u001b[4;94ms_in_Economic_Texts\u001b[0m\u001b[4;94m)\u001b[0m by Malo et al. \u001b[1m(\u001b[0m\u001b[1;36m2014\u001b[0m\u001b[1m)\u001b[0m is used for fine-tuning. For more details, please see the paper \n", "\u001b[1m[\u001b[0mFinBERT: Financial Sentiment Analysis with Pre-trained Language Models\u001b[1m]\u001b[0m\u001b[1m(\u001b[0m\u001b[4;94mhttps://arxiv.org/abs/1908.10063\u001b[0m\u001b[4;94m)\u001b[0m and our \n", "related \u001b[1m(\u001b[0m\u001b[4;94mhttps://medium.com/prosus-ai-tech-blog/finbert-financial-sentiment-analysis-with-bert-b277a3607101\u001b[0m\u001b[4;94m)\u001b[0m on \n", "Medium.\n", "\n", "The model will give softmax outputs for three labels: positive, negative or neutral.\n", "\n", "---\n", "\n", "About Prosus\n", "\n", "Prosus is a global consumer internet group and one of the largest technology investors in the world. Operating and \n", "investing globally in markets with long-term growth potential, Prosus builds leading consumer internet companies \n", "that empower people and enrich communities. For more information, please visit www.prosus.com.\n", "\n", "Contact information\n", "\n", "Please contact Dogu Araci dogu.araciprosuscom and Zulkuf Genc zulkuf.gencprosuscom about any FinBERT related issues\n", "and questions.\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "print(retrieved_examples[\"readme\"][1])" ] }, { "cell_type": "code", "execution_count": 61, "id": "ZsWQFzN26lyH", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 1000 }, "id": "ZsWQFzN26lyH", "outputId": "184a7348-7329-4ada-f35f-2271a27dd9f9" }, "outputs": [ { "data": { "text/html": [ "
---\n", "license: apache-2.0\n", "tags:\n", "- Finance-sentiment-analysis\n", "- generated_from_trainer\n", "metrics:\n", "- f1\n", "- accuracy\n", "- precision\n", "- recall\n", "model-index:\n", "- name: bert-base-finance-sentiment-noisy-search\n", " results: []\n", "widget:\n", " - text: \"Third quarter reported revenues were $10.9 billion, up 5 percent compared to prior year and up 8 percent \n", "on a currency-neutral basis\"\n", " example_title: \"Positive\"\n", " - text: \"The London-listed website for businesses reported a pretax loss of $26.6 million compared with a loss of \n", "$12.9 million the previous year\"\n", " example_title: \"Negative\"\n", " - text: \"Microsoft updates Outlook, Teams, and PowerPoint to be hybrid work ready\"\n", " example_title: \"Neutral\"\n", "---\n", "\n", "<!-- This model card has been generated automatically according to the information the Trainer had access to. You\n", "should probably proofread and complete it, then remove this comment. -->\n", "\n", "# bert-base-finance-sentiment-noisy-search\n", "\n", "This model is a fine-tuned version of (https://huggingface.co/bert-base-uncased) on Kaggle finance news sentiment \n", "analysis with data enhancement using noisy search. The process is explained below:\n", "\n", "1. First \"bert-base-uncased\" was fine-tuned on Kaggle's finance news sentiment analysis \n", "https://www.kaggle.com/ankurzing/sentiment-analysis-for-financial-news dataset achieving accuracy of about 88%\n", "2. We then used a logistic-regression classifier on the same data. Here we looked at coefficients that contributed \n", "the most to the \"Positive\" and \"Negative\" classes by inspecting only bi-grams. \n", "3. Using the top 25 bi-grams per class (i.e. \"Positive\" / \"Negative\") we invoked Bing news search with those \n", "bi-grams and retrieved up to 50 news items per bi-gram phrase.\n", "4. We called it \"noisy-search\" because it is assumed the positive bi-grams (e.g. \"profit rose\" , \"growth net\") give\n", "rise to positive examples whereas negative bi-grams (e.g. \"loss increase\", \"share loss\") result in negative \n", "examples but note that we didn't test for the validity of this assumption (hence: noisy-search)\n", "5. For each article we kept the title + excerpt and labeled it according to pre-assumptions on class associations.\n", "6. We then trained the same model on the noisy data and apply it to an held-out test set from the original data set\n", "split.\n", "7. Training with couple of thousands noisy \"positives\" and \"negatives\" examples yielded a test set accuracy of \n", "about 95%. \n", "8. It shows that by automatically collecting noisy examples using search we can boost accuracy performance from \n", "about 88% to more than 95%.\n", "\n", "Accuracy results for Logistic Regression (LR) and BERT (base-cased) are shown in the attached pdf:\n", "\n", "https://drive.google.com/file/d/1MI9gRdppactVZ_XvhCwvoaOV1aRfprrd/view?usp=sharing \n", "\n", "\n", "## Model description\n", "\n", "BERT model trained on noisy data from search results. See PDF for more details.\n", "\n", "## Intended uses & limitations\n", "\n", "Intended for use on finance news sentiment analysis with 3 options: \"Positive\", \"Neutral\" and \"Negative\"\n", "To get the best results feed the classifier with the title and either the 1st paragraph or a short news \n", "summarization e.g. of up to 64 tokens. \n", "\n", "### Training hyperparameters\n", "\n", "The following hyperparameters were used during training:\n", "- learning_rate: 5e-05\n", "- train_batch_size: 8\n", "- eval_batch_size: 8\n", "- seed: 42\n", "- optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08\n", "- lr_scheduler_type: linear\n", "- num_epochs: 5\n", "\n", "\n", "### Framework versions\n", "\n", "- Transformers 4.16.2\n", "- Pytorch 1.10.0+cu111\n", "- Datasets 1.18.3\n", "- Tokenizers 0.11.0\n", "\n", "\n" ], "text/plain": [ "---\n", "license: apache-\u001b[1;36m2.0\u001b[0m\n", "tags:\n", "- Finance-sentiment-analysis\n", "- generated_from_trainer\n", "metrics:\n", "- f1\n", "- accuracy\n", "- precision\n", "- recall\n", "model-index:\n", "- name: bert-base-finance-sentiment-noisy-search\n", " results: \u001b[1m[\u001b[0m\u001b[1m]\u001b[0m\n", "widget:\n", " - text: \u001b[32m\"Third quarter reported revenues were $10.9 billion, up 5 percent compared to prior year and up 8 percent \u001b[0m\n", "\u001b[32mon a currency-neutral basis\"\u001b[0m\n", " example_title: \u001b[32m\"Positive\"\u001b[0m\n", " - text: \u001b[32m\"The London-listed website for businesses reported a pretax loss of $26.6 million compared with a loss of \u001b[0m\n", "\u001b[32m$12.9 million the previous year\"\u001b[0m\n", " example_title: \u001b[32m\"Negative\"\u001b[0m\n", " - text: \u001b[32m\"Microsoft updates Outlook, Teams, and PowerPoint to be hybrid work ready\"\u001b[0m\n", " example_title: \u001b[32m\"Neutral\"\u001b[0m\n", "---\n", "\n", "\u001b[1m<\u001b[0m\u001b[39m!-- This model card has been generated automatically according to the information the Trainer had access to. You\u001b[0m\n", "\u001b[39mshould probably proofread and complete it, then remove this comment. --\u001b[0m\u001b[1m>\u001b[0m\n", "\n", "# bert-base-finance-sentiment-noisy-search\n", "\n", "This model is a fine-tuned version of \u001b[1m(\u001b[0m\u001b[4;94mhttps://huggingface.co/bert-base-uncased\u001b[0m\u001b[4;94m)\u001b[0m on Kaggle finance news sentiment \n", "analysis with data enhancement using noisy search. The process is explained below:\n", "\n", "\u001b[1;36m1\u001b[0m. First \u001b[32m\"bert-base-uncased\"\u001b[0m was fine-tuned on Kaggle's finance news sentiment analysis \n", "\u001b[4;94mhttps://www.kaggle.com/ankurzing/sentiment-analysis-for-financial-news\u001b[0m dataset achieving accuracy of about \u001b[1;36m88\u001b[0m%\n", "\u001b[1;36m2\u001b[0m. We then used a logistic-regression classifier on the same data. Here we looked at coefficients that contributed \n", "the most to the \u001b[32m\"Positive\"\u001b[0m and \u001b[32m\"Negative\"\u001b[0m classes by inspecting only bi-grams. \n", "\u001b[1;36m3\u001b[0m. Using the top \u001b[1;36m25\u001b[0m bi-grams per class \u001b[1m(\u001b[0mi.e. \u001b[32m\"Positive\"\u001b[0m \u001b[35m/\u001b[0m \u001b[32m\"Negative\"\u001b[0m\u001b[1m)\u001b[0m we invoked Bing news search with those \n", "bi-grams and retrieved up to \u001b[1;36m50\u001b[0m news items per bi-gram phrase.\n", "\u001b[1;36m4\u001b[0m. We called it \u001b[32m\"noisy-search\"\u001b[0m because it is assumed the positive bi-grams \u001b[1m(\u001b[0me.g. \u001b[32m\"profit rose\"\u001b[0m , \u001b[32m\"growth net\"\u001b[0m\u001b[1m)\u001b[0m give\n", "rise to positive examples whereas negative bi-grams \u001b[1m(\u001b[0me.g. \u001b[32m\"loss increase\"\u001b[0m, \u001b[32m\"share loss\"\u001b[0m\u001b[1m)\u001b[0m result in negative \n", "examples but note that we didn't test for the validity of this assumption \u001b[1m(\u001b[0mhence: noisy-search\u001b[1m)\u001b[0m\n", "\u001b[1;36m5\u001b[0m. For each article we kept the title + excerpt and labeled it according to pre-assumptions on class associations.\n", "\u001b[1;36m6\u001b[0m. We then trained the same model on the noisy data and apply it to an held-out test set from the original data set\n", "split.\n", "\u001b[1;36m7\u001b[0m. Training with couple of thousands noisy \u001b[32m\"positives\"\u001b[0m and \u001b[32m\"negatives\"\u001b[0m examples yielded a test set accuracy of \n", "about \u001b[1;36m95\u001b[0m%. \n", "\u001b[1;36m8\u001b[0m. It shows that by automatically collecting noisy examples using search we can boost accuracy performance from \n", "about \u001b[1;36m88\u001b[0m% to more than \u001b[1;36m95\u001b[0m%.\n", "\n", "Accuracy results for Logistic Regression \u001b[1m(\u001b[0mLR\u001b[1m)\u001b[0m and BERT \u001b[1m(\u001b[0mbase-cased\u001b[1m)\u001b[0m are shown in the attached pdf:\n", "\n", "\u001b[4;94mhttps://drive.google.com/file/d/1MI9gRdppactVZ_XvhCwvoaOV1aRfprrd/view?\u001b[0m\u001b[4;94musp\u001b[0m\u001b[4;94m=\u001b[0m\u001b[4;94msharing\u001b[0m \n", "\n", "\n", "## Model description\n", "\n", "BERT model trained on noisy data from search results. See PDF for more details.\n", "\n", "## Intended uses & limitations\n", "\n", "Intended for use on finance news sentiment analysis with \u001b[1;36m3\u001b[0m options: \u001b[32m\"Positive\"\u001b[0m, \u001b[32m\"Neutral\"\u001b[0m and \u001b[32m\"Negative\"\u001b[0m\n", "To get the best results feed the classifier with the title and either the 1st paragraph or a short news \n", "summarization e.g. of up to \u001b[1;36m64\u001b[0m tokens. \n", "\n", "### Training hyperparameters\n", "\n", "The following hyperparameters were used during training:\n", "- learning_rate: \u001b[1;36m5e-05\u001b[0m\n", "- train_batch_size: \u001b[1;36m8\u001b[0m\n", "- eval_batch_size: \u001b[1;36m8\u001b[0m\n", "- seed: \u001b[1;36m42\u001b[0m\n", "- optimizer: Adam with \u001b[33mbetas\u001b[0m=\u001b[1m(\u001b[0m\u001b[1;36m0.9\u001b[0m,\u001b[1;36m0.999\u001b[0m\u001b[1m)\u001b[0m and \u001b[33mepsilon\u001b[0m=\u001b[1;36m1e\u001b[0m\u001b[1;36m-08\u001b[0m\n", "- lr_scheduler_type: linear\n", "- num_epochs: \u001b[1;36m5\u001b[0m\n", "\n", "\n", "### Framework versions\n", "\n", "- Transformers \u001b[1;36m4.16\u001b[0m.\u001b[1;36m2\u001b[0m\n", "- Pytorch \u001b[1;36m1.10\u001b[0m.\u001b[1;36m0\u001b[0m+cu111\n", "- Datasets \u001b[1;36m1.18\u001b[0m.\u001b[1;36m3\u001b[0m\n", "- Tokenizers \u001b[1;36m0.11\u001b[0m.\u001b[1;36m0\u001b[0m\n", "\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "print(retrieved_examples[\"readme\"][9])" ] }, { "cell_type": "markdown", "id": "a028563e-7a55-4048-81a7-643c2c819bd6", "metadata": {}, "source": [ "These seem like a good starting point. However, we have a few issues relying on model cards alone. Firstly a lot of models don't include them and the quality of them can be mixed. It's maybe a question if we want to use a model that has no model card at all but it is possible that despite a good model card we don't capture everything we'd need for searching in the README. " ] }, { "cell_type": "markdown", "id": "304bc9c6-cbd0-4609-92ba-71ce0a1d17b5", "metadata": { "id": "304bc9c6-cbd0-4609-92ba-71ce0a1d17b5" }, "source": [ "## Can we search using model labels? \n", "\n", "We're only working with classification models in this case. For most Pytorch models on the hub, we have a config file. This config usually contains the model's labels. For example, 'positive', 'negative'. \n", "\n", "Maybe instead of relying only on the metadata, we can search 'inside' the model. The labels will often be a helpful reflection of what we're looking for. For example, we want to find a sentiment classification model that roughly puts text into positive or negative sentiment. Again, relying on exact label matches may not work well, but maybe embeddings get around this problem. Let's try it out! \n" ] }, { "cell_type": "markdown", "id": "3a96cd6d-f7ed-43f2-abeb-417905722a37", "metadata": { "id": "43e3539f-9ff3-42bb-bf1e-46713331c4b4" }, "source": [ "Let's look at an example label. " ] }, { "cell_type": "code", "execution_count": 62, "id": "Jpp0XLQCr8IJ", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "id": "Jpp0XLQCr8IJ", "outputId": "eccdba8e-1adb-4eea-e8ff-51fe40107b0a" }, "outputs": [ { "data": { "text/html": [ "
['NEGATIVE', 'POSITIVE']\n", "\n" ], "text/plain": [ "\u001b[1m[\u001b[0m\u001b[32m'NEGATIVE'\u001b[0m, \u001b[32m'POSITIVE'\u001b[0m\u001b[1m]\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ds[0]['label']" ] }, { "cell_type": "markdown", "id": "fdccc678-ed22-4602-afb7-d26179f0fc9b", "metadata": {}, "source": [ "Since we're expecting labels to match this format lets filter out any that don't fit this structure. " ] }, { "cell_type": "code", "execution_count": 63, "id": "VN0CnVw4sPQ6", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 49, "referenced_widgets": [ "80d415bda86347cba39a1d0ed9b07f34", "4221421373b94c5eba3b1ca1d696d3b1", "9ab646e5c38c4f66be77fc9a20987e32", "4e721950f34445aea7e8ffa74ebcd13f", "9e32c3df1c054269b0df745bedb1fb85", "1712845de9b04a46a4462d51bdda32fe", "27943572198d468088d5cc47a2ddc94b", "1865c2f13e614a1ea530291341ba1c87", "19784c6a139a46ea85d43ee37ba1b03b", "b127dc590a344563a33f2a7586bb8186", "79894a62c12b429496506551771196dd" ] }, "id": "VN0CnVw4sPQ6", "outputId": "f3e3e663-9f0b-42f3-d73f-c6503e30e71b" }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "80d415bda86347cba39a1d0ed9b07f34", "version_major": 2, "version_minor": 0 }, "text/plain": [ " 0%| | 0/7 [00:00, ?ba/s]" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ds = ds.filter(lambda example: isinstance(example['label'],list))" ] }, { "cell_type": "markdown", "id": "f746f8e8-89f5-4091-b12e-a7457046176d", "metadata": {}, "source": [ "### How to create embeddings for our labels?\n", "\n", "How should we encode our labels? At the moment, we have a list of labels. One option would be to create an embedding for every single label, which will require us to query multiple embeddings to check for a match. We may also prefer intuatively to have an embedding for the combination of labels. This is because we probably know more about the model type from all its labels rather than looking at one label at a time. We'll deal with the labels very crudely by joining them on `,` and creating a single string out of all the labels. I'm sure this isn't the best possible approach, but it might be a good place to start testing this idea. " ] }, { "cell_type": "code", "execution_count": 64, "id": "LJ9qTkXPr8E7", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 49, "referenced_widgets": [ "84fa0cfa1ed841979ca99fe17ddf2197", "f7e8f5dd9dc94230b1094448c13d0517", "2cfcddbe21a94a509c63832f0df21694", "771e9137c3a14b26a8e73bc04f3dbce7", "a525e79af10d45aabb9f469fbd6351e7", "c37a7847f65140c2947d9d099e6ca720", "d897be91762c401ea04def47c373f9a4", "3d2cbb199c4d4d61b844147cd9a253f0", "6b23b6f2b596468c8bcfd9ae0c80da30", "ab34ef3f75cf4adc82833cdad3e3f1f9", "e2a1be70b9e84bf391dfbfca517154f5" ] }, "id": "LJ9qTkXPr8E7", "outputId": "c4baa793-38b5-485a-891e-eaff9b88ddbc" }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "84fa0cfa1ed841979ca99fe17ddf2197", "version_major": 2, "version_minor": 0 }, "text/plain": [ " 0%| | 0/4175 [00:00, ?ex/s]" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ds = ds.map(lambda example: {\"string_label\": \",\".join(example['label'])})" ] }, { "cell_type": "code", "execution_count": 65, "id": "vURgYEktr8Bq", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 83 }, "id": "vURgYEktr8Bq", "outputId": "a1f5f2f0-fd6d-4364-db5e-ab4036c3e0f2" }, "outputs": [ { "data": { "text/html": [ "
\n", "Dataset({\n", " features: ['modelId', 'label', 'readme', 'readme_len', 'string_label'],\n", " num_rows: 4175\n", "})\n", "\n" ], "text/plain": [ "\n", "\u001b[1;35mDataset\u001b[0m\u001b[1m(\u001b[0m\u001b[1m{\u001b[0m\n", " features: \u001b[1m[\u001b[0m\u001b[32m'modelId'\u001b[0m, \u001b[32m'label'\u001b[0m, \u001b[32m'readme'\u001b[0m, \u001b[32m'readme_len'\u001b[0m, \u001b[32m'string_label'\u001b[0m\u001b[1m]\u001b[0m,\n", " num_rows: \u001b[1;36m4175\u001b[0m\n", "\u001b[1m}\u001b[0m\u001b[1m)\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ds" ] }, { "cell_type": "code", "execution_count": 66, "id": "BXiXjHbxspIO", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 49, "referenced_widgets": [ "83eb1c47e6d14d268e01dfb6bece0c14", "19add75a4f69486aaf77e0f46a1d6d53", "a18e0d64917344e5beca64253ed3c1a2", "ef3a0a50d274468781b0441e691ddf7b", "51b38fbfb6cd431990fdff1627734878", "b691fa32db364ea5a34d71623960dd23", "ebc22ef492504b55b89ec1a86b5b4bd5", "181ed30c9e464c7c9ec1dc36f779c766", "c0f222fdaef14cbe82c15a168a3a51c6", "7eed9fff711f4c3a9c473cb751bcf8ab", "e7bdd0fcc07f423c9a69553c60b01b38" ] }, "id": "BXiXjHbxspIO", "outputId": "3cef0728-5614-42e6-f601-b0c32f381afb" }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "83eb1c47e6d14d268e01dfb6bece0c14", "version_major": 2, "version_minor": 0 }, "text/plain": [ " 0%| | 0/261 [00:00, ?ba/s]" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ds_with_embeddings = ds.map(lambda example: \n", " {\"label_embedding\":encode_readme(example['string_label'])},batched=True, batch_size=16)\n", " " ] }, { "cell_type": "code", "execution_count": 67, "id": "xmaC0PD_spF6", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 83 }, "id": "xmaC0PD_spF6", "outputId": "c8387dda-589c-47dc-b4ac-862f12869c90" }, "outputs": [ { "data": { "text/html": [ "
\n", "Dataset({\n", " features: ['modelId', 'label', 'readme', 'readme_len', 'string_label', 'label_embedding'],\n", " num_rows: 4175\n", "})\n", "\n" ], "text/plain": [ "\n", "\u001b[1;35mDataset\u001b[0m\u001b[1m(\u001b[0m\u001b[1m{\u001b[0m\n", " features: \u001b[1m[\u001b[0m\u001b[32m'modelId'\u001b[0m, \u001b[32m'label'\u001b[0m, \u001b[32m'readme'\u001b[0m, \u001b[32m'readme_len'\u001b[0m, \u001b[32m'string_label'\u001b[0m, \u001b[32m'label_embedding'\u001b[0m\u001b[1m]\u001b[0m,\n", " num_rows: \u001b[1;36m4175\u001b[0m\n", "\u001b[1m}\u001b[0m\u001b[1m)\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ds_with_embeddings" ] }, { "cell_type": "markdown", "id": "b9e4369f-58c8-476f-b4ef-c274b366bc42", "metadata": {}, "source": [ "### Searching with labels \n", "\n", "Now we have some embeddings for the labels, let's try searching. Let's start with an existing set of labels to see how well we can match those. " ] }, { "cell_type": "code", "execution_count": 68, "id": "Imdak0SwspDS", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "id": "Imdak0SwspDS", "outputId": "1cec116b-ddcc-4341-d7ec-2546c85be687" }, "outputs": [ { "data": { "text/html": [ "
'NEGATIVE,POSITIVE'\n",
"
\n"
],
"text/plain": [
"\u001b[32m'NEGATIVE,POSITIVE'\u001b[0m\n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "string"
}
},
"execution_count": 68,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"ds_with_embeddings[0]['string_label']"
]
},
{
"cell_type": "code",
"execution_count": 69,
"id": "voCH1RhWspAp",
"metadata": {
"id": "voCH1RhWspAp"
},
"outputs": [],
"source": [
"q = model.encode(\"negative\")"
]
},
{
"cell_type": "code",
"execution_count": 70,
"id": "Fx1ZfWnTtHSB",
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 115,
"referenced_widgets": [
"71a66efdc9ca44019ebdd09eef58e444",
"46281506e209402197db76d852f0b151",
"0b44804c6cbe42fa9ed29a5c21fc1a8e",
"488d70fb02aa420ba8c9cd3494c6d2ad",
"e7519bbf5b844685b414c6b4401b2f87",
"56c8332995414ebcb97dabb99ef0c800",
"8fc4f8fe63674cf0889b066d21450348",
"4fe9bcaf5e2f4f73a76ad045de06083d",
"ef60b13d4d8149b39db05db3291d34a1",
"9e0cf398672d42199c13d14ad653708a",
"c6ed87962d32414fab524cd8762006b6"
]
},
"id": "Fx1ZfWnTtHSB",
"outputId": "fb3b53fe-3d6b-45f8-ea2b-a4478f787096"
},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "71a66efdc9ca44019ebdd09eef58e444",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/5 [00:00, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n", "Dataset({\n", " features: ['modelId', 'label', 'readme', 'readme_len', 'string_label', 'label_embedding'],\n", " num_rows: 4175\n", "})\n", "\n" ], "text/plain": [ "\n", "\u001b[1;35mDataset\u001b[0m\u001b[1m(\u001b[0m\u001b[1m{\u001b[0m\n", " features: \u001b[1m[\u001b[0m\u001b[32m'modelId'\u001b[0m, \u001b[32m'label'\u001b[0m, \u001b[32m'readme'\u001b[0m, \u001b[32m'readme_len'\u001b[0m, \u001b[32m'string_label'\u001b[0m, \u001b[32m'label_embedding'\u001b[0m\u001b[1m]\u001b[0m,\n", " num_rows: \u001b[1;36m4175\u001b[0m\n", "\u001b[1m}\u001b[0m\u001b[1m)\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ds_with_embeddings.add_faiss_index(column='label_embedding')" ] }, { "cell_type": "code", "execution_count": 71, "id": "eonCnFZIso94", "metadata": { "id": "eonCnFZIso94" }, "outputs": [], "source": [ "scores, retrieved_examples = ds_with_embeddings.get_nearest_examples('label_embedding', q, k=10)\n" ] }, { "cell_type": "code", "execution_count": 72, "id": "eD4DKZgmso6t", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 215 }, "id": "eD4DKZgmso6t", "outputId": "251c4135-b60a-48d4-eef7-dc6893b078e6" }, "outputs": [ { "data": { "text/html": [ "
\n", "[\n", " ['negative', 'positive'],\n", " ['negative', 'positive'],\n", " ['negative', 'positive'],\n", " ['negative', 'positive'],\n", " ['negative', 'positive'],\n", " ['negative', 'positive'],\n", " ['negative', 'positive'],\n", " ['negative', 'positive'],\n", " ['negative', 'positive'],\n", " ['negative', 'positive']\n", "]\n", "\n" ], "text/plain": [ "\n", "\u001b[1m[\u001b[0m\n", " \u001b[1m[\u001b[0m\u001b[32m'negative'\u001b[0m, \u001b[32m'positive'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'negative'\u001b[0m, \u001b[32m'positive'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'negative'\u001b[0m, \u001b[32m'positive'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'negative'\u001b[0m, \u001b[32m'positive'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'negative'\u001b[0m, \u001b[32m'positive'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'negative'\u001b[0m, \u001b[32m'positive'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'negative'\u001b[0m, \u001b[32m'positive'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'negative'\u001b[0m, \u001b[32m'positive'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'negative'\u001b[0m, \u001b[32m'positive'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'negative'\u001b[0m, \u001b[32m'positive'\u001b[0m\u001b[1m]\u001b[0m\n", "\u001b[1m]\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "retrieved_examples['label'][:10]" ] }, { "cell_type": "markdown", "id": "05046f78-9568-4e54-93d1-cef6588f458f", "metadata": {}, "source": [ "So far, these results look pretty good, although we haven't done anything we couldn't do with simple string matching. Let's see what happens if we use a slightly more abstract search. " ] }, { "cell_type": "code", "execution_count": 73, "id": "nTLa_ucOtgcr", "metadata": { "id": "nTLa_ucOtgcr" }, "outputs": [], "source": [ "q = model.encode(\"music\")" ] }, { "cell_type": "code", "execution_count": 74, "id": "bqSUNY53so4F", "metadata": { "id": "bqSUNY53so4F" }, "outputs": [], "source": [ "scores, retrieved_examples = ds_with_embeddings.get_nearest_examples('label_embedding', q, k=10)\n" ] }, { "cell_type": "code", "execution_count": 75, "id": "s6IEMI39so1R", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 710 }, "id": "s6IEMI39so1R", "outputId": "a18886af-0ca6-4933-e02b-82915760ca9d" }, "outputs": [ { "data": { "text/html": [ "
\n", "[\n", " ['Dance', 'Heavy Metal', 'Hip Hop', 'Indie', 'Pop', 'Rock'],\n", " ['Dance', 'Heavy Metal', 'Hip Hop', 'Indie', 'Pop', 'Rock'],\n", " ['Dance', 'Heavy Metal', 'Hip Hop', 'Indie', 'Pop', 'Rock'],\n", " [\n", " 'Alternative',\n", " 'Country',\n", " 'Eletronic Music',\n", " 'Gospel and Worship Songs',\n", " 'Hip-Hop',\n", " 'Jazz/Blues',\n", " 'Pop',\n", " 'R&B/Soul',\n", " 'Reggae',\n", " 'Rock'\n", " ],\n", " ['business', 'entertainment', 'sports'],\n", " ['_silence_', '_unknown_', 'down', 'go', 'left', 'no', 'off', 'on', 'right', 'stop', 'up', 'yes'],\n", " ['angry', 'happy', 'others', 'sad'],\n", " ['Feeling', 'Thinking'],\n", " [\n", " 'am_thuc',\n", " 'bong_da',\n", " 'cho_thue',\n", " 'doi_song',\n", " 'dong_vat',\n", " 'mua_ban',\n", " 'nhac',\n", " 'phim',\n", " 'phu_kien',\n", " 'sach',\n", " 'showbiz',\n", " 'the_thao',\n", " 'thoi_trang_nam',\n", " 'thoi_trang_nu',\n", " 'thuc_vat',\n", " 'tin_bds',\n", " 'tin_tuc',\n", " 'tri_thuc'\n", " ],\n", " ['intimacy']\n", "]\n", "\n" ], "text/plain": [ "\n", "\u001b[1m[\u001b[0m\n", " \u001b[1m[\u001b[0m\u001b[32m'Dance'\u001b[0m, \u001b[32m'Heavy Metal'\u001b[0m, \u001b[32m'Hip Hop'\u001b[0m, \u001b[32m'Indie'\u001b[0m, \u001b[32m'Pop'\u001b[0m, \u001b[32m'Rock'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'Dance'\u001b[0m, \u001b[32m'Heavy Metal'\u001b[0m, \u001b[32m'Hip Hop'\u001b[0m, \u001b[32m'Indie'\u001b[0m, \u001b[32m'Pop'\u001b[0m, \u001b[32m'Rock'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'Dance'\u001b[0m, \u001b[32m'Heavy Metal'\u001b[0m, \u001b[32m'Hip Hop'\u001b[0m, \u001b[32m'Indie'\u001b[0m, \u001b[32m'Pop'\u001b[0m, \u001b[32m'Rock'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\n", " \u001b[32m'Alternative'\u001b[0m,\n", " \u001b[32m'Country'\u001b[0m,\n", " \u001b[32m'Eletronic Music'\u001b[0m,\n", " \u001b[32m'Gospel and Worship Songs'\u001b[0m,\n", " \u001b[32m'Hip-Hop'\u001b[0m,\n", " \u001b[32m'Jazz/Blues'\u001b[0m,\n", " \u001b[32m'Pop'\u001b[0m,\n", " \u001b[32m'R&B/Soul'\u001b[0m,\n", " \u001b[32m'Reggae'\u001b[0m,\n", " \u001b[32m'Rock'\u001b[0m\n", " \u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'business'\u001b[0m, \u001b[32m'entertainment'\u001b[0m, \u001b[32m'sports'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'_silence_'\u001b[0m, \u001b[32m'_unknown_'\u001b[0m, \u001b[32m'down'\u001b[0m, \u001b[32m'go'\u001b[0m, \u001b[32m'left'\u001b[0m, \u001b[32m'no'\u001b[0m, \u001b[32m'off'\u001b[0m, \u001b[32m'on'\u001b[0m, \u001b[32m'right'\u001b[0m, \u001b[32m'stop'\u001b[0m, \u001b[32m'up'\u001b[0m, \u001b[32m'yes'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'angry'\u001b[0m, \u001b[32m'happy'\u001b[0m, \u001b[32m'others'\u001b[0m, \u001b[32m'sad'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'Feeling'\u001b[0m, \u001b[32m'Thinking'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\n", " \u001b[32m'am_thuc'\u001b[0m,\n", " \u001b[32m'bong_da'\u001b[0m,\n", " \u001b[32m'cho_thue'\u001b[0m,\n", " \u001b[32m'doi_song'\u001b[0m,\n", " \u001b[32m'dong_vat'\u001b[0m,\n", " \u001b[32m'mua_ban'\u001b[0m,\n", " \u001b[32m'nhac'\u001b[0m,\n", " \u001b[32m'phim'\u001b[0m,\n", " \u001b[32m'phu_kien'\u001b[0m,\n", " \u001b[32m'sach'\u001b[0m,\n", " \u001b[32m'showbiz'\u001b[0m,\n", " \u001b[32m'the_thao'\u001b[0m,\n", " \u001b[32m'thoi_trang_nam'\u001b[0m,\n", " \u001b[32m'thoi_trang_nu'\u001b[0m,\n", " \u001b[32m'thuc_vat'\u001b[0m,\n", " \u001b[32m'tin_bds'\u001b[0m,\n", " \u001b[32m'tin_tuc'\u001b[0m,\n", " \u001b[32m'tri_thuc'\u001b[0m\n", " \u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'intimacy'\u001b[0m\u001b[1m]\u001b[0m\n", "\u001b[1m]\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "retrieved_examples['label'][:10]" ] }, { "cell_type": "markdown", "id": "510020a8-6201-41b3-aa48-e3cbbd28fab1", "metadata": {}, "source": [ "We can see that we get back labels related to music genre: `['Dance', 'Heavy Metal', 'Hip Hop', 'Indie', 'Pop', 'Rock']`, for our first four results. After that, we get back `['business', 'entertainment', 'sports'],` which might not be too far off what we want if we searched for music.\n", "\n", "How about another search term" ] }, { "cell_type": "code", "execution_count": 76, "id": "3tkDMxscsoyM", "metadata": { "id": "3tkDMxscsoyM" }, "outputs": [], "source": [ "q = model.encode(\"hateful\")" ] }, { "cell_type": "code", "execution_count": 77, "id": "50HBtBwsAjTt", "metadata": { "id": "50HBtBwsAjTt" }, "outputs": [], "source": [ "scores, retrieved_examples = ds_with_embeddings.get_nearest_examples('label_embedding', q, k=10)\n" ] }, { "cell_type": "code", "execution_count": 78, "id": "43ZxmgcaAjQS", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 215 }, "id": "43ZxmgcaAjQS", "outputId": "4e46f49a-cf5a-4b5f-92f8-7a03e88fd653" }, "outputs": [ { "data": { "text/html": [ "
\n", "[\n", " ['Hateful', 'Not hateful'],\n", " ['Hateful', 'Not hateful'],\n", " ['hateful', 'non-hateful'],\n", " ['hateful', 'non-hateful'],\n", " ['hateful', 'non-hateful'],\n", " ['HATE', 'NOT_HATE'],\n", " ['NON_HATE', 'HATE'],\n", " ['NON_HATE', 'HATE'],\n", " ['NON_HATE', 'HATE'],\n", " ['NON_HATE', 'HATE']\n", "]\n", "\n" ], "text/plain": [ "\n", "\u001b[1m[\u001b[0m\n", " \u001b[1m[\u001b[0m\u001b[32m'Hateful'\u001b[0m, \u001b[32m'Not hateful'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'Hateful'\u001b[0m, \u001b[32m'Not hateful'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'hateful'\u001b[0m, \u001b[32m'non-hateful'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'hateful'\u001b[0m, \u001b[32m'non-hateful'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'hateful'\u001b[0m, \u001b[32m'non-hateful'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'HATE'\u001b[0m, \u001b[32m'NOT_HATE'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'NON_HATE'\u001b[0m, \u001b[32m'HATE'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'NON_HATE'\u001b[0m, \u001b[32m'HATE'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'NON_HATE'\u001b[0m, \u001b[32m'HATE'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[1m[\u001b[0m\u001b[32m'NON_HATE'\u001b[0m, \u001b[32m'HATE'\u001b[0m\u001b[1m]\u001b[0m\n", "\u001b[1m]\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "retrieved_examples['label'][:10]" ] }, { "cell_type": "markdown", "id": "1f4e42e3-6387-4794-9a83-2b1b908b1361", "metadata": {}, "source": [ "Again here we have something quite close to what we'd get with string matching, but we have a bit more flexibility in how we spell/define our labels which might help surface more possible results. \n", "\n", "We'll try a bunch more things..." ] }, { "cell_type": "code", "execution_count": 79, "id": "wI_zeRh0A3MH", "metadata": { "id": "wI_zeRh0A3MH" }, "outputs": [], "source": [ "def query_labels(query:str):\n", " q = model.encode(query)\n", " scores, retrieved_examples = ds_with_embeddings.get_nearest_examples('label_embedding', q, k=10)\n", " print(f\"results for: {query}\")\n", " print(list(zip(retrieved_examples['label'][:10],retrieved_examples['modelId'][:10])))" ] }, { "cell_type": "code", "execution_count": 80, "id": "pe6MTppxBRbQ", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 331 }, "id": "pe6MTppxBRbQ", "outputId": "73ede30f-0a47-475f-b0e9-ba2c199f026e" }, "outputs": [ { "data": { "text/html": [ "
results for: politics\n", "\n" ], "text/plain": [ "results for: politics\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[\n", " (['Democrat', 'Republican'], 'm-newhauser/distilbert-political-tweets'),\n", " (['Geopolitical', 'Personal', 'Political', 'Religious'], 'dee4hf/autotrain-deephate2-1093539673'),\n", " (['None', 'Environmental', 'Social', 'Governance'], 'yiyanghkust/finbert-esg'),\n", " (['business', 'entertainment', 'sports'], 'bipin/malayalam-news-classifier'),\n", " (\n", " ['CRIME', 'ENTERTAINMENT', 'Finance', 'POLITICS', 'SPORTS', 'Terrorism'],\n", " 'Yarn007/autotrain-Napkin-872827783'\n", " ),\n", " (['business', 'entertainment', 'politics', 'sport', 'tech'], 'abhishek/autonlp-bbc-roberta-37249301'),\n", " (\n", " ['business', 'entertainment', 'politics', 'sport', 'tech'],\n", " 'abhishek/autonlp-bbc-news-classification-37229289'\n", " ),\n", " (['business', 'entertainment', 'politics', 'sport', 'tech'], 'Yarn/autotrain-Traimn-853827191'),\n", " (['Neutral', 'Propaganda'], 'Real29/my-model-proppy'),\n", " (['Neutral', 'Propaganda'], 'Real29/my-model-ptc')\n", "]\n", "\n" ], "text/plain": [ "\u001b[1m[\u001b[0m\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'Democrat'\u001b[0m, \u001b[32m'Republican'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'm-newhauser/distilbert-political-tweets'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'Geopolitical'\u001b[0m, \u001b[32m'Personal'\u001b[0m, \u001b[32m'Political'\u001b[0m, \u001b[32m'Religious'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'dee4hf/autotrain-deephate2-1093539673'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'None'\u001b[0m, \u001b[32m'Environmental'\u001b[0m, \u001b[32m'Social'\u001b[0m, \u001b[32m'Governance'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'yiyanghkust/finbert-esg'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'business'\u001b[0m, \u001b[32m'entertainment'\u001b[0m, \u001b[32m'sports'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'bipin/malayalam-news-classifier'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\n", " \u001b[1m[\u001b[0m\u001b[32m'CRIME'\u001b[0m, \u001b[32m'ENTERTAINMENT'\u001b[0m, \u001b[32m'Finance'\u001b[0m, \u001b[32m'POLITICS'\u001b[0m, \u001b[32m'SPORTS'\u001b[0m, \u001b[32m'Terrorism'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[32m'Yarn007/autotrain-Napkin-872827783'\u001b[0m\n", " \u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'business'\u001b[0m, \u001b[32m'entertainment'\u001b[0m, \u001b[32m'politics'\u001b[0m, \u001b[32m'sport'\u001b[0m, \u001b[32m'tech'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'abhishek/autonlp-bbc-roberta-37249301'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\n", " \u001b[1m[\u001b[0m\u001b[32m'business'\u001b[0m, \u001b[32m'entertainment'\u001b[0m, \u001b[32m'politics'\u001b[0m, \u001b[32m'sport'\u001b[0m, \u001b[32m'tech'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[32m'abhishek/autonlp-bbc-news-classification-37229289'\u001b[0m\n", " \u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'business'\u001b[0m, \u001b[32m'entertainment'\u001b[0m, \u001b[32m'politics'\u001b[0m, \u001b[32m'sport'\u001b[0m, \u001b[32m'tech'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'Yarn/autotrain-Traimn-853827191'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'Neutral'\u001b[0m, \u001b[32m'Propaganda'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'Real29/my-model-proppy'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'Neutral'\u001b[0m, \u001b[32m'Propaganda'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'Real29/my-model-ptc'\u001b[0m\u001b[1m)\u001b[0m\n", "\u001b[1m]\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "query_labels(\"politics\")" ] }, { "cell_type": "code", "execution_count": 84, "id": "SV6J6sfAAjNa", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 331 }, "id": "SV6J6sfAAjNa", "outputId": "cec2cd7a-23c1-4ac8-bce2-e96dc2e9bc63" }, "outputs": [ { "data": { "text/html": [ "
results for: fiction, non_fiction\n", "\n" ], "text/plain": [ "results for: fiction, non_fiction\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[\n", " (\n", " ['action', 'drama', 'horror', 'sci_fi', 'superhero', 'thriller'],\n", " 'Tejas3/distillbert_110_uncased_movie_genre'\n", " ),\n", " (['action', 'drama', 'horror', 'sci_fi', 'superhero', 'thriller'], 'Tejas3/distillbert_110_uncased_v1'),\n", " (\n", " ['action', 'animation', 'comedy', 'drama', 'romance', 'thriller'],\n", " 'langfab/distilbert-base-uncased-finetuned-movie-genre'\n", " ),\n", " (['HATE', 'NON_HATE'], 'anthonny/dehatebert-mono-spanish-finetuned-sentiments_reviews_politicos'),\n", " (['NON_HATE', 'HATE'], 'Hate-speech-CNERG/dehatebert-mono-english'),\n", " (['NON_HATE', 'HATE'], 'Hate-speech-CNERG/dehatebert-mono-german'),\n", " (['NON_HATE', 'HATE'], 'Hate-speech-CNERG/dehatebert-mono-italian'),\n", " (['NON_HATE', 'HATE'], 'Hate-speech-CNERG/dehatebert-mono-spanish'),\n", " (['NON_HATE', 'HATE'], 'Hate-speech-CNERG/dehatebert-mono-portugese'),\n", " (['NON_HATE', 'HATE'], 'Hate-speech-CNERG/dehatebert-mono-polish')\n", "]\n", "\n" ], "text/plain": [ "\u001b[1m[\u001b[0m\n", " \u001b[1m(\u001b[0m\n", " \u001b[1m[\u001b[0m\u001b[32m'action'\u001b[0m, \u001b[32m'drama'\u001b[0m, \u001b[32m'horror'\u001b[0m, \u001b[32m'sci_fi'\u001b[0m, \u001b[32m'superhero'\u001b[0m, \u001b[32m'thriller'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[32m'Tejas3/distillbert_110_uncased_movie_genre'\u001b[0m\n", " \u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'action'\u001b[0m, \u001b[32m'drama'\u001b[0m, \u001b[32m'horror'\u001b[0m, \u001b[32m'sci_fi'\u001b[0m, \u001b[32m'superhero'\u001b[0m, \u001b[32m'thriller'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'Tejas3/distillbert_110_uncased_v1'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\n", " \u001b[1m[\u001b[0m\u001b[32m'action'\u001b[0m, \u001b[32m'animation'\u001b[0m, \u001b[32m'comedy'\u001b[0m, \u001b[32m'drama'\u001b[0m, \u001b[32m'romance'\u001b[0m, \u001b[32m'thriller'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[32m'langfab/distilbert-base-uncased-finetuned-movie-genre'\u001b[0m\n", " \u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'HATE'\u001b[0m, \u001b[32m'NON_HATE'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'anthonny/dehatebert-mono-spanish-finetuned-sentiments_reviews_politicos'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'NON_HATE'\u001b[0m, \u001b[32m'HATE'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'Hate-speech-CNERG/dehatebert-mono-english'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'NON_HATE'\u001b[0m, \u001b[32m'HATE'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'Hate-speech-CNERG/dehatebert-mono-german'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'NON_HATE'\u001b[0m, \u001b[32m'HATE'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'Hate-speech-CNERG/dehatebert-mono-italian'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'NON_HATE'\u001b[0m, \u001b[32m'HATE'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'Hate-speech-CNERG/dehatebert-mono-spanish'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'NON_HATE'\u001b[0m, \u001b[32m'HATE'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'Hate-speech-CNERG/dehatebert-mono-portugese'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'NON_HATE'\u001b[0m, \u001b[32m'HATE'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'Hate-speech-CNERG/dehatebert-mono-polish'\u001b[0m\u001b[1m)\u001b[0m\n", "\u001b[1m]\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "query_labels(\"fiction, non_fiction\")" ] }, { "cell_type": "markdown", "id": "fHy1wxv58Mwj", "metadata": { "id": "fHy1wxv58Mwj" }, "source": [ "Let's try the set of emotions one should feel everyday." ] }, { "cell_type": "code", "execution_count": 87, "id": "8yt9dZW37ytf", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 479 }, "id": "8yt9dZW37ytf", "outputId": "3da160ce-e88b-4f69-8148-6185c81734cc" }, "outputs": [ { "data": { "text/html": [ "
results for: worry, disgust, anxiety, fear\n", "\n" ], "text/plain": [ "results for: worry, disgust, anxiety, fear\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[\n", " (['anger', 'disgust', 'fear', 'guilt', 'joy', 'sadness', 'shame'], 'crcb/isear_bert'),\n", " (\n", " ['anger', 'disgust', 'fear', 'joy', 'others', 'sadness', 'surprise'],\n", " 'pysentimiento/robertuito-emotion-analysis'\n", " ),\n", " (\n", " ['anger', 'disgust', 'fear', 'joy', 'others', 'sadness', 'surprise'],\n", " 'daveni/twitter-xlm-roberta-emotion-es'\n", " ),\n", " (\n", " ['anger', 'disgust', 'fear', 'joy', 'others', 'sadness', 'surprise'],\n", " 'finiteautomata/beto-emotion-analysis'\n", " ),\n", " (\n", " ['anger', 'disgust', 'fear', 'joy', 'others', 'sadness', 'surprise'],\n", " 'finiteautomata/bertweet-base-emotion-analysis'\n", " ),\n", " (['ANGER', 'DISGUST', 'FEAR', 'HAPPINESS', 'NEUTRALITY', 'SADNESS', 'SURPRISED'], 'Gunulhona/tbecmodel'),\n", " (\n", " ['anger', 'anticipation', 'disgust', 'fear', 'joy', 'sadness', 'surprise', 'trust'],\n", " 'Yuetian/bert-base-uncased-finetuned-plutchik-emotion'\n", " ),\n", " (['anger', 'fear', 'happy', 'love', 'sadness'], 'jasonpratamas7/Thesis-Model-1'),\n", " (['anger', 'fear', 'happy', 'love', 'sadness'], 'jasonpratamas7/Thesis-Model1'),\n", " (['anger', 'fear', 'happy', 'love', 'sadness'], 'StevenLimcorn/indonesian-roberta-base-emotion-classifier')\n", "]\n", "\n" ], "text/plain": [ "\u001b[1m[\u001b[0m\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'anger'\u001b[0m, \u001b[32m'disgust'\u001b[0m, \u001b[32m'fear'\u001b[0m, \u001b[32m'guilt'\u001b[0m, \u001b[32m'joy'\u001b[0m, \u001b[32m'sadness'\u001b[0m, \u001b[32m'shame'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'crcb/isear_bert'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\n", " \u001b[1m[\u001b[0m\u001b[32m'anger'\u001b[0m, \u001b[32m'disgust'\u001b[0m, \u001b[32m'fear'\u001b[0m, \u001b[32m'joy'\u001b[0m, \u001b[32m'others'\u001b[0m, \u001b[32m'sadness'\u001b[0m, \u001b[32m'surprise'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[32m'pysentimiento/robertuito-emotion-analysis'\u001b[0m\n", " \u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\n", " \u001b[1m[\u001b[0m\u001b[32m'anger'\u001b[0m, \u001b[32m'disgust'\u001b[0m, \u001b[32m'fear'\u001b[0m, \u001b[32m'joy'\u001b[0m, \u001b[32m'others'\u001b[0m, \u001b[32m'sadness'\u001b[0m, \u001b[32m'surprise'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[32m'daveni/twitter-xlm-roberta-emotion-es'\u001b[0m\n", " \u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\n", " \u001b[1m[\u001b[0m\u001b[32m'anger'\u001b[0m, \u001b[32m'disgust'\u001b[0m, \u001b[32m'fear'\u001b[0m, \u001b[32m'joy'\u001b[0m, \u001b[32m'others'\u001b[0m, \u001b[32m'sadness'\u001b[0m, \u001b[32m'surprise'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[32m'finiteautomata/beto-emotion-analysis'\u001b[0m\n", " \u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\n", " \u001b[1m[\u001b[0m\u001b[32m'anger'\u001b[0m, \u001b[32m'disgust'\u001b[0m, \u001b[32m'fear'\u001b[0m, \u001b[32m'joy'\u001b[0m, \u001b[32m'others'\u001b[0m, \u001b[32m'sadness'\u001b[0m, \u001b[32m'surprise'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[32m'finiteautomata/bertweet-base-emotion-analysis'\u001b[0m\n", " \u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'ANGER'\u001b[0m, \u001b[32m'DISGUST'\u001b[0m, \u001b[32m'FEAR'\u001b[0m, \u001b[32m'HAPPINESS'\u001b[0m, \u001b[32m'NEUTRALITY'\u001b[0m, \u001b[32m'SADNESS'\u001b[0m, \u001b[32m'SURPRISED'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'Gunulhona/tbecmodel'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\n", " \u001b[1m[\u001b[0m\u001b[32m'anger'\u001b[0m, \u001b[32m'anticipation'\u001b[0m, \u001b[32m'disgust'\u001b[0m, \u001b[32m'fear'\u001b[0m, \u001b[32m'joy'\u001b[0m, \u001b[32m'sadness'\u001b[0m, \u001b[32m'surprise'\u001b[0m, \u001b[32m'trust'\u001b[0m\u001b[1m]\u001b[0m,\n", " \u001b[32m'Yuetian/bert-base-uncased-finetuned-plutchik-emotion'\u001b[0m\n", " \u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'anger'\u001b[0m, \u001b[32m'fear'\u001b[0m, \u001b[32m'happy'\u001b[0m, \u001b[32m'love'\u001b[0m, \u001b[32m'sadness'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'jasonpratamas7/Thesis-Model-1'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'anger'\u001b[0m, \u001b[32m'fear'\u001b[0m, \u001b[32m'happy'\u001b[0m, \u001b[32m'love'\u001b[0m, \u001b[32m'sadness'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'jasonpratamas7/Thesis-Model1'\u001b[0m\u001b[1m)\u001b[0m,\n", " \u001b[1m(\u001b[0m\u001b[1m[\u001b[0m\u001b[32m'anger'\u001b[0m, \u001b[32m'fear'\u001b[0m, \u001b[32m'happy'\u001b[0m, \u001b[32m'love'\u001b[0m, \u001b[32m'sadness'\u001b[0m\u001b[1m]\u001b[0m, \u001b[32m'StevenLimcorn/indonesian-roberta-base-emotion-classifier'\u001b[0m\u001b[1m)\u001b[0m\n", "\u001b[1m]\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "query_labels(\"worry, disgust, anxiety, fear\")" ] }, { "cell_type": "markdown", "id": "3225c942-2fe6-437f-815c-821155c1d02f", "metadata": {}, "source": [ "This example of searching for a set of labels might be a better approach in general since the query will better match the format of the intitial search. " ] }, { "cell_type": "markdown", "id": "61d013c6-cb62-409d-af5a-958d05e11edc", "metadata": { "id": "61d013c6-cb62-409d-af5a-958d05e11edc" }, "source": [ "## Conclusion \n", "\n", "It seems like there is some merit in exploring some of these ideas further. There are a lot of improvements that could be made: \n", "- how the embeddings are created\n", "- removing some 'noise' from the README, for example, by first parsing the Markdown\n", "- improving how the embeddings are created for the labels \n", "- combining the embeddings in some way either upfront or when queryig\n", "- a bunch of other things... \n", "\n", "If I find some spare time, I plan to dig into these topics a bit further. This is also a nice excuse to play with one of the new open source embedding databases that have popped up in the last couple of years. \n" ] } ], "metadata": { "accelerator": "GPU", "colab": { "collapsed_sections": [], "machine_shape": "hm", "name": "2022-07-25-semantic_search_model_labels.ipynb", "provenance": [] }, "gpuClass": "standard", "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.13" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "012e04123ad9478aace2cdbf396d24f2": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "01d242d4ea63479d83e6895085f0e469": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "0256b2f2320447cead25c4a137a6e9f8": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "0277ba9c060d439caee8c023f3d097bb": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_72ca461fed84435bbd4f3b862ecacf91", "max": 53, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_9e9f0615ff274adf9ed7f1853d9042c3", "value": 53 } }, "02a9d8b5f65847458ec313ecc6406b02": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "03558198374d45adb6a60c4511daef8f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_652d15a87ace4f0c9491adb5a78c3563", "max": 1, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_9028b62043ca4735833de215ac2c905c", "value": 1 } }, "03ba1bb6125f4c488ceca836a7c72881": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "05ae6cb62fb44d9e9f0d8104511d9c0e": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "05b0c0766b3b4aa883a6ac0e03726bba": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "05fbe3e085c6466a95f1448ca0a57695": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "0873431a1b604aad8f57f47973d96bfe": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "08faccbd3a6044a5922b4d9c52c4b39c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "0af6072411554dec934df729a43003ec": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "0b44804c6cbe42fa9ed29a5c21fc1a8e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_4fe9bcaf5e2f4f73a76ad045de06083d", "max": 5, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_ef60b13d4d8149b39db05db3291d34a1", "value": 5 } }, "0df50b3cd48f433784ac28472888a8ee": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_31b40798d3e944a382be9e29b26ab5fb", "placeholder": "", "style": "IPY_MODEL_73acdd7b4eb14d2c9b0a74a5d7a388b9", "value": "Downloading data files: 100%" } }, "0e4e91b2020244ee9e159efded797d01": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "0eaf6e5be53b4e4bba169ac3d9049c81": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "0f8967e49b3d4e469b7ed23b257b8ad0": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "0fcc103f12ba41db9c99dca74b341230": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "10f574b9abb74c18a093d93169cde138": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "12f542afbb2942fea0f4f9b1e6483983": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "13548ea532e142469fb28b47623d9fdf": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "14004f118a1641528f9427d3c01d841e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_012e04123ad9478aace2cdbf396d24f2", "placeholder": "", "style": "IPY_MODEL_97a7930f16fc44eaa2ac91d3f24974fc", "value": " 4/4 [00:00<00:00, 75.44it/s]" } }, "152207bbb68345d697cb66b40f02c8f3": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "15ac8a912e2c44be9d7207d3939637bf": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_5213f124a359414bb3d39bcfd4e83408", "IPY_MODEL_7d387dd5825046b7ac911642be2c9cd6", "IPY_MODEL_2166deb9d85f4a37b5f13b54e6429203" ], "layout": "IPY_MODEL_cc9f6e7d229f4b2f8ff7b9ce4984f748" } }, "1643434e405f47729cf7b24d0beefe05": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "1712845de9b04a46a4462d51bdda32fe": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "181ed30c9e464c7c9ec1dc36f779c766": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "1865c2f13e614a1ea530291341ba1c87": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "18855d2579ca4564a4ad25fe7974b921": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_44e11c5ecbaa4e3e9ee89de43593afb2", "IPY_MODEL_0277ba9c060d439caee8c023f3d097bb", "IPY_MODEL_4477cdd56f7d4a7ba2b892179b091f5c" ], "layout": "IPY_MODEL_99bf8c34c9304d22929d7651ae20bfcc" } }, "18bd8c864c164afaa3cb7d2df5b010b8": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "19784c6a139a46ea85d43ee37ba1b03b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "19add75a4f69486aaf77e0f46a1d6d53": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_b691fa32db364ea5a34d71623960dd23", "placeholder": "", "style": "IPY_MODEL_ebc22ef492504b55b89ec1a86b5b4bd5", "value": "100%" } }, "1b3bb8a37cac4b3e91e0786ff39583cd": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "1bcee916fc244aacb5d978818b078950": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "1c5febefbb714e6f88a389b4e9b86a37": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_536aa159505e4b42a7409fb5ff84a7ad", "max": 13156, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_13548ea532e142469fb28b47623d9fdf", "value": 13156 } }, "1d8d74399fef435c8ae04333f3916f69": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "1de6e85f6d284dae8658a78b1ea92da6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_5c56e3c01c3d43dd832c095ea6c14ca6", "placeholder": "", "style": "IPY_MODEL_2ede9a5a3d844092af4688c20a4b1d7d", "value": " 466k/466k [00:00<00:00, 4.89MB/s]" } }, "1e22fbe1e9e343a8bd8d01089996d362": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_a082d62711f44a378554e0199db7f745", "IPY_MODEL_79383bd3a4c74ced87d51da0f883b7a2", "IPY_MODEL_b10a14bf8f794207ad479fed732d6c98" ], "layout": "IPY_MODEL_8dc05c72e99e4969bba81db5e9d7fbfb" } }, "1f5df51361c8459d9e324413ef7bc276": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "20b2ddb4039749b1aabbe15ec0c04c4b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_67cf32585ec04b19a26cf15e8dcd245a", "IPY_MODEL_eccc6ee58b79448db8fbdcbadfd10308", "IPY_MODEL_1de6e85f6d284dae8658a78b1ea92da6" ], "layout": "IPY_MODEL_01d242d4ea63479d83e6895085f0e469" } }, "2166deb9d85f4a37b5f13b54e6429203": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_e9597b74043944549fdf4999240cc996", "placeholder": "", "style": "IPY_MODEL_78ae8bc9c8b74e2d906c4005c4477aae", "value": " 39.3k/39.3k [00:00<00:00, 928kB/s]" } }, "2237c31d5dbd4256a0c68dd9a99fb727": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "228ce92c5f38428a95105d02358f781e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_557c1c17405e403da54b86d8b04b024e", "IPY_MODEL_ad0337420f1f4671b875e87a15176452", "IPY_MODEL_df0436126f5c4a08853c6be7ff939a3e" ], "layout": "IPY_MODEL_3f3154328f74424c93e34dd89136ecf7" } }, "22b2178a50254ef3be67ea8636dd7f3a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "24c90186cd684a1bb3018fbc4b59b1f6": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "26359d6777ba49d6b66a63fab561d8f9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "26626c55e36248829c67b10de605bea9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "27943572198d468088d5cc47a2ddc94b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "28cc772b519d4347985897d4903dc19a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_d47a67acfc694b758283f8fae594de27", "IPY_MODEL_d4c6d4a913934f77849324ece6ef59a2", "IPY_MODEL_3609d0dac2c94e1ea6fce14a24743b06" ], "layout": "IPY_MODEL_e9bb74009b3f4cde9aea41628994c59d" } }, "29136b3a1dbb4b818ee1810f6b09f0ea": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_45a2bab895044d2c966e5c81df80f9fb", "max": 1, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_9e807026f5bf452da8344be4588969d7", "value": 1 } }, "29ad188e695c48b5a50b535c94c6919a": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "2a4248e2588d4223b7b2a1cb7e3792bf": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "2a6c2f8b6841459c83ce393208525562": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_97fd2521c4b44577bc1413f589415a87", "IPY_MODEL_bbd3531795294cee8423ef685b199795", "IPY_MODEL_7b32fd2506cc4969a29bb19cc9cab3fc" ], "layout": "IPY_MODEL_f097d6b175ee4ec58ab4684b8facf73e" } }, "2aa31aa07c574edcb2b94503d955d74b": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "2b5175f5959d45ff8166ef3d6dda9f01": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "2cfcddbe21a94a509c63832f0df21694": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_3d2cbb199c4d4d61b844147cd9a253f0", "max": 4175, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_6b23b6f2b596468c8bcfd9ae0c80da30", "value": 4175 } }, "2ede9a5a3d844092af4688c20a4b1d7d": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "2f378e7d6e6448349b86ff542d480d70": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "2f6781c7ba1845379a54323def5e0cd6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "3018252f61f74baba9d2e466299b14c9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "31188889a4374433b808df747de55f74": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "31b40798d3e944a382be9e29b26ab5fb": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "3354f4d030f14c29b3eaf954e28ddbff": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "33a54ceae027439fbb283cda95a39719": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "3609d0dac2c94e1ea6fce14a24743b06": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_643b5a68217146b484a666dbc7ee9745", "placeholder": "", "style": "IPY_MODEL_bb49a2f1f29447c18c655bad111193fb", "value": " 1/1 [00:03<00:00, 3.76s/it]" } }, "368866595611494c88cba4752f61d456": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_509accb5461a4a75b65d1fee093d0908", "IPY_MODEL_e3bbd9e4d6144d7dba3e891d33bbe87c", "IPY_MODEL_8277a1fa8fc64cf2abd4a5806b932715" ], "layout": "IPY_MODEL_1643434e405f47729cf7b24d0beefe05" } }, "370b4cd2300449b48325c49182ada640": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_a7c406fd736a4565ad7e0ba60be99a20", "IPY_MODEL_6d06ce56b55944cba9aaf28bd3b3e508", "IPY_MODEL_650c946a6dd04a1dad4a3ffdcbc7516c" ], "layout": "IPY_MODEL_a114f7f350704e85b86c75117e5d9702" } }, "37753a57a9f34662aa040ba2b022ca7c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "37ab3fe1c7ef44e6b675d227a7710b3e": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "37b6d2bf7bf14e0b95908dd1ffeae818": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "3863ff3758874c60b2b0bc9f54f09146": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "PasswordModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "PasswordModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "PasswordView", "continuous_update": true, "description": "Token:", "description_tooltip": null, "disabled": false, "layout": "IPY_MODEL_985a4e94a6624db497fb549ff81f3c2e", "placeholder": "", "style": "IPY_MODEL_664ded2a090346638482d62daee73c67", "value": "" } }, "3927e692b81944768512e244237c1665": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "3aa80c9ca81f46f097be6bbb2125fa6a": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "3b3d72a3940a41958745f1d885e78476": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "3c5c453584804e70a903ea1e79b0f152": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_1b3bb8a37cac4b3e91e0786ff39583cd", "max": 612, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_18bd8c864c164afaa3cb7d2df5b010b8", "value": 612 } }, "3d2cbb199c4d4d61b844147cd9a253f0": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "3ddbc8b058884ec5bd5c2c0d67ce1d99": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "3ed1145da99a4a9cb782a6450ed0a580": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "3f2007f0e2ab440c9977bbad877ed1b9": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "3f3154328f74424c93e34dd89136ecf7": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "3fdbf86e812c4142b49ff80dbcb59057": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "408e1a3ed2724e3888bd734e124fbef1": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_6ce941902c0c4510874bab1f91196b56", "IPY_MODEL_a3b867882afb4657bab489771024b17f", "IPY_MODEL_6cf212dafcd84da0b5e84a5f4899fb83" ], "layout": "IPY_MODEL_4ecd1d1edc564b7e9be8032565eccf78" } }, "416e33981f8f4d9f9d493c95cac8283c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "4221421373b94c5eba3b1ca1d696d3b1": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_1712845de9b04a46a4462d51bdda32fe", "placeholder": "", "style": "IPY_MODEL_27943572198d468088d5cc47a2ddc94b", "value": "100%" } }, "4477cdd56f7d4a7ba2b892179b091f5c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_b35f9d0515cd495ea6f0a2089529cb13", "placeholder": "", "style": "IPY_MODEL_3354f4d030f14c29b3eaf954e28ddbff", "value": " 53.0/53.0 [00:00<00:00, 1.44kB/s]" } }, "44e11c5ecbaa4e3e9ee89de43593afb2": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_a443f29df3f9442e8abfde2cfdc03cf5", "placeholder": "", "style": "IPY_MODEL_e229125640f04911964e96b458466df7", "value": "Downloading: 100%" } }, "45a2bab895044d2c966e5c81df80f9fb": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "45dab5cfa9794d389a50d567ada87247": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "46281506e209402197db76d852f0b151": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_56c8332995414ebcb97dabb99ef0c800", "placeholder": "", "style": "IPY_MODEL_8fc4f8fe63674cf0889b066d21450348", "value": "100%" } }, "46dd9bed94354e4db54c92922b22fcd2": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "4748e8fcab124a3f869519d7340aa89c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_b5b94d9434fb44968cfe55ca3aeb7faf", "placeholder": "", "style": "IPY_MODEL_95a963812d8d4bd0aada7ef926d62179", "value": "Downloading: 100%" } }, "488d70fb02aa420ba8c9cd3494c6d2ad": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_9e0cf398672d42199c13d14ad653708a", "placeholder": "", "style": "IPY_MODEL_c6ed87962d32414fab524cd8762006b6", "value": " 5/5 [00:00<00:00, 90.27it/s]" } }, "49c47f7875b24c2ba58d8e45bed8dc92": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_fb0520ab5c8743fe8263a9abd3f8d3cb", "placeholder": "", "style": "IPY_MODEL_a603ff421abc4d3ebd3efdc6db0b7a2c", "value": "Downloading: 100%" } }, "49ccbab6392d4c239c54d29135a03f68": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "4a142d8f316a49aca701850ed01e3b79": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_be0ef18544614ed1b9da9f8931bbe6b8", "placeholder": "", "style": "IPY_MODEL_59ac58d5680147baa98cb9325e9f8087", "value": "100%" } }, "4c606befd6974d1aa76df56ce63b5373": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_b39d99777a044f4e88175ca339c5fce4", "placeholder": "", "style": "IPY_MODEL_782124b6daf4443a824160a4c07c8eb9", "value": "Downloading: 100%" } }, "4cd45d16679342b493b93eb3d36069e6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_f186f74ef1b647c28508e256c5eefd8d", "IPY_MODEL_29136b3a1dbb4b818ee1810f6b09f0ea", "IPY_MODEL_98ed677c85db4b97914f81c5022ee8ab" ], "layout": "IPY_MODEL_1bcee916fc244aacb5d978818b078950" } }, "4d365a117add484d9c4af179854cf5b2": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "4d6fcf9256134cb68791857d91c490b6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_a1fbd1a7e3bb4d77b023322019b99c63", "placeholder": "", "style": "IPY_MODEL_f72fc15a704149f4a996dea9d2721626", "value": " 349/349 [00:00<00:00, 9.09kB/s]" } }, "4e721950f34445aea7e8ffa74ebcd13f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_b127dc590a344563a33f2a7586bb8186", "placeholder": "", "style": "IPY_MODEL_79894a62c12b429496506551771196dd", "value": " 7/7 [00:00<00:00, 21.88ba/s]" } }, "4ecd1d1edc564b7e9be8032565eccf78": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "4ed1dd83523845ef85f644b0e0e7bed8": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_7b5367ba8f9446079ca265fab7da645f", "placeholder": "", "style": "IPY_MODEL_37b6d2bf7bf14e0b95908dd1ffeae818", "value": " 1.18k/1.18k [00:00<00:00, 38.3kB/s]" } }, "4fe9bcaf5e2f4f73a76ad045de06083d": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "50422b4cb49946bdbde298a1ca7a4d82": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "5069ee90e04a4d029201a595b69777ae": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "509accb5461a4a75b65d1fee093d0908": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_edb947af25f844c0a883a6fdd164fec6", "placeholder": "", "style": "IPY_MODEL_05b0c0766b3b4aa883a6ac0e03726bba", "value": "Downloading: 100%" } }, "51b38fbfb6cd431990fdff1627734878": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "5213f124a359414bb3d39bcfd4e83408": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_d5846474b08f41069c57c1ee99eed4c6", "placeholder": "", "style": "IPY_MODEL_1f5df51361c8459d9e324413ef7bc276", "value": "Downloading: 100%" } }, "52b7ab3ba9d742eca283a6c4bf54b50d": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "531829e7b8104892b96e3592f834b701": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "532bf1d4cb9a4d889c25d17c58de8126": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_bd46010979294a3093b12ec2ba6dca49", "max": 3887990, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_49ccbab6392d4c239c54d29135a03f68", "value": 3887990 } }, "536aa159505e4b42a7409fb5ff84a7ad": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "557c1c17405e403da54b86d8b04b024e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_05ae6cb62fb44d9e9f0d8104511d9c0e", "placeholder": "", "style": "IPY_MODEL_72b250bdd261446aa251e1b97c8b8162", "value": "100%" } }, "55804a1002454a3e88dcd6bfb5bee7e4": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "55abd0d45c0b4b039520e4297dc46081": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "55ce595a743d4f328ce11c77047236b2": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_f097923733674556a3d530ec2de8f2a3", "IPY_MODEL_1c5febefbb714e6f88a389b4e9b86a37", "IPY_MODEL_658250b01a664dbdab7571df89489417" ], "layout": "IPY_MODEL_02a9d8b5f65847458ec313ecc6406b02" } }, "56c8332995414ebcb97dabb99ef0c800": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "56ced24d012d486fb8eac7dd70c49a6e": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "574217f720f34d7c8bdc3a9518abf1b2": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "59ac58d5680147baa98cb9325e9f8087": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "5c56e3c01c3d43dd832c095ea6c14ca6": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "5c8b97937175436e9c48bb86f81be1f6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "5d83f3f951f9462e8528274d8e791b59": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_e5ff8b1f877f4bb08a6610875a9faabf", "placeholder": "", "style": "IPY_MODEL_26359d6777ba49d6b66a63fab561d8f9", "value": "Downloading: 100%" } }, "605a9b727d2a4a68a9bf4aea33da21fa": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_ba5248d43abe43738a4af233813a1fd0", "max": 10610, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_c23a3d4ee3a4433cba4132d55d49d6eb", "value": 10610 } }, "6240285db4444d648b6dadec3dbf76c4": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_56ced24d012d486fb8eac7dd70c49a6e", "placeholder": "", "style": "IPY_MODEL_a34afb994d24462ea6d707100fe6dba9", "value": " 629/629 [00:00<00:00, 22.6kB/s]" } }, "643b5a68217146b484a666dbc7ee9745": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "650c946a6dd04a1dad4a3ffdcbc7516c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_33a54ceae027439fbb283cda95a39719", "placeholder": "", "style": "IPY_MODEL_b98bfe7ccbb9496fb8c172c1cf5a1f18", "value": " 206/206 [00:18<00:00, 22.08ba/s]" } }, "652d15a87ace4f0c9491adb5a78c3563": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "658250b01a664dbdab7571df89489417": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_0256b2f2320447cead25c4a137a6e9f8", "placeholder": "", "style": "IPY_MODEL_d6a7281e2c51422c87e3e468ee9a11be", "value": " 13.2k/13.2k [00:00<00:00, 356kB/s]" } }, "664ded2a090346638482d62daee73c67": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "6656d7d4de174bcf9f2ab20394f6f539": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "66de8de2aef44b10b958bbf6088c1c6b": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "67157f4966c04307ab9d98db565710e9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_d372ffa65e3c42d3bab3fc8f3983343b", "placeholder": "", "style": "IPY_MODEL_4d365a117add484d9c4af179854cf5b2", "value": "Downloading data: 100%" } }, "675b072220944bfa8b74d25437c2f0b1": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "67cf32585ec04b19a26cf15e8dcd245a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_8501399a02ac4c6db8e39932f20111f8", "placeholder": "", "style": "IPY_MODEL_e4b994aa260342d2a5d07fb6ac6762cd", "value": "Downloading: 100%" } }, "681789d7e59249e8b81461af2629d117": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "68c5bb5404724775885eac217430af35": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_c5d45d8d6038433da4c538fc630da082", "max": 4, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_c853942632cf4aaca95737b6c3f6cfba", "value": 4 } }, "69841b98271941a4b64a0fdcc45dadbc": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "69c57b0bc0984df98a32190c28b48c30": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_2237c31d5dbd4256a0c68dd9a99fb727", "max": 1175, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_7ec65623806b4068bdcfe4fad4ff6d2e", "value": 1175 } }, "69d60456a5a5426494f73c533af8d353": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "6a680a9f47154568a8b247750ba20b8a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_a8c8fc9e7c344917a970344f5b6cc756", "placeholder": "", "style": "IPY_MODEL_37753a57a9f34662aa040ba2b022ca7c", "value": "100%" } }, "6b23b6f2b596468c8bcfd9ae0c80da30": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "6b9113db7e73426f81b33624fa9acb42": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "6bc2c116b79443a99a4784fc514f4060": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_e7a184e1299742728baaaad4e18f75de", "max": 116, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_0fcc103f12ba41db9c99dca74b341230", "value": 116 } }, "6ce941902c0c4510874bab1f91196b56": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_29ad188e695c48b5a50b535c94c6919a", "placeholder": "", "style": "IPY_MODEL_99a0601302d84eabaea0ec1e6f646f2e", "value": "Downloading: 100%" } }, "6cf212dafcd84da0b5e84a5f4899fb83": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_7fafbea798bd46cdbac84fe14eeeb8c1", "placeholder": "", "style": "IPY_MODEL_10f574b9abb74c18a093d93169cde138", "value": " 1.25k/1.25k [00:00<00:00, 33.5kB/s]" } }, "6d06ce56b55944cba9aaf28bd3b3e508": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_3fdbf86e812c4142b49ff80dbcb59057", "max": 206, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_a360fc81c930455f94d8d0dbebf1fff9", "value": 206 } }, "70d817adcee24f09a552c2331f3cdda1": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ButtonModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ButtonModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ButtonView", "button_style": "", "description": "Login", "disabled": false, "icon": "", "layout": "IPY_MODEL_b428cdfadaf74e4b96485f5ce78edd69", "style": "IPY_MODEL_f5767bdfda10449da6b0676263878762", "tooltip": "" } }, "70ec2a49a4014a6cbbb09d17d41f8bec": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_1d8d74399fef435c8ae04333f3916f69", "placeholder": "", "style": "IPY_MODEL_531829e7b8104892b96e3592f834b701", "value": "Downloading: 100%" } }, "7181d2a459094d6490042416a5223313": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_d897caeec6f742bea66e6a235c899939", "max": 90888945, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_0eaf6e5be53b4e4bba169ac3d9049c81", "value": 90888945 } }, "71a66efdc9ca44019ebdd09eef58e444": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_46281506e209402197db76d852f0b151", "IPY_MODEL_0b44804c6cbe42fa9ed29a5c21fc1a8e", "IPY_MODEL_488d70fb02aa420ba8c9cd3494c6d2ad" ], "layout": "IPY_MODEL_e7519bbf5b844685b414c6b4401b2f87" } }, "72b250bdd261446aa251e1b97c8b8162": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "72ca461fed84435bbd4f3b862ecacf91": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "72cc30e8927a41ec96219d8b23adc203": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_0873431a1b604aad8f57f47973d96bfe", "placeholder": "", "style": "IPY_MODEL_50422b4cb49946bdbde298a1ca7a4d82", "value": " 1/1 [00:00<00:00, 1.35it/s]" } }, "73acdd7b4eb14d2c9b0a74a5d7a388b9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "73b673eb01584887a9cc11e627256faa": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_12f542afbb2942fea0f4f9b1e6483983", "placeholder": "", "style": "IPY_MODEL_ed8f6bb5270d48489a7f8c2ae52f1ef4", "value": "Downloading: 100%" } }, "76d451e9a23047ee99e25b035ed24403": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "771e9137c3a14b26a8e73bc04f3dbce7": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_ab34ef3f75cf4adc82833cdad3e3f1f9", "placeholder": "", "style": "IPY_MODEL_e2a1be70b9e84bf391dfbfca517154f5", "value": " 4175/4175 [00:00<00:00, 5218.67ex/s]" } }, "77a5a674eec24e8ebb4fc367997dcd60": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_e06e23bd2688499ca8eb1431ab1f1086", "IPY_MODEL_90a5d302b48f44f1ae2a7f6fb5233035", "IPY_MODEL_4d6fcf9256134cb68791857d91c490b6" ], "layout": "IPY_MODEL_fd771220aae24e76a46050c0a26e9f66" } }, "782124b6daf4443a824160a4c07c8eb9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "78ae8bc9c8b74e2d906c4005c4477aae": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "78b71d770f8243c1b30989663fb66e71": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "79383bd3a4c74ced87d51da0f883b7a2": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_3927e692b81944768512e244237c1665", "max": 350, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_5c8b97937175436e9c48bb86f81be1f6", "value": 350 } }, "796d93fd3fb149e79ba08eb23b1f81e4": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "79894a62c12b429496506551771196dd": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "7aa8a50643b84843bde029ff35ec2177": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "7b32fd2506cc4969a29bb19cc9cab3fc": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_24c90186cd684a1bb3018fbc4b59b1f6", "placeholder": "", "style": "IPY_MODEL_c27096439b8a4b73948a20024dd00376", "value": " 1/? [00:00<00:00, 9.92 tables/s]" } }, "7b5367ba8f9446079ca265fab7da645f": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "7d387dd5825046b7ac911642be2c9cd6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_fd8e9848b0844d80b5ad3962b20b2dde", "max": 39265, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_08faccbd3a6044a5922b4d9c52c4b39c", "value": 39265 } }, "7ddb2d401cbb4e14a085ba696ed31a5b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "7e883b1d93b74e26b8aee6677df9c58d": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "7ec65623806b4068bdcfe4fad4ff6d2e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "7eed9fff711f4c3a9c473cb751bcf8ab": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "7fafbea798bd46cdbac84fe14eeeb8c1": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "80d415bda86347cba39a1d0ed9b07f34": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_4221421373b94c5eba3b1ca1d696d3b1", "IPY_MODEL_9ab646e5c38c4f66be77fc9a20987e32", "IPY_MODEL_4e721950f34445aea7e8ffa74ebcd13f" ], "layout": "IPY_MODEL_9e32c3df1c054269b0df745bedb1fb85" } }, "81f7ee006a914cd49e1c5f28b0e16ed9": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "8277a1fa8fc64cf2abd4a5806b932715": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_574217f720f34d7c8bdc3a9518abf1b2", "placeholder": "", "style": "IPY_MODEL_7ddb2d401cbb4e14a085ba696ed31a5b", "value": " 232k/232k [00:00<00:00, 2.73MB/s]" } }, "8293a44938a24eeca7ce248747fe6591": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "83eb1c47e6d14d268e01dfb6bece0c14": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_19add75a4f69486aaf77e0f46a1d6d53", "IPY_MODEL_a18e0d64917344e5beca64253ed3c1a2", "IPY_MODEL_ef3a0a50d274468781b0441e691ddf7b" ], "layout": "IPY_MODEL_51b38fbfb6cd431990fdff1627734878" } }, "8485443f7a2e449bbf748278b971ec73": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "84aebdd4ddf74dc7996a44a1ae71eb57": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "84fa0cfa1ed841979ca99fe17ddf2197": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_f7e8f5dd9dc94230b1094448c13d0517", "IPY_MODEL_2cfcddbe21a94a509c63832f0df21694", "IPY_MODEL_771e9137c3a14b26a8e73bc04f3dbce7" ], "layout": "IPY_MODEL_a525e79af10d45aabb9f469fbd6351e7" } }, "8501399a02ac4c6db8e39932f20111f8": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "875fb41ac3274893b1a02098bc67e831": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "8a5a898a7a584c178bb774d99a790601": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "8acc6a366fce4d258568dfec4c82f2f9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_69841b98271941a4b64a0fdcc45dadbc", "max": 7, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_675b072220944bfa8b74d25437c2f0b1", "value": 7 } }, "8be00e4b45bf47ab825b99f70fe7cf30": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "8dc05c72e99e4969bba81db5e9d7fbfb": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "8de8c2ca79dc48b78fd85f87915ea7ec": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_c7ecbc2644aa41078ec45c50434a853b", "placeholder": "", "style": "IPY_MODEL_796d93fd3fb149e79ba08eb23b1f81e4", "value": " 10.6k/10.6k [00:00<00:00, 304kB/s]" } }, "8f524ec15d6446b9b84ca0576316e5c8": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_f26b9fc22684458588a4d4178cca23c5", "placeholder": "", "style": "IPY_MODEL_c2fb6bf5565b494fa07629404ba4fbd4", "value": " 190/190 [00:00<00:00, 5.68kB/s]" } }, "8fc2797a9f5a4ed39310dd5f0f356534": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_4c606befd6974d1aa76df56ce63b5373", "IPY_MODEL_3c5c453584804e70a903ea1e79b0f152", "IPY_MODEL_e40806367b634843934e80ee7f50518d" ], "layout": "IPY_MODEL_0e4e91b2020244ee9e159efded797d01" } }, "8fc4f8fe63674cf0889b066d21450348": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "9028b62043ca4735833de215ac2c905c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "90a5d302b48f44f1ae2a7f6fb5233035": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_bf06e4360e334cad9010895f8a03c0ff", "max": 349, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_fe9d25320f574ebd92ce1cc3c8e5002b", "value": 349 } }, "95a963812d8d4bd0aada7ef926d62179": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "971e2965699d4b8e8e2fa0b05b3470fe": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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": "center", "align_self": null, "border": null, "bottom": null, "display": "flex", "flex": null, "flex_flow": "column", "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": "50%" } }, "97a7930f16fc44eaa2ac91d3f24974fc": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "97fd2521c4b44577bc1413f589415a87": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_ff002ce173474d9cb255187e63ea31b9", "placeholder": "", "style": "IPY_MODEL_84aebdd4ddf74dc7996a44a1ae71eb57", "value": "" } }, "985a4e94a6624db497fb549ff81f3c2e": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "98ed677c85db4b97914f81c5022ee8ab": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_66de8de2aef44b10b958bbf6088c1c6b", "placeholder": "", "style": "IPY_MODEL_52b7ab3ba9d742eca283a6c4bf54b50d", "value": " 1/1 [00:00<00:00, 23.61it/s]" } }, "99a0601302d84eabaea0ec1e6f646f2e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "99bf8c34c9304d22929d7651ae20bfcc": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "99e8f5a24f954c4e950e7bdb7e0d1af6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_b7f39a86824b403da2a24973ff2e0f6d", "max": 629, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_2f6781c7ba1845379a54323def5e0cd6", "value": 629 } }, "9ab646e5c38c4f66be77fc9a20987e32": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_1865c2f13e614a1ea530291341ba1c87", "max": 7, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_19784c6a139a46ea85d43ee37ba1b03b", "value": 7 } }, "9ac9a69af1894aff91b59ef8c11c29a2": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_49c47f7875b24c2ba58d8e45bed8dc92", "IPY_MODEL_6bc2c116b79443a99a4784fc514f4060", "IPY_MODEL_d9c04cf4fbe949d19fed6878a952cb0a" ], "layout": "IPY_MODEL_37ab3fe1c7ef44e6b675d227a7710b3e" } }, "9dcf141e2fb84974b2af942ed2301d61": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_ab76a44666af4328a50f3a0346f9929d", "placeholder": "", "style": "IPY_MODEL_cb16b18d070f4c3780787b3c35292e7d", "value": " 90.9M/90.9M [00:02<00:00, 41.6MB/s]" } }, "9e0cf398672d42199c13d14ad653708a": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "9e32c3df1c054269b0df745bedb1fb85": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "9e807026f5bf452da8344be4588969d7": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "9e9f0615ff274adf9ed7f1853d9042c3": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "a082d62711f44a378554e0199db7f745": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_dfa4d01f439447c7ae394df26f11050b", "placeholder": "", "style": "IPY_MODEL_e6684be3a9b841759bd87e418889df3c", "value": "Downloading: 100%" } }, "a0bd18d44b50491ea731b7d8ab75acc4": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "a114f7f350704e85b86c75117e5d9702": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "a18e0d64917344e5beca64253ed3c1a2": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_181ed30c9e464c7c9ec1dc36f779c766", "max": 261, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_c0f222fdaef14cbe82c15a168a3a51c6", "value": 261 } }, "a1fbd1a7e3bb4d77b023322019b99c63": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "a2d1bdee854d47ddb32183ba141ab55d": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "VBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "VBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "VBoxView", "box_style": "", "children": [ "IPY_MODEL_b2562460de0543a9be20e043c148a7c9", "IPY_MODEL_3863ff3758874c60b2b0bc9f54f09146", "IPY_MODEL_70d817adcee24f09a552c2331f3cdda1", "IPY_MODEL_e1dcca41db4a40d897ccfb1eb7f2a010" ], "layout": "IPY_MODEL_971e2965699d4b8e8e2fa0b05b3470fe" } }, "a34afb994d24462ea6d707100fe6dba9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "a360fc81c930455f94d8d0dbebf1fff9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "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": "" } }, "a3b867882afb4657bab489771024b17f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_3aa80c9ca81f46f097be6bbb2125fa6a", "max": 1253, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_ff563b21736441a5b58e789fcba39ac6", "value": 1253 } }, "a443f29df3f9442e8abfde2cfdc03cf5": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "a525e79af10d45aabb9f469fbd6351e7": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "a603ff421abc4d3ebd3efdc6db0b7a2c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "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": "" } }, "a7c406fd736a4565ad7e0ba60be99a20": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_8be00e4b45bf47ab825b99f70fe7cf30", "placeholder": "", "style": "IPY_MODEL_26626c55e36248829c67b10de605bea9", "value": "100%" } }, "a8c8fc9e7c344917a970344f5b6cc756": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "aa45b55c1f324102aa74e920c240e2f9": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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": "20px" } }, "aaf9a83c0b494806a37dcc73737a2289": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "ab34ef3f75cf4adc82833cdad3e3f1f9": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "ab76a44666af4328a50f3a0346f9929d": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "ad0337420f1f4671b875e87a15176452": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "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_7e883b1d93b74e26b8aee6677df9c58d", "max": 6850, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_152207bbb68345d697cb66b40f02c8f3", "value": 6850 } }, "ad63f7dfb31d4c3fb4c0ea73cab19917": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_4a142d8f316a49aca701850ed01e3b79", "IPY_MODEL_68c5bb5404724775885eac217430af35", "IPY_MODEL_14004f118a1641528f9427d3c01d841e" ], "layout": "IPY_MODEL_d473f6ab480542f4a1cc5cb622a54ad7" } }, "adc518ea92664d9698c5636354cb38c0": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "b0a08dc1a7ae40aaa3c5d10e5ac6b711": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "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_73b673eb01584887a9cc11e627256faa", "IPY_MODEL_99e8f5a24f954c4e950e7bdb7e0d1af6", "IPY_MODEL_6240285db4444d648b6dadec3dbf76c4" ], "layout": "IPY_MODEL_2aa31aa07c574edcb2b94503d955d74b" } }, "b10a14bf8f794207ad479fed732d6c98": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_681789d7e59249e8b81461af2629d117", "placeholder": "", "style": "IPY_MODEL_416e33981f8f4d9f9d493c95cac8283c", "value": " 350/350 [00:00<00:00, 10.1kB/s]" } }, "b127dc590a344563a33f2a7586bb8186": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "b2189cace5e8404f968040d69fc089a7": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "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 } }, "b2562460de0543a9be20e043c148a7c9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "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_8293a44938a24eeca7ce248747fe6591", "placeholder": "", "style": "IPY_MODEL_3018252f61f74baba9d2e466299b14c9", "value": "