{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "b7c4923e-d406-4a06-a847-b068a1f8154a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Requirement already satisfied: U in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (1.0)\n", "Requirement already satisfied: bitsandbytes in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (0.45.3)\n", "Requirement already satisfied: revel>=0.9.0 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from U) (0.9.1)\n", "Requirement already satisfied: typing-extensions in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from U) (4.12.2)\n", "Requirement already satisfied: torch<3,>=2.0 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from bitsandbytes) (2.2.1+cu121)\n", "Requirement already satisfied: numpy>=1.17 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from bitsandbytes) (1.26.4)\n", "Requirement already satisfied: blessed<2.0.0,>=1.19.1 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from revel>=0.9.0->U) (1.20.0)\n", "Requirement already satisfied: colorama<0.5.0,>=0.4.6 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from revel>=0.9.0->U) (0.4.6)\n", "Requirement already satisfied: readchar<5.0.0,>=4.0.3 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from revel>=0.9.0->U) (4.2.1)\n", "Requirement already satisfied: filelock in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (3.17.0)\n", "Requirement already satisfied: sympy in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (1.13.3)\n", "Requirement already satisfied: networkx in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (3.4.2)\n", "Requirement already satisfied: jinja2 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (3.1.5)\n", "Requirement already satisfied: fsspec in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (2024.12.0)\n", "Requirement already satisfied: nvidia-cuda-nvrtc-cu12==12.1.105 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (12.1.105)\n", "Requirement already satisfied: nvidia-cuda-runtime-cu12==12.1.105 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (12.1.105)\n", "Requirement already satisfied: nvidia-cuda-cupti-cu12==12.1.105 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (12.1.105)\n", "Requirement already satisfied: nvidia-cudnn-cu12==8.9.2.26 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (8.9.2.26)\n", "Requirement already satisfied: nvidia-cublas-cu12==12.1.3.1 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (12.1.3.1)\n", "Requirement already satisfied: nvidia-cufft-cu12==11.0.2.54 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (11.0.2.54)\n", "Requirement already satisfied: nvidia-curand-cu12==10.3.2.106 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (10.3.2.106)\n", "Requirement already satisfied: nvidia-cusolver-cu12==11.4.5.107 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (11.4.5.107)\n", "Requirement already satisfied: nvidia-cusparse-cu12==12.1.0.106 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (12.1.0.106)\n", "Requirement already satisfied: nvidia-nccl-cu12==2.19.3 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (2.19.3)\n", "Requirement already satisfied: nvidia-nvtx-cu12==12.1.105 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (12.1.105)\n", "Requirement already satisfied: triton==2.2.0 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from torch<3,>=2.0->bitsandbytes) (2.2.0)\n", "Requirement already satisfied: nvidia-nvjitlink-cu12 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from nvidia-cusolver-cu12==11.4.5.107->torch<3,>=2.0->bitsandbytes) (12.8.61)\n", "Requirement already satisfied: wcwidth>=0.1.4 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from blessed<2.0.0,>=1.19.1->revel>=0.9.0->U) (0.2.13)\n", "Requirement already satisfied: six>=1.9.0 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from blessed<2.0.0,>=1.19.1->revel>=0.9.0->U) (1.17.0)\n", "Requirement already satisfied: MarkupSafe>=2.0 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from jinja2->torch<3,>=2.0->bitsandbytes) (3.0.2)\n", "Requirement already satisfied: mpmath<1.4,>=1.1.0 in /system/conda/miniconda3/envs/cloudspace/lib/python3.10/site-packages (from sympy->torch<3,>=2.0->bitsandbytes) (1.3.0)\n" ] } ], "source": [ "!pip install U bitsandbytes" ] }, { "cell_type": "code", "execution_count": 6, "id": "27fd8559-b9a2-4c1f-bebd-eb19e7acac39", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "The `load_in_4bit` and `load_in_8bit` arguments are deprecated and will be removed in the future versions. Please, pass a `BitsAndBytesConfig` object in `quantization_config` argument instead.\n" ] } ], "source": [ "from transformers import AutoModelForCausalLM, AutoTokenizer\n", "import torch\n", "\n", "model_name = \"gpt2\"\n", "\n", "model = AutoModelForCausalLM.from_pretrained(\n", " model_name,\n", " load_in_4bit=True, # Enable 4-bit quantization\n", " device_map=\"auto\"\n", ")\n", "tokenizer = AutoTokenizer.from_pretrained(model_name)\n" ] }, { "cell_type": "code", "execution_count": 8, "id": "16061d86-4874-4f90-98b6-890ac640fde8", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Device set to use cuda:0\n", "Setting `pad_token_id` to `eos_token_id`:50256 for open-end generation.\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "how is the time required to make a long shot out of it when you have no idea when the money may be better spent on a small percentage of it which has to be purchased or sold without making a mistake?\n", "\n", "How should we know if a purchase has a minimum amount of effort and which is the right amount? This is a good place to start a review.\n", "\n", "One simple example of a money buyer looking to spend an extra $1 is when you can find a used car on eBay. It is likely the best starting point to consider as the one for the car you are buying for it at the time you get your check – and maybe even your retirement check even before you pay the $1,000 purchase deposit on it for your car. You may need to carefully evaluate your car before you buy it; check before you buy something for what you may want for your next purchase.\n", "\n", "Another way to look at it is when you sell it at a value around $\n" ] } ], "source": [ "from transformers import pipeline\n", "\n", "code_generator = pipeline(\"text-generation\", model=model, tokenizer=tokenizer)\n", "\n", "prompt = \"how is the time\"\n", "generated_code = code_generator(prompt, max_length=200, num_return_sequences=1)\n", "\n", "print(generated_code[0][\"generated_text\"])" ] }, { "cell_type": "code", "execution_count": 9, "id": "f8cf6fc1-8fd9-4f68-b9c5-4b58e3f57293", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "('quantization_model/tokenizer_config.json',\n", " 'quantization_model/special_tokens_map.json',\n", " 'quantization_model/vocab.json',\n", " 'quantization_model/merges.txt',\n", " 'quantization_model/added_tokens.json',\n", " 'quantization_model/tokenizer.json')" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model.save_pretrained(\"quantization_model\")\n", "tokenizer.save_pretrained(\"quantization_model\")" ] }, { "cell_type": "code", "execution_count": 10, "id": "f3078dbe-a264-4e11-af3a-8e670ac6f7af", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Folder 'quantization_model' has been zipped as 'quantization_model.zip'.\n" ] } ], "source": [ "import shutil\n", "\n", "# Specify the folder to be zipped\n", "folder_path = \"quantization_model\" # Replace with your actual folder name\n", "zip_name = \"quantization_model.zip\" # Desired zip file name\n", "\n", "# Create a zip archive\n", "shutil.make_archive(zip_name.replace('.zip', ''), 'zip', folder_path)\n", "\n", "print(f\"Folder '{folder_path}' has been zipped as '{zip_name}'.\")" ] }, { "cell_type": "code", "execution_count": null, "id": "f7f877b3-b7c3-4d68-a43f-21be464f3be8", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "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.10.10" } }, "nbformat": 4, "nbformat_minor": 5 }