diff --git "a/train.ipynb" "b/train.ipynb" --- "a/train.ipynb" +++ "b/train.ipynb" @@ -2,13 +2,14 @@ "cells": [ { "cell_type": "markdown", + "metadata": { + "id": "HjS1m1tE1Thl" + }, "source": [ "# __Девопсная домашка по трансформерам__\n", "\n", "## __Описание__\n", "\n", - "![img](https://d35w6hwqhdq0in.cloudfront.net/521712556725591dcacec5bbdb32e047.png)\n", - "\n", "Ваш главный квест на эту домашку - сделать свой простой сервис на трансформерах. Вот прям целый сервис: начиная с данных и заканчивая графическим интерфейсом где-то в интернете. Ваш сервис может решать либо одну из предложенных ниже задач, либо любую другую (что-то более дорогое лично вам).\n", "\n", "__Стандартная задача: классификатор статей.__ Нужно построить сервис который принимает название статьи и её abstract, и выдаёт наиболее вероятную тематику статьи: скажем, физика, биология или computer science. В интерфейсе должно быть можно ввести отдельно abstract, отдельно название -- и увидеть топ-95%* тематик, отсортированных по убыванию вероятности. Если abstract не ввели, нужно классифицировать статью только по названию. Ниже вас ждут инструкции и данные именно для этой задачи.\n", @@ -148,16 +149,21 @@ "__Как будет оцениваться:__\n", "\n", "Код не будет отдельно проверяться как часть задания, поэтому пишите как хотите, однако - в спорных ситуациях мы оставляем за собой право проверить ваш код, за чем могут последовать потенциальные снижения баллов при любых нарушениях.\n" - ], - "metadata": { - "id": "HjS1m1tE1Thl" - } + ] }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 9, "metadata": { - "id": "OKn_gfwpS5EY" + "execution": { + "iopub.execute_input": "2025-04-08T16:38:04.503049Z", + "iopub.status.busy": "2025-04-08T16:38:04.502631Z", + "iopub.status.idle": "2025-04-08T16:38:09.781191Z", + "shell.execute_reply": "2025-04-08T16:38:09.779839Z", + "shell.execute_reply.started": "2025-04-08T16:38:04.503025Z" + }, + "id": "OKn_gfwpS5EY", + "tags": [] }, "outputs": [], "source": [ @@ -167,8 +173,8 @@ "from sklearn.feature_extraction.text import TfidfVectorizer\n", "from sklearn.linear_model import LogisticRegression\n", "from sklearn.metrics import precision_score\n", + "from sklearn.utils.class_weight import compute_class_weight\n", "import torch\n", - "import ast\n", "from transformers import DistilBertTokenizer, DistilBertForSequenceClassification, Trainer, TrainingArguments" ] }, @@ -183,9 +189,17 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 10, "metadata": { - "id": "WelaLk5zTFvP" + "execution": { + "iopub.execute_input": "2025-04-08T16:38:09.783193Z", + "iopub.status.busy": "2025-04-08T16:38:09.782539Z", + "iopub.status.idle": "2025-04-08T16:38:09.786653Z", + "shell.execute_reply": "2025-04-08T16:38:09.786050Z", + "shell.execute_reply.started": "2025-04-08T16:38:09.783167Z" + }, + "id": "WelaLk5zTFvP", + "tags": [] }, "outputs": [], "source": [ @@ -197,33 +211,54 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 11, "metadata": { - "id": "jxQ7reE0S7l4" + "execution": { + "iopub.execute_input": "2025-04-08T16:38:09.787781Z", + "iopub.status.busy": "2025-04-08T16:38:09.787522Z", + "iopub.status.idle": "2025-04-08T16:38:11.161895Z", + "shell.execute_reply": "2025-04-08T16:38:11.161064Z", + "shell.execute_reply.started": "2025-04-08T16:38:09.787761Z" + }, + "id": "jxQ7reE0S7l4", + "tags": [] }, "outputs": [], "source": [ - "df = pd.read_json(\"arxivData.json\")\n", + "df = pd.read_parquet(\"data.parquet\")\n", "df = df[['title', 'summary', 'tag']]\n", "df['tag'] = df['tag'].apply(extract_main_category)\n", - "\n", "df['text'] = df['title'] + ' ' + df['summary']" ] }, { - "cell_type": "code", + "cell_type": "markdown", + "metadata": { + "id": "aUAe90XHgTGg" + }, "source": [ - "df['tag'].value_counts()" - ], + "Посмотрю на распределение таргетов" + ] + }, + { + "cell_type": "code", + "execution_count": 12, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 743 }, + "execution": { + "iopub.execute_input": "2025-04-08T16:38:11.163765Z", + "iopub.status.busy": "2025-04-08T16:38:11.163464Z", + "iopub.status.idle": "2025-04-08T16:38:11.175870Z", + "shell.execute_reply": "2025-04-08T16:38:11.175327Z", + "shell.execute_reply.started": "2025-04-08T16:38:11.163741Z" + }, "id": "rQxazH-cz89W", - "outputId": "6ba13242-6df0-4466-edf6-33364782b9c2" + "outputId": "6fa953a4-0283-4c07-bd2b-03893909a647", + "tags": [] }, - "execution_count": 14, "outputs": [ { "output_type": "execute_result", @@ -365,80 +400,81 @@ ] }, "metadata": {}, - "execution_count": 14 + "execution_count": 12 } + ], + "source": [ + "df['tag'].value_counts()" ] }, { "cell_type": "markdown", - "source": [ - "очень большой дисбаланс классов - поправлю" - ], "metadata": { "id": "oFOZcbOX3G4m" - } + }, + "source": [ + "Есть ощутимый дисбаланс классов - нужно будет учесть это при обучении (в лоссе). На этом этапе объединю все редкие классы в один" + ] }, { "cell_type": "code", - "source": [ - "class_counts = df['tag'].value_counts()\n", - "classes_to_keep = class_counts[class_counts >= 10].index\n", - "df = df[df['tag'].isin(classes_to_keep)]\n", - "\n", - "class_counts = df['tag'].value_counts()\n", - "resampled_list = []\n", - "\n", - "for tag, group in df.groupby('tag'):\n", - " n = len(group)\n", - " if tag == 'cs':\n", - " group_resampled = group.sample(n=5000, random_state=26)\n", - " elif n < 100:\n", - " group_resampled = group.sample(n=100, replace=True, random_state=26)\n", - " else:\n", - " group_resampled = group.copy()\n", - "\n", - " resampled_list.append(group_resampled)\n", - "\n", - "df = pd.concat(resampled_list).reset_index(drop=True)" - ], + "execution_count": 13, "metadata": { - "id": "wIxUOEOKz_0U" + "execution": { + "iopub.execute_input": "2025-04-08T16:38:11.177011Z", + "iopub.status.busy": "2025-04-08T16:38:11.176731Z", + "iopub.status.idle": "2025-04-08T16:38:11.185683Z", + "shell.execute_reply": "2025-04-08T16:38:11.185103Z", + "shell.execute_reply.started": "2025-04-08T16:38:11.176989Z" + }, + "id": "wIxUOEOKz_0U", + "tags": [] }, - "execution_count": 15, - "outputs": [] + "outputs": [], + "source": [ + "class_counts = df['tag'].value_counts()\n", + "classes_to_merge = class_counts[class_counts < 10].index\n", + "df.loc[df['tag'].isin(classes_to_merge), 'tag'] = ':)'" + ] }, { "cell_type": "code", - "source": [ - "df['tag'].value_counts()" - ], + "execution_count": 14, "metadata": { "colab": { "base_uri": "https://localhost:8080/", - "height": 492 + "height": 523 + }, + "execution": { + "iopub.execute_input": "2025-04-08T16:38:11.187086Z", + "iopub.status.busy": "2025-04-08T16:38:11.186627Z", + "iopub.status.idle": "2025-04-08T16:38:11.195550Z", + "shell.execute_reply": "2025-04-08T16:38:11.194989Z", + "shell.execute_reply.started": "2025-04-08T16:38:11.187054Z" }, "id": "wn8LBoi40B5e", - "outputId": "36b13d08-072b-4788-cd29-fdeb312a5f5a" + "outputId": "68cee6bb-6260-44cb-a73b-c5e51227b50e", + "tags": [] }, - "execution_count": 16, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "tag\n", - "cs 5000\n", - "stat 4782\n", - "math 612\n", - "q-bio 320\n", - "physics 216\n", - "cmp-lg 110\n", - "cond-mat 100\n", - "astro-ph 100\n", - "nlin 100\n", - "eess 100\n", - "q-fin 100\n", - "quant-ph 100\n", + "cs 34597\n", + "stat 4782\n", + "math 612\n", + "q-bio 320\n", + "physics 216\n", + "cmp-lg 110\n", + "eess 75\n", + "quant-ph 66\n", + "cond-mat 65\n", + "astro-ph 59\n", + "nlin 47\n", + "q-fin 30\n", + ":) 21\n", "Name: count, dtype: int64" ], "text/html": [ @@ -470,7 +506,7 @@ " \n", " \n", " cs\n", - " 5000\n", + " 34597\n", " \n", " \n", " stat\n", @@ -493,28 +529,32 @@ " 110\n", " \n", " \n", + " eess\n", + " 75\n", + " \n", + " \n", + " quant-ph\n", + " 66\n", + " \n", + " \n", " cond-mat\n", - " 100\n", + " 65\n", " \n", " \n", " astro-ph\n", - " 100\n", + " 59\n", " \n", " \n", " nlin\n", - " 100\n", - " \n", - " \n", - " eess\n", - " 100\n", + " 47\n", " \n", " \n", " q-fin\n", - " 100\n", + " 30\n", " \n", " \n", - " quant-ph\n", - " 100\n", + " :)\n", + " 21\n", " \n", " \n", "\n", @@ -522,21 +562,59 @@ ] }, "metadata": {}, - "execution_count": 16 + "execution_count": 14 } + ], + "source": [ + "df['tag'].value_counts()" ] }, { "cell_type": "code", + "execution_count": 15, + "metadata": { + "execution": { + "iopub.execute_input": "2025-04-08T16:49:10.200430Z", + "iopub.status.busy": "2025-04-08T16:49:10.200018Z", + "iopub.status.idle": "2025-04-08T16:49:10.206017Z", + "shell.execute_reply": "2025-04-08T16:49:10.205358Z", + "shell.execute_reply.started": "2025-04-08T16:49:10.200406Z" + }, + "tags": [], + "id": "ZpOCCcGVgTGj" + }, + "outputs": [], "source": [ - "train_df, temp_df = train_test_split(df, test_size=0.3, random_state=26)\n", - "val_df, test_df = train_test_split(temp_df, test_size=0.33, random_state=26)" - ], + "num_classes = len(df['tag'].unique())" + ] + }, + { + "cell_type": "markdown", "metadata": { - "id": "MHvx9TbX1AHe" + "id": "Y-8KfDg5gTGk" }, - "execution_count": 17, - "outputs": [] + "source": [ + "Рука не поднимается откусывать часть на тест, а на валидацию - тем более. Обучаться буду просто по эпохам, тест сделаю поменьше и лучше руками отвалидирую итоговую модель" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "execution": { + "iopub.execute_input": "2025-04-08T16:38:11.196783Z", + "iopub.status.busy": "2025-04-08T16:38:11.196508Z", + "iopub.status.idle": "2025-04-08T16:38:11.246887Z", + "shell.execute_reply": "2025-04-08T16:38:11.246341Z", + "shell.execute_reply.started": "2025-04-08T16:38:11.196762Z" + }, + "id": "MHvx9TbX1AHe", + "tags": [] + }, + "outputs": [], + "source": [ + "train_df, test_df = train_test_split(df, test_size=0.15, random_state=26, stratify=df['tag'])" + ] }, { "cell_type": "markdown", @@ -544,61 +622,172 @@ "id": "zEXYZ5dPTTOh" }, "source": [ - "## Baseline\n", - "TF-IDF + LogReg (классика)" + "## Baseline: TF-IDF + LogReg (классика)\n", + "\n", + "также не забываю учесть дисбаланс классов" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "execution": { + "iopub.execute_input": "2025-04-08T16:58:27.215791Z", + "iopub.status.busy": "2025-04-08T16:58:27.215328Z", + "iopub.status.idle": "2025-04-08T16:58:31.103917Z", + "shell.execute_reply": "2025-04-08T16:58:31.102885Z", + "shell.execute_reply.started": "2025-04-08T16:58:27.215765Z" + }, + "tags": [], + "id": "ocREmLglgTGk" + }, + "outputs": [], + "source": [ + "vectorizer = TfidfVectorizer(max_features=1000)\n", + "\n", + "X_train, y_train = vectorizer.fit_transform(train_df['text']), train_df['tag']\n", + "X_test, y_test = vectorizer.transform(test_df['text']), test_df['tag']" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "execution": { + "iopub.execute_input": "2025-04-08T16:41:20.930199Z", + "iopub.status.busy": "2025-04-08T16:41:20.929875Z", + "iopub.status.idle": "2025-04-08T16:43:34.374654Z", + "shell.execute_reply": "2025-04-08T16:43:34.373963Z", + "shell.execute_reply.started": "2025-04-08T16:41:20.930177Z" + }, + "id": "hhc1p0RhfJ9Y", + "tags": [], + "outputId": "30988d23-e5a0-4210-841a-666892ab1bde" + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/app-root/lib64/python3.8/site-packages/sklearn/linear_model/_sag.py:350: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n", + " warnings.warn(\n" + ] + }, + { + "data": { + "text/html": [ + "
LogisticRegression(class_weight='balanced', penalty='l1', solver='saga')
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "LogisticRegression(class_weight='balanced', penalty='l1', solver='saga')" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "lr_model = LogisticRegression(penalty='l1', solver='saga', class_weight='balanced')\n", + "lr_model.fit(X_train, y_train)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "axe7HeJJgTGl" + }, + "source": [ + "Для удобства и подсчёта метрики заведу маппинги и веса классов" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "execution": { + "iopub.execute_input": "2025-04-08T17:00:24.569272Z", + "iopub.status.busy": "2025-04-08T17:00:24.568849Z", + "iopub.status.idle": "2025-04-08T17:00:24.616599Z", + "shell.execute_reply": "2025-04-08T17:00:24.615924Z", + "shell.execute_reply.started": "2025-04-08T17:00:24.569244Z" + }, + "tags": [], + "id": "Sd5j9kYcgTGl" + }, + "outputs": [], + "source": [ + "class_to_idx_lr = {lr_model.classes_[i]: i for i in range(num_classes)}\n", + "idx_to_class_lr = {i: lr_model.classes_[i] for i in range(num_classes)}\n", + "\n", + "weights = [1 / df[df['tag'] == idx_to_class_lr[i]].shape[0] for i in range(num_classes)]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { - "id": "P9T-MfZPrsSO" + "execution": { + "iopub.execute_input": "2025-04-08T17:01:28.800179Z", + "iopub.status.busy": "2025-04-08T17:01:28.799751Z", + "iopub.status.idle": "2025-04-08T17:01:28.805213Z", + "shell.execute_reply": "2025-04-08T17:01:28.804557Z", + "shell.execute_reply.started": "2025-04-08T17:01:28.800154Z" + }, + "tags": [], + "id": "bnjB9e8XgTGm" }, "outputs": [], "source": [ - "def precision_at_95_logreg(y_true, y_pred_probs, classes):\n", - " precisions = []\n", + "def metric(y_true, y_pred, labels):\n", + " positive_answers_per_class_amount = [0] * num_classes # для каждого класса кол-во попаданий таргета в топ-95%\n", " for i in range(len(y_true)):\n", - " probs = y_pred_probs[i]\n", + " probs = y_pred[i]\n", " sorted_indices = np.argsort(probs)[::-1]\n", " cumulative = 0\n", - " top_classes = []\n", + " top_tags = []\n", " for idx in sorted_indices:\n", " cumulative += probs[idx]\n", - " top_classes.append(idx)\n", + " top_tags.append(idx)\n", " if cumulative >= 0.95:\n", " break\n", - " top_classes = [classes[j] for j in top_classes]\n", - " precisions.append(1 if y_true.iloc[i] in top_classes else 0)\n", + " top_tags = [labels[j] for j in top_tags]\n", + " true_tag = y_true.iloc[i]\n", + " if true_tag in top_tags:\n", + " positive_answers_per_class_amount[class_to_idx_lr[true_tag]] += 1\n", + "\n", + " precision = np.dot(positive_answers_per_class_amount, weights)\n", "\n", - " return np.mean(precisions)" + " return precision" ] }, { "cell_type": "code", "execution_count": null, "metadata": { - "id": "hhc1p0RhfJ9Y" + "execution": { + "iopub.execute_input": "2025-04-08T17:01:28.925889Z", + "iopub.status.busy": "2025-04-08T17:01:28.925532Z", + "iopub.status.idle": "2025-04-08T17:01:28.986010Z", + "shell.execute_reply": "2025-04-08T17:01:28.985402Z", + "shell.execute_reply.started": "2025-04-08T17:01:28.925867Z" + }, + "tags": [], + "id": "YDKSjq_kgTGm", + "outputId": "90de8edf-3649-46b3-cfc2-2f3bfd2a93f6" }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "TF-IDF + LogReg balanced precision@95%: 0.749\n" + ] + } + ], "source": [ - "vectorizer = TfidfVectorizer(max_features=100)\n", - "\n", - "full_train_df = pd.concat([train_df, val_df])\n", - "X_train = vectorizer.fit_transform(full_train_df['text'])\n", - "X_test = vectorizer.transform(test_df['text'])\n", - "\n", - "model_lr = LogisticRegression(\n", - " penalty='l1',\n", - " solver='saga',\n", - " max_iter=500,\n", - " tol=1e-3,\n", - " n_jobs=-1\n", - ")\n", - "model_lr.fit(X_train, full_train_df['tag'])\n", - "\n", - "preds_lr = model_lr.predict_proba(X_test)\n", - "print(f\"TF-IDF + LogReg Precision@95%: {precision_at_95_logreg(test_df['tag'], preds_lr, model_lr.classes_):.3f}\")" + "preds_lr = lr_model.predict_proba(X_test)\n", + "print(f\"TF-IDF + LogReg balanced precision@95%: {metric(test_df['tag'], preds_lr, lr_model.classes_):.3f}\")" ] }, { @@ -607,80 +796,91 @@ "id": "DLSO0k3qUttY" }, "source": [ - "## Distilbert" + "## Distilbert\n", + "Здесь использую взвешенный по классам лосс и добавлю щепотку переобучения, считаю после каждой эпохи лосс на тестовом датасете" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 17, "metadata": { "colab": { "base_uri": "https://localhost:8080/", - "height": 483, + "height": 376, "referenced_widgets": [ - "778cbabe7ff64b4295a087cd6e5b82f9", - "d72647b37c53409e99db52a27cd9b4c5", - "0b6c06fc35194a019e41cc3d9d7b8882", - "92c526e6378d4069a7c19f0d5b4290a4", - "b4182eca94604aa89f72f43ff01c93d3", - "b5cd116d5e0d46d9ac20241e26321463", - "a1c6a59cc7cb4034bc0332314c9a836a", - "d82a84facc1b4e5b872e1348105ee7d4", - "2c9f11df4e2345e8b4fcfc8bd82df5a3", - "f1ac6c2d81d6464cba06139c68f0c94b", - "9eefb737986849b5853f9a9fd40aa825", - "deb027f0837145908304584ec5ebdc58", - "e2d677ea33bb4ba4aebbfedb29d51245", - "e21fc646b65a49819cd9ceefd6b7b7b3", - "710ebae67249472ebaaea0c23dabeed3", - "55ad2c9b915f400dbd42f8662b650091", - "823c419f05694ab09c1f7a441d71a4ce", - "54d2d576fa1e43c69b4ecd24861add6c", - "026179393e4b4aaeae77e8f986bb9849", - "b50b646b22414d1db47c99347fa5917b", - "0daa6fcf9e7649beab0d9e5e3ad27ea3", - "44bb79ed793541908f8f996bc5f1fb23", - "b41ae356749f47edbd69f6a94990895f", - "528d368df078414d86e47f2809d7ef3d", - "2901572228224495b6be88871c291302", - "89224e016fb94b6b8e596d0b28fcb3d0", - "a51ec9cc60af44c2ac2daafc229b4eee", - "18fd9a8fc2204e17a4f5a1abd2f03296", - "ab56e2b7ce644e0692afb90cb4aa52fb", - "0ae4198a0702473c9ba6f2ff9ce276fe", - "9686bd15653a4d8a94688626ce413ace", - "9f90e58577ff4dc6962744ab88bad9d5", - "3a1a216b8aaa4343aa7b6b64b7296b48", - "d838db846624475a95463af753c2a6a3", - "8ffcd9e636a24bd9b65ff4a4073fd322", - "cbba30132f6c4364b159fe69f69fadec", - "4f7f6a7c24e74a9cadc435ee1fe154cd", - "3dad66e997df4e97bcc514a507ec0ead", - "5f77c8a0f91344a5826d1c44b7d402ec", - "4143046c707b4e0184be6924112c6caf", - "b1acef2acaf54504bb1c9b9cf7b6f79e", - "2831665d979149179aa6d99760926013", - "32282ec20fcc426fb3f1e922f1f30aee", - "a8438d276f934f63be2eb97ccdb56ee1", - "a06b4f5907fd43f0a1bdad0ea1c0a62c", - "59d34ff795f944aab54ddc61b829b937", - "8d19126d5e1b47ac91d5014fdaf97359", - "cdbfa8154fe7454e86ecc4ec5e6584be", - "7a5157ebcd17476dbcd6857be210708d", - "ed7de76cc2a943378c74c7343b39937b", - "45169cd56bb24509a264866c90c42202", - "5076c95d456d4bce98cec02eea11c6ac", - "63293dc91c944033951a697035090829", - "89423f3a99b84dbfa3d0fe728df2aee2", - "8734dba89564434b84ae54c99efaa7f1" + "a84ec850e42a45b0a4a7a87800ede268", + "c12508bddd1543449f834d41b413426d", + "4291c1f1a11e4a48878affcc234faa87", + "a6c07eb703c94b25a41306cafb364c31", + "b622bb5aaf6447aa87be6907ce2b2d4e", + "8609ab94160e491bb994ff987b2d8fbc", + "73b156ed04554f2a81ff6a528f1c97c0", + "a3bc75e8cbfd4630a83a6088f75239ac", + "615d6fd52b3f43e1bbc45eb53bfe0ad7", + "de943c53880f4f3ba77bd594a4ad87bf", + "4e631f3e10d24699bb51c6f8f9843a5d", + "698488c9c8854f7dbebfea7ab2d7c291", + "f5a7b6f95da54c90ac8860be963e52bd", + "90c70b258b24430a906c88ebc64b5231", + "61a0f825e6344eff8ba802fa80103ccb", + "fb7c892151c049328d2d9fedcb6f41b7", + "40338ce6822b427799638dcd30b6e141", + "0803738966ad429da69c32dbedbdbc03", + "11379b7d536d4a948fe47751de456f9b", + "af9391c4b1bc439a8d4ff0276be5d315", + "bec5c7a1bae0480f8a49d3f56b2506eb", + "d13b6193d01c4307b9b3d89be7e0b8cf", + "4e229143da894ac7be8ddff37144bec8", + "033a5fcee80a46619f2dada013a96f59", + "b7d0fa89b6cc4e3a9f7550bfc7b94dfb", + "7a77efa8b96c406cbd0ca16b457f048b", + "2cfc6e9d88244aab9def1cb6764e7e0d", + "3421d4ff74214c0081f77aa092ed3f7b", + "d989e092a6344bfa8246f8bf846b54b1", + "69ec8d01ed27473c8f813c859b9946a8", + "2828fbc07c90495380412cdafd66a265", + "14d000a6673f4a83b1cfea274512ccef", + "30a26a11d9724fd2bb90a8ac3a80b64e", + "c2f4aa4074bd44c89d5a30ca672fa8f9", + "24f8549ca034493392fbf35ce6b5d3b2", + "bd3f9196c76e49ee967f30bae35c8b18", + "a27a26bbf9fc4f688716bb2aed879a12", + "0792befbe6c743f69c88408498eafc32", + "c97130a925a44468b22d0c6ab3cac6e9", + "b956c28f53434fad9fcfdb65a7c8a303", + "eefd0b1b319a4e75b0ac3a75fb4e7f38", + "0d6793013fa2469191d109529bc9223d", + "8d89cb74b480405688b10b6578fea4bd", + "1ce96b9a31e342edaa9c40304e65b73b", + "c4c34fd4e65b44ca8837c359e2adfef5", + "be28f610644e4902ad22ba61c8e8b294", + "a82c407c525f493cae6caf2ecab38eec", + "9a616045cdb14b1eb4cc7987ba7a1ebe", + "f5ce00f8e11c4834970d38bb7a74bff7", + "10e1bbfa8acb454cbe44f57232af0dcc", + "57f70f785e3148dda70d77386ea98c61", + "555bb9a9df7f4abe8f811b9ba269565f", + "5f93e9d3639a41e08f132fc6d9612b8d", + "e2842507f92f4f4d9b44cd8eee193f52", + "c7d47c9fa5bc4b3ba9ddd9da9fa57550" ] }, - "collapsed": true, + "execution": { + "iopub.execute_input": "2025-04-08T17:01:37.328625Z", + "iopub.status.busy": "2025-04-08T17:01:37.328111Z", + "iopub.status.idle": "2025-04-08T17:01:37.566858Z", + "shell.execute_reply": "2025-04-08T17:01:37.565994Z", + "shell.execute_reply.started": "2025-04-08T17:01:37.328601Z" + }, "id": "HIiBGC7qPXRx", - "outputId": "1be70e64-c975-4505-8ad1-d953c6a2ac65" + "outputId": "c35255c3-3834-497a-97a6-435626e26303", + "tags": [] }, "outputs": [ { + "metadata": { + "tags": null + }, "name": "stderr", "output_type": "stream", "text": [ @@ -695,7 +895,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "778cbabe7ff64b4295a087cd6e5b82f9", + "model_id": "a84ec850e42a45b0a4a7a87800ede268", "version_major": 2, "version_minor": 0 }, @@ -709,7 +909,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "deb027f0837145908304584ec5ebdc58", + "model_id": "698488c9c8854f7dbebfea7ab2d7c291", "version_major": 2, "version_minor": 0 }, @@ -723,7 +923,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "b41ae356749f47edbd69f6a94990895f", + "model_id": "4e229143da894ac7be8ddff37144bec8", "version_major": 2, "version_minor": 0 }, @@ -737,7 +937,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "d838db846624475a95463af753c2a6a3", + "model_id": "c2f4aa4074bd44c89d5a30ca672fa8f9", "version_major": 2, "version_minor": 0 }, @@ -749,6 +949,9 @@ "output_type": "display_data" }, { + "metadata": { + "tags": null + }, "name": "stderr", "output_type": "stream", "text": [ @@ -759,7 +962,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "a06b4f5907fd43f0a1bdad0ea1c0a62c", + "model_id": "c4c34fd4e65b44ca8837c359e2adfef5", "version_major": 2, "version_minor": 0 }, @@ -771,6 +974,9 @@ "output_type": "display_data" }, { + "metadata": { + "tags": null + }, "name": "stderr", "output_type": "stream", "text": [ @@ -794,12 +1000,6 @@ " padding=True,\n", " max_length=512\n", ")\n", - "val_encodings = tokenizer(\n", - " val_df['text'].tolist(),\n", - " truncation=True,\n", - " padding=True,\n", - " max_length=512\n", - ")\n", "test_encodings = tokenizer(\n", " test_df['text'].tolist(),\n", " truncation=True,\n", @@ -826,17 +1026,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 18, "metadata": { "colab": { "base_uri": "https://localhost:8080/", - "height": 467 + "height": 545 }, "id": "c67QjfrxVjZ8", - "outputId": "66d3203a-e42f-49d7-d9ed-9240e5eca2e9" + "outputId": "ed38d123-5772-46d6-e3ab-87eedfcbaf72" }, "outputs": [ { + "metadata": { + "tags": null + }, "name": "stderr", "output_type": "stream", "text": [ @@ -885,26 +1088,15 @@ "output_type": "display_data" }, { + "metadata": { + "tags": null + }, "name": "stderr", "output_type": "stream", "text": [ "\u001b[34m\u001b[1mwandb\u001b[0m: Logging into wandb.ai. (Learn how to deploy a W&B server locally: https://wandb.me/wandb-server)\n", "\u001b[34m\u001b[1mwandb\u001b[0m: You can find your API key in your browser here: https://wandb.ai/authorize\n", - "wandb: Paste an API key from your profile and hit enter:" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - " ··········\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "\u001b[34m\u001b[1mwandb\u001b[0m: \u001b[33mWARNING\u001b[0m If you're specifying your api key in code, ensure this code is not shared publicly.\n", + "wandb: Paste an API key from your profile and hit enter:\u001b[34m\u001b[1mwandb\u001b[0m: \u001b[33mWARNING\u001b[0m If you're specifying your api key in code, ensure this code is not shared publicly.\n", "\u001b[34m\u001b[1mwandb\u001b[0m: \u001b[33mWARNING\u001b[0m Consider setting the WANDB_API_KEY environment variable, or running `wandb login` from the command line.\n", "\u001b[34m\u001b[1mwandb\u001b[0m: No netrc file found, creating one.\n", "\u001b[34m\u001b[1mwandb\u001b[0m: Appending key for api.wandb.ai to your netrc file: /root/.netrc\n", @@ -926,7 +1118,7 @@ { "data": { "text/html": [ - "Run data is saved locally in /content/wandb/run-20250407_230545-tlxilan7" + "Run data is saved locally in /content/wandb/run-20250408_192101-ksqmp5qp" ], "text/plain": [ "" @@ -938,7 +1130,7 @@ { "data": { "text/html": [ - "Syncing run ./results to Weights & Biases (docs)
" + "Syncing run ./results to Weights & Biases (docs)
" ], "text/plain": [ "" @@ -962,7 +1154,40 @@ { "data": { "text/html": [ - " View run at https://wandb.ai/fellafrom26-mipt/huggingface/runs/tlxilan7" + " View run at https://wandb.ai/fellafrom26-mipt/huggingface/runs/ksqmp5qp" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\n", + "
\n", + " \n", + " \n", + " [2066/3270 50:41 < 29:34, 0.68 it/s, Epoch 1.89/3]\n", + "
\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
EpochTraining LossValidation Loss
11.6509001.064278

" ], "text/plain": [ "" @@ -972,13 +1197,17 @@ "output_type": "display_data" }, { + "output_type": "display_data", "data": { + "text/plain": [ + "" + ], "text/html": [ "\n", "

\n", " \n", - " \n", - " [10764/10764 1:14:23, Epoch 3/3]\n", + " \n", + " [3270/3270 1:22:24, Epoch 3/3]\n", "
\n", " \n", " \n", @@ -991,44 +1220,58 @@ " \n", " \n", " \n", - " \n", - " \n", + " \n", + " \n", " \n", " \n", " \n", - " \n", - " \n", + " \n", + " \n", " \n", " \n", " \n", - " \n", - " \n", + " \n", + " \n", " \n", " \n", "
10.5063000.4492311.6509001.064278
20.4216000.4429061.2579000.991267
30.3572000.4802290.9154001.005465

" - ], - "text/plain": [ - "" ] }, - "metadata": {}, - "output_type": "display_data" + "metadata": {} } ], "source": [ + "labels = train_df['tag'].map(model.config.label2id).values\n", + "class_weights = compute_class_weight('balanced', classes=np.arange(num_classes), y=labels)\n", + "class_weights_tensor = torch.tensor(class_weights, dtype=torch.float32)\n", + "\n", + "class CustomTrainer(Trainer):\n", + " def __init__(self, class_weights, *args, **kwargs):\n", + " super().__init__(*args, **kwargs)\n", + " self.class_weights = class_weights.to(self.model.device)\n", + "\n", + " def compute_loss(self, model, inputs, return_outputs=False, **kwargs):\n", + " labels = inputs.get(\"labels\")\n", + " outputs = model(**inputs)\n", + " logits = outputs.logits\n", + " loss_fct = torch.nn.CrossEntropyLoss(weight=self.class_weights)\n", + " loss = loss_fct(logits, labels)\n", + " return (loss, outputs) if return_outputs else loss\n", + "\n", "training_args = TrainingArguments(\n", " output_dir='./results',\n", " num_train_epochs=3,\n", - " per_device_train_batch_size=8,\n", + " per_device_train_batch_size=32,\n", " eval_strategy='epoch',\n", - " logging_dir='./logs',\n", + " logging_steps=500\n", ")\n", "\n", - "trainer = Trainer(\n", + "trainer = CustomTrainer(\n", + " class_weights=class_weights_tensor,\n", " model=model,\n", " args=training_args,\n", " train_dataset=train_dataset,\n", - " eval_dataset=test_dataset,\n", + " eval_dataset=test_dataset\n", ")\n", "\n", "trainer.train()\n", @@ -1037,31 +1280,101 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/", - "height": 17 - }, - "id": "G9O_Nu5dDm0b", - "outputId": "f469101d-7c9f-41bc-f084-71e336f3bfce" - }, - "outputs": [ - { - "data": { - "text/html": [], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } + "source": [ + "def nn_metric(y_true, y_logits, model):\n", + " probs = torch.nn.functional.softmax(torch.tensor(y_logits), dim=-1).numpy()\n", + "\n", + " id2label = model.config.id2label\n", + " class_to_idx_bert = {v: k for k, v in model.config.label2id.items()}\n", + "\n", + " weights = [1/df[df['tag'] == cls].shape[0] for cls in class_to_idx_bert.values()]\n", + "\n", + " positive_answers = [0] * len(class_to_idx_bert)\n", + "\n", + " for i in range(len(y_true)):\n", + " current_probs = probs[i]\n", + " sorted_indices = np.argsort(current_probs)[::-1]\n", + "\n", + " cumulative = 0\n", + " top_tags = []\n", + " for idx in sorted_indices:\n", + " cumulative += current_probs[idx]\n", + " top_tags.append(id2label[idx])\n", + " if cumulative >= 0.95:\n", + " break\n", + "\n", + " true_tag = y_true.iloc[i]\n", + " if true_tag in top_tags:\n", + " positive_answers[model.config.label2id[true_tag]] += 1\n", + "\n", + " precision = np.dot(positive_answers, weights)\n", + " return precision" ], + "metadata": { + "id": "AyLSGCr9Ku97" + }, + "execution_count": 35, + "outputs": [] + }, + { + "cell_type": "code", + "source": [ + "preds = trainer.predict(test_dataset)" + ], + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 17 + }, + "id": "TDRCOtjw1S2y", + "outputId": "8cea69d7-9db1-4660-d953-24f7a42c892e" + }, + "execution_count": 25, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "" + ], + "text/html": [] + }, + "metadata": {} + } + ] + }, + { + "cell_type": "code", "source": [ - "preds = trainer.predict(test_dataset)\n", - "preds_labels = preds.predictions.argmax(axis=1)" + "logits = preds.predictions\n", + "print(f\"DistilBERT precision@95%: {nn_metric(test_df['tag'], logits, model):.3f}\")" + ], + "metadata": { + "id": "8OiPteQ8Ltnh", + "outputId": "c8242422-a1b6-4499-a780-e6037dc085d7", + "colab": { + "base_uri": "https://localhost:8080/" + } + }, + "execution_count": 36, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "DistilBERT precision@95%: 1.441\n" + ] + } ] + }, + { + "cell_type": "code", + "source": [], + "metadata": { + "id": "5SaDCpMKL6mi" + }, + "execution_count": null, + "outputs": [] } ], "metadata": { @@ -1072,17 +1385,115 @@ }, "kernelspec": { "display_name": "Python 3", + "language": "python", "name": "python3" }, "language_info": { - "name": "python" + "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": { - "026179393e4b4aaeae77e8f986bb9849": { + "a84ec850e42a45b0a4a7a87800ede268": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "state": { + "_dom_classes": [], + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "HBoxModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/controls", + "_view_module_version": "1.5.0", + "_view_name": "HBoxView", + "box_style": "", + "children": [ + "IPY_MODEL_c12508bddd1543449f834d41b413426d", + "IPY_MODEL_4291c1f1a11e4a48878affcc234faa87", + "IPY_MODEL_a6c07eb703c94b25a41306cafb364c31" + ], + "layout": "IPY_MODEL_b622bb5aaf6447aa87be6907ce2b2d4e" + } + }, + "c12508bddd1543449f834d41b413426d": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "state": { + "_dom_classes": [], + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "HTMLModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/controls", + "_view_module_version": "1.5.0", + "_view_name": "HTMLView", + "description": "", + "description_tooltip": null, + "layout": "IPY_MODEL_8609ab94160e491bb994ff987b2d8fbc", + "placeholder": "​", + "style": "IPY_MODEL_73b156ed04554f2a81ff6a528f1c97c0", + "value": "tokenizer_config.json: 100%" + } + }, + "4291c1f1a11e4a48878affcc234faa87": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "state": { + "_dom_classes": [], + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "FloatProgressModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/controls", + "_view_module_version": "1.5.0", + "_view_name": "ProgressView", + "bar_style": "success", + "description": "", + "description_tooltip": null, + "layout": "IPY_MODEL_a3bc75e8cbfd4630a83a6088f75239ac", + "max": 49, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_615d6fd52b3f43e1bbc45eb53bfe0ad7", + "value": 49 + } + }, + "a6c07eb703c94b25a41306cafb364c31": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "state": { + "_dom_classes": [], + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "HTMLModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/controls", + "_view_module_version": "1.5.0", + "_view_name": "HTMLView", + "description": "", + "description_tooltip": null, + "layout": "IPY_MODEL_de943c53880f4f3ba77bd594a4ad87bf", + "placeholder": "​", + "style": "IPY_MODEL_4e631f3e10d24699bb51c6f8f9843a5d", + "value": " 49.0/49.0 [00:00<00:00, 4.86kB/s]" + } + }, + "b622bb5aaf6447aa87be6907ce2b2d4e": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -1131,10 +1542,10 @@ "width": null } }, - "0ae4198a0702473c9ba6f2ff9ce276fe": { + "8609ab94160e491bb994ff987b2d8fbc": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -1183,34 +1594,25 @@ "width": null } }, - "0b6c06fc35194a019e41cc3d9d7b8882": { + "73b156ed04554f2a81ff6a528f1c97c0": { "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", "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", + "_model_name": "DescriptionStyleModel", "_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_d82a84facc1b4e5b872e1348105ee7d4", - "max": 49, - "min": 0, - "orientation": "horizontal", - "style": "IPY_MODEL_2c9f11df4e2345e8b4fcfc8bd82df5a3", - "value": 49 + "_view_module": "@jupyter-widgets/base", + "_view_module_version": "1.2.0", + "_view_name": "StyleView", + "description_width": "" } }, - "0daa6fcf9e7649beab0d9e5e3ad27ea3": { + "a3bc75e8cbfd4630a83a6088f75239ac": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -1259,10 +1661,26 @@ "width": null } }, - "18fd9a8fc2204e17a4f5a1abd2f03296": { + "615d6fd52b3f43e1bbc45eb53bfe0ad7": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "state": { + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "ProgressStyleModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/base", + "_view_module_version": "1.2.0", + "_view_name": "StyleView", + "bar_color": null, + "description_width": "" + } + }, + "de943c53880f4f3ba77bd594a4ad87bf": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -1311,26 +1729,68 @@ "width": null } }, - "2831665d979149179aa6d99760926013": { + "4e631f3e10d24699bb51c6f8f9843a5d": { "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", - "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", - "_model_name": "ProgressStyleModel", + "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", - "bar_color": null, "description_width": "" } }, - "2901572228224495b6be88871c291302": { + "698488c9c8854f7dbebfea7ab2d7c291": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "state": { + "_dom_classes": [], + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "HBoxModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/controls", + "_view_module_version": "1.5.0", + "_view_name": "HBoxView", + "box_style": "", + "children": [ + "IPY_MODEL_f5a7b6f95da54c90ac8860be963e52bd", + "IPY_MODEL_90c70b258b24430a906c88ebc64b5231", + "IPY_MODEL_61a0f825e6344eff8ba802fa80103ccb" + ], + "layout": "IPY_MODEL_fb7c892151c049328d2d9fedcb6f41b7" + } + }, + "f5a7b6f95da54c90ac8860be963e52bd": { "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", "model_module_version": "1.5.0", + "state": { + "_dom_classes": [], + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "HTMLModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/controls", + "_view_module_version": "1.5.0", + "_view_name": "HTMLView", + "description": "", + "description_tooltip": null, + "layout": "IPY_MODEL_40338ce6822b427799638dcd30b6e141", + "placeholder": "​", + "style": "IPY_MODEL_0803738966ad429da69c32dbedbdbc03", + "value": "vocab.txt: 100%" + } + }, + "90c70b258b24430a906c88ebc64b5231": { + "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", @@ -1343,34 +1803,39 @@ "bar_style": "success", "description": "", "description_tooltip": null, - "layout": "IPY_MODEL_0ae4198a0702473c9ba6f2ff9ce276fe", - "max": 435797, + "layout": "IPY_MODEL_11379b7d536d4a948fe47751de456f9b", + "max": 213450, "min": 0, "orientation": "horizontal", - "style": "IPY_MODEL_9686bd15653a4d8a94688626ce413ace", - "value": 435797 + "style": "IPY_MODEL_af9391c4b1bc439a8d4ff0276be5d315", + "value": 213450 } }, - "2c9f11df4e2345e8b4fcfc8bd82df5a3": { + "61a0f825e6344eff8ba802fa80103ccb": { "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", "model_module_version": "1.5.0", - "model_name": "ProgressStyleModel", "state": { + "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", - "_model_name": "ProgressStyleModel", + "_model_name": "HTMLModel", "_view_count": null, - "_view_module": "@jupyter-widgets/base", - "_view_module_version": "1.2.0", - "_view_name": "StyleView", - "bar_color": null, - "description_width": "" + "_view_module": "@jupyter-widgets/controls", + "_view_module_version": "1.5.0", + "_view_name": "HTMLView", + "description": "", + "description_tooltip": null, + "layout": "IPY_MODEL_bec5c7a1bae0480f8a49d3f56b2506eb", + "placeholder": "​", + "style": "IPY_MODEL_d13b6193d01c4307b9b3d89be7e0b8cf", + "value": " 213k/213k [00:00<00:00, 3.43MB/s]" } }, - "32282ec20fcc426fb3f1e922f1f30aee": { + "fb7c892151c049328d2d9fedcb6f41b7": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -1419,25 +1884,10 @@ "width": null } }, - "3a1a216b8aaa4343aa7b6b64b7296b48": { - "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": "" - } - }, - "3dad66e997df4e97bcc514a507ec0ead": { + "40338ce6822b427799638dcd30b6e141": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -1486,40 +1936,10 @@ "width": null } }, - "4143046c707b4e0184be6924112c6caf": { + "0803738966ad429da69c32dbedbdbc03": { "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": "" - } - }, - "44bb79ed793541908f8f996bc5f1fb23": { - "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": "" - } - }, - "45169cd56bb24509a264866c90c42202": { - "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", @@ -1531,31 +1951,10 @@ "description_width": "" } }, - "4f7f6a7c24e74a9cadc435ee1fe154cd": { - "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_32282ec20fcc426fb3f1e922f1f30aee", - "placeholder": "​", - "style": "IPY_MODEL_a8438d276f934f63be2eb97ccdb56ee1", - "value": " 465/465 [00:00<00:00, 7.75kB/s]" - } - }, - "5076c95d456d4bce98cec02eea11c6ac": { + "11379b7d536d4a948fe47751de456f9b": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -1604,46 +2003,26 @@ "width": null } }, - "528d368df078414d86e47f2809d7ef3d": { - "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_18fd9a8fc2204e17a4f5a1abd2f03296", - "placeholder": "​", - "style": "IPY_MODEL_ab56e2b7ce644e0692afb90cb4aa52fb", - "value": "tokenizer.json: 100%" - } - }, - "54d2d576fa1e43c69b4ecd24861add6c": { + "af9391c4b1bc439a8d4ff0276be5d315": { "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", - "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", - "_model_name": "DescriptionStyleModel", + "_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": "" } }, - "55ad2c9b915f400dbd42f8662b650091": { + "bec5c7a1bae0480f8a49d3f56b2506eb": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -1692,99 +2071,47 @@ "width": null } }, - "59d34ff795f944aab54ddc61b829b937": { + "d13b6193d01c4307b9b3d89be7e0b8cf": { "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", "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_ed7de76cc2a943378c74c7343b39937b", - "placeholder": "​", - "style": "IPY_MODEL_45169cd56bb24509a264866c90c42202", - "value": "model.safetensors: 100%" - } - }, - "5f77c8a0f91344a5826d1c44b7d402ec": { - "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", + "_model_name": "DescriptionStyleModel", "_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 + "_view_name": "StyleView", + "description_width": "" } }, - "63293dc91c944033951a697035090829": { + "4e229143da894ac7be8ddff37144bec8": { "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", "model_module_version": "1.5.0", - "model_name": "ProgressStyleModel", "state": { + "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", - "_model_name": "ProgressStyleModel", + "_model_name": "HBoxModel", "_view_count": null, - "_view_module": "@jupyter-widgets/base", - "_view_module_version": "1.2.0", - "_view_name": "StyleView", - "bar_color": null, - "description_width": "" + "_view_module": "@jupyter-widgets/controls", + "_view_module_version": "1.5.0", + "_view_name": "HBoxView", + "box_style": "", + "children": [ + "IPY_MODEL_033a5fcee80a46619f2dada013a96f59", + "IPY_MODEL_b7d0fa89b6cc4e3a9f7550bfc7b94dfb", + "IPY_MODEL_7a77efa8b96c406cbd0ca16b457f048b" + ], + "layout": "IPY_MODEL_2cfc6e9d88244aab9def1cb6764e7e0d" } }, - "710ebae67249472ebaaea0c23dabeed3": { + "033a5fcee80a46619f2dada013a96f59": { "model_module": "@jupyter-widgets/controls", - "model_module_version": "1.5.0", "model_name": "HTMLModel", + "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", @@ -1796,38 +2123,61 @@ "_view_name": "HTMLView", "description": "", "description_tooltip": null, - "layout": "IPY_MODEL_0daa6fcf9e7649beab0d9e5e3ad27ea3", + "layout": "IPY_MODEL_3421d4ff74214c0081f77aa092ed3f7b", "placeholder": "​", - "style": "IPY_MODEL_44bb79ed793541908f8f996bc5f1fb23", - "value": " 213k/213k [00:00<00:00, 2.33MB/s]" + "style": "IPY_MODEL_d989e092a6344bfa8246f8bf846b54b1", + "value": "tokenizer.json: 100%" } }, - "778cbabe7ff64b4295a087cd6e5b82f9": { + "b7d0fa89b6cc4e3a9f7550bfc7b94dfb": { "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", "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", + "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", - "_view_name": "HBoxView", - "box_style": "", - "children": [ - "IPY_MODEL_d72647b37c53409e99db52a27cd9b4c5", - "IPY_MODEL_0b6c06fc35194a019e41cc3d9d7b8882", - "IPY_MODEL_92c526e6378d4069a7c19f0d5b4290a4" - ], - "layout": "IPY_MODEL_b4182eca94604aa89f72f43ff01c93d3" + "_view_name": "ProgressView", + "bar_style": "success", + "description": "", + "description_tooltip": null, + "layout": "IPY_MODEL_69ec8d01ed27473c8f813c859b9946a8", + "max": 435797, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_2828fbc07c90495380412cdafd66a265", + "value": 435797 } }, - "7a5157ebcd17476dbcd6857be210708d": { + "7a77efa8b96c406cbd0ca16b457f048b": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "state": { + "_dom_classes": [], + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "HTMLModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/controls", + "_view_module_version": "1.5.0", + "_view_name": "HTMLView", + "description": "", + "description_tooltip": null, + "layout": "IPY_MODEL_14d000a6673f4a83b1cfea274512ccef", + "placeholder": "​", + "style": "IPY_MODEL_30a26a11d9724fd2bb90a8ac3a80b64e", + "value": " 436k/436k [00:00<00:00, 6.76MB/s]" + } + }, + "2cfc6e9d88244aab9def1cb6764e7e0d": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -1876,10 +2226,10 @@ "width": null } }, - "823c419f05694ab09c1f7a441d71a4ce": { + "3421d4ff74214c0081f77aa092ed3f7b": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -1928,10 +2278,10 @@ "width": null } }, - "8734dba89564434b84ae54c99efaa7f1": { + "d989e092a6344bfa8246f8bf846b54b1": { "model_module": "@jupyter-widgets/controls", - "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", @@ -1943,31 +2293,10 @@ "description_width": "" } }, - "89224e016fb94b6b8e596d0b28fcb3d0": { - "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_9f90e58577ff4dc6962744ab88bad9d5", - "placeholder": "​", - "style": "IPY_MODEL_3a1a216b8aaa4343aa7b6b64b7296b48", - "value": " 436k/436k [00:00<00:00, 2.43MB/s]" - } - }, - "89423f3a99b84dbfa3d0fe728df2aee2": { + "69ec8d01ed27473c8f813c859b9946a8": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -2016,76 +2345,10 @@ "width": null } }, - "8d19126d5e1b47ac91d5014fdaf97359": { - "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_5076c95d456d4bce98cec02eea11c6ac", - "max": 263260784, - "min": 0, - "orientation": "horizontal", - "style": "IPY_MODEL_63293dc91c944033951a697035090829", - "value": 263260784 - } - }, - "8ffcd9e636a24bd9b65ff4a4073fd322": { + "2828fbc07c90495380412cdafd66a265": { "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_5f77c8a0f91344a5826d1c44b7d402ec", - "placeholder": "​", - "style": "IPY_MODEL_4143046c707b4e0184be6924112c6caf", - "value": "config.json: 100%" - } - }, - "92c526e6378d4069a7c19f0d5b4290a4": { - "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_f1ac6c2d81d6464cba06139c68f0c94b", - "placeholder": "​", - "style": "IPY_MODEL_9eefb737986849b5853f9a9fd40aa825", - "value": " 49.0/49.0 [00:00<00:00, 1.70kB/s]" - } - }, - "9686bd15653a4d8a94688626ce413ace": { - "model_module": "@jupyter-widgets/controls", - "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", @@ -2098,25 +2361,10 @@ "description_width": "" } }, - "9eefb737986849b5853f9a9fd40aa825": { - "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": "" - } - }, - "9f90e58577ff4dc6962744ab88bad9d5": { + "14d000a6673f4a83b1cfea274512ccef": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -2165,10 +2413,25 @@ "width": null } }, - "a06b4f5907fd43f0a1bdad0ea1c0a62c": { + "30a26a11d9724fd2bb90a8ac3a80b64e": { "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", + "state": { + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "DescriptionStyleModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/base", + "_view_module_version": "1.2.0", + "_view_name": "StyleView", + "description_width": "" + } + }, + "c2f4aa4074bd44c89d5a30ca672fa8f9": { + "model_module": "@jupyter-widgets/controls", "model_name": "HBoxModel", + "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", @@ -2180,32 +2443,83 @@ "_view_name": "HBoxView", "box_style": "", "children": [ - "IPY_MODEL_59d34ff795f944aab54ddc61b829b937", - "IPY_MODEL_8d19126d5e1b47ac91d5014fdaf97359", - "IPY_MODEL_cdbfa8154fe7454e86ecc4ec5e6584be" + "IPY_MODEL_24f8549ca034493392fbf35ce6b5d3b2", + "IPY_MODEL_bd3f9196c76e49ee967f30bae35c8b18", + "IPY_MODEL_a27a26bbf9fc4f688716bb2aed879a12" ], - "layout": "IPY_MODEL_7a5157ebcd17476dbcd6857be210708d" + "layout": "IPY_MODEL_0792befbe6c743f69c88408498eafc32" } }, - "a1c6a59cc7cb4034bc0332314c9a836a": { + "24f8549ca034493392fbf35ce6b5d3b2": { "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", "model_module_version": "1.5.0", - "model_name": "DescriptionStyleModel", "state": { + "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", - "_model_name": "DescriptionStyleModel", + "_model_name": "HTMLModel", "_view_count": null, - "_view_module": "@jupyter-widgets/base", - "_view_module_version": "1.2.0", - "_view_name": "StyleView", - "description_width": "" + "_view_module": "@jupyter-widgets/controls", + "_view_module_version": "1.5.0", + "_view_name": "HTMLView", + "description": "", + "description_tooltip": null, + "layout": "IPY_MODEL_c97130a925a44468b22d0c6ab3cac6e9", + "placeholder": "​", + "style": "IPY_MODEL_b956c28f53434fad9fcfdb65a7c8a303", + "value": "config.json: 100%" + } + }, + "bd3f9196c76e49ee967f30bae35c8b18": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "state": { + "_dom_classes": [], + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "FloatProgressModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/controls", + "_view_module_version": "1.5.0", + "_view_name": "ProgressView", + "bar_style": "success", + "description": "", + "description_tooltip": null, + "layout": "IPY_MODEL_eefd0b1b319a4e75b0ac3a75fb4e7f38", + "max": 465, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_0d6793013fa2469191d109529bc9223d", + "value": 465 } }, - "a51ec9cc60af44c2ac2daafc229b4eee": { + "a27a26bbf9fc4f688716bb2aed879a12": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "state": { + "_dom_classes": [], + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "HTMLModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/controls", + "_view_module_version": "1.5.0", + "_view_name": "HTMLView", + "description": "", + "description_tooltip": null, + "layout": "IPY_MODEL_8d89cb74b480405688b10b6578fea4bd", + "placeholder": "​", + "style": "IPY_MODEL_1ce96b9a31e342edaa9c40304e65b73b", + "value": " 465/465 [00:00<00:00, 30.0kB/s]" + } + }, + "0792befbe6c743f69c88408498eafc32": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -2239,55 +2553,25 @@ "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 - } - }, - "a8438d276f934f63be2eb97ccdb56ee1": { - "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": "" - } - }, - "ab56e2b7ce644e0692afb90cb4aa52fb": { - "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": "" + "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 } }, - "b1acef2acaf54504bb1c9b9cf7b6f79e": { + "c97130a925a44468b22d0c6ab3cac6e9": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -2336,10 +2620,25 @@ "width": null } }, - "b4182eca94604aa89f72f43ff01c93d3": { + "b956c28f53434fad9fcfdb65a7c8a303": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "state": { + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "DescriptionStyleModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/base", + "_view_module_version": "1.2.0", + "_view_name": "StyleView", + "description_width": "" + } + }, + "eefd0b1b319a4e75b0ac3a75fb4e7f38": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -2388,32 +2687,10 @@ "width": null } }, - "b41ae356749f47edbd69f6a94990895f": { - "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_528d368df078414d86e47f2809d7ef3d", - "IPY_MODEL_2901572228224495b6be88871c291302", - "IPY_MODEL_89224e016fb94b6b8e596d0b28fcb3d0" - ], - "layout": "IPY_MODEL_a51ec9cc60af44c2ac2daafc229b4eee" - } - }, - "b50b646b22414d1db47c99347fa5917b": { + "0d6793013fa2469191d109529bc9223d": { "model_module": "@jupyter-widgets/controls", - "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", @@ -2426,10 +2703,10 @@ "description_width": "" } }, - "b5cd116d5e0d46d9ac20241e26321463": { + "8d89cb74b480405688b10b6578fea4bd": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -2478,34 +2755,47 @@ "width": null } }, - "cbba30132f6c4364b159fe69f69fadec": { + "1ce96b9a31e342edaa9c40304e65b73b": { "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "state": { + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "DescriptionStyleModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/base", + "_view_module_version": "1.2.0", + "_view_name": "StyleView", + "description_width": "" + } + }, + "c4c34fd4e65b44ca8837c359e2adfef5": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", "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", + "_model_name": "HBoxModel", "_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_b1acef2acaf54504bb1c9b9cf7b6f79e", - "max": 465, - "min": 0, - "orientation": "horizontal", - "style": "IPY_MODEL_2831665d979149179aa6d99760926013", - "value": 465 + "_view_name": "HBoxView", + "box_style": "", + "children": [ + "IPY_MODEL_be28f610644e4902ad22ba61c8e8b294", + "IPY_MODEL_a82c407c525f493cae6caf2ecab38eec", + "IPY_MODEL_9a616045cdb14b1eb4cc7987ba7a1ebe" + ], + "layout": "IPY_MODEL_f5ce00f8e11c4834970d38bb7a74bff7" } }, - "cdbfa8154fe7454e86ecc4ec5e6584be": { + "be28f610644e4902ad22ba61c8e8b294": { "model_module": "@jupyter-widgets/controls", - "model_module_version": "1.5.0", "model_name": "HTMLModel", + "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", @@ -2517,16 +2807,40 @@ "_view_name": "HTMLView", "description": "", "description_tooltip": null, - "layout": "IPY_MODEL_89423f3a99b84dbfa3d0fe728df2aee2", + "layout": "IPY_MODEL_10e1bbfa8acb454cbe44f57232af0dcc", "placeholder": "​", - "style": "IPY_MODEL_8734dba89564434b84ae54c99efaa7f1", - "value": " 263M/263M [00:01<00:00, 146MB/s]" + "style": "IPY_MODEL_57f70f785e3148dda70d77386ea98c61", + "value": "model.safetensors: 100%" } }, - "d72647b37c53409e99db52a27cd9b4c5": { + "a82c407c525f493cae6caf2ecab38eec": { "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", "model_module_version": "1.5.0", + "state": { + "_dom_classes": [], + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "FloatProgressModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/controls", + "_view_module_version": "1.5.0", + "_view_name": "ProgressView", + "bar_style": "success", + "description": "", + "description_tooltip": null, + "layout": "IPY_MODEL_555bb9a9df7f4abe8f811b9ba269565f", + "max": 263260784, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_5f93e9d3639a41e08f132fc6d9612b8d", + "value": 263260784 + } + }, + "9a616045cdb14b1eb4cc7987ba7a1ebe": { + "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", + "model_module_version": "1.5.0", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", @@ -2538,16 +2852,16 @@ "_view_name": "HTMLView", "description": "", "description_tooltip": null, - "layout": "IPY_MODEL_b5cd116d5e0d46d9ac20241e26321463", + "layout": "IPY_MODEL_e2842507f92f4f4d9b44cd8eee193f52", "placeholder": "​", - "style": "IPY_MODEL_a1c6a59cc7cb4034bc0332314c9a836a", - "value": "tokenizer_config.json: 100%" + "style": "IPY_MODEL_c7d47c9fa5bc4b3ba9ddd9da9fa57550", + "value": " 263M/263M [00:01<00:00, 227MB/s]" } }, - "d82a84facc1b4e5b872e1348105ee7d4": { + "f5ce00f8e11c4834970d38bb7a74bff7": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -2596,99 +2910,77 @@ "width": null } }, - "d838db846624475a95463af753c2a6a3": { - "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_8ffcd9e636a24bd9b65ff4a4073fd322", - "IPY_MODEL_cbba30132f6c4364b159fe69f69fadec", - "IPY_MODEL_4f7f6a7c24e74a9cadc435ee1fe154cd" - ], - "layout": "IPY_MODEL_3dad66e997df4e97bcc514a507ec0ead" - } - }, - "deb027f0837145908304584ec5ebdc58": { - "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_e2d677ea33bb4ba4aebbfedb29d51245", - "IPY_MODEL_e21fc646b65a49819cd9ceefd6b7b7b3", - "IPY_MODEL_710ebae67249472ebaaea0c23dabeed3" - ], - "layout": "IPY_MODEL_55ad2c9b915f400dbd42f8662b650091" - } - }, - "e21fc646b65a49819cd9ceefd6b7b7b3": { - "model_module": "@jupyter-widgets/controls", - "model_module_version": "1.5.0", - "model_name": "FloatProgressModel", + "10e1bbfa8acb454cbe44f57232af0dcc": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { - "_dom_classes": [], - "_model_module": "@jupyter-widgets/controls", - "_model_module_version": "1.5.0", - "_model_name": "FloatProgressModel", + "_model_module": "@jupyter-widgets/base", + "_model_module_version": "1.2.0", + "_model_name": "LayoutModel", "_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_026179393e4b4aaeae77e8f986bb9849", - "max": 213450, - "min": 0, - "orientation": "horizontal", - "style": "IPY_MODEL_b50b646b22414d1db47c99347fa5917b", - "value": 213450 + "_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 } }, - "e2d677ea33bb4ba4aebbfedb29d51245": { + "57f70f785e3148dda70d77386ea98c61": { "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", "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", + "_model_name": "DescriptionStyleModel", "_view_count": null, - "_view_module": "@jupyter-widgets/controls", - "_view_module_version": "1.5.0", - "_view_name": "HTMLView", - "description": "", - "description_tooltip": null, - "layout": "IPY_MODEL_823c419f05694ab09c1f7a441d71a4ce", - "placeholder": "​", - "style": "IPY_MODEL_54d2d576fa1e43c69b4ecd24861add6c", - "value": "vocab.txt: 100%" + "_view_module": "@jupyter-widgets/base", + "_view_module_version": "1.2.0", + "_view_name": "StyleView", + "description_width": "" } }, - "ed7de76cc2a943378c74c7343b39937b": { + "555bb9a9df7f4abe8f811b9ba269565f": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -2737,10 +3029,26 @@ "width": null } }, - "f1ac6c2d81d6464cba06139c68f0c94b": { + "5f93e9d3639a41e08f132fc6d9612b8d": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "state": { + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "ProgressStyleModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/base", + "_view_module_version": "1.2.0", + "_view_name": "StyleView", + "bar_color": null, + "description_width": "" + } + }, + "e2842507f92f4f4d9b44cd8eee193f52": { "model_module": "@jupyter-widgets/base", - "model_module_version": "1.2.0", "model_name": "LayoutModel", + "model_module_version": "1.2.0", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", @@ -2788,6 +3096,21 @@ "visibility": null, "width": null } + }, + "c7d47c9fa5bc4b3ba9ddd9da9fa57550": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "state": { + "_model_module": "@jupyter-widgets/controls", + "_model_module_version": "1.5.0", + "_model_name": "DescriptionStyleModel", + "_view_count": null, + "_view_module": "@jupyter-widgets/base", + "_view_module_version": "1.2.0", + "_view_name": "StyleView", + "description_width": "" + } } } }