\"I Am Curious: Yellow\" is a risible and preten...
\n",
"
0
\n",
"
\n",
"
\n",
"
2
\n",
"
If only to avoid making this type of film in t...
\n",
"
0
\n",
"
\n",
"
\n",
"
3
\n",
"
This film was probably inspired by Godard's Ma...
\n",
"
0
\n",
"
\n",
"
\n",
"
4
\n",
"
Oh, brother...after hearing about this ridicul...
\n",
"
0
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" text label\n",
"0 I rented I AM CURIOUS-YELLOW from my video sto... 0\n",
"1 \"I Am Curious: Yellow\" is a risible and preten... 0\n",
"2 If only to avoid making this type of film in t... 0\n",
"3 This film was probably inspired by Godard's Ma... 0\n",
"4 Oh, brother...after hearing about this ridicul... 0"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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LuQp1Op51d9N+4W2rQQ/4/3000/uxL5+/Xr3d/rQ/ctf/uJqMXNLH+AKyX//+9/d/qTXXrlypT3++OP25ZdfRvtl6HV69eplZ511lisnwbZcvHix61ek7a31qO0xbtw4t+0UBhQMgg8XrfPgefRBrRqHZcuWuZN8dnQBsHfvXmvUqFHM/VpOfZCEP1iCGrqGDRu67RT+8Nu+fbvXOlGw0NV6eJ9Wv0Ttg4899pi9//77NnLkSPf+b7311hzvL6p5HjFihF1yySXueRWC9FPhMOybb75x618BtGbNmrZp0yZ3TJx33nluvWr7+5wPAnp97XdvvPGGe55wTaZeRx++2obBvqbtp3OPjiu9/uTJk92H/7Zt29xxfbT7P8Wvj0T0nsqUKRNzn84XOg9oG+j8+fTTT7t+VIsWLXIXSTk53+Rmnz3csRLvqquuciFfx1C45k2B55NPPrFHH300ep+eU0FMF2J33HGHLVy40C2bWi7iL/wUFEX73ZlnnmkpK7/bB3Fs+jSpj0F2ypQp4/pfBO699173N4HHH3/c/f7jjz/mqg/Deeed5x4bP358wsd0i+/T9Itf/CKSlZUVvf+1115z948ZMyZ6n/r7JGqjj39O9ePS344aNeqQsuF2fJXRew907tw5UrRo0cjXX38dve+HH36IHH/88ZGWLVseso7btGkT83z9+/ePFC5cOLJt27bI4TRs2DBStWrVmHIzZ850zxnu0/Txxx+7+yZMmBDz9zNmzEh4f7zWrVtH6tevH9OfRMt79tlnR0499VSvPk3x63b06NGurLZPYOfOnZFatWod8hy+20t97woVKuTeb5j2Hz3nvHnzjthPY9euXYfct2DBAvf3L7/8cvS+Bg0aRDp27BjJqeeee84918qVK2PuD9bd3LlzD/mbK6+80vXriN/XfW7qexPQ+w36KYbpGG7cuHGO95eNGzdGMjMz3f4eNnToUFcuvH6176h/SpiWTX22wstzuPNBfF+99957z5V9++23Y8p16NAh8stf/vKQfe2vf/1rTP+o5s2bR4477riY80VuHKlfZrDej3QL78sS3L9kyZLofd99953r93bZZZfl+Hzjs8/Gn8MPd6wE569gH9u+fbvbnnfccUdMuREjRrg+fFp2Wb58ufu7Xr16xZS788473f1z5sw55LX0/m699dZIKqN5Dq4a+HCj6ILR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mgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAADwQmgAAAFI9NB04cMDuueceq1mzppUoUcJOOeUUu//++y0SiUTL6P9DhgyxqlWrujJt2rSxr776KuZ5tmzZYt26dbPSpUtb2bJlrWfPnrZjx46YMitWrLBzzz3XihcvbtWrV7cRI0Ycs/cJAACSX1KHpkceecTGjRtnTz75pK1evdr9rjDzxBNPRMvo97Fjx9r48eNt4cKFVqpUKWvXrp3t3r07WkaBadWqVTZr1iybNm2azZ07126++ebo41lZWda2bVs7+eSTbenSpfboo4/a0KFD7Zlnnjnm7xkAACSnTEti8+fPt06dOlnHjh3d7zVq1LBXXnnFFi1aFK1lGj16tN19992unLz88stWuXJlmzp1qnXt2tWFrRkzZtjixYutSZMmroxCV4cOHeyxxx6zatWq2YQJE2zv3r32/PPPW9GiRe2MM86w5cuX26hRo2LCFQAASF9JXdN09tln2+zZs+3LL790v3/22Wf297//3S666CL3+7p162zjxo2uSS5QpkwZa9q0qS1YsMD9rp9qkgsCk6h8oUKFXM1UUKZly5YuMAVUW7V27VrbunVrwmXbs2ePq6EK3wAAQMGV1DVNd911lwsjtWvXtsKFC7s+Tg8++KBrbhMFJlHNUph+Dx7Tz0qVKsU8npmZaeXLl48po35T8c8RPFauXLlDlm348OE2bNiwPH2/AAAgeSV1TdNrr73mms4mTpxoy5Yts5deesk1qelnfhs0aJBt3749etuwYUN+LxIAAEjXmqbf//73rrZJfZOkfv369t1337lanh49eliVKlXc/Zs2bXKj5wL6vWHDhu7/KrN58+aY592/f78bURf8vX7qb8KC34My8YoVK+ZuAAAgPSR1TdOuXbtc36MwNdMdPHjQ/V9Nago16vcUUHOe+io1b97c/a6f27Ztc6PiAnPmzHHPob5PQRmNqNu3b1+0jEbanX766Qmb5gAAQPpJ6tB0ySWXuD5M06dPt2+//damTJniRrRddtll7vGMjAzr16+fPfDAA/bWW2/ZypUrrXv37m5EXOfOnV2ZOnXqWPv27e2mm25yo+7mzZtnffr0cbVXKifXXHON6wSu+Zs0NcGkSZNszJgxNmDAgHx9/wAAIHkkdfOcpgbQ5Ja33Xaba2JTyPntb3/rJrMMDBw40Hbu3OmmBlCNUosWLdwUA5qkMqB+UQpKrVu3djVXXbp0cXM7hUfczZw503r37m2NGze2ihUrutdgugEAABDIiISn10auqVlQ4UudwjXzeDqpcdf0/F4EHEPfPvx/86YhPXB8p5d0PL6zcvD5ndTNcwAAAMmC0AQAAOCB0AQAAOCB0AQAAOCB0AQAAOCB0AQAAOCB0AQAAOCB0AQAAOCB0AQAAOCB0AQAAOCB0AQAAHA0v7BXX4775z//2VavXu1+P+OMM+zGG290398CAABQ0OSqpmnJkiV2yimn2OOPP25btmxxt1GjRrn7li1blvdLCQAAkIo1Tf3797dLL73Unn32WcvM/L+n2L9/v/Xq1cv69etnc+fOzevlBAAASL3QpJqmcGByT5SZaQMHDrQmTZrk5fIBAACkbvNc6dKlbf369Yfcv2HDBjv++OPzYrkAAABSPzRdddVV1rNnT5s0aZILSrq9+uqrrnnu6quvzvulBAAASMXmuccee8wyMjKse/furi+TFClSxG699VZ7+OGH83oZAQAAUjM0FS1a1MaMGWPDhw+3r7/+2t2nkXMlS5bM6+UDAABI/cktf/jhB3erVauWC0yRSCTvlgwAACDVQ9N//vMfa926tZ122mnWoUMH+9e//uXuVz+nO+64I6+XEQAAIDVDk+ZpUh8mjaALN8mpg/iMGTPycvkAAABSt0/TzJkz7b333rMTTzwx5v5TTz3Vvvvuu7xaNgAAgNSuadq5c2fCTt/6OpVixYrlxXIBAACkfmg699xz7eWXX47+rukHDh48aCNGjLBWrVrl5fIBAACkbvOcwpE6guvrVPbu3eu+PmXVqlWupmnevHl5v5QAAACpWNNUr149+/LLL61FixbWqVMn11x3+eWX26effurmawIAAChoclXTpFFz1atXt8GDByd87KST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tGl26623ujCl0NWjRw+77777omU03YACkuZ8GjNmjJ144on23HPPuecCAACQjEgkEmFV/HwaaVemTBnXKTzd+jfVuIsauXTy7cMd83sRcAxxfKeXdDy+s3Lw+Z3UfZoAAACSBaEJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAADAA6EJAAAg1UPT8OHD7de//rUdf/zxVqlSJevcubOtXbs2pszu3butd+/eVqFCBTvuuOOsS5cutmnTppgy69evt44dO1rJkiXd8/z+97+3/fv3x5T58MMPrVGjRlasWDGrVauWvfjii8fkPQIAgNSQ1KHpo48+coHok08+sVmzZtm+ffusbdu2tnPnzmiZ/v3729tvv22TJ0925X/44Qe7/PLLo48fOHDABaa9e/fa/Pnz7aWXXnKBaMiQIdEy69atc2VatWply5cvt379+lmvXr3svffeO+bvGQAAJKeMSCQSsRTx448/upoihaOWLVva9u3b7YQTTrCJEyfaFVdc4cqsWbPG6tSpYwsWLLBmzZrZu+++axdffLELU5UrV3Zlxo8fb3/4wx/c8xUtWtT9f/r06fb5559HX6tr1662bds2mzFjhteyZWVlWZkyZdwylS5d2tJJjbum5/ci4Bj69uGO+b0IOIY4vtNLOh7fWTn4/E7qmqZ4ekNSvnx593Pp0qWu9qlNmzbRMrVr17aTTjrJhSbRz/r160cDk7Rr186tpFWrVkXLhJ8jKBM8RyJ79uxxzxG+AQCAgitlQtPBgwdds9k555xj9erVc/dt3LjR1RSVLVs2pqwCkh4LyoQDU/B48NjhyigI/fTTT9n2t1IyDW7Vq1fPw3cLAACSTcqEJvVtUvPZq6++aslg0KBBruYruG3YsCG/FwkAABxFmZYC+vTpY9OmTbO5c+faiSeeGL2/SpUqroO3+h6Fa5s0ek6PBWUWLVoU83zB6LpwmfgRd/pdbZslSpRIuEwaZacbAABID0ld06Q+6gpMU6ZMsTlz5ljNmjVjHm/cuLEVKVLEZs+eHb1PUxJoioHmzZu73/Vz5cqVtnnz5mgZjcRTIKpbt260TPg5gjLBcwAAAGQme5OcRsa9+eabbq6moA+S+hCpBkg/e/bsaQMGDHCdwxWEbr/9dhd2NHJONEWBwtF1111nI0aMcM9x9913u+cOaopuueUWe/LJJ23gwIF24403uoD22muvuRF1AAAASV/TNG7cONdf6Pzzz7eqVatGb5MmTYqWefzxx92UAprUUtMQqKntjTfeiD5euHBh17SnnwpT1157rXXv3t3uu+++aBnVYCkgqXapQYMGNnLkSHvuuefcCDoAAICUm6cpmTFPE9JFOs7jks44vtNLOh7fWQV1niYAAID8QmgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGgCAADwQGiK89RTT1mNGjWsePHi1rRpU1u0aFF+LxIAAEgChKaQSZMm2YABA+zee++1ZcuWWYMGDaxdu3a2efPm/F40AACQzwhNIaNGjbKbbrrJbrjhBqtbt66NHz/eSpYsac8//3x+LxoAAMhnmfm9AMli7969tnTpUhs0aFD0vkKFClmbNm1swYIFh5Tfs2ePuwW2b9/ufmZlZVm6ObhnV34vAo6hdNzH0xnHd3pJx+M763/vORKJHLEsoel//v3vf9uBAwescuXKMffr9zVr1hxSfvjw4TZs2LBD7q9evfpRXU4gv5UZnd9LAOBoSefj+7///a+VKVPmsGUITbmkGin1fwocPHjQtmzZYhUq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",
"text/plain": [
"
\n",
" "
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"✔ Evaluación final en test:\n",
" eval_loss: 0.5139\n",
" eval_accuracy: 0.8884\n",
" eval_f1: 0.8883\n",
" eval_runtime: 7263.0685\n",
" eval_samples_per_second: 3.4420\n",
" eval_steps_per_second: 0.2150\n",
" epoch: 3.0000\n",
"\n",
"✔ Modelo y tokenizer guardados en 'sentiment-bert-model/'\n"
]
}
],
"source": [
"# -------------------------------------------------------------\n",
"# CELDA 3: DEFINICIÓN, ENTRENAMIENTO, EVALUACIÓN Y GUARDADO\n",
"# -------------------------------------------------------------\n",
"\n",
"# 1) Importaciones para el entrenamiento\n",
"from transformers import (\n",
" AutoModelForSequenceClassification,\n",
" TrainingArguments,\n",
" Trainer\n",
")\n",
"import numpy as np\n",
"from sklearn.metrics import accuracy_score, f1_score\n",
"\n",
"# 2) Carga del modelo BERT para clasificación binaria\n",
"# num_labels=2 porque tenemos dos clases: positiva y negativa\n",
"model = AutoModelForSequenceClassification.from_pretrained(\n",
" \"bert-base-uncased\",\n",
" num_labels=2\n",
")\n",
"\n",
"# 3) Definición de la función de métricas\n",
"def compute_metrics(eval_pred):\n",
" logits, labels = eval_pred\n",
" preds = np.argmax(logits, axis=1)\n",
" return {\n",
" \"accuracy\": accuracy_score(labels, preds),\n",
" \"f1\": f1_score(labels, preds)\n",
" }\n",
"\n",
"# 4) Configuración de los argumentos de entrenamiento\n",
"# Adaptado a transformers 4.51.3 con do_train y do_eval\n",
"training_args = TrainingArguments(\n",
" output_dir=\"./results\", # Carpeta donde guardar checkpoints\n",
" num_train_epochs=3, # Número de pasadas sobre el dataset\n",
" per_device_train_batch_size=16, # Tamaño de batch en entrenamiento\n",
" per_device_eval_batch_size=16, # Tamaño de batch en evaluación\n",
" do_train=True, # Ejecutar fase de entrenamiento\n",
" do_eval=True, # Ejecutar evaluación al final\n",
" logging_dir=\"./logs\", # Carpeta de logs para TensorBoard\n",
" logging_steps=100 # Cada cuántos pasos registrar métricas\n",
")\n",
"\n",
"print(\"✔ TrainingArguments configurados\")\n",
"\n",
"# 5) Creación del Trainer\n",
"trainer = Trainer(\n",
" model=model,\n",
" args=training_args,\n",
" train_dataset=train_dataset, # Viene de la celda 2\n",
" eval_dataset=test_dataset, # Viene de la celda 2\n",
" compute_metrics=compute_metrics\n",
")\n",
"\n",
"print(\"✔ Trainer instanciado\")\n",
"\n",
"# 6) Lanzar el entrenamiento\n",
"print(\"\\n→ Entrenamiento en curso… puede tardar varios minutos:\")\n",
"trainer.train()\n",
"\n",
"# 7) Evaluación final en test set\n",
"metrics = trainer.evaluate()\n",
"print(\"\\n✔ Evaluación final en test:\")\n",
"for name, value in metrics.items():\n",
" print(f\" {name}: {value:.4f}\")\n",
"\n",
"# 8) Guardar modelo y tokenizer para despliegue\n",
"trainer.save_model(\"sentiment-bert-model\") # Pesos y config\n",
"tokenizer.save_pretrained(\"sentiment-bert-model\") # Archivos del tokenizer\n",
"print(\"\\n✔ Modelo y tokenizer guardados en 'sentiment-bert-model/'\")\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "0db4d022-aa06-40e2-b4b8-ab6b1e226a16",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Requirement already satisfied: huggingface_hub in c:\\users\\light\\documents\\sentiment-analysis-bert\\venv\\lib\\site-packages (0.31.1)\n",
"Collecting huggingface_hub\n",
" Using cached huggingface_hub-0.32.0-py3-none-any.whl.metadata (14 kB)\n",
"Requirement already satisfied: filelock in c:\\users\\light\\documents\\sentiment-analysis-bert\\venv\\lib\\site-packages (from huggingface_hub) (3.18.0)\n",
"Requirement already satisfied: fsspec>=2023.5.0 in c:\\users\\light\\documents\\sentiment-analysis-bert\\venv\\lib\\site-packages (from huggingface_hub) (2025.3.0)\n",
"Requirement already satisfied: packaging>=20.9 in c:\\users\\light\\documents\\sentiment-analysis-bert\\venv\\lib\\site-packages (from huggingface_hub) (25.0)\n",
"Requirement already satisfied: pyyaml>=5.1 in c:\\users\\light\\documents\\sentiment-analysis-bert\\venv\\lib\\site-packages (from huggingface_hub) (6.0.2)\n",
"Requirement already satisfied: requests in c:\\users\\light\\documents\\sentiment-analysis-bert\\venv\\lib\\site-packages (from huggingface_hub) (2.32.3)\n",
"Requirement already satisfied: tqdm>=4.42.1 in c:\\users\\light\\documents\\sentiment-analysis-bert\\venv\\lib\\site-packages (from huggingface_hub) (4.67.1)\n",
"Requirement already satisfied: typing-extensions>=3.7.4.3 in c:\\users\\light\\documents\\sentiment-analysis-bert\\venv\\lib\\site-packages (from huggingface_hub) (4.13.2)\n",
"Requirement already satisfied: colorama in c:\\users\\light\\documents\\sentiment-analysis-bert\\venv\\lib\\site-packages (from tqdm>=4.42.1->huggingface_hub) (0.4.6)\n",
"Requirement already satisfied: charset-normalizer<4,>=2 in c:\\users\\light\\documents\\sentiment-analysis-bert\\venv\\lib\\site-packages (from requests->huggingface_hub) (3.4.2)\n",
"Requirement already satisfied: idna<4,>=2.5 in c:\\users\\light\\documents\\sentiment-analysis-bert\\venv\\lib\\site-packages (from requests->huggingface_hub) (3.10)\n",
"Requirement already satisfied: urllib3<3,>=1.21.1 in c:\\users\\light\\documents\\sentiment-analysis-bert\\venv\\lib\\site-packages (from requests->huggingface_hub) (2.4.0)\n",
"Requirement already satisfied: certifi>=2017.4.17 in c:\\users\\light\\documents\\sentiment-analysis-bert\\venv\\lib\\site-packages (from requests->huggingface_hub) (2025.4.26)\n",
"Using cached huggingface_hub-0.32.0-py3-none-any.whl (509 kB)\n",
"Installing collected packages: huggingface_hub\n",
" Attempting uninstall: huggingface_hub\n",
" Found existing installation: huggingface-hub 0.31.1\n",
" Uninstalling huggingface-hub-0.31.1:\n",
" Successfully uninstalled huggingface-hub-0.31.1\n",
"Successfully installed huggingface_hub-0.32.0\n",
"Note: you may need to restart the kernel to use updated packages.\n"
]
}
],
"source": [
"%pip install --upgrade huggingface_hub"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "031f4c70-5a75-4d89-9905-bbf8016b7b68",
"metadata": {},
"outputs": [],
"source": [
"import os\n",
"from huggingface_hub import HfApi, login, create_repo\n",
"\n",
"# --- CONFIGURACIÓN CRUCIAL ---\n",
"HF_USERNAME = \"Light-Dav\" # ¡Tu nombre de usuario correcto!\n",
"HF_TOKEN = \"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\" # ¡Tu token de Hugging Face!\n",
"\n",
"REPO_NAME = \"sentiment-analysis-full-project\" # <--- ¡Confirma que este es el nombre EXACTO del repo en HF Hub!\n",
"REPO_ID = f\"{HF_USERNAME}/{REPO_NAME}\"\n",
"\n",
"# --- AJUSTE DE LA RUTA DEL PROYECTO ---\n",
"# Esto asegurará que siempre suba la raíz de tu proyecto, sin importar dónde esté el notebook.\n",
"# Asumimos que tu carpeta principal es 'sentiment-analysis-bert'\n",
"# y que tu notebook está dentro de ella o en una subcarpeta (como 'notebooks').\n",
"# Puedes ajustar esta ruta si tu proyecto no está en C:\\Users\\Light\\Documents\\sentiment-analysis-bert\n",
"PROJECT_ROOT_DIR = \"C:\\\\Users\\\\Light\\\\Documents\\\\sentiment-analysis-bert\"\n",
"\n",
"\n",
"print(f\"La ruta del proyecto a subir es: {PROJECT_ROOT_DIR}\")\n",
"print(f\"El repositorio de destino será: {REPO_ID}\")\n",
"\n",
"# --- EJECUCIÓN ---\n",
"try:\n",
" print(\"\\n--- Paso 1: Iniciando sesión en Hugging Face Hub ---\")\n",
" login(token=HF_TOKEN)\n",
" print(\"Inicio de sesión exitoso en Hugging Face Hub.\")\n",
"\n",
" api = HfApi()\n",
"\n",
" print(f\"\\n--- Paso 2: Creando/Verificando el repositorio '{REPO_ID}' en Hugging Face Hub ---\")\n",
" create_repo(repo_id=REPO_ID, private=False, exist_ok=True, token=HF_TOKEN)\n",
" print(f\"Repositorio '{REPO_ID}' creado o ya existe en Hugging Face Hub.\")\n",
"\n",
" print(f\"\\n--- Paso 3: Subiendo el contenido de '{PROJECT_ROOT_DIR}' a '{REPO_ID}' ---\")\n",
" api.upload_folder(\n",
" folder_path=PROJECT_ROOT_DIR,\n",
" repo_id=REPO_ID,\n",
" repo_type=\"model\",\n",
" commit_message=\"Initial upload of full sentiment analysis project (code, notebooks, data)\",\n",
" # Ahora 'git_exclude' debería funcionar después de la actualización.\n",
" git_exclude=[\n",
" \"venv/\", # Excluye el entorno virtual\n",
" \"**/__pycache__/\", # Excluye archivos de caché de Python\n",
" \"*.ipynb_checkpoints/\", # Excluye checkpoints de Jupyter si están en la raíz\n",
" \"notebooks/.ipynb_checkpoints/\", # Excluye checkpoints específicos de notebooks\n",
" # Puedes añadir más exclusiones aquí, ej: \"data/raw_large_files/\"\n",
" # También podrías querer excluir tu modelo ya subido si ya está en otro repo:\n",
" # \"sentiment-bert-model/\"\n",
" ],\n",
" multi_commits=True # Útil para uploads grandes\n",
" )\n",
"\n",
" print(\"\\n¡Carga de todo el proyecto completada con éxito!\")\n",
" print(f\"Tu proyecto está ahora disponible en: https://huggingface.co/{REPO_ID}\")\n",
"\n",
"except Exception as e:\n",
" print(f\"\\nERROR al subir el proyecto a Hugging Face Hub: {e}\")\n",
" print(\"Verifica los siguientes puntos:\")\n",
" print(f\"- Tu nombre de usuario: '{HF_USERNAME}' y tu token son correctos y tienen permisos de escritura.\")\n",
" print(f\"- El nombre del repositorio: '{REPO_NAME}' es el que deseas.\")\n",
" print(f\"- La ruta local del proyecto: '{PROJECT_ROOT_DIR}' es la correcta y contiene todos tus archivos.\")\n",
" print(\"- Tienes conexión a internet.\")\n",
" print(\"- ¡MUY IMPORTANTE: Asegúrate de haber reiniciado el kernel de Jupyter después de actualizar la librería!\")"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.10"
}
},
"nbformat": 4,
"nbformat_minor": 5
}