### 1. Connaissances de base et commandes essentielles #### a. Installation et configuration initiale - Installation sur Linux/Windows/macOS: ```bash curl -fsSL https://ollama.com/install.sh | sh ``` - Vérifier l'installation : ```bash ollama --version ``` - Lancer le serveur Ollama : ```bash ollama serve ``` #### Commandes complètes de base - Afficher les modèles disponibles : ```bash ollama list ``` - Télécharger un modèle précis : ```bash ollama pull llama3 ``` - Lancer un prompt rapidement : ```bash ollma run llama3 "Quelle est la capitale de la France?" ``` - Gestion avancée des modèles : ```bash ollama show llama3 ollama rm llama3 ``` #### c. Utilisation des commandes GPU Nvidia (spécifique H100) - Vérification GPU disponible: ```bash nivdia-smi ``` - Configuration spécifique GPU Nvidia pour Ollama: - Ollama utilise automatiquement CUDA lorsqu'un GPU Nvidia est disponible, mais vérifier le support CUDA ```bash nvcc --version ``` - Monitoring GPU durant l'utilisation Ollama : ```bash watch -n 1 nvidia-smi ``` - Optimisation d'utilisation GPU (exemple H100) : - S'assurer d'avoir installé CUDA Toolkit 12.x (compatible H100). - Gestion des ressources GPU (notamment via variables d'environnement si besoin spécifique) : ```bash export CUDA_CISIBLE_DEVICES=0 #pour préciser le GPU à utiliser ``` --- ### 2. Connaissances globales sur Ollama #### a. Architechture générale d'Ollama - Composants principaux : - Ollama server (gestion des requêtes et des modèles) - Modèles supportés (LLaMa, Gemma, Mistral, LLaVA, Codellama...) - Communication via REST API locale #### b. Modèles disponibles et usages recommandés - Modèles linguistiques (LLM) généraux (LLaMA3, Mistral, Mixtral...) - Modèles spécialisés (CodeLLaMA pour code, LLaVA pour multimodal...) #### c. Bonnes pratiques - Gestion et stockage des modèles (volumes importants) - Mise à jour régulière des modèles - Structuration simple des requêtes de test --- ### 3. Connaissances poussées et avancées #### a. Déploiement en production (serveur, VM, cloud) - Dockerisation Ollama ```bash docker run -d -p 11434:11434 -v ~/.ollama:/root/.ollama ollama/ollama ``` - Automatisation (docker-compose, Kubernetes) #### b. Modèles avancés et optimisation - Fine-tuning personalisé (concept théorique, actuellement limité sur Ollama) - Création de modèles personnalisés via Ollama (ollama create) #### c. Benchmark et évaluation de performances - Tests de vitesse et de latence des modèles: ```bash ollma run --verbose llama3 "test de performance" ``` - Monitoring continu et logging avancé --- ### 4. Approfondissement de l'API Ollama #### a. Structure