{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Install Dependencies" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "execution": { "iopub.execute_input": "2025-07-19T01:45:02.627446Z", "iopub.status.busy": "2025-07-19T01:45:02.627191Z", "iopub.status.idle": "2025-07-19T01:46:51.487964Z", "shell.execute_reply": "2025-07-19T01:46:51.486882Z", "shell.execute_reply.started": "2025-07-19T01:45:02.627397Z" }, "id": "nRolf7r8N7DW", "trusted": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m46.9/46.9 kB\u001b[0m \u001b[31m1.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m280.1/280.1 kB\u001b[0m \u001b[31m7.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m326.4/326.4 MB\u001b[0m \u001b[31m5.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m72.9/72.9 MB\u001b[0m \u001b[31m23.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m375.8/375.8 kB\u001b[0m \u001b[31m25.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m897.5/897.5 kB\u001b[0m \u001b[31m52.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m98.4/98.4 kB\u001b[0m \u001b[31m7.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m111.0/111.0 kB\u001b[0m \u001b[31m9.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.8/3.8 MB\u001b[0m \u001b[31m84.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m87.6/87.6 kB\u001b[0m \u001b[31m8.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m44.3/44.3 MB\u001b[0m \u001b[31m39.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m4.8/4.8 MB\u001b[0m \u001b[31m74.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0mta \u001b[36m0:00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m363.4/363.4 MB\u001b[0m \u001b[31m4.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m13.8/13.8 MB\u001b[0m \u001b[31m96.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m0:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m24.6/24.6 MB\u001b[0m \u001b[31m67.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m883.7/883.7 kB\u001b[0m \u001b[31m54.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m664.8/664.8 MB\u001b[0m \u001b[31m2.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m211.5/211.5 MB\u001b[0m \u001b[31m5.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m56.3/56.3 MB\u001b[0m \u001b[31m31.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m127.9/127.9 MB\u001b[0m \u001b[31m13.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m207.5/207.5 MB\u001b[0m \u001b[31m1.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m21.1/21.1 MB\u001b[0m \u001b[31m69.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m343.3/343.3 kB\u001b[0m \u001b[31m26.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m96.2/96.2 kB\u001b[0m \u001b[31m8.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m15.0/15.0 MB\u001b[0m \u001b[31m85.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m44.2/44.2 kB\u001b[0m \u001b[31m3.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m6.5/6.5 MB\u001b[0m \u001b[31m103.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m61.5/61.5 kB\u001b[0m \u001b[31m5.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m52.5/52.5 kB\u001b[0m \u001b[31m4.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m109.5/109.5 kB\u001b[0m \u001b[31m9.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m138.0/138.0 kB\u001b[0m \u001b[31m12.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m856.6/856.6 kB\u001b[0m \u001b[31m47.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m162.8/162.8 kB\u001b[0m \u001b[31m15.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m385.5/385.5 kB\u001b[0m \u001b[31m28.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m210.7/210.7 kB\u001b[0m \u001b[31m18.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m129.0/129.0 kB\u001b[0m \u001b[31m11.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m453.1/453.1 kB\u001b[0m \u001b[31m29.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m193.6/193.6 kB\u001b[0m \u001b[31m15.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m42.4/42.4 MB\u001b[0m \u001b[31m41.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m6.3/6.3 MB\u001b[0m \u001b[31m94.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0mta \u001b[36m0:00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m912.7/912.7 kB\u001b[0m \u001b[31m51.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m45.5/45.5 kB\u001b[0m \u001b[31m3.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m459.8/459.8 kB\u001b[0m \u001b[31m32.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m4.0/4.0 MB\u001b[0m \u001b[31m95.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m950.5/950.5 kB\u001b[0m \u001b[31m55.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25h\u001b[31mERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.\n", "bigframes 2.8.0 requires google-cloud-bigquery-storage<3.0.0,>=2.30.0, which is not installed.\n", "dask-cuda 25.2.0 requires numba<0.61.0a0,>=0.59.1, but you have numba 0.61.2 which is incompatible.\n", "cuml-cu12 25.2.1 requires numba<0.61.0a0,>=0.59.1, but you have numba 0.61.2 which is incompatible.\n", "cudf-cu12 25.2.2 requires numba<0.61.0a0,>=0.59.1, but you have numba 0.61.2 which is incompatible.\n", "distributed-ucxx-cu12 0.42.0 requires numba<0.61.0a0,>=0.59.1, but you have numba 0.61.2 which is incompatible.\n", "ydata-profiling 4.16.1 requires numba<=0.61,>=0.56.0, but you have numba 0.61.2 which is incompatible.\n", "cesium 0.12.4 requires numpy<3.0,>=2.0, but you have numpy 1.26.4 which is incompatible.\n", "google-colab 1.0.0 requires google-auth==2.38.0, but you have google-auth 2.40.3 which is incompatible.\n", "google-colab 1.0.0 requires notebook==6.5.7, but you have notebook 6.5.4 which is incompatible.\n", "google-colab 1.0.0 requires pandas==2.2.2, but you have pandas 2.2.3 which is incompatible.\n", "google-colab 1.0.0 requires requests==2.32.3, but you have requests 2.32.4 which is incompatible.\n", "google-colab 1.0.0 requires tornado==6.4.2, but you have tornado 6.5.1 which is incompatible.\n", "gcsfs 2025.3.2 requires fsspec==2025.3.2, but you have fsspec 2025.3.0 which is incompatible.\n", "bigframes 2.8.0 requires google-cloud-bigquery[bqstorage,pandas]>=3.31.0, but you have google-cloud-bigquery 3.25.0 which is incompatible.\n", "bigframes 2.8.0 requires rich<14,>=12.4.4, but you have rich 14.0.0 which is incompatible.\n", "jupyter-kernel-gateway 2.5.2 requires jupyter-client<8.0,>=5.2.0, but you have jupyter-client 8.6.3 which is incompatible.\u001b[0m\u001b[31m\n", "\u001b[0m" ] } ], "source": [ "!pip install -q unsloth==2025.6.8 vllm==0.8.5.post1 bitsandbytes==0.46.1 trl==0.19.0 sacremoses==0.1.1 tensorboard" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "execution": { "iopub.execute_input": "2025-07-19T01:46:51.490102Z", "iopub.status.busy": "2025-07-19T01:46:51.489757Z", "iopub.status.idle": "2025-07-19T01:46:51.496018Z", "shell.execute_reply": "2025-07-19T01:46:51.495339Z", "shell.execute_reply.started": "2025-07-19T01:46:51.490071Z" }, "trusted": true }, "outputs": [], "source": [ "# import unsloth\n", "# import torch\n", "# import trl\n", "# import transformers\n", "# import datasets\n", "# import numpy as np\n", "# import bitsandbytes\n", "# import vllm\n", "# import tensorboard\n", "# import sacremoses\n", "\n", "# # Print versions of each library\n", "# print(f\"unsloth: {unsloth.__version__}\")\n", "# print(f\"torch: {torch.__version__}\")\n", "# print(f\"trl: {trl.__version__}\")\n", "# print(f\"transformers: {transformers.__version__}\")\n", "# print(f\"datasets: {datasets.__version__}\")\n", "# print(f\"numpy: {np.__version__}\")\n", "# print(f\"bitsandbytes: {bitsandbytes.__version__}\")\n", "# print(f\"vllm: {vllm.__version__}\")\n", "# print(f\"tensorboard: {tensorboard.__version__}\")\n", "# print(f\"sacremoses: {sacremoses.__version__}\")\n", "# !python --version\n", "\n", "# unsloth: 2025.6.8\n", "# torch: 2.6.0+cu124\n", "# trl: 0.19.0\n", "# transformers: 4.52.4\n", "# datasets: 3.6.0\n", "# numpy: 1.26.4\n", "# bitsandbytes: 0.46.1\n", "# vllm: 0.8.5.post1\n", "# tensorboard: 2.18.0\n", "# sacremoses: 0.1.1\n", "# Python 3.11.13" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Download Dataset" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "execution": { "iopub.execute_input": "2025-07-19T01:46:53.381865Z", "iopub.status.busy": "2025-07-19T01:46:53.381612Z", "iopub.status.idle": "2025-07-19T01:46:54.437258Z", "shell.execute_reply": "2025-07-19T01:46:54.436543Z", "shell.execute_reply.started": "2025-07-19T01:46:53.381845Z" }, "id": "8XxEQCIvN_Vk", "trusted": true }, "outputs": [], "source": [ "# To temporary Model hub\n", "from huggingface_hub import HfApi\n", "from huggingface_hub import login\n", "# Initialize API\n", "login(\"\")\n", "api = HfApi()" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "execution": { "iopub.execute_input": "2025-07-19T01:46:54.438432Z", "iopub.status.busy": "2025-07-19T01:46:54.438148Z", "iopub.status.idle": "2025-07-19T01:47:38.923042Z", "shell.execute_reply": "2025-07-19T01:47:38.922265Z", "shell.execute_reply.started": "2025-07-19T01:46:54.438389Z" }, "id": "26tSiNJQOA4N", "trusted": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "🦥 Unsloth: Will patch your computer to enable 2x faster free finetuning.\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "2025-07-19 01:47:06.295252: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:477] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered\n", "WARNING: All log messages before absl::InitializeLog() is called are written to STDERR\n", "E0000 00:00:1752889626.482107 36 cuda_dnn.cc:8310] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered\n", "E0000 00:00:1752889626.534747 36 cuda_blas.cc:1418] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "🦥 Unsloth Zoo will now patch everything to make training faster!\n", "INFO 07-19 01:47:27 [importing.py:53] Triton module has been replaced with a placeholder.\n", "INFO 07-19 01:47:27 [__init__.py:239] Automatically detected platform cuda.\n" ] } ], "source": [ "import unsloth\n", "\n", "from unsloth import FastLanguageModel\n", "from unsloth import is_bfloat16_supported\n", "from unsloth.chat_templates import train_on_responses_only\n", "import torch\n", "\n", "from trl import SFTTrainer\n", "from transformers import TrainingArguments, DataCollatorForSeq2Seq\n", "\n", "from unsloth import FastModel\n", "from unsloth.chat_templates import get_chat_template\n", "\n", "import numpy as np\n", "from datasets import concatenate_datasets, load_dataset" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "execution": { "iopub.execute_input": "2025-07-19T01:47:38.928598Z", "iopub.status.busy": "2025-07-19T01:47:38.928328Z", "iopub.status.idle": "2025-07-19T01:48:00.323531Z", "shell.execute_reply": "2025-07-19T01:48:00.322739Z", "shell.execute_reply.started": "2025-07-19T01:47:38.928581Z" }, "id": "JhoT9DMuOgGg", "trusted": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "==((====))== Unsloth 2025.6.8: Fast Gemma3 patching. Transformers: 4.52.4. vLLM: 0.8.5.post1.\n", " \\\\ /| Tesla T4. Num GPUs = 2. Max memory: 14.741 GB. Platform: Linux.\n", "O^O/ \\_/ \\ Torch: 2.6.0+cu124. CUDA: 7.5. CUDA Toolkit: 12.4. Triton: 3.2.0\n", "\\ / Bfloat16 = FALSE. FA [Xformers = 0.0.29.post2. FA2 = False]\n", " \"-____-\" Free license: http://github.com/unslothai/unsloth\n", "Unsloth: Fast downloading is enabled - ignore downloading bars which are red colored!\n", "Unsloth: Using float16 precision for gemma3 won't work! Using float32.\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "e6827fd0433544ceb7a5ab654b200c33", "version_major": 2, "version_minor": 0 }, "text/plain": [ "model.safetensors: 0%| | 0.00/1.00G [00:00\n", "...\n", "\n", "\n", "...\n", "\n", "\"\"\"\n" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "execution": { "iopub.execute_input": "2025-07-19T01:48:00.513494Z", "iopub.status.busy": "2025-07-19T01:48:00.513264Z", "iopub.status.idle": "2025-07-19T01:48:03.087489Z", "shell.execute_reply": "2025-07-19T01:48:03.086901Z", "shell.execute_reply.started": "2025-07-19T01:48:00.513478Z" }, "id": "gV8HgKa6Okgt", "trusted": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "77d0f7360e2049b4abdcf4584c88df6c", "version_major": 2, "version_minor": 0 }, "text/plain": [ "README.md: 0.00B [00:00, ?B/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "['all', 'body-part', 'disease', 'drug', 'medicine']\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "b4cc1614f7a24ca3a944b5bfba2fd2c8", "version_major": 2, "version_minor": 0 }, "text/plain": [ "train-00000-of-00001.parquet: 0%| | 0.00/8.68M [00:00 List[float]:\n", " \"\"\"Calculate semantic similarity using cross-encoder\"\"\"\n", " model = CrossEncoder('cross-encoder/stsb-roberta-base', device=reward_device)\n", " with torch.no_grad():\n", " inputs = list(zip(responses, answers))\n", " similarities = model.predict(inputs, show_progress_bar=False).tolist()\n", " # Set similarity to -1 if the response is an empty string\n", " similarities = [-1.0 if response == \"\" else similarity for response, similarity in zip(responses, similarities)]\n", " return similarities\n", "\n", "# ------ Efficient Perplexity Calculation ------\n", "class PerplexityCalculator:\n", " def __init__(self, model_name=\"microsoft/biogpt\", device=reward_device):\n", " self.tokenizer = AutoTokenizer.from_pretrained(model_name)\n", " self.device = device\n", " self.tokenizer.pad_token = self.tokenizer.eos_token\n", " self.model = AutoModelForCausalLM.from_pretrained(model_name).to(self.device)\n", " self.model.eval()\n", "\n", " def calculate(self, texts: List[str], batch_size=8) -> List[float]:\n", " perplexities = []\n", " for i in range(0, len(texts), batch_size):\n", " batch = texts[i:i+batch_size]\n", " try:\n", " if not batch: continue\n", "\n", " encodings = self.tokenizer(\n", " batch,\n", " return_tensors=\"pt\",\n", " padding=True,\n", " truncation=True,\n", " max_length=200\n", " ).to(self.device)\n", "\n", " with torch.no_grad():\n", " outputs = self.model(**encodings, labels=encodings.input_ids)\n", "\n", " loss = outputs.loss\n", " if torch.isnan(loss):\n", " raise ValueError(\"NaN loss encountered\")\n", "\n", " batch_perplexity = torch.exp(loss).repeat(len(batch)).cpu().tolist()\n", " # Set perplexity to -1 if the input is an empty string\n", " batch_perplexity = [-1.0 if text == \"\" else perplex for text, perplex in zip(batch, batch_perplexity)]\n", " perplexities.extend(batch_perplexity)\n", "\n", " except Exception as e:\n", " print(f\"Error in batch {i//batch_size}: {str(e)}\")\n", " perplexities.extend([1000.0] * len(batch))\n", "\n", " return perplexities\n", "\n", "perplexity_calculator = PerplexityCalculator()\n", "\n", "# ------ Tag Presence Reward ------\n", "def tag_presence_reward(completions: List[dict]) -> List[float]:\n", " \"\"\"Reward for presence of and tags\"\"\"\n", " rewards = []\n", " for completion in completions:\n", " content = completion[0]['content']\n", " has_reasoning = bool(re.search(r'.*?', content, re.DOTALL))\n", " has_answer = bool(re.search(r'.*?', content, re.DOTALL))\n", " reward = 0.5 * has_reasoning + 0.5 * has_answer\n", " rewards.append(reward)\n", " return rewards\n", "\n", "# ------ Combined Reward Function ------\n", "def combined_reward_func(\n", " prompts, completions, answer, **kwargs\n", ") -> List[float]:\n", " # Extract generated responses\n", " responses = []\n", " valid_indices = []\n", " for idx, completion in enumerate(completions):\n", " try:\n", " generated_content = completion[0]['content'].strip()\n", "\n", " # Extract only the content using regex\n", " answer_match = re.search(r'(.*?)', generated_content, re.DOTALL)\n", " if answer_match:\n", " generated_content = answer_match.group(1).strip()\n", " else:\n", " responses.append(\"\") # Append empty string to maintain index consistency\n", " valid_indices.append(idx)\n", " continue\n", "\n", " # Skip if empty or just repeating the prompt\n", " user_prompt = prompts[idx][-1]['content']\n", " if not generated_content or generated_content == user_prompt:\n", " # print(f\"generated_content: continue\")\n", " responses.append(\"\") # Append empty string to maintain index consistency\n", " valid_indices.append(idx)\n", " continue\n", "\n", " responses.append(generated_content)\n", " # print(f\"generated_content3: {generated_content}\")\n", " valid_indices.append(idx)\n", " except (KeyError, IndexError):\n", " responses.append(\"\") # Append empty string to maintain index consistency\n", " valid_indices.append(idx)\n", " continue\n", "\n", " if not responses:\n", " return [-1.0] * len(completions)\n", "\n", " # Calculate rewards\n", " try:\n", " # Use raw answers without tag processing\n", " processed_answers = answer\n", " # print(f\"processed_answers: {processed_answers[0]}\")\n", "\n", " similarities = semantic_correctness(responses, [processed_answers[i] for i in valid_indices])\n", " perplexities = perplexity_calculator.calculate([processed_answers[i] for i in valid_indices])\n", " tag_rewards = tag_presence_reward([completions[i] for i in valid_indices])\n", " except Exception as e:\n", " print(f\"Reward calculation error: {str(e)}\")\n", " return [-1.0] * len(completions)\n", "\n", " # Convert to tensors with stability\n", " sim_scores = torch.nan_to_num(torch.tensor(similarities), nan=0.0)\n", " perplex_scores = torch.nan_to_num(torch.tensor(perplexities), nan=1000.0)\n", " tag_scores = torch.tensor(tag_rewards)\n", "\n", " # Perplexity reward calculation\n", " perplex_rewards = 1 / (perplex_scores / (perplex_scores.mean() + 1e-9))\n", "\n", " # Normalize with stability\n", " score_range = perplex_rewards.max() - perplex_rewards.min()\n", " if score_range < 1e-6:\n", " perplex_rewards_normalized = torch.ones_like(perplex_rewards) * 0.5\n", " else:\n", " perplex_rewards_normalized = (perplex_rewards - perplex_rewards.min()) / score_range\n", "\n", " # Combine scores with validation\n", " combined = [\n", " 0.5 * sim.item() + 0.4 * pr.item() + 0.1 * tag.item()\n", " for sim, pr, tag in zip(sim_scores, perplex_rewards_normalized, tag_scores)\n", " if not torch.isnan(sim) and not torch.isnan(pr) and not torch.isnan(tag)\n", " ]\n", "\n", " # Map back to original indices\n", " final_rewards = [-1.0] * len(completions)\n", " for idx, reward in zip(valid_indices, combined):\n", " final_rewards[idx] = max(min(reward, 1.0), -1.0) # Clamp between -1 and 1\n", "\n", " assert len(final_rewards) == len(completions), \"Reward mapping error\"\n", " return final_rewards" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "execution": { "iopub.execute_input": "2025-07-19T01:48:18.173243Z", "iopub.status.busy": "2025-07-19T01:48:18.172957Z", "iopub.status.idle": "2025-07-19T01:48:25.809769Z", "shell.execute_reply": "2025-07-19T01:48:25.809111Z", "shell.execute_reply.started": "2025-07-19T01:48:18.173219Z" }, "trusted": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "0fa1b3ae63bb4545a1cda029dc8913d5", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Map: 0%| | 0/14121 [00:00\n", " \n", " \n", " [1325/1326 9:19:09 < 03:54, 0.00 it/s, Epoch 2/3]\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
StepTraining LossValidation Lossrewardreward_stdcompletions / mean_lengthcompletions / min_lengthcompletions / max_lengthcompletions / clipped_ratiocompletions / mean_terminated_lengthcompletions / min_terminated_lengthcompletions / max_terminated_lengthklrewards / combined_reward_func / meanrewards / combined_reward_func / std
12000.0002000.000166000000000000

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n", "Error in batch 0: Expected a cuda device, but got: cpu\n", "Error in batch 1: Expected a cuda device, but got: cpu\n", "Error in batch 2: Expected a cuda device, but got: cpu\n", "Error in batch 3: Expected a cuda device, but got: cpu\n", "Error in batch 4: Expected a cuda device, but got: cpu\n", "Error in batch 5: Expected a cuda device, but got: cpu\n", "Error in batch 6: Expected a cuda device, but got: cpu\n", "Error in batch 7: Expected a cuda device, but got: cpu\n" ] }, { "data": { "text/plain": [ "TrainOutput(global_step=1325, training_loss=1.8164746766417937e-05, metrics={'train_runtime': 33862.4286, 'train_samples_per_second': 1.251, 'train_steps_per_second': 0.039, 'total_flos': 0.0, 'train_loss': 1.8164746766417937e-05})" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Train the model\n", "trainer.train(resume_from_checkpoint=True)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "execution": { "iopub.execute_input": "2025-07-19T11:13:33.179153Z", "iopub.status.busy": "2025-07-19T11:13:33.178822Z", "iopub.status.idle": "2025-07-19T11:13:34.031841Z", "shell.execute_reply": "2025-07-19T11:13:34.031103Z", "shell.execute_reply.started": "2025-07-19T11:13:33.179123Z" }, "trusted": true }, "outputs": [ { "data": { "text/plain": [ "('Gemma-3-1B-GRPO-Vi-Medical-LoRA/tokenizer_config.json',\n", " 'Gemma-3-1B-GRPO-Vi-Medical-LoRA/special_tokens_map.json',\n", " 'Gemma-3-1B-GRPO-Vi-Medical-LoRA/chat_template.jinja',\n", " 'Gemma-3-1B-GRPO-Vi-Medical-LoRA/tokenizer.model',\n", " 'Gemma-3-1B-GRPO-Vi-Medical-LoRA/added_tokens.json',\n", " 'Gemma-3-1B-GRPO-Vi-Medical-LoRA/tokenizer.json')" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model.save_pretrained(\"Gemma-3-1B-GRPO-Vi-Medical-LoRA\") # Local saving\n", "tokenizer.save_pretrained(\"Gemma-3-1B-GRPO-Vi-Medical-LoRA\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Inference" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "question = (\"Khi nghi ngờ bị loét dạ dày tá tràng nên đến khoa nào \"\n", " \"tại bệnh viện để thăm khám?\")\n", "messages = [\n", " {\"role\": \"system\", \"content\": SYSTEM_PROMPT},\n", " {\"role\": \"user\", \"content\": question},\n", "]\n", "\n", "text = tokenizer.apply_chat_template(\n", " messages,\n", " add_generation_prompt=True, # Must add for generation\n", " tokenize=False,\n", ")\n", "\n", "from transformers import TextStreamer\n", "\n", "_ = model.generate(\n", " **tokenizer(text, return_tensors=\"pt\").to(device),\n", " max_new_tokens=2048, # Increase for longer outputs!\n", " # Recommended Gemma-3 settings!\n", " temperature=1.0, top_p=0.95, top_k=64,\n", " streamer=TextStreamer(tokenizer, skip_prompt=True, skip_special_tokens=True),\n", ")" ] } ], "metadata": { "colab": { "provenance": [] }, "kaggle": { "accelerator": "nvidiaTeslaT4", "dataSources": [], "isGpuEnabled": true, "isInternetEnabled": true, "language": "python", "sourceType": "notebook" }, "kernelspec": { "display_name": "Python 3", "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.11.13" } }, "nbformat": 4, "nbformat_minor": 4 }