Text Generation
PEFT
Safetensors
English
llama-3.1
lora
qlora
unsloth
bhagavad-gita
hinduism
philosophy
spiritual
fine-tuned
conversational
Instructions to use buildrestart/Gitallama with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use buildrestart/Gitallama with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("unsloth/meta-llama-3.1-8b-instruct-bnb-4bit") model = PeftModel.from_pretrained(base_model, "buildrestart/Gitallama") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- Unsloth Studio
How to use buildrestart/Gitallama 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 buildrestart/Gitallama 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 buildrestart/Gitallama to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for buildrestart/Gitallama to start chatting
Load model with FastModel
pip install unsloth from unsloth import FastModel model, tokenizer = FastModel.from_pretrained( model_name="buildrestart/Gitallama", max_seq_length=2048, )
Update model card
Browse files
README.md
CHANGED
|
@@ -1,210 +1,148 @@
|
|
| 1 |
---
|
| 2 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3 |
library_name: peft
|
| 4 |
pipeline_tag: text-generation
|
| 5 |
-
tags:
|
| 6 |
-
- base_model:adapter:unsloth/meta-llama-3.1-8b-instruct-bnb-4bit
|
| 7 |
-
- lora
|
| 8 |
-
- sft
|
| 9 |
-
- transformers
|
| 10 |
-
- trl
|
| 11 |
-
- unsloth
|
| 12 |
-
---
|
| 13 |
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
<!-- Provide a quick summary of what the model is/does. -->
|
| 17 |
|
|
|
|
| 18 |
|
|
|
|
| 19 |
|
| 20 |
## Model Details
|
| 21 |
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
- **Model type:** [More Information Needed]
|
| 32 |
-
- **Language(s) (NLP):** [More Information Needed]
|
| 33 |
-
- **License:** [More Information Needed]
|
| 34 |
-
- **Finetuned from model [optional]:** [More Information Needed]
|
| 35 |
-
|
| 36 |
-
### Model Sources [optional]
|
| 37 |
-
|
| 38 |
-
<!-- Provide the basic links for the model. -->
|
| 39 |
-
|
| 40 |
-
- **Repository:** [More Information Needed]
|
| 41 |
-
- **Paper [optional]:** [More Information Needed]
|
| 42 |
-
- **Demo [optional]:** [More Information Needed]
|
| 43 |
-
|
| 44 |
-
## Uses
|
| 45 |
-
|
| 46 |
-
<!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
|
| 47 |
-
|
| 48 |
-
### Direct Use
|
| 49 |
-
|
| 50 |
-
<!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->
|
| 51 |
-
|
| 52 |
-
[More Information Needed]
|
| 53 |
-
|
| 54 |
-
### Downstream Use [optional]
|
| 55 |
-
|
| 56 |
-
<!-- This section is for the model use when fine-tuned for a task, or when plugged into a larger ecosystem/app -->
|
| 57 |
-
|
| 58 |
-
[More Information Needed]
|
| 59 |
-
|
| 60 |
-
### Out-of-Scope Use
|
| 61 |
-
|
| 62 |
-
<!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
|
| 63 |
-
|
| 64 |
-
[More Information Needed]
|
| 65 |
-
|
| 66 |
-
## Bias, Risks, and Limitations
|
| 67 |
-
|
| 68 |
-
<!-- This section is meant to convey both technical and sociotechnical limitations. -->
|
| 69 |
-
|
| 70 |
-
[More Information Needed]
|
| 71 |
-
|
| 72 |
-
### Recommendations
|
| 73 |
-
|
| 74 |
-
<!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
|
| 75 |
-
|
| 76 |
-
Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.
|
| 77 |
-
|
| 78 |
-
## How to Get Started with the Model
|
| 79 |
-
|
| 80 |
-
Use the code below to get started with the model.
|
| 81 |
-
|
| 82 |
-
[More Information Needed]
|
| 83 |
|
| 84 |
## Training Details
|
| 85 |
|
| 86 |
-
|
| 87 |
-
|
| 88 |
-
|
| 89 |
-
|
| 90 |
-
|
| 91 |
-
|
| 92 |
-
|
| 93 |
-
|
| 94 |
-
|
| 95 |
-
|
| 96 |
-
|
| 97 |
-
|
| 98 |
-
|
| 99 |
-
|
| 100 |
-
|
| 101 |
-
|
| 102 |
-
|
| 103 |
-
|
| 104 |
-
|
| 105 |
-
|
| 106 |
-
|
| 107 |
-
|
| 108 |
-
|
| 109 |
-
|
| 110 |
-
|
| 111 |
-
|
| 112 |
-
|
| 113 |
-
|
| 114 |
-
|
| 115 |
-
|
| 116 |
-
|
| 117 |
-
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
|
| 123 |
-
|
| 124 |
-
|
| 125 |
-
|
| 126 |
-
|
| 127 |
-
|
| 128 |
-
|
| 129 |
-
|
| 130 |
-
|
| 131 |
-
|
| 132 |
-
|
| 133 |
-
|
| 134 |
-
|
| 135 |
-
|
| 136 |
-
|
| 137 |
-
|
| 138 |
-
|
| 139 |
-
|
| 140 |
-
|
| 141 |
-
|
| 142 |
-
|
| 143 |
-
|
| 144 |
-
|
| 145 |
-
|
| 146 |
-
|
| 147 |
-
|
| 148 |
-
|
| 149 |
-
|
| 150 |
-
|
| 151 |
-
|
| 152 |
-
|
| 153 |
-
|
| 154 |
-
|
| 155 |
-
|
| 156 |
-
|
| 157 |
-
|
| 158 |
-
|
| 159 |
-
|
| 160 |
-
|
| 161 |
-
|
| 162 |
-
|
| 163 |
-
|
| 164 |
-
|
| 165 |
-
|
| 166 |
-
|
| 167 |
-
|
| 168 |
-
|
| 169 |
-
|
| 170 |
-
|
| 171 |
-
|
| 172 |
-
|
| 173 |
-
|
| 174 |
-
|
| 175 |
-
##
|
| 176 |
-
|
| 177 |
-
|
| 178 |
-
|
| 179 |
-
|
| 180 |
-
|
| 181 |
-
|
| 182 |
-
|
| 183 |
-
|
| 184 |
-
|
| 185 |
-
|
| 186 |
-
|
| 187 |
-
|
| 188 |
-
|
| 189 |
-
|
| 190 |
-
|
| 191 |
-
##
|
| 192 |
-
|
| 193 |
-
|
| 194 |
-
|
| 195 |
-
[More Information Needed]
|
| 196 |
-
|
| 197 |
-
## More Information [optional]
|
| 198 |
-
|
| 199 |
-
[More Information Needed]
|
| 200 |
-
|
| 201 |
-
## Model Card Authors [optional]
|
| 202 |
-
|
| 203 |
-
[More Information Needed]
|
| 204 |
-
|
| 205 |
-
## Model Card Contact
|
| 206 |
-
|
| 207 |
-
[More Information Needed]
|
| 208 |
-
### Framework versions
|
| 209 |
-
|
| 210 |
-
- PEFT 0.18.1
|
|
|
|
| 1 |
---
|
| 2 |
+
license: llama3.1
|
| 3 |
+
base_model: meta-llama/Meta-Llama-3.1-8B-Instruct
|
| 4 |
+
language:
|
| 5 |
+
- en
|
| 6 |
+
tags:
|
| 7 |
+
- llama-3.1
|
| 8 |
+
- lora
|
| 9 |
+
- qlora
|
| 10 |
+
- peft
|
| 11 |
+
- unsloth
|
| 12 |
+
- bhagavad-gita
|
| 13 |
+
- hinduism
|
| 14 |
+
- philosophy
|
| 15 |
+
- spiritual
|
| 16 |
+
- fine-tuned
|
| 17 |
library_name: peft
|
| 18 |
pipeline_tag: text-generation
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 19 |
|
| 20 |
+
---
|
|
|
|
|
|
|
| 21 |
|
| 22 |
+
# Llama 3.1 8B — Bhagavad Gita Guide
|
| 23 |
|
| 24 |
+
A QLoRA fine-tune of [Meta-Llama-3.1-8B-Instruct](https://huggingface.co/meta-llama/Meta-Llama-3.1-8B-Instruct) trained to answer questions about the Bhagavad Gita — its verses, philosophy, characters, and teachings.
|
| 25 |
|
| 26 |
## Model Details
|
| 27 |
|
| 28 |
+
| Property | Value |
|
| 29 |
+
|---|---|
|
| 30 |
+
| Base model | `meta-llama/Meta-Llama-3.1-8B-Instruct` |
|
| 31 |
+
| Fine-tune method | QLoRA (4-bit NF4 + LoRA) via Unsloth |
|
| 32 |
+
| LoRA rank / alpha | r=32, α=64 (RSLoRA) |
|
| 33 |
+
| LoRA target modules | q, k, v, o, gate, up, down projections |
|
| 34 |
+
| Adapter size | ~321 MB |
|
| 35 |
+
| Max sequence length | 2048 |
|
| 36 |
+
| Precision | bfloat16 + TF32 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 37 |
|
| 38 |
## Training Details
|
| 39 |
|
| 40 |
+
| Property | Value |
|
| 41 |
+
|---|---|
|
| 42 |
+
| Epochs | 3 |
|
| 43 |
+
| Train examples | 3,801 |
|
| 44 |
+
| Validation examples | 422 |
|
| 45 |
+
| Effective batch size | 512 (8 × grad_accum 64) |
|
| 46 |
+
| Learning rate | 2e-4 (cosine, 5% warmup) |
|
| 47 |
+
| Optimizer | AdamW 8-bit |
|
| 48 |
+
| Train loss | 1.277 |
|
| 49 |
+
| Eval loss | 0.924 |
|
| 50 |
+
|
| 51 |
+
|
| 52 |
+
## Usage
|
| 53 |
+
|
| 54 |
+
### Load the adapter (recommended — memory efficient)
|
| 55 |
+
|
| 56 |
+
```python
|
| 57 |
+
import torch
|
| 58 |
+
from transformers import AutoTokenizer, AutoModelForCausalLM
|
| 59 |
+
from peft import PeftModel
|
| 60 |
+
|
| 61 |
+
base_model_id = "meta-llama/Meta-Llama-3.1-8B-Instruct"
|
| 62 |
+
adapter_id = "buildrestart/Gitallama"
|
| 63 |
+
|
| 64 |
+
tokenizer = AutoTokenizer.from_pretrained(base_model_id)
|
| 65 |
+
model = AutoModelForCausalLM.from_pretrained(
|
| 66 |
+
base_model_id,
|
| 67 |
+
torch_dtype=torch.bfloat16,
|
| 68 |
+
device_map="auto",
|
| 69 |
+
load_in_4bit=True,
|
| 70 |
+
)
|
| 71 |
+
model = PeftModel.from_pretrained(model, adapter_id)
|
| 72 |
+
model.eval()
|
| 73 |
+
```
|
| 74 |
+
|
| 75 |
+
### Generate a response
|
| 76 |
+
|
| 77 |
+
```python
|
| 78 |
+
SYSTEM_PROMPT = (
|
| 79 |
+
"You are a knowledgeable guide on the Bhagavad Gita, the ancient Hindu scripture "
|
| 80 |
+
"containing the dialogue between Prince Arjuna and Lord Krishna. Provide thoughtful, "
|
| 81 |
+
"accurate explanations of its verses, teachings, and philosophical concepts."
|
| 82 |
+
)
|
| 83 |
+
|
| 84 |
+
messages = [
|
| 85 |
+
{"role": "system", "content": SYSTEM_PROMPT},
|
| 86 |
+
{"role": "user", "content": "What does the Bhagavad Gita teach about karma?"},
|
| 87 |
+
]
|
| 88 |
+
|
| 89 |
+
prompt = tokenizer.apply_chat_template(
|
| 90 |
+
messages, tokenize=False, add_generation_prompt=True
|
| 91 |
+
)
|
| 92 |
+
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
|
| 93 |
+
|
| 94 |
+
with torch.no_grad():
|
| 95 |
+
output = model.generate(
|
| 96 |
+
**inputs,
|
| 97 |
+
max_new_tokens=500,
|
| 98 |
+
temperature=0.7,
|
| 99 |
+
top_p=0.9,
|
| 100 |
+
do_sample=True,
|
| 101 |
+
pad_token_id=tokenizer.eos_token_id,
|
| 102 |
+
)
|
| 103 |
+
|
| 104 |
+
response = tokenizer.decode(
|
| 105 |
+
output[0][inputs["input_ids"].shape[1]:],
|
| 106 |
+
skip_special_tokens=True,
|
| 107 |
+
)
|
| 108 |
+
print(response)
|
| 109 |
+
```
|
| 110 |
+
|
| 111 |
+
### Using Unsloth (2× faster inference)
|
| 112 |
+
|
| 113 |
+
```python
|
| 114 |
+
import torch
|
| 115 |
+
from unsloth import FastLanguageModel
|
| 116 |
+
from peft import PeftModel
|
| 117 |
+
|
| 118 |
+
model, tokenizer = FastLanguageModel.from_pretrained(
|
| 119 |
+
model_name="unsloth/meta-llama-3.1-8b-instruct-bnb-4bit",
|
| 120 |
+
max_seq_length=2048,
|
| 121 |
+
dtype=torch.bfloat16,
|
| 122 |
+
load_in_4bit=True,
|
| 123 |
+
)
|
| 124 |
+
model = PeftModel.from_pretrained(model, "buildrestart/Gitallama")
|
| 125 |
+
model = model.merge_and_unload()
|
| 126 |
+
FastLanguageModel.for_inference(model)
|
| 127 |
+
```
|
| 128 |
+
|
| 129 |
+
## Example Outputs
|
| 130 |
+
|
| 131 |
+
**Q: What is the central message of the Bhagavad Gita?**
|
| 132 |
+
|
| 133 |
+
> The central message of the Bhagavad Gita is the path of self-realization and liberation through the practice of yoga, which is often interpreted as a path of devotion, knowledge, and action. The Gita emphasizes the importance of fulfilling one's duties (dharma) without attachment to the outcomes, and it teaches the concept of non-attachment (vairagya) to worldly possessions and desires...
|
| 134 |
+
|
| 135 |
+
**Q: Why was Arjuna reluctant to fight at Kurukshetra?**
|
| 136 |
+
|
| 137 |
+
> Arjuna was reluctant to fight because he was torn between his duty as a warrior (Kshatriya) and his personal feelings of compassion and non-violence. He was worried about killing his kin and friends, and he questioned the purpose of war. Krishna addressed Arjuna's doubts by explaining the concept of dharma (duty) and the inevitability of change...
|
| 138 |
+
|
| 139 |
+
## Limitations
|
| 140 |
+
|
| 141 |
+
- Trained on ~4K examples; may give brief answers on less common topics.
|
| 142 |
+
- Knowledge is limited to the Bhagavad Gita — not a general Hindu scripture expert.
|
| 143 |
+
- As with all LLMs, outputs should be verified against authoritative translations for scholarly use.
|
| 144 |
+
|
| 145 |
+
## License
|
| 146 |
+
|
| 147 |
+
This adapter inherits the [Llama 3.1 Community License](https://llama.meta.com/llama3_1/license/).
|
| 148 |
+
The training data is sourced from public domain and permissively licensed HuggingFace datasets.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|