{"id":1301,"date":"2026-11-08T13:30:00","date_gmt":"2026-11-08T12:30:00","guid":{"rendered":"https:\/\/remivernier.com\/?p=1301"},"modified":"2026-11-08T13:30:00","modified_gmt":"2026-11-08T12:30:00","slug":"gemma-4-26b-contexte-long-information-perdue","status":"publish","type":"post","link":"https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/","title":{"rendered":"Gemma 4 26B en contexte long: l&rsquo;information se perd-elle?"},"content":{"rendered":"<p>Nous allons cacher une phrase dans un long prompt, demander \u00e0 Gemma 4 26B A4B de la retrouver et recommencer en d\u00e9pla\u00e7ant cette phrase au d\u00e9but, au milieu puis \u00e0 la fin du texte, d&rsquo;abord sur environ 5 000 tokens puis sur environ 20 000.<\/p>\n<p>La question derri\u00e8re ce petit labo est simple: sur un Mac mini \u00e0 32 Go, jusqu&rsquo;o\u00f9 pouvons-nous charger le contexte avant que le mod\u00e8le ne commence \u00e0 \u00ab oublier \u00bb ce qu&rsquo;il a lu? Le ph\u00e9nom\u00e8ne a \u00e9t\u00e9 d\u00e9crit en 2023 par Nelson F. Liu et ses co-auteurs de Stanford dans <a href=\"https:\/\/arxiv.org\/abs\/2307.03172\">Lost in the Middle: How Language Models Use Long Contexts<\/a>: les mod\u00e8les qu&rsquo;ils ont test\u00e9s exploitaient mieux une information plac\u00e9e au d\u00e9but ou \u00e0 la fin du contexte que celle enfouie au milieu. Nous allons voir ce qu&rsquo;il en est pour ce mod\u00e8le, sur cette machine, avec un test volontairement simple.<\/p>\n<h2>Pr\u00e9sentation de la maquette<\/h2>\n<p>Machine: Mac mini M4, 32 Go de m\u00e9moire unifi\u00e9e.<\/p>\n<p>Logiciel: LM Studio, moteur mlx-llm-mac-arm64-apple-metal-advsimd 1.14.0, interrog\u00e9 par son API locale. LM Studio expose une <a href=\"https:\/\/lmstudio.ai\/docs\/developer\/rest\/endpoints\">API REST<\/a> qui renvoie directement des statistiques comme le nombre de tokens par seconde et le temps jusqu&rsquo;au premier token (TTFT): ce sont ces valeurs que nous relevons.<\/p>\n<p>Mod\u00e8le: google\/gemma-4-26b-a4b-qat, format MLX, quantification 4 bits, 15,6 Go de poids, charg\u00e9 en 22 s avec un contexte de 32 768 tokens. C&rsquo;est un mod\u00e8le Mixture-of-Experts dont la <a href=\"https:\/\/huggingface.co\/google\/gemma-4-26B-A4B\">fiche Hugging Face<\/a> annonce une fen\u00eatre allant jusqu&rsquo;\u00e0 256K tokens: nous restons donc tr\u00e8s loin du maximum th\u00e9orique, ce qui est le cas r\u00e9aliste sur 32 Go.<\/p>\n<p>Attention: nous connaissons la taille des poids, pas la m\u00e9moire r\u00e9ellement consomm\u00e9e pendant les essais. Le cache KV grossit avec le contexte et ce labo ne l&rsquo;a pas mesur\u00e9. Pour le voir chez vous, il suffit de garder le Moniteur d&rsquo;activit\u00e9 (onglet \u00ab M\u00e9moire \u00bb) ou la commande <code>memory_pressure<\/code> ouverts pendant l&rsquo;appel le plus long.<\/p>\n<p>Le prompt est construit toujours de la m\u00eame fa\u00e7on: une consigne, du texte de remplissage tir\u00e9 du blog, une \u00ab note interne \u00bb qui contient le fait \u00e0 retrouver, encore du remplissage, puis la question. Le marqueur <code>{{TEXTE_BLOG:N}}<\/code> est remplac\u00e9 par un segment de N mots extrait des articles du blog, et chaque segment part du d\u00e9but des articles.<\/p>\n<figure class=\"wp-block-image\">\n<svg viewBox=\"0 0 720 230\" width=\"100%\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" font-family=\"sans-serif\" font-size=\"14\">\n<defs><marker id=\"fl\" markerWidth=\"10\" markerHeight=\"10\" refX=\"8\" refY=\"3\" orient=\"auto\"><path d=\"M0,0 L8,3 L0,6 z\" fill=\"#333\"\/><\/marker><\/defs>\n<text x=\"10\" y=\"30\" fill=\"#333\">e1 (10 %)<\/text>\n<rect x=\"110\" y=\"15\" width=\"40\" height=\"24\" fill=\"#e8f0fe\" stroke=\"#333\"\/>\n<rect x=\"150\" y=\"15\" width=\"12\" height=\"24\" fill=\"#fdf3e1\" stroke=\"#333\"\/>\n<rect x=\"162\" y=\"15\" width=\"438\" height=\"24\" fill=\"#e8f0fe\" stroke=\"#333\"\/>\n<rect x=\"600\" y=\"15\" width=\"40\" height=\"24\" fill=\"#e6f4ea\" stroke=\"#333\"\/>\n<text x=\"10\" y=\"80\" fill=\"#333\">e2 (50 %)<\/text>\n<rect x=\"110\" y=\"65\" width=\"239\" height=\"24\" fill=\"#e8f0fe\" stroke=\"#333\"\/>\n<rect x=\"349\" y=\"65\" width=\"12\" height=\"24\" fill=\"#fdf3e1\" stroke=\"#333\"\/>\n<rect x=\"361\" y=\"65\" width=\"239\" height=\"24\" fill=\"#e8f0fe\" stroke=\"#333\"\/>\n<rect x=\"600\" y=\"65\" width=\"40\" height=\"24\" fill=\"#e6f4ea\" stroke=\"#333\"\/>\n<text x=\"10\" y=\"130\" fill=\"#333\">e3 (90 %)<\/text>\n<rect x=\"110\" y=\"115\" width=\"438\" height=\"24\" fill=\"#e8f0fe\" stroke=\"#333\"\/>\n<rect x=\"548\" y=\"115\" width=\"12\" height=\"24\" fill=\"#fdf3e1\" stroke=\"#333\"\/>\n<rect x=\"560\" y=\"115\" width=\"40\" height=\"24\" fill=\"#e8f0fe\" stroke=\"#333\"\/>\n<rect x=\"600\" y=\"115\" width=\"40\" height=\"24\" fill=\"#e6f4ea\" stroke=\"#333\"\/>\n<line x1=\"356\" y1=\"175\" x2=\"356\" y2=\"94\" stroke=\"#333\" marker-end=\"url(#fl)\"\/>\n<text x=\"250\" y=\"192\" fill=\"#333\">note interne (MAINT-7342-K)<\/text>\n<line x1=\"620\" y1=\"175\" x2=\"620\" y2=\"144\" stroke=\"#333\" marker-end=\"url(#fl)\"\/>\n<text x=\"580\" y=\"192\" fill=\"#333\">question<\/text>\n<rect x=\"110\" y=\"205\" width=\"16\" height=\"14\" fill=\"#e8f0fe\" stroke=\"#333\"\/>\n<text x=\"132\" y=\"217\" fill=\"#333\" font-size=\"13\">texte du blog (remplissage)<\/text>\n<\/svg><figcaption>Position de la note dans les trois prompts d&rsquo;environ 5 000 tokens<\/figcaption><\/figure>\n<p>Tous les essais tournent \u00e0 temp\u00e9rature 0, avec <code>max_tokens<\/code> \u00e0 300, la r\u00e9flexion d\u00e9sactiv\u00e9e, un appel de chauffe puis une seule r\u00e9p\u00e9tition mesur\u00e9e. Une seule mesure par essai, c&rsquo;est peu: les chiffres qui suivent donnent une tendance sur cette machine, pas une moyenne.<\/p>\n<h2>Une note cach\u00e9e dans 5 000 tokens<\/h2>\n<p>Lan\u00e7ons le premier essai, la note plac\u00e9e \u00e0 10 % du prompt:<\/p>\n<pre class=\"wp-block-code\"><code>POST http:\/\/localhost:1234\/v1\/chat\/completions\n{\n  \"model\": \"google\/gemma-4-26b-a4b-qat\",\n  \"temperature\": 0,\n  \"max_tokens\": 300,\n  \"messages\": [{\"role\": \"user\", \"content\":\n    \"Voici un long document. Lis-le, puis r\u00e9ponds \u00e0 la question finale en une phrase courte.\\n\\n{{TEXTE_BLOG:300}}\\n\\nNote interne : le code de la fen\u00eatre de maintenance du cluster Orion est MAINT-7342-K.\\n\\n{{TEXTE_BLOG:2700}}\\n\\nQuestion : quel est le code de la fen\u00eatre de maintenance du cluster Orion ?\"}]\n}<\/code><\/pre>\n<p>Nous obtenons:<\/p>\n<pre class=\"wp-block-code\"><code>Tokens entr\u00e9e: 5677 | sortie: 21 (r\u00e9flexion: 0)\nTTFT: 15.29 s | dur\u00e9e totale: 16.2 s | g\u00e9n\u00e9ration: 25.1 tokens\/s\nR\u00e9ponse: Le code de la fen\u00eatre de maintenance du cluster Orion est MAINT-7342-K.<\/code><\/pre>\n<p>La r\u00e9ponse est juste et reprend la formulation de la question. Sur 16,2 s d&rsquo;appel, 15,29 s passent avant le premier token: c&rsquo;est la lecture du prompt (le prefill) qui co\u00fbte, la g\u00e9n\u00e9ration des 21 tokens ne prend pas une seconde.<\/p>\n<p>D\u00e9pla\u00e7ons la note au milieu, avec deux segments de 1 500 mots (<code>{{TEXTE_BLOG:1500}}<\/code> avant et apr\u00e8s la note, le reste du prompt est identique):<\/p>\n<pre class=\"wp-block-code\"><code>Tokens entr\u00e9e: 6206 | sortie: 21 (r\u00e9flexion: 0)\nTTFT: 16.34 s | dur\u00e9e totale: 17.2 s | g\u00e9n\u00e9ration: 25.4 tokens\/s\nR\u00e9ponse: Le code de la fen\u00eatre de maintenance du cluster Orion est MAINT-7342-K.<\/code><\/pre>\n<p>Le milieu, qui est la zone \u00e0 risque d&rsquo;apr\u00e8s l&rsquo;\u00e9tude de Stanford, ne pose aucun probl\u00e8me ici. Le prompt est un peu plus long (6 206 tokens) parce que deux fois 1 500 mots pris au d\u00e9but des articles ne donnent pas le m\u00eame texte que 300 + 2 700.<\/p>\n<p>Dernier essai \u00e0 cette taille, la note \u00e0 90 % (<code>{{TEXTE_BLOG:2700}}<\/code> avant, <code>{{TEXTE_BLOG:300}}<\/code> apr\u00e8s):<\/p>\n<pre class=\"wp-block-code\"><code>Tokens entr\u00e9e: 5677 | sortie: 21 (r\u00e9flexion: 0)\nTTFT: 7.24 s | dur\u00e9e totale: 8.1 s | g\u00e9n\u00e9ration: 27.3 tokens\/s\nR\u00e9ponse: Le code de la fen\u00eatre de maintenance du cluster Orion est MAINT-7342-K.<\/code><\/pre>\n<p>Trois sur trois. Le chiffre qui surprend est ailleurs: avec le m\u00eame nombre de tokens que le premier essai (5 677, c&rsquo;est le m\u00eame texte avec les deux segments invers\u00e9s), le premier token arrive en 7,24 s au lieu de 15,29 s. Le mod\u00e8le ne lit pas plus vite un document parce que la r\u00e9ponse est \u00e0 la fin; nous reviendrons sur cet \u00e9cart plus bas.<\/p>\n<h2>Passons \u00e0 20 000 tokens<\/h2>\n<p>Nous quadruplons la taille du remplissage. Pour la note \u00e0 10 %, le prompt devient:<\/p>\n<pre class=\"wp-block-code\"><code>Voici un long document. Lis-le, puis r\u00e9ponds \u00e0 la question finale en une phrase courte.\n\n{{TEXTE_BLOG:1200}}\n\nNote interne : le code de la fen\u00eatre de maintenance du cluster Orion est MAINT-7342-K.\n\n{{TEXTE_BLOG:6000}}\n\n{{TEXTE_BLOG:4800}}\n\nQuestion : quel est le code de la fen\u00eatre de maintenance du cluster Orion ?<\/code><\/pre>\n<p>Attention: comme chaque segment repart du d\u00e9but des articles, les 1 200 premiers mots apparaissent trois fois dans ce prompt et le bloc de 4 800 mots est contenu dans celui de 6 000. La botte de foin est tr\u00e8s r\u00e9p\u00e9titive, ce qui ne ressemble pas \u00e0 un vrai corpus documentaire.<\/p>\n<pre class=\"wp-block-code\"><code>Tokens entr\u00e9e: 20931 | sortie: 21 (r\u00e9flexion: 0)\nTTFT: 57.76 s | dur\u00e9e totale: 59 s | g\u00e9n\u00e9ration: 17.5 tokens\/s\nR\u00e9ponse: Le code de la fen\u00eatre de maintenance du cluster Orion est MAINT-7342-K.<\/code><\/pre>\n<p>Pr\u00e8s d&rsquo;une minute d&rsquo;attente pour une phrase de 21 tokens. La r\u00e9ponse reste juste, mais la vitesse de g\u00e9n\u00e9ration tombe de 25 \u00e0 17,5 tokens\/s: chaque nouveau token doit consulter un cache d&rsquo;attention quatre fois plus gros.<\/p>\n<p>Lan\u00e7ons la note au milieu, entre deux segments de 6 000 mots:<\/p>\n<pre class=\"wp-block-code\"><code>Tokens entr\u00e9e: 20260 | sortie: 21 (r\u00e9flexion: 0)\nTTFT: 46.63 s | dur\u00e9e totale: 47.9 s | g\u00e9n\u00e9ration: 18.3 tokens\/s\nR\u00e9ponse: Le code de la fen\u00eatre de maintenance du cluster Orion est MAINT-7342-K.<\/code><\/pre>\n<p>Puis \u00e0 90 %, apr\u00e8s les segments de 6 000 et 4 800 mots, avec 1 200 mots derri\u00e8re:<\/p>\n<pre class=\"wp-block-code\"><code>Tokens entr\u00e9e: 20931 | sortie: 21 (r\u00e9flexion: 0)\nTTFT: 35.05 s | dur\u00e9e totale: 36.3 s | g\u00e9n\u00e9ration: 18 tokens\/s\nR\u00e9ponse: Le code de la fen\u00eatre de maintenance du cluster Orion est MAINT-7342-K.<\/code><\/pre>\n<p>Six r\u00e9ponses justes sur six, mot pour mot identiques. \u00c0 20 000 tokens, soit environ 64 % du contexte charg\u00e9, Gemma 4 26B A4B ne perd pas la note, ni au d\u00e9but, ni au milieu, ni \u00e0 la fin.<\/p>\n<table>\n<thead>\n<tr>\n<th>Essai<\/th>\n<th>Position<\/th>\n<th>Tokens entr\u00e9e<\/th>\n<th>TTFT<\/th>\n<th>Dur\u00e9e totale<\/th>\n<th>G\u00e9n\u00e9ration<\/th>\n<th>Fait retrouv\u00e9<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>e1<\/td>\n<td>10 %<\/td>\n<td>5 677<\/td>\n<td>15,29 s<\/td>\n<td>16,2 s<\/td>\n<td>25,1 t\/s<\/td>\n<td>oui<\/td>\n<\/tr>\n<tr>\n<td>e2<\/td>\n<td>50 %<\/td>\n<td>6 206<\/td>\n<td>16,34 s<\/td>\n<td>17,2 s<\/td>\n<td>25,4 t\/s<\/td>\n<td>oui<\/td>\n<\/tr>\n<tr>\n<td>e3<\/td>\n<td>90 %<\/td>\n<td>5 677<\/td>\n<td>7,24 s<\/td>\n<td>8,1 s<\/td>\n<td>27,3 t\/s<\/td>\n<td>oui<\/td>\n<\/tr>\n<tr>\n<td>e4<\/td>\n<td>10 %<\/td>\n<td>20 931<\/td>\n<td>57,76 s<\/td>\n<td>59 s<\/td>\n<td>17,5 t\/s<\/td>\n<td>oui<\/td>\n<\/tr>\n<tr>\n<td>e5<\/td>\n<td>50 %<\/td>\n<td>20 260<\/td>\n<td>46,63 s<\/td>\n<td>47,9 s<\/td>\n<td>18,3 t\/s<\/td>\n<td>oui<\/td>\n<\/tr>\n<tr>\n<td>e6<\/td>\n<td>90 %<\/td>\n<td>20 931<\/td>\n<td>35,05 s<\/td>\n<td>36,3 s<\/td>\n<td>18 t\/s<\/td>\n<td>oui<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Position ou cache?<\/h2>\n<p>Si nous divisons le nombre de tokens d&rsquo;entr\u00e9e par le TTFT, nous obtenons un d\u00e9bit de lecture du prompt: environ 371 tokens\/s pour e1, 380 pour e2 et 362 pour e4. Ces trois valeurs sont tr\u00e8s proches, ce qui ressemble \u00e0 un prefill complet calcul\u00e9 \u00e0 vitesse constante. Le calcul donne 784 tokens\/s pour e3, 434 pour e5 et 597 pour e6: ces prompts-l\u00e0 ont \u00e9t\u00e9 lus plus vite qu&rsquo;ils ne pouvaient l&rsquo;\u00eatre.<\/p>\n<p>L&rsquo;explication la plus probable tient \u00e0 la construction du labo et non au mod\u00e8le. Les essais ont \u00e9t\u00e9 lanc\u00e9s dans l&rsquo;ordre, et comme tous les segments partent du d\u00e9but des articles, deux prompts successifs partagent souvent un long pr\u00e9fixe identique:<\/p>\n<ul>\n<li>e3 commence par la consigne suivie des 2 700 premiers mots, e2 commen\u00e7ait par la consigne suivie des 1 500 premiers mots,<\/li>\n<li>-> environ la moiti\u00e9 du prompt de e3 \u00e9tait d\u00e9j\u00e0 calcul\u00e9e, et son TTFT tombe \u00e0 peu pr\u00e8s de moiti\u00e9 par rapport \u00e0 e1,<\/li>\n<li>e6 commence par les m\u00eames 6 000 mots que e5,<\/li>\n<li>-> une dizaine de milliers de tokens d\u00e9j\u00e0 en cache, et 35 s au lieu de 58.<\/li>\n<\/ul>\n<p>Un moteur qui conserve le cache KV de la requ\u00eate pr\u00e9c\u00e9dente et r\u00e9utilise le pr\u00e9fixe commun produit ce comportement. Cette hypoth\u00e8se colle bien \u00e0 e3 et e6, beaucoup moins \u00e0 l&rsquo;\u00e9cart entre e4 et e5, qui ne partagent chacun que 1 200 mots avec leur pr\u00e9d\u00e9cesseur; nous ne savons pas non plus quel prompt servait \u00e0 l&rsquo;appel de chauffe. Pour trancher, il suffit de relancer la s\u00e9rie dans l&rsquo;ordre inverse, ou de donner \u00e0 chaque essai un pr\u00e9fixe unique (un identifiant al\u00e9atoire en t\u00eate de prompt).<\/p>\n<p>Ce point a une cons\u00e9quence tr\u00e8s pratique. Dans un usage r\u00e9el (un assistant qui relit le m\u00eame document, un RAG qui place toujours le m\u00eame prompt syst\u00e8me en t\u00eate), placer la partie stable au d\u00e9but et la partie variable \u00e0 la fin permet de profiter de ce cache et de diviser le temps d&rsquo;attente. Je reviendrai sur la m\u00e9thode de mesure dans le d\u00e9tail, mais si vous comparez des moteurs ou des formats, pensez \u00e0 casser ce pr\u00e9fixe commun, sans quoi vous mesurez le cache plut\u00f4t que le mod\u00e8le; c&rsquo;est un des pi\u00e8ges \u00e9voqu\u00e9s dans l&rsquo;article sur la <a href=\"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/mlx-gguf-lm-studio-mac-mini-m4-methode-comparaison\/\">comparaison MLX et GGUF dans LM Studio<\/a>.<\/p>\n<p>Reste la question de d\u00e9part, la confiance \u00e0 accorder au mod\u00e8le sur 20 000 tokens. Le r\u00e9sultat est net mais le test est facile. La note est isol\u00e9e, annonc\u00e9e par \u00ab Note interne \u00bb, et la question reprend ses mots un par un (\u00ab code \u00bb, \u00ab fen\u00eatre de maintenance \u00bb, \u00ab cluster Orion \u00bb): le mod\u00e8le n&rsquo;a qu&rsquo;\u00e0 retrouver une correspondance litt\u00e9rale. Les auteurs de <a href=\"https:\/\/arxiv.org\/abs\/2502.05167\">NoLiMa<\/a> ont montr\u00e9 que les r\u00e9sultats des tests de type \u00ab aiguille dans une botte de foin \u00bb chutent fortement d\u00e8s que la question et le passage ne partagent plus de mots et qu&rsquo;il faut une association pour faire le lien. Une question comme \u00ab quand pouvons-nous red\u00e9marrer les n\u0153uds d&rsquo;Orion? \u00bb serait une \u00e9preuve bien plus parlante, tout comme deux codes proches plac\u00e9s \u00e0 des endroits diff\u00e9rents du texte.<\/p>\n<p>Attention aussi au revers de cette bonne m\u00e9moire: une phrase gliss\u00e9e n&rsquo;importe o\u00f9 dans 20 000 tokens est lue et reprise fid\u00e8lement, et une instruction cach\u00e9e dans un document l&rsquo;est tout autant. C&rsquo;est le m\u00e9canisme qu&rsquo;exploite l&rsquo;injection de prompt dans une cha\u00eene <a href=\"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/rag-local-lm-studio-n8n-embeddings-decoupage\/\">RAG locale avec LM Studio et n8n<\/a>, et la taille du contexte ne prot\u00e8ge de rien.<\/p>\n<p>Sur cette maquette, la limite qui appara\u00eet en premier est donc le temps et non la m\u00e9moire du mod\u00e8le: jusqu&rsquo;\u00e0 20 000 tokens la note est retrouv\u00e9e \u00e0 chaque fois, mais il faut compter pr\u00e8s d&rsquo;une minute de prefill sans cache et une g\u00e9n\u00e9ration qui perd environ 30 % de sa vitesse. Le prochain palier \u00e0 mesurer, ce sont 30 000 tokens avec une question reformul\u00e9e, en surveillant la pression m\u00e9moire.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sur le Mac mini M4, nous cachons un fait \u00e0 10, 50 et 90 % d&rsquo;un prompt de 5 000 puis 20 000 tokens pour voir si Gemma 4 26B A4B le retrouve, et \u00e0 quel prix.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[59,58],"tags":[120,74,60,64,61,121,122],"class_list":["post-1301","post","type-post","status-publish","format-standard","hentry","category-intelligence-artificielle","category-llm-en-local","tag-contexte-long","tag-gemma-4","tag-lm-studio","tag-mac-mini-m4","tag-mlx","tag-needle-in-a-haystack","tag-time-to-first-token"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Gemma 4 26B en contexte long: l&#039;information se perd-elle? - R\u00e9mi VERNIER<\/title>\n<meta name=\"description\" content=\"Sur le Mac mini M4, nous cachons un fait \u00e0 10, 50 et 90 % d&#039;un prompt de 5 000 puis 20 000 tokens pour voir si Gemma 4 26B A4B le retrouve, et \u00e0 quel prix.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Gemma 4 26B en contexte long: l&#039;information se perd-elle? - R\u00e9mi VERNIER\" \/>\n<meta property=\"og:description\" content=\"Sur le Mac mini M4, nous cachons un fait \u00e0 10, 50 et 90 % d&#039;un prompt de 5 000 puis 20 000 tokens pour voir si Gemma 4 26B A4B le retrouve, et \u00e0 quel prix.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/\" \/>\n<meta property=\"og:site_name\" content=\"R\u00e9mi VERNIER\" \/>\n<meta property=\"article:published_time\" content=\"2026-11-08T12:30:00+00:00\" \/>\n<meta name=\"author\" content=\"R\u00e9mi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"R\u00e9mi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/11\\\/08\\\/gemma-4-26b-contexte-long-information-perdue\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/11\\\/08\\\/gemma-4-26b-contexte-long-information-perdue\\\/\"},\"author\":{\"name\":\"R\u00e9mi\",\"@id\":\"https:\\\/\\\/remivernier.com\\\/#\\\/schema\\\/person\\\/a4c76c63a5a3d94454484845e42fc906\"},\"headline\":\"Gemma 4 26B en contexte long: l&rsquo;information se perd-elle?\",\"datePublished\":\"2026-11-08T12:30:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/11\\\/08\\\/gemma-4-26b-contexte-long-information-perdue\\\/\"},\"wordCount\":1572,\"commentCount\":0,\"keywords\":[\"contexte long\",\"gemma 4\",\"lm studio\",\"mac mini m4\",\"mlx\",\"needle in a haystack\",\"time to first token\"],\"articleSection\":[\"Intelligence artificielle\",\"LLM en local\"],\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/11\\\/08\\\/gemma-4-26b-contexte-long-information-perdue\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/11\\\/08\\\/gemma-4-26b-contexte-long-information-perdue\\\/\",\"url\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/11\\\/08\\\/gemma-4-26b-contexte-long-information-perdue\\\/\",\"name\":\"Gemma 4 26B en contexte long: l'information se perd-elle? - R\u00e9mi VERNIER\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/remivernier.com\\\/#website\"},\"datePublished\":\"2026-11-08T12:30:00+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/remivernier.com\\\/#\\\/schema\\\/person\\\/a4c76c63a5a3d94454484845e42fc906\"},\"description\":\"Sur le Mac mini M4, nous cachons un fait \u00e0 10, 50 et 90 % d'un prompt de 5 000 puis 20 000 tokens pour voir si Gemma 4 26B A4B le retrouve, et \u00e0 quel prix.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/11\\\/08\\\/gemma-4-26b-contexte-long-information-perdue\\\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/11\\\/08\\\/gemma-4-26b-contexte-long-information-perdue\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/11\\\/08\\\/gemma-4-26b-contexte-long-information-perdue\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/remivernier.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Gemma 4 26B en contexte long: l&rsquo;information se perd-elle?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/remivernier.com\\\/#website\",\"url\":\"https:\\\/\\\/remivernier.com\\\/\",\"name\":\"R\u00e9mi VERNIER\",\"description\":\"Identit\u00e9, s\u00e9curit\u00e9, SAP et IA : Active Directory, Azure &amp; co...\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/remivernier.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/remivernier.com\\\/#\\\/schema\\\/person\\\/a4c76c63a5a3d94454484845e42fc906\",\"name\":\"R\u00e9mi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f750448bc07f5d1d9c1189344283777ec0d33275c184599b199fb6b305bc6fba?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f750448bc07f5d1d9c1189344283777ec0d33275c184599b199fb6b305bc6fba?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f750448bc07f5d1d9c1189344283777ec0d33275c184599b199fb6b305bc6fba?s=96&d=mm&r=g\",\"caption\":\"R\u00e9mi\"},\"sameAs\":[\"http:\\\/\\\/www.linkedin.com\\\/in\\\/remi-vernier\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Gemma 4 26B en contexte long: l'information se perd-elle? - R\u00e9mi VERNIER","description":"Sur le Mac mini M4, nous cachons un fait \u00e0 10, 50 et 90 % d'un prompt de 5 000 puis 20 000 tokens pour voir si Gemma 4 26B A4B le retrouve, et \u00e0 quel prix.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/","og_locale":"fr_FR","og_type":"article","og_title":"Gemma 4 26B en contexte long: l'information se perd-elle? - R\u00e9mi VERNIER","og_description":"Sur le Mac mini M4, nous cachons un fait \u00e0 10, 50 et 90 % d'un prompt de 5 000 puis 20 000 tokens pour voir si Gemma 4 26B A4B le retrouve, et \u00e0 quel prix.","og_url":"https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/","og_site_name":"R\u00e9mi VERNIER","article_published_time":"2026-11-08T12:30:00+00:00","author":"R\u00e9mi","twitter_card":"summary_large_image","twitter_misc":{"\u00c9crit par":"R\u00e9mi","Dur\u00e9e de lecture estim\u00e9e":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/#article","isPartOf":{"@id":"https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/"},"author":{"name":"R\u00e9mi","@id":"https:\/\/remivernier.com\/#\/schema\/person\/a4c76c63a5a3d94454484845e42fc906"},"headline":"Gemma 4 26B en contexte long: l&rsquo;information se perd-elle?","datePublished":"2026-11-08T12:30:00+00:00","mainEntityOfPage":{"@id":"https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/"},"wordCount":1572,"commentCount":0,"keywords":["contexte long","gemma 4","lm studio","mac mini m4","mlx","needle in a haystack","time to first token"],"articleSection":["Intelligence artificielle","LLM en local"],"inLanguage":"fr-FR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/","url":"https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/","name":"Gemma 4 26B en contexte long: l'information se perd-elle? - R\u00e9mi VERNIER","isPartOf":{"@id":"https:\/\/remivernier.com\/#website"},"datePublished":"2026-11-08T12:30:00+00:00","author":{"@id":"https:\/\/remivernier.com\/#\/schema\/person\/a4c76c63a5a3d94454484845e42fc906"},"description":"Sur le Mac mini M4, nous cachons un fait \u00e0 10, 50 et 90 % d'un prompt de 5 000 puis 20 000 tokens pour voir si Gemma 4 26B A4B le retrouve, et \u00e0 quel prix.","breadcrumb":{"@id":"https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/remivernier.com\/index.php\/2026\/11\/08\/gemma-4-26b-contexte-long-information-perdue\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/remivernier.com\/"},{"@type":"ListItem","position":2,"name":"Gemma 4 26B en contexte long: l&rsquo;information se perd-elle?"}]},{"@type":"WebSite","@id":"https:\/\/remivernier.com\/#website","url":"https:\/\/remivernier.com\/","name":"R\u00e9mi VERNIER","description":"Identit\u00e9, s\u00e9curit\u00e9, SAP et IA : Active Directory, Azure &amp; co...","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/remivernier.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Person","@id":"https:\/\/remivernier.com\/#\/schema\/person\/a4c76c63a5a3d94454484845e42fc906","name":"R\u00e9mi","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/secure.gravatar.com\/avatar\/f750448bc07f5d1d9c1189344283777ec0d33275c184599b199fb6b305bc6fba?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f750448bc07f5d1d9c1189344283777ec0d33275c184599b199fb6b305bc6fba?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f750448bc07f5d1d9c1189344283777ec0d33275c184599b199fb6b305bc6fba?s=96&d=mm&r=g","caption":"R\u00e9mi"},"sameAs":["http:\/\/www.linkedin.com\/in\/remi-vernier"]}]}},"_links":{"self":[{"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/posts\/1301","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/comments?post=1301"}],"version-history":[{"count":1,"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/posts\/1301\/revisions"}],"predecessor-version":[{"id":1303,"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/posts\/1301\/revisions\/1303"}],"wp:attachment":[{"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/media?parent=1301"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/categories?post=1301"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/tags?post=1301"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}