> ## Documentation Index
> Fetch the complete documentation index at: https://docsmlx.otterly.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Ollama & llama.cpp

> Comprendre quand utiliser Ollama ou llama.cpp à la place de MLX

MLX n'est pas la seule façon d'exécuter des LLMs localement sur un Mac. Deux alternatives reviennent souvent : **Ollama** et **llama.cpp**.

Elles ne remplacent pas forcément MLX. Elles couvrent simplement d'autres priorités.

***

## Ollama : le plus simple pour démarrer

Ollama masque une grande partie de la complexité :

* téléchargement des modèles
* lancement d'un serveur local
* commandes simples pour tester
* API locale prête à l'emploi

### Installation

```bash theme={null}
brew install ollama
```

### Premier test

```bash theme={null}
ollama run llama3.2
```

### Pourquoi beaucoup de développeurs commencent par là

* vous n'avez presque rien à configurer
* vous changez facilement de modèle
* vous obtenez rapidement une API locale pour vos tests

### Exemple d'appel depuis Python

```python theme={null}
from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:11434/v1",
    api_key="ollama",
)

response = client.chat.completions.create(
    model="llama3.2",
    messages=[
        {"role": "user", "content": "Explique le fine-tuning en deux phrases."}
    ],
)

print(response.choices[0].message.content)
```

***

## llama.cpp : le backend très répandu autour de GGUF

`llama.cpp` est souvent le bon choix si vous travaillez déjà avec des modèles au format `GGUF` ou si vous avez besoin d'une base très portable.

### Installation

```bash theme={null}
brew install llama.cpp
```

### Exemple avec un modèle GGUF

```bash theme={null}
llama-cli \
  -m ./models/MonModele.gguf \
  -p "Bonjour" \
  -n 200
```

### Pourquoi l'utiliser

* le format `GGUF` est très courant
* l'écosystème autour de `llama.cpp` est vaste
* le même backend peut vous suivre sur plusieurs plateformes

***

## Ollama ou llama.cpp ?

### Prenez Ollama si

* vous voulez aller vite
* vous préférez une expérience produit à une boîte à outils bas niveau
* vous cherchez surtout un serveur local facile à consommer

### Prenez llama.cpp si

* vous gérez directement vos fichiers `GGUF`
* vous voulez plus de contrôle sur la ligne de commande
* vous cherchez une solution très portable

***

## Et par rapport à MLX ?

La vraie différence n'est pas seulement la performance. C'est surtout le workflow :

| Outil     | Point fort principal                       |
| --------- | ------------------------------------------ |
| MLX       | Écosystème Apple, fine-tuning, modèles MLX |
| Ollama    | Simplicité de démarrage                    |
| llama.cpp | Portabilité et univers GGUF                |

Si votre priorité est Swift et Apple Silicon, MLX reste souvent le meilleur fil conducteur. Si votre priorité est de tester rapidement un modèle ou d'avoir une API locale immédiatement, Ollama est souvent plus direct.

***

## Recommandation pratique

Pour un développeur moyen qui découvre le sujet :

1. Testez un modèle avec Ollama pour comprendre le comportement d'un LLM local.
2. Passez ensuite à MLX si vous voulez un meilleur contrôle, du fine-tuning ou un workflow Apple plus cohérent.
3. Gardez `llama.cpp` en tête si vous travaillez déjà avec des modèles GGUF.

***

<Card title="Intégration Swift & options on-device" icon="swift" href="/mlx/local-llms/swift-integration">
  Voir comment relier ces backends à une app Swift.
</Card>
