> For the complete documentation index, see [llms.txt](https://unsloth.ai/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://unsloth.ai/docs/fr/commencer/install/amd.md).

# Affinage des LLM sur GPU AMD avec le guide Unsloth

Découvrez comment affiner de grands modèles de langage (LLM) sur des GPU AMD avec Unsloth.

Affinez les LLM jusqu’à 2x plus vite avec \~70 % de mémoire en moins sur du matériel AMD, sans NVIDIA requis. Unsloth prend en charge AMD Radeon RDNA 3/3.5/4 (séries RX 6000–9000) sur Windows et Linux, ainsi que les GPU de centre de données, y compris le MI300X (192 Go).

{% stepper %}
{% step %}

#### **Installateur en une ligne**

Pour installer Unsloth sur AMD, le plus simple est de télécharger notre [Application de bureau](/docs/fr/desktop.md).

<a href="https://unsloth.ai/download/windows" class="button secondary" data-icon="windows">Télécharger pour Windows</a><a href="https://unsloth.ai/download/windows" class="button secondary" data-icon="linux">Télécharger pour Linux</a>\
\
Pour une installation manuelle :

**Linux :**

```bash
curl -fsSL https://unsloth.ai/install.sh | sh
```

**Windows (PowerShell) :**

```powershell
irm https://unsloth.ai/install.ps1 | iex
```

Les étapes manuelles ci-dessous sont destinées aux utilisateurs qui souhaitent installer la bibliothèque Python Unsloth sur AMD avec les dépendances requises.
{% endstep %}

{% step %}

#### **Créer un nouvel environnement isolé (facultatif)**

Pour ne pas casser les paquets système, vous pouvez créer un environnement pip isolé. Pensez à vérifier votre version de Python ! Elle pourrait être `pip3`, `pip3.13`, `python3`, `python.3.13` etc.

**Linux :** 3.13 affiché ; toute version 3.11-3.13 fonctionne partout (3.10 fonctionne pour les installations manuelles

{% code overflow="wrap" %}

```bash
# Linux — remplacez 3.13 par la version 3.10-3.13 que vous avez
apt update && apt install python3.13-venv -y
python3.13 -m venv unsloth_env
source unsloth_env/bin/activate
pip install uv
```

{% endcode %}

**Windows (PowerShell) :**&#x20;

3.13 affiché ; utilisez 3.12 si vous installez l’extra unsloth\[rocm72-torch291]

```shellscript
py -3.13 -m venv unsloth_env
unsloth_env\Scripts\Activate.ps1
pip install uv
```

{% endstep %}

{% step %}

#### **Installer PyTorch**

Vous prévoyez d’installer Unsloth avec un extra AMD (`unsloth[rocm72-torch291]` etc., voir la section suivante) ? Ceux-ci incluent un PyTorch correspondant, donc vous pouvez **ignorer cette section**. Installez PyTorch ici uniquement si vous souhaitez le gérer vous-même ou si votre version de ROCm n’est couverte par aucun extra.

**Linux :** \
Installez PyTorch avec la prise en charge de ROCm depuis l’index PyTorch. Vérifiez votre version de ROCm via `amd-smi version` (recherchez la ligne `ROCm version :` ), puis remplacez `https://download.pytorch.org/whl/rocm7.1` pour l’adapter. ROCm 6.0 ou plus récent est requis.

{% code overflow="wrap" %}

```bash
uv pip install "torch>=2.4,<2.11.0" "torchvision<0.26.0" "torchaudio<2.11.0" \
    --index-url https://download.pytorch.org/whl/rocm7.1 --upgrade --force-reinstall
```

{% endcode %}

ROCm 7.2 fournit des wheels plus récentes (torch 2.11), donc sous ROCm 7.2 utilisez plutôt ceci :

```bash
uv pip install "torch>=2.11.0,<2.12.0" torchvision torchaudio \
    --index-url https://download.pytorch.org/whl/rocm7.2 --upgrade --force-reinstall
```

Les balises d’index disponibles sont `rocm6.0`, `rocm6.1`, `rocm6.2`, `rocm6.3`, `rocm6.4`, `rocm7.0`, `rocm7.1`et `rocm7.2`. ROCm 6.5-6.9 n’a pas de wheels dédiées (utilisez `rocm6.4`), et ROCm 7.3+ utilise `rocm7.2`.

*Les limites de version empêchent de récupérer accidentellement torch 2.11+ qui n’a que des wheels ROCm 7.2 et casserait les choses. Mettez à jour `rocm7.1` pour correspondre à la version détectée comme précédemment.*

Nous avons également écrit une commande de terminal unique pour extraire la bonne version de ROCM si cela peut aider.

```bash
ROCM_TAG="$({ command -v amd-smi >/dev/null 2>&1 && amd-smi version 2>/dev/null | awk -F'ROCm version: ' 'NF>1{split($2,a,"."); print "rocm"a[1]"."a[2]; ok=1; exit} END{exit !ok}'; } || { [ -r /opt/rocm/.info/version ] && awk -F. '{print "rocm"$1"."$2; exit}' /opt/rocm/.info/version; } || { command -v hipconfig >/dev/null 2>&1 && hipconfig --version 2>/dev/null | awk -F': *' '/HIP version/{split($2,a,"."); print "rocm"a[1]"."a[2]; ok=1; exit} END{exit !ok}'; } || { command -v dpkg-query >/dev/null 2>&1 && ver="$(dpkg-query -W -f="${Version}\n" rocm-core 2>/dev/null)" && [ -n "$ver" ] && awk -F'[.-]' '{print "rocm"$1"."$2; exit}' <<<"$ver"; } || { command -v rpm >/dev/null 2>&1 && ver="$(rpm -q --qf '%{VERSION}\n' rocm-core 2>/dev/null)" && [ -n "$ver" ] && awk -F'[.-]' '{print "rocm"$1"."$2; exit}' <<<"$ver"; })"; [ -n "$ROCM_TAG" ] && uv pip install "torch>=2.4,<2.11.0" "torchvision<0.26.0" "torchaudio<2.11.0" --index-url "https://download.pytorch.org/whl/$ROCM_TAG" --upgrade --force-reinstall
```

*Remarque : si votre version de ROCm est 7.2 ou supérieure, remplacez `$ROCM_TAG` dans la commande ci-dessus par `rocm7.1,` aucun wheel PyTorch n’existe encore pour 7.2+.*

<div data-with-frame="true"><figure><img src="https://550366147-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FTVWdHJi4m8thLmCwOocd%2Fimage.png?alt=media&amp;token=c3c2dc1d-a405-4998-96ec-8dc320e3e4ce" alt="" width="563"><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}

#### **Installer Unsloth**

Installez Unsloth avec les extras AMD :

{% code overflow="wrap" %}

```bash
uv pip install unsloth[amd]
```

{% endcode %}

<div data-with-frame="true"><figure><img src="https://550366147-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2Fe0HmhIq3WvgX4hMh5B8N%2Fimage.png?alt=media&amp;token=8376914f-e8b8-4a84-bee9-83c80ed5ad92" alt="" width="547"><figcaption></figcaption></figure></div>

⚠️ Requis pour AMD : installez bitsandbytes compatible ROCm\
Tous les systèmes ROCm nécessitent une version préliminaire de bitsandbytes ; les versions ≤ 0.49.2 ont un bug de décodage 4 bits NaN sur tous les GPU AMD. Remarque : utilisez `pip` et non `uv` pour cette étape, `uv` refuse le wheel préliminaire à cause d’une incompatibilité de version dans le nom de fichier.

{% code overflow="wrap" %}

```bash
# systèmes x86_64 :
pip install --force-reinstall --no-cache-dir --no-deps \
    "https://github.com/bitsandbytes-foundation/bitsandbytes/releases/download/continuous-release_main/bitsandbytes-1.33.7.preview-py3-none-manylinux_2_24_x86_64.whl"

# systèmes aarch64 : remplacez x86_64 par aarch64 dans l’URL ci-dessus

# Solution de repli si l’URL est inaccessible :
# pip install --force-reinstall --no-cache-dir --no-deps "bitsandbytes>=0.49.1"
```

{% endcode %}

<div data-with-frame="true"><figure><img src="https://550366147-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FG8j6PTQaLqgWK0gWfi5d%2Fimage.png?alt=media&amp;token=3c25056f-932f-4373-be25-485423f94b4d" alt="" width="563"><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}

#### **Commencez le fine-tuning avec Unsloth !**

Et c’est tout. Essayez quelques exemples dans notre [**Unsloth Notebooks**](/docs/fr/commencer/unsloth-notebooks.md) page !

Vous pouvez consulter nos guides dédiés au [fine-tuning](/docs/fr/commencer/fine-tuning-llms-guide.md) ou [apprentissage par renforcement](/docs/fr/commencer/reinforcement-learning-rl-guide.md) . Voici aussi un bref exemple :

**1. Définir les variables d’environnement**

{% code overflow="wrap" %}

```bash
export HSA_OVERRIDE_GFX_VERSION=9.4.2  # Requis pour AMD MI300X
export HF_HUB_DISABLE_XET=1            # Corrige les problèmes de téléchargement HuggingFace sur AMD
```

{% endcode %}

***Remarque :*** *`HSA_OVERRIDE_GFX_VERSION=9.4.2` indique à ROCm de traiter votre GPU comme gfx942 (MI300X). Sans cela, certains noyaux peuvent ne pas se compiler ou s’exécuter.*

**2. Charger et configurer le modèle**

{% code overflow="wrap" %}

```python
from unsloth import FastModel

model, tokenizer = FastModel.from_pretrained(
    model_name = "unsloth/gemma-4-26b-a4b-it",
    max_seq_length = 2048,
    load_in_4bit = True,
)

model = FastModel.get_peft_model(
    model,
    r = 16,
    lora_alpha = 16,
    target_modules = ["q_proj", "k_proj", "v_proj", "o_proj"],
)
```

{% endcode %}

**3. Entraîner**

{% code overflow="wrap" %}

```python
from trl import SFTTrainer, SFTConfig

trainer = SFTTrainer(
    model = model,
    tokenizer = tokenizer,
    train_dataset = dataset,
    formatting_func = formatting_func,
    args = SFTConfig(
        per_device_train_batch_size = 1,
        gradient_accumulation_steps = 4,
        max_steps = 60,
        output_dir = "outputs",
        report_to = "none",
    ),
)

trainer_stats = trainer.train()
```

{% endcode %}

<div data-with-frame="true"><figure><img src="https://550366147-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FwIcg0yj5i1hSyHDLyMYG%2Fimage.png?alt=media&amp;token=a6cbe0c7-fdbf-4feb-ad7b-7ac55ba91872" alt="" width="375"><figcaption></figcaption></figure></div>

***Remarque :** Sur les GPU AMD, Flash Attention 2 n’est pas disponible. Unsloth revient automatiquement à Xformers, qui offre des performances équivalentes sur ROCm. L’avertissement peut être ignoré sans risque.*
{% endstep %}
{% endstepper %}

### :1234: Apprentissage par renforcement sur les GPU AMD

Vous pouvez utiliser notre :ledger:[exemple gpt-oss RL auto win 2048](https://github.com/unslothai/notebooks/blob/main/nb/AMD-gpt_oss_\(20B\)_Reinforcement_Learning_2048_Game_BF16.ipynb) sur un GPU MI300X (192 Go). L’objectif est de jouer automatiquement au jeu 2048 et de le gagner avec le RL. Le LLM (gpt-oss 20b) élabore automatiquement une stratégie pour gagner au jeu 2048, et nous calculons une récompense élevée pour les stratégies gagnantes, et de faibles récompenses pour les stratégies perdantes.

{% columns %}
{% column %}

<figure><img src="https://550366147-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2Fgit-blob-2bc5a2e25a51781fd945ab9e87e73821ed4eb6c9%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>
{% endcolumn %}

{% column %}
La récompense au fil du temps augmente après environ 300 étapes ou plus !

L’objectif du RL est de maximiser la récompense moyenne pour gagner au jeu 2048.

<figure><img src="https://550366147-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2Fgit-blob-8d7ea897fd57156a796e4f74aa2e3b60afe9d405%2F2048%20Auto%20Win%20Game%20Reward.png?alt=media" alt=""><figcaption></figcaption></figure>
{% endcolumn %}
{% endcolumns %}

Nous avons utilisé une machine AMD MI300X (192 Go) pour exécuter l’exemple RL 2048 avec Unsloth, et cela a très bien fonctionné !

<div><figure><img src="https://550366147-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2Fgit-blob-174890aa5f63632ebe6f3f212f1ced0d0e8dc381%2FScreenshot%202025-10-17%20052504.png?alt=media" alt=""><figcaption></figcaption></figure> <figure><img src="https://550366147-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2Fgit-blob-f907ba596705496515fdfb39b49d649697317ca7%2FScreenshot%202025-10-17%20052641.png?alt=media" alt=""><figcaption></figcaption></figure></div>

Vous pouvez aussi utiliser notre :ledger:[notebook RL de génération automatique de noyau](https://github.com/unslothai/notebooks/blob/main/nb/AMD-gpt_oss_\(20B\)_GRPO_BF16.ipynb) également avec gpt-oss pour créer automatiquement des noyaux de multiplication de matrices en Python. Le notebook met aussi en place plusieurs méthodes pour contrer le reward hacking.

{% columns %}
{% column width="50%" %}
L’invite que nous avons utilisée pour créer automatiquement ces noyaux était :

{% code overflow="wrap" %}

````
Créez une nouvelle fonction rapide de multiplication de matrices en utilisant uniquement du code Python natif.
Vous recevez une liste de listes de nombres.
Produisez votre nouvelle fonction entre des backticks en utilisant le format ci-dessous :
```
python
def matmul(A, B):
    return ...
```
````

{% endcode %}
{% endcolumn %}

{% column width="50%" %}
Le processus de RL apprend par exemple à appliquer l’algorithme de Strassen pour accélérer la multiplication de matrices en Python.

<figure><img src="https://550366147-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2Fgit-blob-ddb993e5d2c986794ede1f2b0d08897469b78506%2Fimage%20(1)%20(1)%20(1)%20(1)%20(1)%20(1).png?alt=media" alt="" width="375"><figcaption></figcaption></figure>
{% endcolumn %}
{% endcolumns %}

### :books:Notebooks AMD gratuits en un clic

AMD propose des notebooks en un clic équipés de **GPU MI300X gratuits avec 192 Go de VRAM** via leur Dev Cloud. Entraînez de grands modèles entièrement gratuitement (aucune inscription ni carte bancaire requise) :

* [Qwen3 (32B)](https://amd-ai-academy.com/github/unslothai/notebooks/blob/main/nb/Qwen3_\(32B\)_A100-Reasoning-Conversational.ipynb)
* [Llama 3.3 (70B)](https://amd-ai-academy.com/github/unslothai/notebooks/blob/main/nb/AMD-Llama3.3_\(70B\)_A100-Conversational.ipynb)
* [Qwen3 (14B)](https://amd-ai-academy.com/github/unslothai/notebooks/blob/main/nb/AMD-Qwen3_\(14B\)-Reasoning-Conversational.ipynb)
* [Mistral v0.3 (7B)](https://amd-ai-academy.com/github/unslothai/notebooks/blob/main/nb/AMD-Mistral_v0.3_\(7B\)-Alpaca.ipynb)
* [GPT OSS MXFP4 (20B)](https://amd-ai-academy.com/github/unslothai/notebooks/blob/main/nb/AMD-GPT_OSS_MXFP4_\(20B\)-Inference.ipynb) - Inférence
* [Gemma4 (E2B)](https://amd-ai-academy.com/github/unslothai/notebooks/blob/main/nb/Gemma4_\(E2B\)_Reinforcement_Learning_Sudoku_Game.ipynb) - RL Sudoku
* Unsloth Studio

{% embed url="<https://oneclickamd.ai/github/unslothai/notebooks/blob/main/nb/gpt_oss_(20B)_Reinforcement_Learning_2048_Game_BF16.ipynb>" %}

Vous pouvez utiliser n’importe quel notebook Unsloth en faisant précéder <https://amd-ai-academy.com/github/unslothai/notebooks/blob/main/nb> de [Cahiers d'exercices Unsloth](/docs/fr/commencer/unsloth-notebooks.md) en modifiant le lien de <https://github.com/unslothai/notebooks/blob/main/nb/AMD-gpt_oss_(20B)_Reinforcement_Learning_2048_Game_BF16.ipynb>\
à <https://amd-ai-academy.com/github/unslothai/notebooks/blob/main/nb/AMD-Gemma4_(E2B)_Reinforcement_Learning_Sudoku_Game.ipynb>

{% columns %}
{% column width="33.33333333333333%" %}

<figure><img src="https://550366147-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2F7NNi4jLKvmZoRnLel9Kg%2Fimage.png?alt=media&amp;token=0379eda9-569c-4614-afb5-ffec463a7676" alt=""><figcaption></figcaption></figure>
{% endcolumn %}

{% column width="66.66666666666667%" %}

<figure><img src="https://550366147-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FRfKS1GAW7BqL9lGNTcxh%2Fimage.png?alt=media&amp;token=3a8aeb01-62a7-4d55-89a9-98526052e305" alt=""><figcaption></figcaption></figure>
{% endcolumn %}
{% endcolumns %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://unsloth.ai/docs/fr/commencer/install/amd.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
