Update README.md
Browse files
README.md
CHANGED
|
@@ -15,4 +15,67 @@ tags:
|
|
| 15 |
- tinyllama
|
| 16 |
- summarization
|
| 17 |
- question-answering
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 18 |
---
|
|
|
|
| 15 |
- tinyllama
|
| 16 |
- summarization
|
| 17 |
- question-answering
|
| 18 |
+
|
| 19 |
+
---
|
| 20 |
+
# Manoghn/tinyllama-lesson-synthesizer
|
| 21 |
+
|
| 22 |
+
## 📚 Model Description
|
| 23 |
+
|
| 24 |
+
This repository hosts `Manoghn/tinyllama-lesson-synthesizer`, a fine-tuned **TinyLlama/TinyLlama-1.1B-Chat-v1.0** model designed to generate comprehensive and engaging educational lessons. It's a key component of the larger SynthAI project, which aims to create multi-modal learning content including lessons, images, quizzes, and audio narration.
|
| 25 |
+
|
| 26 |
+
The model has been specifically adapted using **LoRA (Low-Rank Adaptation)** to excel at generating structured, informative text suitable for educational purposes across various domains.
|
| 27 |
+
|
| 28 |
+
---
|
| 29 |
+
|
| 30 |
+
## 🎯 Objective
|
| 31 |
+
|
| 32 |
+
The primary objective of this fine-tuned model is to **automatically generate detailed educational lessons** on diverse topics. By providing a topic, the model produces well-structured, Markdown-formatted content, serving as a foundation for broader educational material synthesis.
|
| 33 |
+
|
| 34 |
+
---
|
| 35 |
+
|
| 36 |
+
## 📊 Training Data
|
| 37 |
+
|
| 38 |
+
The model was fine-tuned on a custom-curated dataset of **60 educational lessons**.
|
| 39 |
+
|
| 40 |
+
* **Data Collection:** Lessons were generated using the **Llama-3.1-8B-Instruct** model via the Hugging Face Inference Client. Each lesson was crafted in response to a detailed prompt instructing the model to act as an "expert educational content creator."
|
| 41 |
+
* **Content Structure:** The generated lessons adhered to a specific Markdown format, including:
|
| 42 |
+
* A descriptive level-1 heading.
|
| 43 |
+
* An introduction explaining the topic's importance.
|
| 44 |
+
* 3-5 key concepts with clear explanations.
|
| 45 |
+
* Real-world applications or examples.
|
| 46 |
+
* Practical examples, formulas, or code snippets (if relevant).
|
| 47 |
+
* A concise summary.
|
| 48 |
+
* **Domains Covered:** The dataset spans four educational domains:
|
| 49 |
+
* Science (e.g., Photosynthesis, Newton's Laws of Motion)
|
| 50 |
+
* Mathematics (e.g., Pythagorean Theorem, Quadratic Equations)
|
| 51 |
+
* Computer Science (e.g., Binary Number System, Data Structures Overview)
|
| 52 |
+
* Humanities (e.g., Renaissance Art Period, World War II Causes)
|
| 53 |
+
* **Dataset Size:** The final dataset comprised 60 high-quality lesson examples, split into training (70%), validation (15%), and test (15%) sets.
|
| 54 |
+
|
| 55 |
+
---
|
| 56 |
+
|
| 57 |
+
## ⚙️ Fine-tuning Methodology
|
| 58 |
+
|
| 59 |
+
The `Manoghn/tinyllama-lesson-synthesizer` model was fine-tuned from `TinyLlama/TinyLlama-1.1B-Chat-v1.0` using Parameter-Efficient Fine-tuning (PEFT) with LoRA.
|
| 60 |
+
|
| 61 |
+
* **Base Model:** `TinyLlama/TinyLlama-1.1B-Chat-v1.0`
|
| 62 |
+
* **Quantization:** The base model was loaded with **8-bit quantization** using `BitsAndBytesConfig` to reduce memory footprint and enable training on resource-constrained environments (Colab free tier T4 GPU).
|
| 63 |
+
* **LoRA Configuration:**
|
| 64 |
+
* `r=8`: LoRA rank
|
| 65 |
+
* `lora_alpha=32`: Scaling factor
|
| 66 |
+
* `target_modules=["q_proj", "v_proj"]`: LoRA adapters applied to query and value projection layers.
|
| 67 |
+
* `lora_dropout=0.05`
|
| 68 |
+
* `bias="none"`
|
| 69 |
+
* `task_type=TaskType.CAUSAL_LM`
|
| 70 |
+
* **Training Parameters (`transformers.TrainingArguments`):**
|
| 71 |
+
* `output_dir`: `/content/drive/MyDrive/genai_synthesizer/results`
|
| 72 |
+
* `per_device_train_batch_size=1`
|
| 73 |
+
* `per_device_eval_batch_size=1`
|
| 74 |
+
* `learning_rate=2e-4`
|
| 75 |
+
* `num_train_epochs=1`
|
| 76 |
+
* `logging_steps=10`
|
| 77 |
+
* `fp16=True`
|
| 78 |
+
* `report_to="none"`
|
| 79 |
+
* **Training Environment:** The fine-tuning was performed on a **Google Colab free tier T4 GPU**.
|
| 80 |
+
|
| 81 |
---
|