Je connais ollama que de nom, j'ai jamais utilisé.
Je passe par vllm pour mon propre serveur dédié et llama.cpp en complément sur ma machine de travail (ollama est basé sur llama.cpp).
Donc je connais pas le détail pour ollama, mais llama.cpp permet de spécifier le nombre de couches du modèle sur le GPU.
Cela permet de faire tourner des modèles qui ne rentrent pas dans ta VRAM en utilisant la mémoire centrale (au prix d'un ralentissement de l'ensemble).
Sur llama.cpp, cela se règles avec des paramètres tels que:
--n-gpu-layers (nombre de couches sur GPU)
--tensor-split (si tu as plusieurs GPU)
--ctx-size" (taille du contexte. Plus tu réduis la taille du contexte moins tu auras besoin de mémoire, mais si ta machine a les capacités, mets la valeur maximale supportée par le modèle).
En local, j'ai deux GPU de 16 Go, donc ça me permet de charger des modèles jusqu'à environ 30 milliards de paramètres avec une taille de contexte raisonnable après quantification en Q4_K_M (typiquement ce que propose ollama généralement).
Le problème de ollama, c'est que c'est conçu pour être une solution simple et générique, mais c'est plus compliqué pour adapter à des cas particuliers (comme le déchargement sur la mémoire centrale ou définir la taille de contexte). Et pour être compatible avec un maximum de configuration, ils définissent souvent une taille contexte très petite (4096), alors que beaucoup de modèles actuels supportent jusqu'à 128K tokens, voir plus.
Si tu veux pas te prendre la tête à passer directement par llama.cpp et/ou que tu ne sais pas comment t'y retrouver parmi tous les modèles, je te conseille une interface comme lm-studio.
L'interface est bordélique, c'est une application Electron type avec une l'ergonomie douteuse (je déteste ça). Par contre c'est très complet.
Et lancer une serveur compatible OpenAI en local avec llama-serveur (de llama.cpp):
llama-server --model Qwen3-Coder-30B-A3B-Instruct-Q4_K_M.gguf --jinja --n-gpu-layers 1000 --port 8080 --alias default --ctx-size 24000
Maintenant tu peux t'y connecter avec tout client qui permet de définir manuellement le point d'entrée pour OpenAI (ici http://127.0.0.1:8080/v1/chat/completions, modèle 'default').
Si tu connais pas, tu peux être perdu au début (surtout avec tous ces modèles, leur quantification et leurs variantes), mais les outils ne sont pas si complexes et c'est facile de se créer des scripts bash qui vont bien une fois que tu as trouvé ton bonheur.
[^] # Re: LocalLLaMA
Posté par Florian.J . En réponse au message Quels outils utilisez-vous pour générer du code rapidement grâce à l’IA ?. Évalué à 2. Dernière modification le 17 août 2025 à 16:55.
Je connais ollama que de nom, j'ai jamais utilisé.
Je passe par vllm pour mon propre serveur dédié et llama.cpp en complément sur ma machine de travail (ollama est basé sur llama.cpp).
Donc je connais pas le détail pour ollama, mais llama.cpp permet de spécifier le nombre de couches du modèle sur le GPU.
Cela permet de faire tourner des modèles qui ne rentrent pas dans ta VRAM en utilisant la mémoire centrale (au prix d'un ralentissement de l'ensemble).
Sur llama.cpp, cela se règles avec des paramètres tels que:
--n-gpu-layers (nombre de couches sur GPU)
--tensor-split (si tu as plusieurs GPU)
--ctx-size" (taille du contexte. Plus tu réduis la taille du contexte moins tu auras besoin de mémoire, mais si ta machine a les capacités, mets la valeur maximale supportée par le modèle).
En local, j'ai deux GPU de 16 Go, donc ça me permet de charger des modèles jusqu'à environ 30 milliards de paramètres avec une taille de contexte raisonnable après quantification en Q4_K_M (typiquement ce que propose ollama généralement).
Le problème de ollama, c'est que c'est conçu pour être une solution simple et générique, mais c'est plus compliqué pour adapter à des cas particuliers (comme le déchargement sur la mémoire centrale ou définir la taille de contexte). Et pour être compatible avec un maximum de configuration, ils définissent souvent une taille contexte très petite (4096), alors que beaucoup de modèles actuels supportent jusqu'à 128K tokens, voir plus.
Si tu veux pas te prendre la tête à passer directement par llama.cpp et/ou que tu ne sais pas comment t'y retrouver parmi tous les modèles, je te conseille une interface comme lm-studio.
L'interface est bordélique, c'est une application Electron type avec une l'ergonomie douteuse (je déteste ça). Par contre c'est très complet.
Sinon tu peux simplement télécharger le modèle directement:
https://huggingface.co/lmstudio-community/Qwen3-Coder-30B-A3B-Instruct-GGUF/tree/main (je conseille Qwen3-Coder-30B-A3B-Instruct-Q4_K_M.gguf)
Si tu veux dans un premier temps expérimenter, prends des mini modèles:
https://huggingface.co/lmstudio-community/Qwen3-0.6B-GGUF/tree/main
https://huggingface.co/lmstudio-community/Qwen3-4B-Instruct-2507-GGUF/tree/main (petit mais loin d'être ridicule)
Et lancer une serveur compatible OpenAI en local avec llama-serveur (de llama.cpp):
llama-server --model Qwen3-Coder-30B-A3B-Instruct-Q4_K_M.gguf --jinja --n-gpu-layers 1000 --port 8080 --alias default --ctx-size 24000
Maintenant tu peux t'y connecter avec tout client qui permet de définir manuellement le point d'entrée pour OpenAI (ici http://127.0.0.1:8080/v1/chat/completions, modèle 'default').
Si tu connais pas, tu peux être perdu au début (surtout avec tous ces modèles, leur quantification et leurs variantes), mais les outils ne sont pas si complexes et c'est facile de se créer des scripts bash qui vont bien une fois que tu as trouvé ton bonheur.