# Utilisation de l'API

##### 🌐 1. Interroger l’API locale d’Ollama

Par défaut, l’API écoute sur :

```
http://localhost:11434
```

Exemple de requête API :

```bash
curl http://localhost:11434/api/generate \
  -d '{
        "model": "llama3",
        "prompt": "Bonjour, comment vas-tu ?"
      }'
```

---

##### 🐳 2. Utilisation de l’API Ollama depuis Docker

<span style="white-space: pre-wrap;">Si vous exécutez des applications dans un </span>**conteneur Docker**<span style="white-space: pre-wrap;"> qui doivent appeler l’API Ollama située sur l’hôte, utilisez l’adresse suivante :</span>

```
http://host.docker.internal:11434
```

Exemple depuis un conteneur :

```
curl http://host.docker.internal:11434/api/generate \
  -d '{"model": "llama3", "prompt": "Test depuis docker"}'
```

**Remarque importante**

- `<span class="editor-theme-code">host.docker.internal</span>`<span style="white-space: pre-wrap;"> fonctionne </span>**automatiquement sur Docker Desktop (Windows / macOS)**.
- <span style="white-space: pre-wrap;">Sur Linux, Docker ne fournit </span>**pas nativement**<span style="white-space: pre-wrap;"> ce DNS.\\ S'il n'existe pas, vous pouvez forcer la résolution en ajoutant dans votre commande </span>`<span class="editor-theme-code">docker run</span>`<span style="white-space: pre-wrap;"> :</span>

```bash
docker run --add-host=host.docker.internal:host-gateway ...
```

Ainsi, l'accès depuis Docker fonctionnera comme prévu.

---

##### 🧪 3. Exemple simple depuis un script Python

```
import requests

payload = {
    "model": "llama3",
    "prompt": "Bonjour depuis Python !"
}

r = requests.post("http://localhost:11434/api/generate", json=payload)
print(r.text)
```