File size: 8,099 Bytes
2418dfb
 
 
 
 
 
 
 
 
08899fd
74ff4f9
 
 
 
 
 
 
c70c792
9b4f0ef
 
b10672f
9b4f0ef
 
 
 
08899fd
cdb12a6
dc2c7b4
 
 
cdb12a6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
08899fd
 
 
cdb12a6
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
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
---
title: README
emoji: 😻
colorFrom: indigo
colorTo: purple
sdk: static
pinned: false
---

<a href="https://huggingface.co/learn/smol-course/unit0/1" style="color: #FFFFFF; font-weight: bold; text-decoration: none;">
<table width="100%" style="border-collapse: collapse;">
  <tr>
    <td style="
        background: linear-gradient(90deg, lightskyblue, lightcoral);
        border-radius: 8px; 
        padding: 12px 20px; 
        text-align: center;
        margin-left: 20px;
      ">
      <p style="margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'; font-size: 16px; font-weight: 500; color: #FFFFFF;">
        πŸš€ New Course material is LIVE! &nbsp;|&nbsp;  Follow the org to sign up
      </p>
    </td>
  </tr>
</table>
</a>

![Fine-Tuning Course thumbnail](https://github.com/huggingface/smol-course/blob/9cecab3b1eee7262413b4dfd97e92ad75ffe903e/banner.png?raw=true)


Welcome to the comprehensive (and smollest) course to **Fine-Tuning Language Models**!

This free course will take you on a journey, **from beginner to expert**, in understanding, implementing, and optimizing fine-tuning techniques for large language models.

This first unit will help you onboard:

* Discover the **course's syllabus**.
* **Get more information about the certification process and the schedule**.
* Get to know the team behind the course.
* Create your **account**.
* **Sign-up to our Discord server**, and meet your classmates and us.

Let's get started!

<Tip>

This course is smol but fast! It's for software developers and engineers looking to fast track their LLM fine-tuning skills. If that's not you, check out the [LLM Course](https://huggingface.co/learn/llm-course/).

</Tip>

## What to expect from this course?

In this course, you will:

* πŸ“– Study instruction tuning, supervised fine-tuning, and preference alignment in theory and practice.
* πŸ§‘β€πŸ’» Learn to use established fine-tuning frameworks and tools like TRL and Transformers.
* πŸ’Ύ Share your projects and explore fine-tuning applications created by the community.
* πŸ† Participate in challenges where you will evaluate your fine-tuned models against other students.
* πŸŽ“ Earn a certificate of completion by completing assignments.

At the end of this course, you'll understand **how to fine-tune language models effectively and build specialized AI applications using the latest fine-tuning techniques**.

## What does the course look like?

The course is composed of:

* _Foundational Units_: where you learn fine-tuning **concepts in theory**.
* _Hands-on_: where you'll learn **to use established fine-tuning frameworks** to adapt your models. These hands-on sections will have pre-configured environments.
* _Use case assignments_: where you'll apply the concepts you've learned to solve a real-world problem that you'll choose.
* _Collaborations_: We're collaborating with Hugging Face's partners to give you the latest fine-tuning implementations and tools.
 
This **course is a living project, evolving with your feedback and contributions!** Feel free to open issues and PRs in GitHub, and engage in discussions in our Discord server.

## What's the syllabus?

Here is the **general syllabus for the course**. A more detailed list of topics will be released with each unit.

| # | Topic | Description | Released |
| - | ----- | ----------- | -------- |
| 1 | Instruction Tuning | Supervised fine-tuning, chat templates, instruction following | βœ… |
| 2 | Evaluation | Benchmarks and custom domain evaluation | September |
| 3 | Preference Alignment | Aligning models to human preferences with algorithms like DPO. | October |
| 4 | Reinforcement Learning | Optimizing models with based on reinforcement policies. | October |
| 5 | Vision Language Models | Adapt and use multimodal models | November |
| 6 | Synthetic Data | Generate synthetic datasets for custom domains | November |
| 7 | Award Ceremony | Showcase projects and celebrate | December |

## What are the prerequisites?

To be able to follow this course, you should have:

* Basic understanding of AI and LLM concepts
* Familiarity with Python programming and machine learning fundamentals
* Experience with PyTorch or similar deep learning frameworks
* Understanding of transformers architecture basics

If you don't have any of these, don't worry. Check out the [LLM Course](https://huggingface.co/learn/llm-course/) to get started.

<Tip>

The above courses are not prerequisites in themselves, so if you understand the concepts of LLMs and transformers, you can start the course now!

</Tip>

## What tools do I need?

You only need 2 things:

* _A computer_ with an internet connection and preferably GPU access ([Hugging Face Pro](https://huggingface.co/pro) works great).
* An _account_: to access the course resources and create projects. If you don't have an account yet, you can create one [here](https://huggingface.co/join) (it's free).

## The Certification Process

You can choose to follow this course _in audit mode_, or do the activities and _get one of the two certificates we'll issue_. If you audit the course, you can participate in all the challenges and do assignments if you want, and **you don't need to notify us**.

The certification process is **completely free**:

* _To get a certification for fundamentals_: you need to complete Unit 1 of the course. This is intended for students that want to understand instruction tuning basics without building advanced applications.
* _To get a certificate of completion_: you need to complete all course units and submit a final project. This is intended for students that want to demonstrate mastery of fine-tuning techniques.

## What is the recommended pace?

Each chapter in this course is designed **to be completed in 1 week, with approximately 3-4 hours of work per week**.

Since there's a deadline, we provide you a recommended pace:

![Fine-Tuning Course thumbnail](https://github.com/huggingface/smol-course/blob/rerelease-chapter-1/schedule.png?raw=true)

## How to get the most out of the course?

To get the most out of the course, we have some advice:

1. [Join study groups in Discord](https://discord.gg/UrrTSsSyjb): Studying in groups is always easier. To do that, you need to join our discord server and verify your account.
2. **Do the quizzes and assignments**: The best way to learn is through hands-on practice and self-assessment.
3. **Define a schedule to stay in sync**: You can use our recommended pace schedule below or create yours.

![Course advice](https://huggingface.co/datasets/mcp-course/images/resolve/main/unit0/3.png)

## Who are we

About the authors:

### Ben Burtenshaw

Ben is a Machine Learning Engineer at Hugging Face who focuses on building LLM applications, with post training and agentic approaches. [Follow Ben on the Hub](https://huggingface.co/burtenshaw) to see his latest projects.

## Acknowledgments

We would like to extend our gratitude to the following individuals and partners for their invaluable contributions and support:

- [Hugging Face Transformers](https://huggingface.co/docs/transformers)
- [TRL (Transformer Reinforcement Learning)](https://huggingface.co/docs/trl)
- [PEFT (Parameter-Efficient Fine-Tuning)](https://huggingface.co/docs/peft)

## I found a bug, or I want to improve the course

Contributions are **welcome** πŸ€—

* If you _found a bug πŸ› in a notebook_, please [open an issue](https://github.com/huggingface/smol-course/issues/new) and **describe the problem**.
* If you _want to improve the course_, you can [open a Pull Request](https://github.com/huggingface/smol-course/pulls).
* If you _want to add a full section or a new unit_, the best is to [open an issue](https://github.com/huggingface/smol-course/issues/new) and **describe what content you want to add before starting to write it so that we can guide you**.

## I still have questions

Please ask your question in our discord server #fine-tuning-course-questions.

Now that you have all the information, let's get on board β›΅