Text Generation
PEFT
Safetensors
English
lora
sft
trl
unsloth
roleplay
character
blackadder
conversational
Instructions to use amkhrjee/blackadder-1B-4bit-lora with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use amkhrjee/blackadder-1B-4bit-lora with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("unsloth/llama-3.2-1b-instruct-bnb-4bit") model = PeftModel.from_pretrained(base_model, "amkhrjee/blackadder-1B-4bit-lora") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- Unsloth Studio
How to use amkhrjee/blackadder-1B-4bit-lora with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for amkhrjee/blackadder-1B-4bit-lora to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for amkhrjee/blackadder-1B-4bit-lora to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for amkhrjee/blackadder-1B-4bit-lora to start chatting
Load model with FastModel
pip install unsloth from unsloth import FastModel model, tokenizer = FastModel.from_pretrained( model_name="amkhrjee/blackadder-1B-4bit-lora", max_seq_length=2048, )
| base_model: unsloth/llama-3.2-1b-instruct-bnb-4bit | |
| library_name: peft | |
| pipeline_tag: text-generation | |
| license: llama3.2 | |
| language: | |
| - en | |
| datasets: | |
| - amkhrjee/blackadder-conversation | |
| tags: | |
| - base_model:adapter:unsloth/llama-3.2-1b-instruct-bnb-4bit | |
| - lora | |
| - sft | |
| - trl | |
| - unsloth | |
| - peft | |
| - roleplay | |
| - character | |
| - blackadder | |
| # Blackadder-1B | |
| <img src="https://i.pinimg.com/736x/f9/1e/49/f91e497cff77c206c5ab68f25b092467.jpg" alt="Blackadder" width="300"> | |
| A LoRA adapter that turns **Llama-3.2-1B-Instruct** into **Edmund Blackadder** from the BBC series *Blackadder*. | |
| > **You:** Do you have a plan? | |
| > **Blackadder:** Yes, I do. It’s the most cunning plan since Atticus Finch put on his knighthood and became the Archbishop of Canterbury. | |
| ## Model Details | |
| - **Developed by:** [amkhrjee](https://huggingface.co/amkhrjee) | |
| - **Model type:** Causal LM (LoRA adapter for instruction-tuned chat) | |
| - **Base model:** [`unsloth/llama-3.2-1b-instruct-bnb-4bit`](https://huggingface.co/unsloth/llama-3.2-1b-instruct-bnb-4bit) (Llama 3.2 1B Instruct) | |
| - **Language:** English | |
| - **License:** [Llama 3.2 Community License](https://github.com/meta-llama/llama-models/blob/main/models/llama3_2/LICENSE) | |
| - **Finetuned with:** [Unsloth](https://github.com/unslothai/unsloth) + [TRL](https://github.com/huggingface/trl) (PEFT/LoRA) | |
| This repository contains **only the LoRA adapter** — you load it on top of the base model at runtime. | |
| ## How to Get Started | |
| The model was trained with a system prompt that defines the character. Keep it for best results: | |
| ```python | |
| import torch | |
| from peft import PeftModel | |
| from transformers import AutoModelForCausalLM, AutoTokenizer, TextStreamer | |
| BASE = "unsloth/Llama-3.2-1B-Instruct-bnb-4bit" | |
| ADAPTER = "amkhrjee/blackadder-1B-4bit-lora" | |
| tokenizer = AutoTokenizer.from_pretrained(BASE) | |
| model = AutoModelForCausalLM.from_pretrained(BASE, torch_dtype=torch.bfloat16, device_map="auto") | |
| model = PeftModel.from_pretrained(model, ADAPTER) | |
| SYS_PROMPT = ( | |
| "You are Edmund Blackadder. Remain in character at all times. Speak with sharp wit, " | |
| "dry sarcasm, cynical intelligence, and eloquent British humor. Be concise, articulate, " | |
| "and often mock foolish ideas with clever observations. Never mention being an AI or roleplaying." | |
| ) | |
| messages = [ | |
| {"role": "system", "content": SYS_PROMPT}, | |
| {"role": "user", "content": "Do you have a plan?"}, | |
| ] | |
| inputs = tokenizer.apply_chat_template( | |
| messages, add_generation_prompt=True, return_tensors="pt", return_dict=True | |
| ).to(model.device) | |
| model.generate( | |
| **inputs, | |
| max_new_tokens=80, | |
| temperature=1.0, | |
| top_p=0.95, | |
| top_k=64, | |
| streamer=TextStreamer(tokenizer, skip_prompt=True), | |
| ) | |
| ``` | |
| ### With Unsloth (faster) | |
| ```python | |
| from unsloth import FastModel | |
| model, tokenizer = FastModel.from_pretrained("amkhrjee/blackadder-1B-4bit-lora", load_in_4bit=True) | |
| ``` | |
| ## Training Details | |
| ### Data | |
| Fine-tuned on [`amkhrjee/blackadder-conversation`](https://huggingface.co/datasets/amkhrjee/blackadder-conversation) — **2,596** user/assistant exchanges drawn from Blackadder dialogue, each prefixed with the in-character system prompt above. Training used `train_on_responses_only`, so the loss is computed on the assistant's replies only. | |
| ### Hyperparameters | |
| | | | | |
| |---|---| | |
| | Method | LoRA (rsLoRA) | | |
| | Rank (`r`) | 128 | | |
| | `lora_alpha` | 64 | | |
| | `lora_dropout` | 0 | | |
| | Target modules | all linear layers | | |
| | Epochs | 3 | | |
| | Effective batch size | 32 (4 × 8 grad accum) | | |
| | Optimizer | `adamw_8bit` | | |
| | Learning rate | 2e-4 (linear, 5 warmup steps) | | |
| | Weight decay | 0.001 | | |
| | Precision | bf16 | | |
| | Seed | 42 | | |
| | Trainable params | 90.2M / 1.33B (6.8%) | | |
| ```bibtex | |
| @misc{blackadder1b, | |
| title = {Blackadder-1B-4bit-lora: a Llama-3.2-1B LoRA character adapter}, | |
| author = {amkhrjee}, | |
| year = {2026}, | |
| howpublished = {\url{https://huggingface.co/amkhrjee/blackadder-1B-4bit-lora}} | |
| } | |
| ``` | |