# 📘 ParamĂštres AvancĂ©s LLM – Open WebUI & Ollama Ce document prĂ©sente une explication claire et complĂšte des paramĂštres de gĂ©nĂ©ration d’un modĂšle LLM via Open WebUI, compatible avec un usage dans **Obsidian**. --- ## ⚙ ParamĂštres GĂ©nĂ©raux - **Streamer la rĂ©ponse de la conversation**   - Active le mode de gĂ©nĂ©ration mot par mot, visible en temps rĂ©el.   - ✅ RecommandĂ© pour le chat interactif.   - ❌ Peut rĂ©duire les performances sur des machines lentes. - **Function Calling**   - Permet au modĂšle de dĂ©clencher des fonctions (si la fonction est supportĂ©e par le modĂšle, comme GPT-4). - **Seed**   - Graine alĂ©atoire pour rendre les gĂ©nĂ©rations reproductibles.   - Exemple : `seed = 42` -> toujours la mĂȘme sortie pour le mĂȘme prompt.   - Par dĂ©faut : valeur alĂ©atoire. - **SĂ©quence d'arrĂȘt (`stop`)**   - Liste de chaĂźnes qui, si rencontrĂ©es, interrompent immĂ©diatement la gĂ©nĂ©ration.   - Exemple : `["\nUser:", "###"]` --- ## đŸ”„ ParamĂštres de Style et de CrĂ©ativitĂ© - **TempĂ©rature (`temperature`)**   - ContrĂŽle la crĂ©ativitĂ© du modĂšle.   - Borne typique : `0.0` (trĂšs dĂ©terministe) Ă  `1.5` (trĂšs crĂ©atif).   - ✅ Valeurs recommandĂ©es : `0.7` (Ă©quilibrĂ©), `1.0+` pour brainstorm.   - 🧊 `0.0` = rĂ©ponse toujours identique. - **Top K**   - Ne garde que les `K` tokens les plus probables Ă  chaque Ă©tape.   - Borne : `0` (dĂ©sactivĂ©) Ă  `100+`.   - Exemple : `Top K = 40` -> le modĂšle choisit parmi les 40 tokens les plus probables. - **Top P (`top_p`)**   - Filtrage probabiliste : garde les tokens jusqu'Ă  atteindre une somme de probabilitĂ© donnĂ©e.   - Borne : `0.0` Ă  `1.0`.   - Exemple : `0.9` = conserve les tokens reprĂ©sentant 90% de probabilitĂ© cumulĂ©e. - **P min**   - ProbabilitĂ© minimale absolue pour inclure un token dans le choix.   - Borne : `0.0` Ă  `1.0`. --- ## 🧠 ParamĂštres de ContrĂŽle de la RĂ©pĂ©tition - **PĂ©nalitĂ© de frĂ©quence**   - PĂ©nalise les tokens rĂ©pĂ©tĂ©s selon leur frĂ©quence d’apparition.   - Valeurs typiques : `0.0` (pas de pĂ©nalitĂ©) Ă  `2.0`. - **PĂ©nalitĂ© de prĂ©sence**   - PĂ©nalise les tokens qui ont dĂ©jĂ  Ă©tĂ© gĂ©nĂ©rĂ©s une fois.   - Utile pour Ă©viter la redondance. - **PĂ©nalitĂ© de rĂ©pĂ©tition (Ollama)**   - Directement appliquĂ©e au moteur Ollama.   - Valeurs typiques : `1.0` (neutre), `>1.0` pour plus de diversitĂ© (ex. `1.2`), `<1.0` = plus conservateur. - **RĂ©pĂ©ter les N derniers**   - Longueur de la fenĂȘtre contextuelle analysĂ©e pour la dĂ©tection de rĂ©pĂ©titions. --- ## đŸ§Ș Algorithmes AvancĂ©s - **Effort de raisonnement**   - Ajuste la profondeur logique du modĂšle.   - Plus la valeur est haute, plus le modĂšle essaiera de construire une rĂ©ponse "logique" (si supportĂ©). - **Logit Bias**   - Permet de favoriser ou de bloquer certains tokens.   - Format : dictionnaire `{token_id: bias_value}`   - Exemple : `{1234: -100}` empĂȘche un token d'apparaĂźtre. - **Mirostat**   - Algorithme pour maintenir une perplexitĂ© constante.   - `0` = dĂ©sactivĂ©, `1` = activĂ©.   - UtilisĂ© pour une gĂ©nĂ©ration plus stable. - **Mirostat Eta**   - Taux d’ajustement dans l’algorithme Mirostat.   - Valeur typique : `0.1` Ă  `1.0`. - **Mirostat Tau**   - Cible de perplexitĂ© Ă  maintenir.   - Valeur typique : `2.0` Ă  `5.0`. - **Tfs Z**   - Top Free Sampling : alternative Ă  Top P avec une approche basĂ©e sur la surprise du token.   - Moins courant, expĂ©rimental. --- ## đŸ§© Contexte et Tokenisation - **Tokens Ă  conserver (`num_keep`)**   - Nombre de tokens Ă  prĂ©server lors du rafraĂźchissement du contexte.   - Utile pour les instructions systĂšme ou les prĂ©ambules. - **Nb max de tokens (`num_predict`)**   - Limite maximale de tokens gĂ©nĂ©rĂ©s en rĂ©ponse.   - Typiquement : `128` Ă  `4096` voire `32k` selon les modĂšles. - **Longueur du contexte (Ollama)**   - Taille mĂ©moire maximale disponible pour prompt + gĂ©nĂ©ration.   - Varie selon le modĂšle : `4096`, `8192`, `32768`, `128000`, etc. --- ## đŸ§” ExĂ©cution & Performance (spĂ©cifique Ă  Ollama) - **Batch Size (`num_batch`)**   - Nombre de tokens traitĂ©s simultanĂ©ment.   - Peut accĂ©lĂ©rer l’infĂ©rence mais consomme plus de RAM/VRAM. - **Utiliser mmap**   - Active le chargement du modĂšle en mĂ©moire mappĂ©e (plus rapide, nĂ©cessite moins de RAM). - **Utiliser mlock**   - EmpĂȘche le modĂšle d’ĂȘtre swapĂ© sur le disque (nĂ©cessite des droits root). - **Threads (`num_thread`)**   - Nombre de threads CPU utilisĂ©s pour l’infĂ©rence.   - Exemple : `8`, `16`, selon ton CPU. - **GPU (`num_gpu`)**   - Nombre de GPU Ă  utiliser.   - `0` = dĂ©sactive le GPU, `1` = un seul GPU, `auto` = automatique. --- ## đŸ“€ Exemple d'appel API Ollama ```json {   "model": "llama3.2-vision:90b-instruct-q8_0",   "prompt": "Explique la gravitĂ© quantique",   "temperature": 0.7,   "top_p": 0.9,   "repeat_penalty": 1.1,   "num_predict": 512,   "stream": false } ``` --- ## 🔗 Liens utiles - [🔗 Docs OpenWebUI](https://docs.openwebui.com) - [🔗 Ollama Modelfile Reference](https://github.com/ollama/ollama/blob/main/docs/modelfile.md)