# Phi-4 Reasoning : comment l'exécuter et l'affiner

Les nouveaux modèles de raisonnement Phi-4 de Microsoft sont désormais pris en charge dans Unsloth. La variante « plus » affiche des performances comparables à celles de o1-mini, o3-mini et Sonnet 3.7 d’OpenAI. Les modèles de raisonnement « plus » et standard comptent 14B paramètres, tandis que le « mini » en a 4B.\
\
Tous les téléchargements de raisonnement Phi-4 utilisent notre [Unsloth Dynamic 2.0](/docs/fr/bases/unsloth-dynamic-2.0-ggufs.md) méthodologie.

#### **Raisonnement Phi-4 - téléchargements Unsloth Dynamic 2.0 :**

| Dynamic 2.0 GGUF (à exécuter)                                                                                                                                                                                                                                                                                         | Safetensor 4 bits dynamique (pour finetuner/déployer)                                                                                                                                                                                                                                                                                  |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <ul><li><a href="https://huggingface.co/unsloth/Phi-4-reasoning-plus-GGUF/">Raisonnement-plus</a> (14B)</li><li><a href="https://huggingface.co/unsloth/Phi-4-reasoning-GGUF">Raisonnement</a> (14B)</li><li><a href="https://huggingface.co/unsloth/Phi-4-mini-reasoning-GGUF/">Mini-raisonnement</a> (4B)</li></ul> | <ul><li><a href="https://huggingface.co/unsloth/Phi-4-reasoning-plus-unsloth-bnb-4bit">Raisonnement-plus</a></li><li><a href="https://huggingface.co/unsloth/phi-4-reasoning-unsloth-bnb-4bit">Raisonnement</a></li><li><a href="https://huggingface.co/unsloth/Phi-4-mini-reasoning-unsloth-bnb-4bit">Mini-raisonnement</a></li></ul> |

## 🖥️ **Exécution du raisonnement Phi-4**

### :gear: Paramètres officiels recommandés

Selon Microsoft, voici les paramètres recommandés pour l’inférence :

* <mark style="background-color:blue;">**Température = 0,8**</mark>
* Top\_P = 0.95

### **Modèles de chat Phi-4 reasoning**

Veuillez vous assurer d’utiliser le bon modèle de chat, car la variante « mini » en a un différent.

#### **Phi-4-mini :**

{% code overflow="wrap" %}

```
<|system|>Votre nom est Phi, un expert en mathématiques IA développé par Microsoft.<|end|><|user|>Comment résoudre 3*x^2+4*x+5=1 ?<|end|><|assistant|>
```

{% endcode %}

#### **Phi-4-reasoning et Phi-4-reasoning-plus :**

Ce format est utilisé pour la conversation générale et les instructions :

{% code overflow="wrap" %}

```
<|im_start|>system<|im_sep|>Vous êtes Phi, un modèle de langage entraîné par Microsoft pour aider les utilisateurs. Votre rôle d’assistant consiste à explorer minutieusement les questions au moyen d’un processus de réflexion systématique avant de fournir des solutions finales précises et exactes. Cela nécessite de s’engager dans un cycle complet d’analyse, de synthèse, d’exploration, de réévaluation, de réflexion, de retour en arrière et d’itération afin de développer un processus de réflexion bien considéré. Veuillez structurer votre réponse en deux sections principales : Thought et Solution, en utilisant le format spécifié : <think> {Section Thought} </think> {Section Solution}. Dans la section Thought, détaillez votre processus de raisonnement par étapes. Chaque étape doit inclure des considérations détaillées telles que l’analyse des questions, la synthèse des résultats pertinents, le brainstorming de nouvelles idées, la vérification de l’exactitude des étapes actuelles, l’affinement des éventuelles erreurs et la révision des étapes précédentes. Dans la section Solution, en vous basant sur les différentes tentatives, explorations et réflexions de la section Thought, présentez systématiquement la solution finale que vous jugez correcte. La section Solution doit être logique, précise et concise, et détailler les étapes nécessaires pour parvenir à la conclusion. Maintenant, essayez de résoudre la question suivante en suivant les consignes ci-dessus :<|im_end|><|im_start|>user<|im_sep|>Que vaut 1+1 ?<|im_end|><|im_start|>assistant<|im_sep|>
```

{% endcode %}

{% hint style="info" %}
Oui, le format du modèle de chat/prompt est aussi long que cela !
{% endhint %}

### 🦙 Ollama : tutoriel pour exécuter le raisonnement Phi-4

1. Installez `ollama` si vous ne l’avez pas déjà fait !

```bash
apt-get update
apt-get install pciutils -y
curl -fsSL https://ollama.com/install.sh | sh
```

2. Exécutez le modèle ! Notez que vous pouvez appeler `ollama serve`dans un autre terminal si cela échoue. Nous incluons toutes nos corrections et les paramètres suggérés (température, etc.) dans `params` dans notre dépôt sur Hugging Face.

```bash
ollama run hf.co/unsloth/Phi-4-mini-reasoning-GGUF:Q4_K_XL
```

### 📖 Llama.cpp : tutoriel pour exécuter le raisonnement Phi-4

{% hint style="warning" %}
Vous devez utiliser `--jinja` dans llama.cpp pour activer le raisonnement pour les modèles, sauf pour la variante « mini ». Sinon, aucun token ne sera fourni.
{% endhint %}

1. Obtenez la dernière version `llama.cpp` sur [GitHub ici](https://github.com/ggml-org/llama.cpp). Vous pouvez également suivre les instructions de compilation ci-dessous. Changez `-DGGML_CUDA=ON` en `-DGGML_CUDA=OFF` si vous n’avez pas de GPU ou si vous souhaitez simplement une inférence CPU. **Pour les appareils Apple Mac / Metal**, définissez `-DGGML_CUDA=OFF` puis continuez comme d'habitude - la prise en charge de Metal est activée par défaut.

```bash
apt-get update
apt-get install pciutils build-essential cmake curl libcurl4-openssl-dev -y
git clone https://github.com/ggml-org/llama.cpp
cmake llama.cpp -B llama.cpp/build \
    -DBUILD_SHARED_LIBS=OFF -DGGML_CUDA=ON -DLLAMA_CURL=ON
cmake --build llama.cpp/build --config Release -j --clean-first --target llama-cli llama-gguf-split
cp llama.cpp/build/bin/llama-* llama.cpp
```

2. Téléchargez le modèle via (après avoir installé `pip install huggingface_hub hf_transfer` ). Vous pouvez choisir Q4\_K\_M, ou d’autres versions quantifiées.

```python
# !pip install huggingface_hub hf_transfer
import os
os.environ["HF_HUB_ENABLE_HF_TRANSFER"] = "1"
from huggingface_hub import snapshot_download
snapshot_download(
    repo_id = "unsloth/Phi-4-mini-reasoning-GGUF",
    local_dir = "unsloth/Phi-4-mini-reasoning-GGUF",
    allow_patterns = ["*UD-Q4_K_XL*"],
)
```

3. Exécutez le modèle en mode conversationnel dans llama.cpp. Vous devez utiliser `--jinja` dans llama.cpp pour activer le raisonnement pour les modèles. Cela n’est toutefois pas nécessaire si vous utilisez la variante « mini ».

```bash
./llama.cpp/llama-cli \
    --model unsloth/Phi-4-mini-reasoning-GGUF/Phi-4-mini-reasoning-UD-Q4_K_XL.gguf \
    --threads -1 \\
    --n-gpu-layers 99 \
    --prio 3 \
    --temp 0.8 \
    --top-p 0.95 \
    --jinja \
    --min-p 0.00 \
    --ctx-size 32768 \\
    --seed 3407
```

## 🦥 Fine-tuning de Phi-4 avec Unsloth

[Fine-tuning de Phi-4](https://unsloth.ai/blog/phi4) pour les modèles sont également désormais pris en charge dans Unsloth. Pour fine-tuner gratuitement sur Google Colab, il suffit de modifier le `model_name` de 'unsloth/Phi-4' à 'unsloth/Phi-4-mini-reasoning', etc.

* [carnet de fine-tuning de Phi-4 (14B)](https://colab.research.google.com/github/unslothai/notebooks/blob/main/nb/Phi_4-Conversational.ipynb)


---

# Agent Instructions: 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:

```
GET https://unsloth.ai/docs/fr/modeles/tutorials/phi-4-reasoning-how-to-run-and-fine-tune.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
