{"code":"var Component=(()=>{var p=Object.create;var r=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var k=Object.getOwnPropertyNames;var m=Object.getPrototypeOf,g=Object.prototype.hasOwnProperty;var E=(n,i)=>()=>(i||n((i={exports:{}}).exports,i),i.exports),b=(n,i)=>{for(var l in i)r(n,l,{get:i[l],enumerable:!0})},d=(n,i,l,t)=>{if(i&&typeof i==\"object\"||typeof i==\"function\")for(let s of k(i))!g.call(n,s)&&s!==l&&r(n,s,{get:()=>i[s],enumerable:!(t=u(i,s))||t.enumerable});return n};var f=(n,i,l)=>(l=n!=null?p(m(n)):{},d(i||!n||!n.__esModule?r(l,\"default\",{value:n,enumerable:!0}):l,n)),y=n=>d(r({},\"__esModule\",{value:!0}),n);var a=E((F,h)=>{h.exports=_jsx_runtime});var v={};b(v,{default:()=>o});var e=f(a());function c(n){let i={a:\"a\",code:\"code\",h2:\"h2\",h3:\"h3\",h4:\"h4\",hr:\"hr\",img:\"img\",li:\"li\",ol:\"ol\",p:\"p\",pre:\"pre\",span:\"span\",strong:\"strong\",table:\"table\",tbody:\"tbody\",td:\"td\",th:\"th\",thead:\"thead\",tr:\"tr\",ul:\"ul\",...n.components};return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(i.p,{children:\"macOS Tahoe 26.2 introduit une fonctionnalit\\xE9 r\\xE9volutionnaire qui transforme plusieurs Mac en un supercalculateur IA unifi\\xE9 gr\\xE2ce au clustering Thunderbolt 5. Ce guide complet couvre tout, des exigences mat\\xE9rielles \\xE0 l'ex\\xE9cution de mod\\xE8les de milliers de milliards de param\\xE8tres comme Kimi K2 Thinking sur votre propre cluster Mac.\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.img,{alt:\"macOS Tahoe Thunderbolt 5 Clustering Guide\",src:\"/images/blog/shared/mac-studio-back-view.webp\",width:\"758\",height:\"372\"})}),`\n`,(0,e.jsx)(i.h2,{id:\"points-cl\\xE9s\",children:\"Points cl\\xE9s\"}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Le clustering Thunderbolt 5\"}),\" dans macOS Tahoe 26.2 permet de connecter plusieurs Mac \\xE0 une vitesse bidirectionnelle allant jusqu'\\xE0 80 Gbps\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Quatre Mac Studio avec 512 Go chacun\"}),\" peuvent ex\\xE9cuter le mod\\xE8le Kimi K2 Thinking d'un billion de param\\xE8tres en utilisant moins de 500 W de puissance totale\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Les appareils compatibles\"}),\" incluent le Mac mini M4 Pro, le MacBook Pro M4 Pro/Max et le Mac Studio M3 Ultra\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Le framework MLX\"}),\" et le logiciel \",(0,e.jsx)(i.strong,{children:\"EXO 1.0\"}),\" fournissent l'infrastructure de calcul distribu\\xE9\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Aucun mat\\xE9riel sp\\xE9cial requis\"}),\" - juste des c\\xE2bles Thunderbolt 5 standard de moins de 2 m\\xE8tres\"]}),`\n`]}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"r\\xE9sum\\xE9--comprendre-la-technologie-de-clustering-mac\",children:\"R\\xE9sum\\xE9 : Comprendre la technologie de clustering Mac\"}),`\n`,(0,e.jsx)(i.h3,{id:\"pourquoi-le-clustering-thunderbolt-5-est-important\",children:\"Pourquoi le clustering Thunderbolt 5 est important\"}),`\n`,(0,e.jsx)(i.p,{children:\"La sortie de macOS Tahoe 26.2 marque un moment charni\\xE8re dans la strat\\xE9gie informatique professionnelle d'Apple. Pour la premi\\xE8re fois, Apple fournit une prise en charge native et optimis\\xE9e pour connecter plusieurs Mac en un cluster informatique unifi\\xE9 utilisant la bande passante sans pr\\xE9c\\xE9dent de Thunderbolt 5. Ce n'est pas juste une am\\xE9lioration progressive \\u2014 cela change fondamentalement ce qui est possible avec le mat\\xE9riel Mac.\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Le probl\\xE8me qu'il r\\xE9sout :\"})}),`\n`,(0,e.jsx)(i.p,{children:\"L'ex\\xE9cution de grands mod\\xE8les d'IA n\\xE9cessitait traditionnellement des clusters GPU co\\xFBteux avec une consommation d'\\xE9nergie massive. Une configuration typique pour des mod\\xE8les de milliers de milliards de param\\xE8tres pourrait inclure :\"}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Cluster NVIDIA H100\"}),\" : Mat\\xE9riel \\xE0 plus de 400 000 $, consommation de plus de 10 kW\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Instances GPU Cloud\"}),\" : 2 \\xE0 5 $ par heure pour des instances performantes\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Infrastructure de centre de donn\\xE9es personnalis\\xE9e\"}),\" : Refroidissement, distribution d'\\xE9nergie, r\\xE9seau\"]}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"La solution du cluster Mac :\"})}),`\n`,(0,e.jsx)(i.p,{children:\"Avec le clustering Thunderbolt 5, vous pouvez obtenir des capacit\\xE9s comparables avec :\"}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"4x Mac Studio\"}),\" : Mat\\xE9riel \\xE0 47 000 $ (r\\xE9duction de co\\xFBt de 88 % par rapport au H100)\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Consommation \\xE9lectrique\"}),\" : Moins de 500 W (r\\xE9duction de 95 %)\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Aucune infrastructure\"}),\" : Environnement de bureau standard\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Traitement local\"}),\" : Confidentialit\\xE9 totale des donn\\xE9es\"]}),`\n`]}),`\n`,(0,e.jsx)(i.h3,{id:\"qui-b\\xE9n\\xE9ficie-du-clustering-mac-\",children:\"Qui b\\xE9n\\xE9ficie du clustering Mac ?\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Chercheurs en IA et ing\\xE9nieurs ML :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsx)(i.li,{children:\"Ex\\xE9cutez des mod\\xE8les de pointe localement sans d\\xE9pendances cloud\"}),`\n`,(0,e.jsx)(i.li,{children:\"It\\xE9rez plus rapidement avec du mat\\xE9riel d\\xE9di\\xE9\"}),`\n`,(0,e.jsx)(i.li,{children:\"Gardez un contr\\xF4le total sur les donn\\xE9es d'entra\\xEEnement\"}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Professionnels de la cr\\xE9ation :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsx)(i.li,{children:\"Rendu vid\\xE9o distribu\\xE9 sur plusieurs Mac\"}),`\n`,(0,e.jsx)(i.li,{children:\"\\xC9dition assist\\xE9e par IA avec des mod\\xE8les locaux\"}),`\n`,(0,e.jsx)(i.li,{children:\"Traitement de fichiers volumineux sans latence r\\xE9seau\"}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"\\xC9quipes informatiques d'entreprise :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsx)(i.li,{children:\"D\\xE9ploiements d'IA priv\\xE9s\"}),`\n`,(0,e.jsx)(i.li,{children:\"Infrastructure \\xE0 co\\xFBt pr\\xE9visible\"}),`\n`,(0,e.jsx)(i.li,{children:\"Maintenance simplifi\\xE9e par rapport aux clusters GPU\"}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"D\\xE9veloppeurs ind\\xE9pendants :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsx)(i.li,{children:\"Cr\\xE9ez des applications d'IA avec inf\\xE9rence locale\"}),`\n`,(0,e.jsx)(i.li,{children:\"Testez contre de grands mod\\xE8les pendant le d\\xE9veloppement\"}),`\n`,(0,e.jsx)(i.li,{children:\"Livrez des produits sans co\\xFBts d'API continus\"}),`\n`]}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"quest-ce-que-le-clustering-mac-thunderbolt-5-\",children:\"Qu'est-ce que le clustering Mac Thunderbolt 5 ?\"}),`\n`,(0,e.jsx)(i.h3,{id:\"l\\xE9volution-du-calcul-distribu\\xE9-sur-mac\",children:\"L'\\xE9volution du calcul distribu\\xE9 sur Mac\"}),`\n`,(0,e.jsx)(i.p,{children:\"Le clustering Mac Thunderbolt 5 repr\\xE9sente la renaissance moderne du calcul distribu\\xE9 sur Mac par Apple. Les utilisateurs Apple de longue date se souviendront peut-\\xEAtre de Xgrid, qui transformait des collections de Mac en supercalculateurs. Le nouveau clustering Thunderbolt 5 dans macOS Tahoe 26.2 suit un concept similaire mais fonctionne \\xE0 des vitesses consid\\xE9rablement plus \\xE9lev\\xE9es.\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Contexte historique :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"\\xC8re Xgrid\"}),\" : Limit\\xE9e aux vitesses Ethernet (1-10 Gbps)\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Clusters Thunderbolt 4\"}),\" : 40 Gbps, l'utilisation de hubs r\\xE9duisait les vitesses \\xE0 10 Gbps\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Clusters Thunderbolt 5\"}),\" : Pleine vitesse 80 Gbps bidirectionnelle, mode rafale 120 Gbps\"]}),`\n`]}),`\n`,(0,e.jsx)(i.h3,{id:\"comment-fonctionne-le-clustering-thunderbolt-5\",children:\"Comment fonctionne le clustering Thunderbolt 5\"}),`\n`,(0,e.jsxs)(i.p,{children:[\"La technologie de clustering utilise l'\",(0,e.jsx)(i.strong,{children:\"acc\\xE8s direct \\xE0 la m\\xE9moire \\xE0 distance (RDMA)\"}),\", permettant \\xE0 un Mac d'acc\\xE9der directement \\xE0 la m\\xE9moire d'un autre sans surcharge du processeur. Lorsque vous connectez plusieurs Mac via Thunderbolt 5 :\"]}),`\n`,(0,e.jsxs)(i.ol,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Mise en commun de la m\\xE9moire\"}),\" : La m\\xE9moire unifi\\xE9e de chaque Mac devient accessible \\xE0 l'ensemble du cluster\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Partitionnement du mod\\xE8le\"}),\" : Les grands mod\\xE8les d'IA sont r\\xE9partis proportionnellement sur les machines\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Traitement parall\\xE8le\"}),\" : Les charges de travail sont distribu\\xE9es en fonction des ressources disponibles\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Communication \\xE0 faible latence\"}),\" : L'acc\\xE8s direct \\xE0 la m\\xE9moire \\xE9limine les goulots d'\\xE9tranglement du r\\xE9seau\"]}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Exemple de configuration de pool de m\\xE9moire :\"})}),`\n`,(0,e.jsxs)(i.table,{children:[(0,e.jsx)(i.thead,{children:(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.th,{children:\"Configuration\"}),(0,e.jsx)(i.th,{children:\"M\\xE9moire totale\"}),(0,e.jsx)(i.th,{children:\"Cas d'utilisation\"})]})}),(0,e.jsxs)(i.tbody,{children:[(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"2x Mac Studio (512 Go)\"}),(0,e.jsx)(i.td,{children:\"1 To partag\\xE9\"}),(0,e.jsx)(i.td,{children:\"Kimi K2 Thinking (594 Go)\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"4x Mac Studio (512 Go)\"}),(0,e.jsx)(i.td,{children:\"2 To partag\\xE9\"}),(0,e.jsx)(i.td,{children:\"Plusieurs mod\\xE8les de milliers de milliards de param\\xE8tres\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"4x Mac mini M4 Pro (64 Go)\"}),(0,e.jsx)(i.td,{children:\"256 Go partag\\xE9\"}),(0,e.jsx)(i.td,{children:\"Mod\\xE8les de 70B-200B param\\xE8tres\"})]})]})]}),`\n`,(0,e.jsx)(i.h3,{id:\"avantage-de-la-m\\xE9moire-unifi\\xE9e-apple-silicon\",children:\"Avantage de la m\\xE9moire unifi\\xE9e Apple Silicon\"}),`\n`,(0,e.jsx)(i.p,{children:\"Une raison cl\\xE9 pour laquelle le clustering Mac est si efficace r\\xE9side dans l'architecture de m\\xE9moire unifi\\xE9e d'Apple Silicon. Contrairement aux ordinateurs traditionnels o\\xF9 le GPU et le CPU ont des pools de m\\xE9moire s\\xE9par\\xE9s, Apple Silicon partage la m\\xE9moire entre toutes les unit\\xE9s de traitement.\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Avantages de la m\\xE9moire unifi\\xE9e pour le clustering :\"})}),`\n`,(0,e.jsxs)(i.table,{children:[(0,e.jsx)(i.thead,{children:(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.th,{children:\"Aspect\"}),(0,e.jsx)(i.th,{children:\"Architecture traditionnelle\"}),(0,e.jsx)(i.th,{children:\"Apple Silicon\"})]})}),(0,e.jsxs)(i.tbody,{children:[(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Acc\\xE8s m\\xE9moire\"}),(0,e.jsx)(i.td,{children:\"Le GPU copie les donn\\xE9es de la RAM\"}),(0,e.jsx)(i.td,{children:\"Acc\\xE8s partag\\xE9 direct\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Bande passante\"}),(0,e.jsx)(i.td,{children:\"Limit\\xE9e par PCIe (64 Go/s)\"}),(0,e.jsx)(i.td,{children:\"Jusqu'\\xE0 800 Go/s (M3 Ultra)\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Efficacit\\xE9\"}),(0,e.jsx)(i.td,{children:\"Duplication des donn\\xE9es requise\"}),(0,e.jsx)(i.td,{children:\"Op\\xE9rations z\\xE9ro copie\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"\\xC9volutivit\\xE9\"}),(0,e.jsx)(i.td,{children:\"La VRAM limite la taille du mod\\xE8le\"}),(0,e.jsx)(i.td,{children:\"Le pool unifi\\xE9 s'adapte lin\\xE9airement\"})]})]})]}),`\n`,(0,e.jsx)(i.p,{children:\"Lorsque vous clusterisez plusieurs Mac, vous cr\\xE9ez efficacement un plus grand pool de m\\xE9moire unifi\\xE9e. Un mod\\xE8le trop grand pour la m\\xE9moire d'un seul Mac peut \\xEAtre r\\xE9parti sur plusieurs n\\u0153uds, chaque Mac en d\\xE9tenant une partie et partageant l'acc\\xE8s via Thunderbolt 5.\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Exemple pratique :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Un seul Mac Studio (512 Go)\"}),\" : Peut ex\\xE9cuter des mod\\xE8les jusqu'\\xE0 ~450 Go (en laissant de la marge)\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"2x Mac Studio (1 To mis en commun)\"}),\" : Peut ex\\xE9cuter des mod\\xE8les jusqu'\\xE0 ~900 Go\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"4x Mac Studio (2 To mis en commun)\"}),\" : Peut ex\\xE9cuter des mod\\xE8les jusqu'\\xE0 ~1,8 To\"]}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:\"Cette mise \\xE0 l'\\xE9chelle lin\\xE9aire est ce qui rend les mod\\xE8les de milliers de milliards de param\\xE8tres comme Kimi K2 Thinking r\\xE9alisables sur du mat\\xE9riel Mac.\"}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"exigences-mat\\xE9rielles-et-compatibilit\\xE9\",children:\"Exigences mat\\xE9rielles et compatibilit\\xE9\"}),`\n`,(0,e.jsx)(i.h3,{id:\"mod\\xE8les-mac-compatibles\",children:\"Mod\\xE8les Mac compatibles\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Support natif Thunderbolt 5 (Pleine vitesse 80 Gbps) :\"})}),`\n`,(0,e.jsxs)(i.table,{children:[(0,e.jsx)(i.thead,{children:(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.th,{children:\"Appareil\"}),(0,e.jsx)(i.th,{children:\"Ports Thunderbolt 5\"}),(0,e.jsx)(i.th,{children:\"M\\xE9moire max\"}),(0,e.jsx)(i.th,{children:\"Notes\"})]})}),(0,e.jsxs)(i.tbody,{children:[(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Mac Studio (M3 Ultra)\"}),(0,e.jsx)(i.td,{children:\"6\"}),(0,e.jsx)(i.td,{children:\"512 Go\"}),(0,e.jsx)(i.td,{children:\"Id\\xE9al pour les grands clusters\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Mac mini (M4 Pro)\"}),(0,e.jsx)(i.td,{children:\"3 avant\"}),(0,e.jsx)(i.td,{children:\"64 Go\"}),(0,e.jsx)(i.td,{children:\"N\\u0153uds \\xE9conomiques\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:'MacBook Pro 14\" (M4 Pro)'}),(0,e.jsx)(i.td,{children:\"3\"}),(0,e.jsx)(i.td,{children:\"48 Go\"}),(0,e.jsx)(i.td,{children:\"Clustering portable\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:'MacBook Pro 16\" (M4 Max)'}),(0,e.jsx)(i.td,{children:\"3\"}),(0,e.jsx)(i.td,{children:\"128 Go\"}),(0,e.jsx)(i.td,{children:\"Portable \\xE0 haute m\\xE9moire\"})]})]})]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Sp\\xE9cifications importantes :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Vitesse Thunderbolt 5\"}),\" : 80 Gbps bidirectionnel (120 Gbps en mode rafale pour la vid\\xE9o)\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Bande passante m\\xE9moire\"}),\" : M4 Pro offre 273 Go/s, M4 Max offre 546 Go/s\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Longueur du c\\xE2ble\"}),\" : Gardez moins de 2 m\\xE8tres pour des performances optimales\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Type de c\\xE2ble\"}),\" : C\\xE2bles Thunderbolt 5 standard (compatibles USB4 v2)\"]}),`\n`]}),`\n`,(0,e.jsx)(i.h3,{id:\"configurations-de-cluster-recommand\\xE9es\",children:\"Configurations de cluster recommand\\xE9es\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Cluster \\xE9conomique (Exp\\xE9rimentation en Machine Learning) :\"})}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"4x Mac mini M4 Pro (24 Go chacun)\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"M\\xE9moire totale : 96 Go partag\\xE9\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Co\\xFBt : ~7 200 $\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Id\\xE9al pour : Mod\\xE8les jusqu'\\xE0 70B param\\xE8tres\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Consommation : ~60 W inactif, ~200 W pic\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Niveau sonore : Presque silencieux\"})})]})})}),`\n`,(0,e.jsx)(i.p,{children:\"Cette configuration est parfaite pour les d\\xE9veloppeurs apprenant le ML distribu\\xE9, les petites \\xE9quipes exp\\xE9rimentant des mod\\xE8les open source, ou l'ex\\xE9cution de mod\\xE8les plus petits comme Llama 3.1 8B et Mistral 7B avec d'excellentes performances.\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Cluster professionnel (Charges de travail IA en production) :\"})}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"4x Mac mini M4 Pro (64 Go chacun)\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"M\\xE9moire totale : 256 Go partag\\xE9\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Co\\xFBt : ~13 200 $\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Id\\xE9al pour : Mod\\xE8les jusqu'\\xE0 200B param\\xE8tres\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Consommation : ~80 W inactif, ~300 W pic\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Niveau sonore : Presque silencieux\"})})]})})}),`\n`,(0,e.jsx)(i.p,{children:\"Le niveau professionnel d\\xE9bloque des mod\\xE8les moyens-grands comme Llama 3.1 70B et peut ex\\xE9cuter des inf\\xE9rences sur des mod\\xE8les de qualit\\xE9 entreprise. C'est le point id\\xE9al pour la plupart des entreprises d\\xE9ployant une IA locale.\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Cluster d'entreprise (Mod\\xE8les de milliers de milliards de param\\xE8tres) :\"})}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"4x Mac Studio M3 Ultra (512 Go chacun)\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"M\\xE9moire totale : 2 To partag\\xE9\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Co\\xFBt : ~47 000 $ (47 000 \\u20AC)\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Id\\xE9al pour : Kimi K2 Thinking, DeepSeek V3, mod\\xE8les de pointe\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Consommation : ~100 W inactif, ~500 W pic\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Niveau sonore : Mod\\xE9r\\xE9 en charge\"})})]})})}),`\n`,(0,e.jsx)(i.p,{children:\"Cette configuration haut de gamme \\xE9gale ou d\\xE9passe les clusters GPU de centres de donn\\xE9es pour les charges de travail d'inf\\xE9rence tout en consommant une fraction de l'\\xE9nergie et ne n\\xE9cessitant aucune infrastructure sp\\xE9cialis\\xE9e.\"}),`\n`,(0,e.jsx)(i.h3,{id:\"guide-de-s\\xE9lection-des-c\\xE2bles-thunderbolt-5\",children:\"Guide de s\\xE9lection des c\\xE2bles Thunderbolt 5\"}),`\n`,(0,e.jsx)(i.p,{children:\"Le choix des bons c\\xE2bles est critique pour les performances du cluster. Tous les c\\xE2bles ne prennent pas en charge les vitesses compl\\xE8tes de Thunderbolt 5.\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"C\\xE2bles recommand\\xE9s :\"})}),`\n`,(0,e.jsxs)(i.table,{children:[(0,e.jsx)(i.thead,{children:(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.th,{children:\"C\\xE2ble\"}),(0,e.jsx)(i.th,{children:\"Longueur\"}),(0,e.jsx)(i.th,{children:\"Vitesse max\"}),(0,e.jsx)(i.th,{children:\"Gamme de prix\"})]})}),(0,e.jsxs)(i.tbody,{children:[(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Apple Thunderbolt 5 Pro\"}),(0,e.jsx)(i.td,{children:\"1 m\"}),(0,e.jsx)(i.td,{children:\"120 Gbps\"}),(0,e.jsx)(i.td,{children:\"69-79 $\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"OWC Thunderbolt 5\"}),(0,e.jsx)(i.td,{children:\"0,8 m\"}),(0,e.jsx)(i.td,{children:\"80 Gbps\"}),(0,e.jsx)(i.td,{children:\"50-60 $\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"CalDigit TB5 Cable\"}),(0,e.jsx)(i.td,{children:\"1 m\"}),(0,e.jsx)(i.td,{children:\"80 Gbps\"}),(0,e.jsx)(i.td,{children:\"45-55 $\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Belkin Connect Pro\"}),(0,e.jsx)(i.td,{children:\"1 m\"}),(0,e.jsx)(i.td,{children:\"80 Gbps\"}),(0,e.jsx)(i.td,{children:\"40-50 $\"})]})]})]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Conseils pour le choix des c\\xE2bles :\"})}),`\n`,(0,e.jsxs)(i.ol,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Restez en dessous d'1 m\\xE8tre\"}),\" : La pleine vitesse de 80 Gbps n\\xE9cessite des c\\xE2bles courts et de haute qualit\\xE9\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Recherchez la certification USB4 v2\"}),\" : Assure la compatibilit\\xE9 Thunderbolt 5\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"\\xC9vitez les adaptateurs\"}),\" : Connexions directes TB5 vers TB5 uniquement\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Achetez aupr\\xE8s de marques r\\xE9put\\xE9es\"}),\" : Les c\\xE2bles contrefaits peuvent ne pas atteindre les vitesses nominales\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Testez les c\\xE2bles avant d\\xE9ploiement\"}),\" : Utilisez \",(0,e.jsx)(i.code,{children:\"system_profiler SPThunderboltDataType\"}),\" pour v\\xE9rifier la vitesse de liaison\"]}),`\n`]}),`\n`,(0,e.jsxs)(i.p,{children:[(0,e.jsx)(i.strong,{children:\"Avertissement\"}),` : De nombreux c\\xE2bles vendus en ligne comme \"compatibles Thunderbolt 5\" n'atteignent que les vitesses Thunderbolt 4. V\\xE9rifiez toujours les sp\\xE9cifications avant l'achat.`]}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"pile-logicielle--frameworks-mlx-et-exo\",children:\"Pile logicielle : Frameworks MLX et EXO\"}),`\n`,(0,e.jsx)(i.h3,{id:\"comprendre-le-calcul-distribu\\xE9-mlx\",children:\"Comprendre le calcul distribu\\xE9 MLX\"}),`\n`,(0,e.jsx)(i.p,{children:\"MLX est le framework de tableau open source d'Apple con\\xE7u sp\\xE9cifiquement pour l'apprentissage automatique sur Apple Silicon. Il fournit une prise en charge native du calcul distribu\\xE9 sur plusieurs Mac.\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Fonctionnalit\\xE9s cl\\xE9s de MLX :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Acc\\xE8s m\\xE9moire unifi\\xE9\"}),\" : Tire parti de l'architecture de m\\xE9moire unifi\\xE9e d'Apple Silicon\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"\\xC9valuation paresseuse\"}),\" : Les calculs ne s'ex\\xE9cutent que lorsque les r\\xE9sultats sont n\\xE9cessaires\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Compilation dynamique\"}),\" : Compilation juste-\\xE0-temps pour des performances optimales\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Primitives distribu\\xE9es\"}),\" : Prise en charge int\\xE9gr\\xE9e des op\\xE9rations multi-machines\"]}),`\n`]}),`\n`,(0,e.jsx)(i.h3,{id:\"backends-de-communication-mlx\",children:\"Backends de communication MLX\"}),`\n`,(0,e.jsx)(i.p,{children:\"MLX prend en charge trois backends de communication pour diff\\xE9rents cas d'utilisation :\"}),`\n`,(0,e.jsxs)(i.table,{children:[(0,e.jsx)(i.thead,{children:(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.th,{children:\"Backend\"}),(0,e.jsx)(i.th,{children:\"Vitesse\"}),(0,e.jsx)(i.th,{children:\"Id\\xE9al pour\"}),(0,e.jsx)(i.th,{children:\"Complexit\\xE9 de configuration\"})]})}),(0,e.jsxs)(i.tbody,{children:[(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:(0,e.jsx)(i.strong,{children:\"Ring\"})}),(0,e.jsx)(i.td,{children:\"Le plus rapide\"}),(0,e.jsx)(i.td,{children:\"Connexions Thunderbolt\"}),(0,e.jsx)(i.td,{children:\"Moyen\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:(0,e.jsx)(i.strong,{children:\"MPI\"})}),(0,e.jsx)(i.td,{children:\"Rapide\"}),(0,e.jsx)(i.td,{children:\"R\\xE9seaux Ethernet\"}),(0,e.jsx)(i.td,{children:\"Plus \\xE9lev\\xE9\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:(0,e.jsx)(i.strong,{children:\"NCCL\"})}),(0,e.jsx)(i.td,{children:\"N/A\"}),(0,e.jsx)(i.td,{children:\"Environnements CUDA\"}),(0,e.jsx)(i.td,{children:\"N/A sur Mac\"})]})]})]}),`\n`,(0,e.jsxs)(i.p,{children:[(0,e.jsx)(i.strong,{children:\"Le backend Ring est recommand\\xE9 pour les clusters Thunderbolt 5\"}),\" car il est optimis\\xE9 pour les connexions point \\xE0 point directes.\"]}),`\n`,(0,e.jsx)(i.h3,{id:\"comprendre-lentra\\xEEnement-distribu\\xE9-vs-linf\\xE9rence\",children:\"Comprendre l'entra\\xEEnement distribu\\xE9 vs l'inf\\xE9rence\"}),`\n`,(0,e.jsx)(i.p,{children:\"Avant de plonger dans la configuration, il est important de comprendre les deux principaux cas d'utilisation du clustering Mac :\"}),`\n`,(0,e.jsxs)(i.p,{children:[(0,e.jsx)(i.strong,{children:\"Inf\\xE9rence distribu\\xE9e (Ex\\xE9cution de mod\\xE8les) :\"}),`\nC'est le cas d'utilisation principal pour la plupart des utilisateurs. Lorsque vous ex\\xE9cutez une inf\\xE9rence :`]}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsx)(i.li,{children:\"Le mod\\xE8le est divis\\xE9 sur plusieurs Mac en fonction de la m\\xE9moire disponible\"}),`\n`,(0,e.jsx)(i.li,{children:\"Chaque Mac d\\xE9tient une partie des poids du mod\\xE8le\"}),`\n`,(0,e.jsx)(i.li,{children:\"Pendant la g\\xE9n\\xE9ration, les donn\\xE9es circulent entre les n\\u0153uds selon les besoins\"}),`\n`,(0,e.jsx)(i.li,{children:\"Aucun entra\\xEEnement n'a lieu \\u2014 vous utilisez un mod\\xE8le pr\\xE9-entra\\xEEn\\xE9\"}),`\n`]}),`\n`,(0,e.jsxs)(i.p,{children:[(0,e.jsx)(i.strong,{children:\"Entra\\xEEnement distribu\\xE9 (Cr\\xE9ation de mod\\xE8les) :\"}),`\nPour les chercheurs et les utilisateurs avanc\\xE9s :`]}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsx)(i.li,{children:\"Les donn\\xE9es d'entra\\xEEnement sont r\\xE9parties sur les n\\u0153uds (parall\\xE9lisme des donn\\xE9es)\"}),`\n`,(0,e.jsx)(i.li,{children:\"Les gradients sont moyenn\\xE9s sur tous les n\\u0153uds apr\\xE8s chaque lot\"}),`\n`,(0,e.jsx)(i.li,{children:\"Les poids du mod\\xE8le sont synchronis\\xE9s p\\xE9riodiquement\"}),`\n`,(0,e.jsx)(i.li,{children:\"N\\xE9cessite beaucoup plus de communication entre les n\\u0153uds\"}),`\n`]}),`\n`,(0,e.jsxs)(i.table,{children:[(0,e.jsx)(i.thead,{children:(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.th,{children:\"Cas d'utilisation\"}),(0,e.jsx)(i.th,{children:\"Exigence de bande passante\"}),(0,e.jsx)(i.th,{children:\"Complexit\\xE9\"}),(0,e.jsx)(i.th,{children:\"Utilisateurs typiques\"})]})}),(0,e.jsxs)(i.tbody,{children:[(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Inf\\xE9rence\"}),(0,e.jsx)(i.td,{children:\"Moyenne (chargement du mod\\xE8le)\"}),(0,e.jsx)(i.td,{children:\"Basse\"}),(0,e.jsx)(i.td,{children:\"La plupart des utilisateurs\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Fine-tuning\"}),(0,e.jsx)(i.td,{children:\"Haute (synchro des gradients)\"}),(0,e.jsx)(i.td,{children:\"Moyenne\"}),(0,e.jsx)(i.td,{children:\"Ing\\xE9nieurs ML\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Entra\\xEEnement complet\"}),(0,e.jsx)(i.td,{children:\"Tr\\xE8s haute (synchro constante)\"}),(0,e.jsx)(i.td,{children:\"Haute\"}),(0,e.jsx)(i.td,{children:\"Chercheurs\"})]})]})]}),`\n`,(0,e.jsx)(i.p,{children:\"Pour la plupart des utilisateurs de clusters Mac, l'inf\\xE9rence est l'objectif principal \\u2014 ex\\xE9cuter de grands mod\\xE8les qui ne tiendraient pas sur une seule machine.\"}),`\n`,(0,e.jsx)(i.h3,{id:\"exo--gestion-de-cluster-simplifi\\xE9e\",children:\"EXO : Gestion de cluster simplifi\\xE9e\"}),`\n`,(0,e.jsx)(i.p,{children:\"EXO (d'Exo Labs) fournit une abstraction de plus haut niveau pour construire des clusters IA. Apple a int\\xE9gr\\xE9 le protocole d'EXO dans macOS Tahoe 26.2.\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Fonctionnalit\\xE9s cl\\xE9s d'EXO :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"D\\xE9couverte automatique\"}),\" : D\\xE9tecte automatiquement les autres appareils sur le r\\xE9seau\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Architecture Peer-to-Peer\"}),\" : Pas de hi\\xE9rarchie ma\\xEEtre-esclave\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Partitionnement intelligent\"}),\" : Divise les mod\\xE8les de mani\\xE8re optimale en fonction des capacit\\xE9s des appareils\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"API compatible ChatGPT\"}),\" : Point de terminaison compatible OpenAI \\xE0 \",(0,e.jsx)(i.code,{children:\"localhost:52415\"})]}),`\n`]}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"guide-de-configuration-de-cluster-\\xE9tape-par-\\xE9tape\",children:\"Guide de configuration de cluster \\xE9tape par \\xE9tape\"}),`\n`,(0,e.jsx)(i.h3,{id:\"pr\\xE9requis\",children:\"Pr\\xE9requis\"}),`\n`,(0,e.jsx)(i.p,{children:\"Avant de commencer, assurez-vous d'avoir :\"}),`\n`,(0,e.jsxs)(i.ol,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"macOS Tahoe 26.2\"}),\" ou ult\\xE9rieur install\\xE9 sur tous les Mac\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"C\\xE2bles Thunderbolt 5\"}),\" (moins de 2 m\\xE8tres)\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Python 3.12+\"}),\" install\\xE9\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"SSH sans mot de passe\"}),\" configur\\xE9 entre les machines\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"M\\xEAme r\\xE9seau\"}),\" pour toutes les machines (pour la d\\xE9couverte initiale)\"]}),`\n`]}),`\n`,(0,e.jsx)(i.h3,{id:\"m\\xE9thode-1--configuration-native-mlx-recommand\\xE9\",children:\"M\\xE9thode 1 : Configuration native MLX (Recommand\\xE9)\"}),`\n`,(0,e.jsx)(i.h4,{id:\"\\xE9tape-1--installer-mlx\",children:\"\\xC9tape 1 : Installer MLX\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Installer MLX via pip\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"pip\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" install\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" mlx\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# V\\xE9rifier l'installation\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"python\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" -c\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:' \"import mlx.core as mx; print(mx.__version__)\"'})]})]})})}),`\n`,(0,e.jsx)(i.h4,{id:\"\\xE9tape-2--configurer-le-r\\xE9seau-thunderbolt\",children:\"\\xC9tape 2 : Configurer le r\\xE9seau Thunderbolt\"}),`\n`,(0,e.jsx)(i.p,{children:\"Connectez vos Mac dans une topologie en anneau \\xE0 l'aide de c\\xE2bles Thunderbolt 5 :\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(i.code,{children:(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Mac 1 \\u2190\\u2192 Mac 2 \\u2190\\u2192 Mac 3 \\u2190\\u2192 Mac 4 \\u2190\\u2192 Mac 1\"})})})})}),`\n`,(0,e.jsx)(i.p,{children:\"Utilisez l'outil de configuration distribu\\xE9e MLX :\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# D\\xE9couvrir l'anneau Thunderbolt et g\\xE9n\\xE9rer la configuration\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"mlx.distributed_config\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" --verbose\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" --hosts\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" mac1,mac2,mac3,mac4\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Auto-configurer tous les n\\u0153uds (n\\xE9cessite sudo sans mot de passe)\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"mlx.distributed_config\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" --verbose\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" --hosts\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" mac1,mac2,mac3,mac4\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" --auto-setup\"})]})]})})}),`\n`,(0,e.jsx)(i.h4,{id:\"\\xE9tape-3--cr\\xE9er-la-configuration-du-fichier-h\\xF4te\",children:\"\\xC9tape 3 : Cr\\xE9er la configuration du fichier h\\xF4te\"}),`\n`,(0,e.jsxs)(i.p,{children:[\"Cr\\xE9ez un fichier \",(0,e.jsx)(i.code,{children:\"ring-4.json\"}),\" :\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"[\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"    {\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:'\"ssh\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\": \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:'\"mac1.local\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\", \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:'\"ips\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\": [\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:'\"192.168.100.1\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"]},\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"    {\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:'\"ssh\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\": \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:'\"mac2.local\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\", \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:'\"ips\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\": [\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:'\"192.168.100.2\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"]},\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"    {\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:'\"ssh\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\": \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:'\"mac3.local\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\", \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:'\"ips\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\": [\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:'\"192.168.100.3\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"]},\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"    {\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:'\"ssh\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\": \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:'\"mac4.local\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\", \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:'\"ips\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\": [\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:'\"192.168.100.4\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"]}\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"]\"})})]})})}),`\n`,(0,e.jsx)(i.h4,{id:\"\\xE9tape-4--tester-la-communication-distribu\\xE9e\",children:\"\\xC9tape 4 : Tester la communication distribu\\xE9e\"}),`\n`,(0,e.jsxs)(i.p,{children:[\"Cr\\xE9ez un script de test \",(0,e.jsx)(i.code,{children:\"test_distributed.py\"}),\" :\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M14.25.18l.9.2.73.26.59.3.45.32.34.34.25.34.16.33.1.3.04.26.02.2-.01.13V8.5l-.05.63-.13.55-.21.46-.26.38-.3.31-.33.25-.35.19-.35.14-.33.1-.3.07-.26.04-.21.02H8.77l-.69.05-.59.14-.5.22-.41.27-.33.32-.27.35-.2.36-.15.37-.1.35-.07.32-.04.27-.02.21v3.06H3.17l-.21-.03-.28-.07-.32-.12-.35-.18-.36-.26-.36-.36-.35-.46-.32-.59-.28-.73-.21-.88-.14-1.05-.05-1.23.06-1.22.16-1.04.24-.87.32-.71.36-.57.4-.44.42-.33.42-.24.4-.16.36-.1.32-.05.24-.01h.16l.06.01h8.16v-.83H6.18l-.01-2.75-.02-.37.05-.34.11-.31.17-.28.25-.26.31-.23.38-.2.44-.18.51-.15.58-.12.64-.1.71-.06.77-.04.84-.02 1.27.05zm-6.3 1.98l-.23.33-.08.41.08.41.23.34.33.22.41.09.41-.09.33-.22.23-.34.08-.41-.08-.41-.23-.33-.33-.22-.41-.09-.41.09zm13.09 3.95l.28.06.32.12.35.18.36.27.36.35.35.47.32.59.28.73.21.88.14 1.04.05 1.23-.06 1.23-.16 1.04-.24.86-.32.71-.36.57-.4.45-.42.33-.42.24-.4.16-.36.09-.32.05-.24.02-.16-.01h-8.22v.82h5.84l.01 2.76.02.36-.05.34-.11.31-.17.29-.25.25-.31.24-.38.2-.44.17-.51.15-.58.13-.64.09-.71.07-.77.04-.84.01-1.27-.04-1.07-.14-.9-.2-.73-.25-.59-.3-.45-.33-.34-.34-.25-.34-.16-.33-.1-.3-.04-.25-.02-.2.01-.13v-5.34l.05-.64.13-.54.21-.46.26-.38.3-.32.33-.24.35-.2.35-.14.33-.1.3-.06.26-.04.21-.02.13-.01h5.84l.69-.05.59-.14.5-.21.41-.28.33-.32.27-.35.2-.36.15-.36.1-.35.07-.32.04-.28.02-.21V6.07h2.09l.14.01zm-6.47 14.25l-.23.33-.08.41.08.41.23.33.33.23.41.08.41-.08.33-.23.23-.33.08-.41-.08-.41-.23-.33-.33-.23-.41-.08-.41.08z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"import\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mlx.core \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"as\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mx\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Initialiser le groupe distribu\\xE9\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"world \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mx.distributed.init()\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Chaque processus cr\\xE9e un tableau avec son rang\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"x \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mx.ones(\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"10\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\") \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"*\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" world.rank()\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Somme des tableaux sur tous les processus\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"result \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mx.distributed.all_sum(x)\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"print\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"(\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"f\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:'\"Rank '}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"{\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"world.rank()\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"}\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\": sum = \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"{\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"result\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"}\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:'\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\")\"})]})]})})}),`\n`,(0,e.jsx)(i.p,{children:\"Lancez le test :\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(i.code,{children:(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"mlx.launch\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" --hostfile\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" ring-4.json\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" test_distributed.py\"})]})})})}),`\n`,(0,e.jsx)(i.p,{children:\"Sortie attendue (4 n\\u0153uds) :\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Rank 0: sum = array([6., 6., 6., 6., 6., 6., 6., 6., 6., 6.])\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Rank 1: sum = array([6., 6., 6., 6., 6., 6., 6., 6., 6., 6.])\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Rank 2: sum = array([6., 6., 6., 6., 6., 6., 6., 6., 6., 6.])\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Rank 3: sum = array([6., 6., 6., 6., 6., 6., 6., 6., 6., 6.])\"})})]})})}),`\n`,(0,e.jsx)(i.h3,{id:\"m\\xE9thode-2--configuration-exo-conviviale\",children:\"M\\xE9thode 2 : Configuration EXO (Conviviale)\"}),`\n`,(0,e.jsx)(i.h4,{id:\"\\xE9tape-1--cloner-et-installer-exo\",children:\"\\xC9tape 1 : Cloner et installer EXO\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Cloner le d\\xE9p\\xF4t\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"git\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" clone\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" https://github.com/exo-explore/exo.git\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"cd\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" exo\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Installer les d\\xE9pendances\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"pip\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" install\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" -e\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" .\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Ou utiliser le script d'installation\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"source\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" install.sh\"})]})]})})}),`\n`,(0,e.jsx)(i.h4,{id:\"\\xE9tape-2--configurer-mlx-pour-apple-silicon\",children:\"\\xC9tape 2 : Configurer MLX pour Apple Silicon\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Ex\\xE9cuter le script de configuration MLX\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"./configure_mlx.sh\"})})]})})}),`\n`,(0,e.jsx)(i.p,{children:\"Cela optimise l'allocation de la m\\xE9moire GPU sur les Mac Apple Silicon.\"}),`\n`,(0,e.jsx)(i.h4,{id:\"\\xE9tape-3--d\\xE9marrer-le-cluster\",children:\"\\xC9tape 3 : D\\xE9marrer le cluster\"}),`\n`,(0,e.jsx)(i.p,{children:\"Sur chaque n\\u0153ud, ex\\xE9cutez la m\\xEAme commande :\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(i.code,{children:(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"exo\"})})})})}),`\n`,(0,e.jsx)(i.p,{children:\"EXO va :\"}),`\n`,(0,e.jsxs)(i.ol,{children:[`\n`,(0,e.jsx)(i.li,{children:\"D\\xE9couvrir automatiquement les autres n\\u0153uds via la communication peer-to-peer\"}),`\n`,(0,e.jsx)(i.li,{children:\"Appliquer un partitionnement pond\\xE9r\\xE9 de la m\\xE9moire en anneau\"}),`\n`,(0,e.jsxs)(i.li,{children:[\"D\\xE9marrer l'interface web \\xE0 \",(0,e.jsx)(i.code,{children:\"http://localhost:52415\"})]}),`\n`,(0,e.jsxs)(i.li,{children:[\"D\\xE9marrer le point de terminaison API \\xE0 \",(0,e.jsx)(i.code,{children:\"http://localhost:52415/v1/chat/completions\"})]}),`\n`]}),`\n`,(0,e.jsx)(i.h4,{id:\"\\xE9tape-4--acc\\xE9der-\\xE0-linterface\",children:\"\\xC9tape 4 : Acc\\xE9der \\xE0 l'interface\"}),`\n`,(0,e.jsxs)(i.p,{children:[\"Ouvrez votre navigateur sur \",(0,e.jsx)(i.code,{children:\"http://localhost:52415\"}),\" pour une interface de type ChatGPT afin d'interagir avec votre cluster.\"]}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"ex\\xE9cution-de-grands-mod\\xE8les-de-langage\",children:\"Ex\\xE9cution de grands mod\\xE8les de langage\"}),`\n`,(0,e.jsx)(i.h3,{id:\"t\\xE9l\\xE9chargement-des-mod\\xE8les\",children:\"T\\xE9l\\xE9chargement des mod\\xE8les\"}),`\n`,(0,e.jsx)(i.p,{children:\"EXO prend en charge diverses sources de mod\\xE8les :\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# T\\xE9l\\xE9charger depuis Hugging Face\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"exo\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" download\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" moonshotai/Kimi-K2-Instruct\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# T\\xE9l\\xE9charger des mod\\xE8les Llama\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"exo\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" download\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" meta-llama/Llama-3.1-70B-Instruct\"})]})]})})}),`\n`,(0,e.jsx)(i.h3,{id:\"exigences-m\\xE9moire-par-mod\\xE8le\",children:\"Exigences m\\xE9moire par mod\\xE8le\"}),`\n`,(0,e.jsxs)(i.table,{children:[(0,e.jsx)(i.thead,{children:(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.th,{children:\"Mod\\xE8le\"}),(0,e.jsx)(i.th,{children:\"Param\\xE8tres\"}),(0,e.jsx)(i.th,{children:\"M\\xE9moire requise\"}),(0,e.jsx)(i.th,{children:\"Cluster recommand\\xE9\"})]})}),(0,e.jsxs)(i.tbody,{children:[(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Llama 3.1 8B\"}),(0,e.jsx)(i.td,{children:\"8B\"}),(0,e.jsx)(i.td,{children:\"16 Go\"}),(0,e.jsx)(i.td,{children:\"Mac unique\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Llama 3.1 70B\"}),(0,e.jsx)(i.td,{children:\"70B\"}),(0,e.jsx)(i.td,{children:\"140 Go\"}),(0,e.jsx)(i.td,{children:\"3x Mac mini (64 Go)\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Llama 3.1 405B\"}),(0,e.jsx)(i.td,{children:\"405B\"}),(0,e.jsx)(i.td,{children:\"810 Go\"}),(0,e.jsx)(i.td,{children:\"4x Mac Studio (512 Go)\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Kimi K2\"}),(0,e.jsx)(i.td,{children:\"1T (32B actifs)\"}),(0,e.jsx)(i.td,{children:\"594 Go\"}),(0,e.jsx)(i.td,{children:\"2x Mac Studio (512 Go)\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Kimi K2 Thinking\"}),(0,e.jsx)(i.td,{children:\"1T (32B actifs)\"}),(0,e.jsx)(i.td,{children:\"594 Go\"}),(0,e.jsx)(i.td,{children:\"2x Mac Studio (512 Go)\"})]})]})]}),`\n`,(0,e.jsx)(i.h3,{id:\"ex\\xE9cution-de-kimi-k2-thinking\",children:\"Ex\\xE9cution de Kimi K2 Thinking\"}),`\n`,(0,e.jsx)(i.p,{children:\"Le mod\\xE8le Kimi K2 Thinking d\\xE9montre la puissance du clustering Thunderbolt 5. C'est un mod\\xE8le m\\xE9lange d'experts (MoE) d'un billion de param\\xE8tres avec 32 milliards de param\\xE8tres actifs. D\\xE9velopp\\xE9 par Moonshot AI, il repr\\xE9sente la pointe des mod\\xE8les de raisonnement open source.\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Ce qui rend Kimi K2 sp\\xE9cial :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Architecture\"}),\" : M\\xE9lange d'experts (MoE) avec 1T de param\\xE8tres totaux\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Param\\xE8tres actifs\"}),\" : Seulement 32B param\\xE8tres actifs par inf\\xE9rence\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Fen\\xEAtre contextuelle\"}),\" : 256K tokens\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Quantification\"}),\" : INT4 natif pour l'efficacit\\xE9\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Taille sur disque\"}),\" : ~594 Go (contre 1 To+ pour la pr\\xE9cision compl\\xE8te)\"]}),`\n`]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M14.25.18l.9.2.73.26.59.3.45.32.34.34.25.34.16.33.1.3.04.26.02.2-.01.13V8.5l-.05.63-.13.55-.21.46-.26.38-.3.31-.33.25-.35.19-.35.14-.33.1-.3.07-.26.04-.21.02H8.77l-.69.05-.59.14-.5.22-.41.27-.33.32-.27.35-.2.36-.15.37-.1.35-.07.32-.04.27-.02.21v3.06H3.17l-.21-.03-.28-.07-.32-.12-.35-.18-.36-.26-.36-.36-.35-.46-.32-.59-.28-.73-.21-.88-.14-1.05-.05-1.23.06-1.22.16-1.04.24-.87.32-.71.36-.57.4-.44.42-.33.42-.24.4-.16.36-.1.32-.05.24-.01h.16l.06.01h8.16v-.83H6.18l-.01-2.75-.02-.37.05-.34.11-.31.17-.28.25-.26.31-.23.38-.2.44-.18.51-.15.58-.12.64-.1.71-.06.77-.04.84-.02 1.27.05zm-6.3 1.98l-.23.33-.08.41.08.41.23.34.33.22.41.09.41-.09.33-.22.23-.34.08-.41-.08-.41-.23-.33-.33-.22-.41-.09-.41.09zm13.09 3.95l.28.06.32.12.35.18.36.27.36.35.35.47.32.59.28.73.21.88.14 1.04.05 1.23-.06 1.23-.16 1.04-.24.86-.32.71-.36.57-.4.45-.42.33-.42.24-.4.16-.36.09-.32.05-.24.02-.16-.01h-8.22v.82h5.84l.01 2.76.02.36-.05.34-.11.31-.17.29-.25.25-.31.24-.38.2-.44.17-.51.15-.58.13-.64.09-.71.07-.77.04-.84.01-1.27-.04-1.07-.14-.9-.2-.73-.25-.59-.3-.45-.33-.34-.34-.25-.34-.16-.33-.1-.3-.04-.25-.02-.2.01-.13v-5.34l.05-.64.13-.54.21-.46.26-.38.3-.32.33-.24.35-.2.35-.14.33-.1.3-.06.26-.04.21-.02.13-.01h5.84l.69-.05.59-.14.5-.21.41-.28.33-.32.27-.35.2-.36.15-.36.1-.35.07-.32.04-.28.02-.21V6.07h2.09l.14.01zm-6.47 14.25l-.23.33-.08.41.08.41.23.33.33.23.41.08.41-.08.33-.23.23-.33.08-.41-.08-.41-.23-.33-.33-.23-.41-.08-.41.08z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"import\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mlx.core \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"as\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mx\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"from\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mlx_lm \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"import\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" load, generate\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Initialiser l'environnement distribu\\xE9\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"world \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mx.distributed.init()\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Charger le mod\\xE8le (automatiquement distribu\\xE9 sur les n\\u0153uds)\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"model, tokenizer \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" load(\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:'\"moonshotai/Kimi-K2-Instruct\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# G\\xE9n\\xE9rer du texte\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"prompt \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:' \"Explain quantum computing in simple terms:\"'})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"response \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" generate(model, tokenizer, \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#E36209\",\"--shiki-dark\":\"#FFAB70\"},children:\"prompt\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"prompt, \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#E36209\",\"--shiki-dark\":\"#FFAB70\"},children:\"max_tokens\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"500\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"print\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"(response)\"})]})]})})}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"R\\xE9sultats de performance (4x Mac Studio M3 Ultra) :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"M\\xE9moire totale\"}),\" : 2 To unifi\\xE9s\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Consommation \\xE9lectrique\"}),\" : Moins de 500 W (contre 5 000 W+ pour un cluster GPU)\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"G\\xE9n\\xE9ration de tokens\"}),\" : Comp\\xE9titive avec l'inf\\xE9rence cloud\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Efficacit\\xE9 co\\xFBt\"}),\" : Puissance 10 fois inf\\xE9rieure \\xE0 celle d'un cluster NVIDIA RTX 5090\"]}),`\n`]}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"optimisation-des-performances\",children:\"Optimisation des performances\"}),`\n`,(0,e.jsx)(i.h3,{id:\"meilleures-pratiques-de-topologie-r\\xE9seau\",children:\"Meilleures pratiques de topologie r\\xE9seau\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Topologie en anneau (Recommand\\xE9e pour 4+ n\\u0153uds) :\"})}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"\\u250C\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2510\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"\\u2502                                     \\u2502\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"\\u2502    Mac 1 \\u2190\\u2500\\u2500TB5\\u2500\\u2500\\u2192 Mac 2           \\u2502\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"\\u2502      \\u2191                \\u2193             \\u2502\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"\\u2502     TB5              TB5            \\u2502\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"\\u2502      \\u2193                \\u2191             \\u2502\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"\\u2502    Mac 4 \\u2190\\u2500\\u2500TB5\\u2500\\u2500\\u2192 Mac 3           \\u2502\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"\\u2502                                     \\u2502\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"\\u2514\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2518\"})})]})})}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Topologie en \\xE9toile (Simple 2-3 n\\u0153uds) :\"})}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(i.code,{children:(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{children:\"Mac 2 \\u2190\\u2500\\u2500TB5\\u2500\\u2500\\u2192 Mac 1 \\u2190\\u2500\\u2500TB5\\u2500\\u2500\\u2192 Mac 3\"})})})})}),`\n`,(0,e.jsx)(i.h3,{id:\"directives-de-c\\xE2blage-et-de-connexion\",children:\"Directives de c\\xE2blage et de connexion\"}),`\n`,(0,e.jsxs)(i.table,{children:[(0,e.jsx)(i.thead,{children:(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.th,{children:\"Facteur\"}),(0,e.jsx)(i.th,{children:\"Recommandation\"}),(0,e.jsx)(i.th,{children:\"Impact\"})]})}),(0,e.jsxs)(i.tbody,{children:[(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Longueur du c\\xE2ble\"}),(0,e.jsx)(i.td,{children:\"Moins de 2 m\\xE8tres\"}),(0,e.jsx)(i.td,{children:\"Maintient les 80 Gbps complets\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Qualit\\xE9 du c\\xE2ble\"}),(0,e.jsx)(i.td,{children:\"Certifi\\xE9 TB5/USB4 v2\"}),(0,e.jsx)(i.td,{children:\"Emp\\xEAche les erreurs de donn\\xE9es\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"\\xC9viter les hubs\"}),(0,e.jsx)(i.td,{children:\"Connexions directes\"}),(0,e.jsx)(i.td,{children:\"Les hubs r\\xE9duisent \\xE0 10 Gbps\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"S\\xE9lection des ports\"}),(0,e.jsx)(i.td,{children:\"Utiliser tous les ports disponibles\"}),(0,e.jsx)(i.td,{children:\"Maximise la bande passante\"})]})]})]}),`\n`,(0,e.jsx)(i.h3,{id:\"\\xE9quilibrage-m\\xE9moire-et-calcul\",children:\"\\xC9quilibrage m\\xE9moire et calcul\"}),`\n`,(0,e.jsx)(i.p,{children:\"Lors de la construction d'un cluster h\\xE9t\\xE9rog\\xE8ne (mat\\xE9riel mixte) :\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M14.25.18l.9.2.73.26.59.3.45.32.34.34.25.34.16.33.1.3.04.26.02.2-.01.13V8.5l-.05.63-.13.55-.21.46-.26.38-.3.31-.33.25-.35.19-.35.14-.33.1-.3.07-.26.04-.21.02H8.77l-.69.05-.59.14-.5.22-.41.27-.33.32-.27.35-.2.36-.15.37-.1.35-.07.32-.04.27-.02.21v3.06H3.17l-.21-.03-.28-.07-.32-.12-.35-.18-.36-.26-.36-.36-.35-.46-.32-.59-.28-.73-.21-.88-.14-1.05-.05-1.23.06-1.22.16-1.04.24-.87.32-.71.36-.57.4-.44.42-.33.42-.24.4-.16.36-.1.32-.05.24-.01h.16l.06.01h8.16v-.83H6.18l-.01-2.75-.02-.37.05-.34.11-.31.17-.28.25-.26.31-.23.38-.2.44-.18.51-.15.58-.12.64-.1.71-.06.77-.04.84-.02 1.27.05zm-6.3 1.98l-.23.33-.08.41.08.41.23.34.33.22.41.09.41-.09.33-.22.23-.34.08-.41-.08-.41-.23-.33-.33-.22-.41-.09-.41.09zm13.09 3.95l.28.06.32.12.35.18.36.27.36.35.35.47.32.59.28.73.21.88.14 1.04.05 1.23-.06 1.23-.16 1.04-.24.86-.32.71-.36.57-.4.45-.42.33-.42.24-.4.16-.36.09-.32.05-.24.02-.16-.01h-8.22v.82h5.84l.01 2.76.02.36-.05.34-.11.31-.17.29-.25.25-.31.24-.38.2-.44.17-.51.15-.58.13-.64.09-.71.07-.77.04-.84.01-1.27-.04-1.07-.14-.9-.2-.73-.25-.59-.3-.45-.33-.34-.34-.25-.34-.16-.33-.1-.3-.04-.25-.02-.2.01-.13v-5.34l.05-.64.13-.54.21-.46.26-.38.3-.32.33-.24.35-.2.35-.14.33-.1.3-.06.26-.04.21-.02.13-.01h5.84l.69-.05.59-.14.5-.21.41-.28.33-.32.27-.35.2-.36.15-.36.1-.35.07-.32.04-.28.02-.21V6.07h2.09l.14.01zm-6.47 14.25l-.23.33-.08.41.08.41.23.33.33.23.41.08.41-.08.33-.23.23-.33.08-.41-.08-.41-.23-.33-.33-.23-.41-.08-.41.08z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# MLX \\xE9quilibre automatiquement en fonction des capacit\\xE9s de l'appareil\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Mais vous pouvez personnaliser le partitionnement :\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"import\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mlx.core \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"as\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mx\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Obtenir les infos du monde distribu\\xE9\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"world \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mx.distributed.init()\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Attribution de poids personnalis\\xE9e\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"weights \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"    0\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\": \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"2.0\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\",  \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Mac Studio obtient 2x la part\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"    1\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\": \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"1.0\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\",  \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Mac mini obtient 1x la part\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"    2\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\": \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"1.0\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"    3\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\": \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"1.0\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"}\"})})]})})}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"d\\xE9pannage-des-probl\\xE8mes-courants\",children:\"D\\xE9pannage des probl\\xE8mes courants\"}),`\n`,(0,e.jsx)(i.h3,{id:\"probl\\xE8mes-de-connexion\",children:\"Probl\\xE8mes de connexion\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Probl\\xE8me : Les n\\u0153uds ne se d\\xE9couvrent pas\"})}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# V\\xE9rifier l'\\xE9tat de la connexion Thunderbolt\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"system_profiler\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" SPThunderboltDataType\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# V\\xE9rifier les interfaces r\\xE9seau\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"networksetup\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" -listallhardwareports\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Tester la connectivit\\xE9 directe\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"ping\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" mac2.local\"})]})]})})}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Probl\\xE8me : Vitesses de transfert lentes\"})}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Tester la bande passante Thunderbolt\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"iperf3\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" -c\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" mac2.local\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" -p\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" 5201\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Attendu : ~9-10 Go/s pour TB5\"})}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Si inf\\xE9rieur : v\\xE9rifier la longueur/qualit\\xE9 du c\\xE2ble\"})})]})})}),`\n`,(0,e.jsx)(i.h3,{id:\"erreurs-mlx\",children:\"Erreurs MLX\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:'Probl\\xE8me : \"Aucun backend distribu\\xE9 disponible\"'})}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Assurez-vous que MLX est correctement install\\xE9\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"pip\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" install\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" --upgrade\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" mlx\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# V\\xE9rifier la version Python (n\\xE9cessite 3.12+)\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"python\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" --version\"})]})]})})}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:`Probl\\xE8me : \"M\\xE9moire insuffisante\" lors de l'inf\\xE9rence distribu\\xE9e`})}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M14.25.18l.9.2.73.26.59.3.45.32.34.34.25.34.16.33.1.3.04.26.02.2-.01.13V8.5l-.05.63-.13.55-.21.46-.26.38-.3.31-.33.25-.35.19-.35.14-.33.1-.3.07-.26.04-.21.02H8.77l-.69.05-.59.14-.5.22-.41.27-.33.32-.27.35-.2.36-.15.37-.1.35-.07.32-.04.27-.02.21v3.06H3.17l-.21-.03-.28-.07-.32-.12-.35-.18-.36-.26-.36-.36-.35-.46-.32-.59-.28-.73-.21-.88-.14-1.05-.05-1.23.06-1.22.16-1.04.24-.87.32-.71.36-.57.4-.44.42-.33.42-.24.4-.16.36-.1.32-.05.24-.01h.16l.06.01h8.16v-.83H6.18l-.01-2.75-.02-.37.05-.34.11-.31.17-.28.25-.26.31-.23.38-.2.44-.18.51-.15.58-.12.64-.1.71-.06.77-.04.84-.02 1.27.05zm-6.3 1.98l-.23.33-.08.41.08.41.23.34.33.22.41.09.41-.09.33-.22.23-.34.08-.41-.08-.41-.23-.33-.33-.22-.41-.09-.41.09zm13.09 3.95l.28.06.32.12.35.18.36.27.36.35.35.47.32.59.28.73.21.88.14 1.04.05 1.23-.06 1.23-.16 1.04-.24.86-.32.71-.36.57-.4.45-.42.33-.42.24-.4.16-.36.09-.32.05-.24.02-.16-.01h-8.22v.82h5.84l.01 2.76.02.36-.05.34-.11.31-.17.29-.25.25-.31.24-.38.2-.44.17-.51.15-.58.13-.64.09-.71.07-.77.04-.84.01-1.27-.04-1.07-.14-.9-.2-.73-.25-.59-.3-.45-.33-.34-.34-.25-.34-.16-.33-.1-.3-.04-.25-.02-.2.01-.13v-5.34l.05-.64.13-.54.21-.46.26-.38.3-.32.33-.24.35-.2.35-.14.33-.1.3-.06.26-.04.21-.02.13-.01h5.84l.69-.05.59-.14.5-.21.41-.28.33-.32.27-.35.2-.36.15-.36.1-.35.07-.32.04-.28.02-.21V6.07h2.09l.14.01zm-6.47 14.25l-.23.33-.08.41.08.41.23.33.33.23.41.08.41-.08.33-.23.23-.33.08-.41-.08-.41-.23-.33-.33-.23-.41-.08-.41.08z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Activer le mode \\xE9conome en m\\xE9moire\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"import\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mlx.core \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"as\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mx\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"mx.metal.set_memory_limit(\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"0.95\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\")  \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Utiliser 95% de la m\\xE9moire disponible\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Ou r\\xE9duire la taille du lot\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"generate(model, tokenizer, \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#E36209\",\"--shiki-dark\":\"#FFAB70\"},children:\"prompt\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"prompt, \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#E36209\",\"--shiki-dark\":\"#FFAB70\"},children:\"max_tokens\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"100\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\")\"})]})]})})}),`\n`,(0,e.jsx)(i.h3,{id:\"configuration-ssh\",children:\"Configuration SSH\"}),`\n`,(0,e.jsx)(i.p,{children:\"Assurez un SSH sans mot de passe entre tous les n\\u0153uds :\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# G\\xE9n\\xE9rer une cl\\xE9 SSH si n\\xE9cessaire\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"ssh-keygen\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" -t\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" ed25519\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Copier sur tous les n\\u0153uds\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"ssh-copy-id\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" user@mac2.local\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"ssh-copy-id\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" user@mac3.local\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"ssh-copy-id\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" user@mac4.local\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Tester\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"ssh\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" mac2.local\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:' \"hostname\"'})]})]})})}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"efficacit\\xE9-\\xE9nerg\\xE9tique-et-analyse-des-co\\xFBts\",children:\"Efficacit\\xE9 \\xE9nerg\\xE9tique et analyse des co\\xFBts\"}),`\n`,(0,e.jsx)(i.h3,{id:\"comparaison-de-la-consommation-\\xE9lectrique\",children:\"Comparaison de la consommation \\xE9lectrique\"}),`\n`,(0,e.jsxs)(i.table,{children:[(0,e.jsx)(i.thead,{children:(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.th,{children:\"Configuration\"}),(0,e.jsx)(i.th,{children:\"Consommation\"}),(0,e.jsx)(i.th,{children:\"Performance\"}),(0,e.jsx)(i.th,{children:\"$/Performance\"})]})}),(0,e.jsxs)(i.tbody,{children:[(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"4x Mac Studio (512 Go)\"}),(0,e.jsx)(i.td,{children:\"~500 W\"}),(0,e.jsx)(i.td,{children:\"Capable de 1T param\\xE8tres\"}),(0,e.jsx)(i.td,{children:\"Meilleur\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Cluster NVIDIA H100 (4x)\"}),(0,e.jsx)(i.td,{children:\"~2 800 W\"}),(0,e.jsx)(i.td,{children:\"Capacit\\xE9 similaire\"}),(0,e.jsx)(i.td,{children:\"5,6x plus d'\\xE9nergie\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Cluster NVIDIA RTX 5090\"}),(0,e.jsx)(i.td,{children:\"~2 300 W\"}),(0,e.jsx)(i.td,{children:\"VRAM limit\\xE9e\"}),(0,e.jsx)(i.td,{children:\"4,6x plus d'\\xE9nergie\"})]})]})]}),`\n`,(0,e.jsx)(i.h3,{id:\"co\\xFBt-total-de-possession-tco\",children:\"Co\\xFBt total de possession (TCO)\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Cluster Mac Studio (Configuration 2 To) :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsx)(i.li,{children:\"Mat\\xE9riel : 47 000 $\"}),`\n`,(0,e.jsx)(i.li,{children:\"\\xC9lectricit\\xE9 annuelle (24/7) : ~500 $\"}),`\n`,(0,e.jsx)(i.li,{children:\"Maintenance : Minimale\"}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"TCO sur 5 ans\"}),\" : ~49 500 $\"]}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Cluster GPU \\xE9quivalent :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsx)(i.li,{children:\"Mat\\xE9riel : 100 000 $+\"}),`\n`,(0,e.jsx)(i.li,{children:\"\\xC9lectricit\\xE9 annuelle (24/7) : ~3 000 $\"}),`\n`,(0,e.jsx)(i.li,{children:\"Infrastructure de refroidissement : 10 000 $+\"}),`\n`,(0,e.jsx)(i.li,{children:\"Maintenance : Significative\"}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"TCO sur 5 ans\"}),\" : ~130 000 $+\"]}),`\n`]}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"cas-dutilisation-et-applications\",children:\"Cas d'utilisation et applications\"}),`\n`,(0,e.jsx)(i.h3,{id:\"recherche-en-apprentissage-automatique\",children:\"Recherche en apprentissage automatique\"}),`\n`,(0,e.jsx)(i.p,{children:\"Le clustering Thunderbolt 5 excelle pour la recherche ML universitaire et d'entreprise :\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Applications de recherche :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Entra\\xEEnement de mod\\xE8les\"}),\" : Entra\\xEEnement distribu\\xE9 sur plusieurs Mac avec synchronisation de gradients\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Fine-Tuning\"}),\" : Ajustement local de grands mod\\xE8les sur des ensembles de donn\\xE9es propri\\xE9taires\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Inf\\xE9rence\"}),\" : Ex\\xE9cution locale de mod\\xE8les de milliers de milliards de param\\xE8tres pour l'exp\\xE9rimentation\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"\\xC9tudes d'ablation\"}),\" : Prototypage rapide sans attendre la disponibilit\\xE9 des GPU cloud\"]}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Exemple de flux de travail de recherche :\"})}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M14.25.18l.9.2.73.26.59.3.45.32.34.34.25.34.16.33.1.3.04.26.02.2-.01.13V8.5l-.05.63-.13.55-.21.46-.26.38-.3.31-.33.25-.35.19-.35.14-.33.1-.3.07-.26.04-.21.02H8.77l-.69.05-.59.14-.5.22-.41.27-.33.32-.27.35-.2.36-.15.37-.1.35-.07.32-.04.27-.02.21v3.06H3.17l-.21-.03-.28-.07-.32-.12-.35-.18-.36-.26-.36-.36-.35-.46-.32-.59-.28-.73-.21-.88-.14-1.05-.05-1.23.06-1.22.16-1.04.24-.87.32-.71.36-.57.4-.44.42-.33.42-.24.4-.16.36-.1.32-.05.24-.01h.16l.06.01h8.16v-.83H6.18l-.01-2.75-.02-.37.05-.34.11-.31.17-.28.25-.26.31-.23.38-.2.44-.18.51-.15.58-.12.64-.1.71-.06.77-.04.84-.02 1.27.05zm-6.3 1.98l-.23.33-.08.41.08.41.23.34.33.22.41.09.41-.09.33-.22.23-.34.08-.41-.08-.41-.23-.33-.33-.22-.41-.09-.41.09zm13.09 3.95l.28.06.32.12.35.18.36.27.36.35.35.47.32.59.28.73.21.88.14 1.04.05 1.23-.06 1.23-.16 1.04-.24.86-.32.71-.36.57-.4.45-.42.33-.42.24-.4.16-.36.09-.32.05-.24.02-.16-.01h-8.22v.82h5.84l.01 2.76.02.36-.05.34-.11.31-.17.29-.25.25-.31.24-.38.2-.44.17-.51.15-.58.13-.64.09-.71.07-.77.04-.84.01-1.27-.04-1.07-.14-.9-.2-.73-.25-.59-.3-.45-.33-.34-.34-.25-.34-.16-.33-.1-.3-.04-.25-.02-.2.01-.13v-5.34l.05-.64.13-.54.21-.46.26-.38.3-.32.33-.24.35-.2.35-.14.33-.1.3-.06.26-.04.21-.02.13-.01h5.84l.69-.05.59-.14.5-.21.41-.28.33-.32.27-.35.2-.36.15-.36.1-.35.07-.32.04-.28.02-.21V6.07h2.09l.14.01zm-6.47 14.25l-.23.33-.08.41.08.41.23.33.33.23.41.08.41-.08.33-.23.23-.33.08-.41-.08-.41-.23-.33-.33-.23-.41-.08-.41.08z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"import\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mlx.core \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"as\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mx\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"from\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mlx_lm \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"import\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" load, generate\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Charger votre mod\\xE8le affin\\xE9\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"model, tokenizer \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" load(\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:'\"./my-finetuned-model\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Ex\\xE9cuter des exp\\xE9riences sur le cluster distribu\\xE9\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"for\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" prompt \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"in\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" research_prompts:\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"    response \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" generate(model, tokenizer, \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#E36209\",\"--shiki-dark\":\"#FFAB70\"},children:\"prompt\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"prompt)\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"    log_result(prompt, response)\"})})]})})}),`\n`,(0,e.jsxs)(i.p,{children:[(0,e.jsx)(i.strong,{children:\"Les universit\\xE9s et les laboratoires de recherche\"}),\" b\\xE9n\\xE9ficient de :\"]}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsx)(i.li,{children:\"Co\\xFBts mat\\xE9riels fixes par rapport \\xE0 la facturation cloud impr\\xE9visible\"}),`\n`,(0,e.jsx)(i.li,{children:\"Confidentialit\\xE9 totale des donn\\xE9es pour les recherches sensibles\"}),`\n`,(0,e.jsx)(i.li,{children:\"Ressources p\\xE9dagogiques pour les cours de calcul distribu\\xE9\"}),`\n`,(0,e.jsx)(i.li,{children:\"Exp\\xE9riences reproductibles pr\\xEAtes pour la publication\"}),`\n`]}),`\n`,(0,e.jsx)(i.h3,{id:\"flux-de-travail-cr\\xE9atifs-professionnels\",children:\"Flux de travail cr\\xE9atifs professionnels\"}),`\n`,(0,e.jsx)(i.p,{children:\"L'int\\xE9gration avec l'\\xE9cosyst\\xE8me cr\\xE9atif d'Apple offre des avantages uniques :\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Production vid\\xE9o :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Rendu distribu\\xE9\"}),\" : Projets Final Cut Pro, DaVinci Resolve, Motion\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"\\xC9dition assist\\xE9e par IA\"}),\" : Mod\\xE8les IA locaux pour la d\\xE9tection de sc\\xE8nes, la transcription\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"\\xC9talonnage des couleurs\"}),\" : Traitement des couleurs acc\\xE9l\\xE9r\\xE9 par GPU sur les n\\u0153uds\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Traitement RAW 8K\"}),\" : M\\xE9moire suffisante pour les fichiers vid\\xE9o volumineux\"]}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Production audio :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Traitement distribu\\xE9 Logic Pro\"}),\" : Rendu de plugins sur les n\\u0153uds\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"G\\xE9n\\xE9ration de musique IA\"}),\" : Ex\\xE9cuter des mod\\xE8les IA musicaux locaux\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Restauration audio\"}),\" : R\\xE9duction de bruit bas\\xE9e sur ML localement\"]}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"3D et Motion Design :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Rendu distribu\\xE9 Blender\"}),\" : Rendu Cycles sur cluster Mac\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Cinema 4D\"}),\" : Rendu CPU avec prise en charge du cluster\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Houdini\"}),\" : Distribution de simulation (avec les plugins appropri\\xE9s)\"]}),`\n`]}),`\n`,(0,e.jsxs)(i.p,{children:[\"Pour en savoir plus sur les flux de travail cr\\xE9atifs, consultez notre \",(0,e.jsx)(i.a,{href:\"/blog/macos-tahoe-professional-workflow-revolution-complete-guide\",children:\"Guide de la r\\xE9volution des flux de travail professionnels macOS Tahoe\"}),\".\"]}),`\n`,(0,e.jsx)(i.h3,{id:\"d\\xE9veloppement-et-tests\",children:\"D\\xE9veloppement et tests\"}),`\n`,(0,e.jsx)(i.p,{children:\"Le d\\xE9veloppement d'applications IA modernes b\\xE9n\\xE9ficie consid\\xE9rablement des clusters locaux :\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"D\\xE9veloppement d'applications bas\\xE9es sur l'IA :\"})}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(i.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M14.25.18l.9.2.73.26.59.3.45.32.34.34.25.34.16.33.1.3.04.26.02.2-.01.13V8.5l-.05.63-.13.55-.21.46-.26.38-.3.31-.33.25-.35.19-.35.14-.33.1-.3.07-.26.04-.21.02H8.77l-.69.05-.59.14-.5.22-.41.27-.33.32-.27.35-.2.36-.15.37-.1.35-.07.32-.04.27-.02.21v3.06H3.17l-.21-.03-.28-.07-.32-.12-.35-.18-.36-.26-.36-.36-.35-.46-.32-.59-.28-.73-.21-.88-.14-1.05-.05-1.23.06-1.22.16-1.04.24-.87.32-.71.36-.57.4-.44.42-.33.42-.24.4-.16.36-.1.32-.05.24-.01h.16l.06.01h8.16v-.83H6.18l-.01-2.75-.02-.37.05-.34.11-.31.17-.28.25-.26.31-.23.38-.2.44-.18.51-.15.58-.12.64-.1.71-.06.77-.04.84-.02 1.27.05zm-6.3 1.98l-.23.33-.08.41.08.41.23.34.33.22.41.09.41-.09.33-.22.23-.34.08-.41-.08-.41-.23-.33-.33-.22-.41-.09-.41.09zm13.09 3.95l.28.06.32.12.35.18.36.27.36.35.35.47.32.59.28.73.21.88.14 1.04.05 1.23-.06 1.23-.16 1.04-.24.86-.32.71-.36.57-.4.45-.42.33-.42.24-.4.16-.36.09-.32.05-.24.02-.16-.01h-8.22v.82h5.84l.01 2.76.02.36-.05.34-.11.31-.17.29-.25.25-.31.24-.38.2-.44.17-.51.15-.58.13-.64.09-.71.07-.77.04-.84.01-1.27-.04-1.07-.14-.9-.2-.73-.25-.59-.3-.45-.33-.34-.34-.25-.34-.16-.33-.1-.3-.04-.25-.02-.2.01-.13v-5.34l.05-.64.13-.54.21-.46.26-.38.3-.32.33-.24.35-.2.35-.14.33-.1.3-.06.26-.04.21-.02.13-.01h5.84l.69-.05.59-.14.5-.21.41-.28.33-.32.27-.35.2-.36.15-.36.1-.35.07-.32.04-.28.02-.21V6.07h2.09l.14.01zm-6.47 14.25l-.23.33-.08.41.08.41.23.33.33.23.41.08.41-.08.33-.23.23-.33.08-.41-.08-.41-.23-.33-.33-.23-.41-.08-.41.08z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(i.code,{children:[(0,e.jsx)(i.span,{className:\"line\",children:(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Exemple : Construction d'un chatbot IA avec inf\\xE9rence locale\"})}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"from\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" flask \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"import\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" Flask, request, jsonify\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"import\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mlx.core \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"as\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mx\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"from\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" mlx_lm \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"import\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" load, generate\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"app \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" Flask(\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"__name__\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"model, tokenizer \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" load(\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:'\"llama-3.1-70b\"'}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,e.jsx)(i.span,{className:\"line\"}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"@app.route\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"(\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\"'/chat'\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\", \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#E36209\",\"--shiki-dark\":\"#FFAB70\"},children:\"methods\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"[\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\"'POST'\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"])\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"def\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\" chat\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"():\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"    prompt \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" request.json[\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\"'message'\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"]\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"    response \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" generate(model, tokenizer, \"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#E36209\",\"--shiki-dark\":\"#FFAB70\"},children:\"prompt\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"=\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\"prompt)\"})]}),`\n`,(0,e.jsxs)(i.span,{className:\"line\",children:[(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#D73A49\",\"--shiki-dark\":\"#F97583\"},children:\"    return\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\" jsonify({\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\"'response'\"}),(0,e.jsx)(i.span,{style:{\"--shiki-light\":\"#24292E\",\"--shiki-dark\":\"#E1E4E8\"},children:\": response})\"})]})]})})}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Avantages pour les d\\xE9veloppeurs :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"D\\xE9veloppement LLM local\"}),\" : Testez et it\\xE9rez sans limites de taux d'API\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Acc\\xE9l\\xE9ration CI/CD\"}),\" : Syst\\xE8mes de construction et de test distribu\\xE9s\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"D\\xE9veloppement d'applications IA\"}),\" : Cr\\xE9ez des applications avec des backends IA locaux\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Exp\\xE9rimentation sans frais\"}),\" : Pas de frais par requ\\xEAte pendant le d\\xE9veloppement\"]}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Avantages des tests :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsx)(i.li,{children:\"Testez contre des mod\\xE8les \\xE0 l'\\xE9chelle de la production localement\"}),`\n`,(0,e.jsx)(i.li,{children:\"Pas de latence r\\xE9seau dans les environnements de test\"}),`\n`,(0,e.jsx)(i.li,{children:\"R\\xE9sultats de test coh\\xE9rents et reproductibles\"}),`\n`,(0,e.jsx)(i.li,{children:\"Contr\\xF4le total sur les versions des mod\\xE8les\"}),`\n`]}),`\n`,(0,e.jsxs)(i.p,{children:[\"Consultez notre \",(0,e.jsx)(i.a,{href:\"/blog/macos-tahoe-developer-setup-npm-python-xcode-fix-guide-2025\",children:\"Guide de configuration d\\xE9veloppeur macOS Tahoe\"}),\" pour la configuration de l'environnement de d\\xE9veloppement.\"]}),`\n`,(0,e.jsx)(i.h3,{id:\"sc\\xE9narios-de-d\\xE9ploiement-en-entreprise\",children:\"Sc\\xE9narios de d\\xE9ploiement en entreprise\"}),`\n`,(0,e.jsx)(i.p,{children:\"Les grandes organisations d\\xE9ploient des clusters Mac pour :\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Assistants IA internes :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsx)(i.li,{children:\"Interfaces priv\\xE9es de type ChatGPT\"}),`\n`,(0,e.jsx)(i.li,{children:\"Analyse et r\\xE9sum\\xE9 de documents\"}),`\n`,(0,e.jsx)(i.li,{children:\"Revue et g\\xE9n\\xE9ration de code\"}),`\n`,(0,e.jsx)(i.li,{children:\"Transcription et analyse de r\\xE9unions\"}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Industries sensibles \\xE0 la conformit\\xE9 :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Sant\\xE9\"}),\" : Traitement IA conforme HIPAA\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Finance\"}),\" : Inf\\xE9rence de mod\\xE8les sur site\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Juridique\"}),\" : Analyse de documents confidentiels\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Gouvernement\"}),\" : Capacit\\xE9s IA isol\\xE9es (air-gapped)\"]}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Analyse co\\xFBts-avantages pour l'entreprise :\"})}),`\n`,(0,e.jsxs)(i.table,{children:[(0,e.jsx)(i.thead,{children:(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.th,{children:\"Sc\\xE9nario\"}),(0,e.jsx)(i.th,{children:\"Co\\xFBt Cloud/An\"}),(0,e.jsx)(i.th,{children:\"Co\\xFBt Cluster Mac/An\"}),(0,e.jsx)(i.th,{children:\"\\xC9conomies\"})]})}),(0,e.jsxs)(i.tbody,{children:[(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"L\\xE9ger (1M tokens/jour)\"}),(0,e.jsx)(i.td,{children:\"~11 000 $\"}),(0,e.jsx)(i.td,{children:\"~3 000 $ (amorti)\"}),(0,e.jsx)(i.td,{children:\"73 %\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Moyen (10M tokens/jour)\"}),(0,e.jsx)(i.td,{children:\"~110 000 $\"}),(0,e.jsx)(i.td,{children:\"~15 000 $ (amorti)\"}),(0,e.jsx)(i.td,{children:\"86 %\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Lourd (100M tokens/jour)\"}),(0,e.jsx)(i.td,{children:\"~1,1M $\"}),(0,e.jsx)(i.td,{children:\"~60 000 $ (amorti)\"}),(0,e.jsx)(i.td,{children:\"95 %\"})]})]})]}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"avenir-du-clustering-mac\",children:\"Avenir du clustering Mac\"}),`\n`,(0,e.jsx)(i.h3,{id:\"m5-et-au-del\\xE0\",children:\"M5 et au-del\\xE0\"}),`\n`,(0,e.jsxs)(i.p,{children:[\"La \",(0,e.jsx)(i.a,{href:\"/blog/apple-m5-chip-complete-analysis-2025\",children:\"puce Apple M5\"}),\" introduit des acc\\xE9l\\xE9rateurs neuronaux dans chaque c\\u0153ur GPU, offrant une am\\xE9lioration des performances IA de 4x. Lorsqu'elle est combin\\xE9e avec le clustering Thunderbolt 5 :\"]}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Prise en charge MLX am\\xE9lior\\xE9e\"}),\" : Acc\\xE8s complet aux acc\\xE9l\\xE9rateurs neuronaux M5\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Bande passante m\\xE9moire am\\xE9lior\\xE9e\"}),\" : 153 Go/s par puce\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Meilleure efficacit\\xE9 \\xE9nerg\\xE9tique\"}),\" : Plus de performances par watt\"]}),`\n`]}),`\n`,(0,e.jsx)(i.h3,{id:\"implications-pour-le-mac-pro\",children:\"Implications pour le Mac Pro\"}),`\n`,(0,e.jsx)(i.p,{children:'Selon les rapports, Apple a \"largement fait une croix sur le Mac Pro\" en interne. Le clustering Thunderbolt 5 offre une voie alternative :'}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Performance \\xE9volutive\"}),\" : Ajoutez des n\\u0153uds selon les besoins\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Co\\xFBt d'entr\\xE9e inf\\xE9rieur\"}),\" : Commencez petit, d\\xE9veloppez plus tard\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Flexibilit\\xE9\"}),\" : M\\xE9langez diff\\xE9rents mod\\xE8les de Mac\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"P\\xE9rennit\\xE9\"}),\" : Mettez \\xE0 niveau les n\\u0153uds individuels au fil du temps\"]}),`\n`]}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"consid\\xE9rations-de-s\\xE9curit\\xE9-et-de-confidentialit\\xE9\",children:\"Consid\\xE9rations de s\\xE9curit\\xE9 et de confidentialit\\xE9\"}),`\n`,(0,e.jsx)(i.h3,{id:\"pourquoi-le-traitement-local-est-important\",children:\"Pourquoi le traitement local est important\"}),`\n`,(0,e.jsx)(i.p,{children:\"L'un des avantages les plus significatifs du clustering Mac par rapport \\xE0 l'IA bas\\xE9e sur le cloud est la confidentialit\\xE9 totale des donn\\xE9es. Vos invites, donn\\xE9es d'entra\\xEEnement et sorties g\\xE9n\\xE9r\\xE9es ne quittent jamais votre r\\xE9seau local.\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Avantages de confidentialit\\xE9 :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Aucune transmission de donn\\xE9es\"}),\" : Tout le traitement se fait sur site\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Conformit\\xE9 facile\"}),\" : Conformit\\xE9 HIPAA, GDPR, SOC2 plus facile\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Protection IP\"}),\" : Les donn\\xE9es propri\\xE9taires restent priv\\xE9es\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Pas de soucis de journalisation\"}),\" : Contr\\xF4le total sur les journaux d'utilisation\"]}),`\n`]}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Meilleures pratiques de s\\xE9curit\\xE9 pour les clusters Mac :\"})}),`\n`,(0,e.jsxs)(i.ol,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Isolation r\\xE9seau\"}),\" : Gardez votre cluster sur un VLAN d\\xE9di\\xE9\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Configuration du pare-feu\"}),\" : Bloquez l'acc\\xE8s externe aux ports du cluster\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"Gestion des cl\\xE9s SSH\"}),\" : Utilisez des cl\\xE9s ed25519, effectuez une rotation r\\xE9guli\\xE8re\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"S\\xE9curit\\xE9 macOS\"}),\" : Activez FileVault, gardez les syst\\xE8mes \\xE0 jour\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.strong,{children:\"S\\xE9curit\\xE9 physique\"}),\" : S\\xE9curisez l'acc\\xE8s \\xE0 la salle des serveurs\"]}),`\n`]}),`\n`,(0,e.jsxs)(i.p,{children:[\"Pour une configuration de s\\xE9curit\\xE9 macOS compl\\xE8te, consultez notre \",(0,e.jsx)(i.a,{href:\"/blog/macos-tahoe-security-privacy-complete-guide-2025\",children:\"Guide de s\\xE9curit\\xE9 et confidentialit\\xE9 macOS Tahoe\"}),\".\"]}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"benchmarks-de-performance-r\\xE9els\",children:\"Benchmarks de performance r\\xE9els\"}),`\n`,(0,e.jsx)(i.h3,{id:\"comparaison-de-la-vitesse-dinf\\xE9rence\",children:\"Comparaison de la vitesse d'inf\\xE9rence\"}),`\n`,(0,e.jsx)(i.p,{children:\"Bas\\xE9 sur des tests communautaires et des d\\xE9monstrations d'Apple :\"}),`\n`,(0,e.jsxs)(i.table,{children:[(0,e.jsx)(i.thead,{children:(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.th,{children:\"Mod\\xE8le\"}),(0,e.jsx)(i.th,{children:\"Configuration\"}),(0,e.jsx)(i.th,{children:\"Tokens/Seconde\"}),(0,e.jsx)(i.th,{children:\"Comparaison\"})]})}),(0,e.jsxs)(i.tbody,{children:[(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Llama 3.1 70B\"}),(0,e.jsx)(i.td,{children:\"2x Mac mini M4 Pro (64 Go)\"}),(0,e.jsx)(i.td,{children:\"~35 tok/s\"}),(0,e.jsx)(i.td,{children:\"Comparable \\xE0 RTX 4090\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Llama 3.1 405B\"}),(0,e.jsx)(i.td,{children:\"4x Mac Studio (512 Go)\"}),(0,e.jsx)(i.td,{children:\"~15 tok/s\"}),(0,e.jsx)(i.td,{children:\"D\\xE9passe le cloud A100\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Kimi K2\"}),(0,e.jsx)(i.td,{children:\"2x Mac Studio (512 Go)\"}),(0,e.jsx)(i.td,{children:\"~20 tok/s\"}),(0,e.jsx)(i.td,{children:\"Premier billion de param\\xE8tres local\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"DeepSeek V3\"}),(0,e.jsx)(i.td,{children:\"4x Mac Studio (512 Go)\"}),(0,e.jsx)(i.td,{children:\"~12 tok/s\"}),(0,e.jsx)(i.td,{children:\"Auparavant cloud uniquement\"})]})]})]}),`\n`,(0,e.jsx)(i.h3,{id:\"analyse-de-latence\",children:\"Analyse de latence\"}),`\n`,(0,e.jsxs)(i.table,{children:[(0,e.jsx)(i.thead,{children:(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.th,{children:\"M\\xE9trique\"}),(0,e.jsx)(i.th,{children:\"Cluster Mac\"}),(0,e.jsx)(i.th,{children:\"API Cloud\"}),(0,e.jsx)(i.th,{children:\"Diff\\xE9rence\"})]})}),(0,e.jsxs)(i.tbody,{children:[(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Premier Token\"}),(0,e.jsx)(i.td,{children:\"100-500ms\"}),(0,e.jsx)(i.td,{children:\"500-2000ms\"}),(0,e.jsx)(i.td,{children:\"2 \\xE0 10x plus rapide\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Latence coh\\xE9rente\"}),(0,e.jsx)(i.td,{children:\"Oui\"}),(0,e.jsx)(i.td,{children:\"Variable\"}),(0,e.jsx)(i.td,{children:\"Plus pr\\xE9visible\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"D\\xE9marrage \\xE0 froid\"}),(0,e.jsx)(i.td,{children:\"Aucun\"}),(0,e.jsx)(i.td,{children:\"5-30s\"}),(0,e.jsx)(i.td,{children:\"Pas d'attente\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Disponibilit\\xE9\"}),(0,e.jsx)(i.td,{children:\"100% (local)\"}),(0,e.jsx)(i.td,{children:\"99,9%\"}),(0,e.jsx)(i.td,{children:\"Aucune panne\"})]})]})]}),`\n`,(0,e.jsx)(i.h3,{id:\"comparaison-du-co\\xFBt-par-token\",children:\"Comparaison du co\\xFBt par token\"}),`\n`,(0,e.jsx)(i.p,{children:\"En supposant un fonctionnement 24/7 sur 1 an :\"}),`\n`,(0,e.jsxs)(i.table,{children:[(0,e.jsx)(i.thead,{children:(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.th,{children:\"Solution\"}),(0,e.jsx)(i.th,{children:\"Co\\xFBt mat\\xE9riel\"}),(0,e.jsx)(i.th,{children:\"Co\\xFBt d'exploitation\"}),(0,e.jsx)(i.th,{children:\"Total 1 an\"}),(0,e.jsx)(i.th,{children:\"Co\\xFBt/1M Tokens\"})]})}),(0,e.jsxs)(i.tbody,{children:[(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Cluster 4x Mac Studio\"}),(0,e.jsx)(i.td,{children:\"47 000 $\"}),(0,e.jsx)(i.td,{children:\"~500 $\"}),(0,e.jsx)(i.td,{children:\"47 500 $\"}),(0,e.jsx)(i.td,{children:\"~0,02 $\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"OpenAI GPT-4\"}),(0,e.jsx)(i.td,{children:\"0 $\"}),(0,e.jsx)(i.td,{children:\"Bas\\xE9 sur l'utilisation\"}),(0,e.jsx)(i.td,{children:\"Variable\"}),(0,e.jsx)(i.td,{children:\"~30,00 $\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"Claude API\"}),(0,e.jsx)(i.td,{children:\"0 $\"}),(0,e.jsx)(i.td,{children:\"Bas\\xE9 sur l'utilisation\"}),(0,e.jsx)(i.td,{children:\"Variable\"}),(0,e.jsx)(i.td,{children:\"~15,00 $\"})]}),(0,e.jsxs)(i.tr,{children:[(0,e.jsx)(i.td,{children:\"AWS Bedrock\"}),(0,e.jsx)(i.td,{children:\"0 $\"}),(0,e.jsx)(i.td,{children:\"Bas\\xE9 sur l'utilisation\"}),(0,e.jsx)(i.td,{children:\"Variable\"}),(0,e.jsx)(i.td,{children:\"~10,00 $\"})]})]})]}),`\n`,(0,e.jsx)(i.p,{children:\"Pour les gros utilisateurs (>100M tokens/an), le clustering Mac local devient nettement plus \\xE9conomique.\"}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"faq\",children:\"FAQ\"}),`\n`,(0,e.jsx)(i.h3,{id:\"combien-de-mac-puis-je-connecter-dans-un-cluster-\",children:\"Combien de Mac puis-je connecter dans un cluster ?\"}),`\n`,(0,e.jsx)(i.p,{children:\"La limite pratique d\\xE9pend de votre topologie. Avec des connexions Thunderbolt directes (en \\xE9vitant les hubs), vous pouvez connecter efficacement 4 \\xE0 6 Mac. L'utilisation d'une topologie en anneau permet de passer \\xE0 plus de n\\u0153uds tout en maintenant une bande passante compl\\xE8te. Au-del\\xE0 de 6 n\\u0153uds, vous aurez besoin d'une planification topologique minutieuse pour \\xE9viter les goulots d'\\xE9tranglement de bande passante.\"}),`\n`,(0,e.jsx)(i.h3,{id:\"ai-je-besoin-de-mac-identiques-pour-le-clustering-\",children:\"Ai-je besoin de Mac identiques pour le clustering ?\"}),`\n`,(0,e.jsx)(i.p,{children:\"Non, MLX et EXO prennent en charge les clusters h\\xE9t\\xE9rog\\xE8nes. Cependant, le cluster sera limit\\xE9 par le composant le plus lent. Pour de meilleurs r\\xE9sultats, utilisez des Mac de g\\xE9n\\xE9ration similaire avec des versions Thunderbolt correspondantes. La distribution de la m\\xE9moire sera pond\\xE9r\\xE9e par la RAM disponible de chaque n\\u0153ud.\"}),`\n`,(0,e.jsx)(i.h3,{id:\"puis-je-utiliser-des-mac-thunderbolt-4-dans-un-cluster-\",children:\"Puis-je utiliser des Mac Thunderbolt 4 dans un cluster ?\"}),`\n`,(0,e.jsx)(i.p,{children:\"Oui, mais la bande passante sera limit\\xE9e \\xE0 40 Gbps sur ces connexions. Thunderbolt 5 et 4 sont r\\xE9trocompatibles. Le syst\\xE8me fonctionnera \\xE0 la vitesse inf\\xE9rieure lors du m\\xE9lange des g\\xE9n\\xE9rations. Pour de meilleures performances, gardez les n\\u0153uds TB4 comme n\\u0153uds feuilles plut\\xF4t qu'au milieu d'un anneau.\"}),`\n`,(0,e.jsx)(i.h3,{id:\"quelle-est-la-m\\xE9moire-minimale-requise-pour-le-clustering-\",children:\"Quelle est la m\\xE9moire minimale requise pour le clustering ?\"}),`\n`,(0,e.jsx)(i.p,{children:\"La m\\xE9moire totale du cluster doit d\\xE9passer les besoins en m\\xE9moire de votre mod\\xE8le avec une certaine marge pour les op\\xE9rations. Pour Llama 3.1 70B (mod\\xE8le de 140 Go), vous avez besoin d'au moins 3 Mac avec 48 Go chacun (144 Go au total). Nous recommandons une marge de 10 \\xE0 20 % au-dessus de la taille du mod\\xE8le.\"}),`\n`,(0,e.jsx)(i.h3,{id:\"le-clustering-mac-convient-il-\\xE0-lentra\\xEEnement-ou-uniquement-\\xE0-linf\\xE9rence-\",children:\"Le clustering Mac convient-il \\xE0 l'entra\\xEEnement ou uniquement \\xE0 l'inf\\xE9rence ?\"}),`\n`,(0,e.jsx)(i.p,{children:\"Les deux ! MLX prend en charge l'entra\\xEEnement distribu\\xE9 avec moyenne des gradients sur les n\\u0153uds. Cependant, l'inf\\xE9rence est le cas d'utilisation principal en raison des avantages de la mise en commun de la m\\xE9moire pour les grands mod\\xE8les. L'entra\\xEEnement n\\xE9cessite plus de communication entre les n\\u0153uds et est plus sensible \\xE0 la latence du r\\xE9seau.\"}),`\n`,(0,e.jsx)(i.h3,{id:\"comment-cela-se-compare-t-il-aux-instances-gpu-cloud-\",children:\"Comment cela se compare-t-il aux instances GPU cloud ?\"}),`\n`,(0,e.jsx)(i.p,{children:\"Pour une utilisation \\xE0 long terme (plus de 6 mois d'utilisation r\\xE9guli\\xE8re), le clustering Mac est plus rentable. Vous poss\\xE9dez le mat\\xE9riel, n'avez pas de frais horaires et obtenez des performances comp\\xE9titives. Pour une utilisation occasionnelle ou une exp\\xE9rimentation, les instances cloud peuvent \\xEAtre plus \\xE9conomiques au d\\xE9but.\"}),`\n`,(0,e.jsx)(i.h3,{id:\"puis-je-faire-fonctionner-le-cluster-247-\",children:\"Puis-je faire fonctionner le cluster 24/7 ?\"}),`\n`,(0,e.jsxs)(i.p,{children:[\"Absolument. Le mat\\xE9riel Mac est con\\xE7u pour un fonctionnement continu. Les Mac Studio en particulier ont une excellente gestion thermique pour les charges de travail soutenues. Surveillez les temp\\xE9ratures \\xE0 l'aide du moniteur d'activit\\xE9 ou de \",(0,e.jsx)(i.code,{children:\"sudo powermetrics\"}),\" et assurez une ventilation ad\\xE9quate.\"]}),`\n`,(0,e.jsx)(i.h3,{id:\"que-se-passe-t-il-si-un-n\\u0153ud-tombe-en-panne-\",children:\"Que se passe-t-il si un n\\u0153ud tombe en panne ?\"}),`\n`,(0,e.jsx)(i.p,{children:\"Actuellement, le clustering MLX ne prend pas en charge le remplacement \\xE0 chaud ou le basculement automatique. Si un n\\u0153ud se d\\xE9connecte, le travail \\xE9chouera et devra \\xEAtre red\\xE9marr\\xE9. Pour les charges de travail critiques, impl\\xE9mentez des points de contr\\xF4le dans votre code pour reprendre \\xE0 partir du dernier \\xE9tat enregistr\\xE9.\"}),`\n`,(0,e.jsx)(i.h3,{id:\"puis-je-utiliser-le-cluster-tout-en-ex\\xE9cutant-des-charges-de-travail-ia-\",children:\"Puis-je utiliser le cluster tout en ex\\xE9cutant des charges de travail IA ?\"}),`\n`,(0,e.jsx)(i.p,{children:\"Oui, mais les performances peuvent \\xEAtre impact\\xE9es. L'interface EXO permet un fonctionnement en arri\\xE8re-plan pendant que vous utilisez les Mac pour d'autres t\\xE2ches. Pour de meilleures performances d'inf\\xE9rence, minimisez les autres activit\\xE9s pendant les charges de travail IA lourdes.\"}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"conclusion\",children:\"Conclusion\"}),`\n`,(0,e.jsx)(i.p,{children:\"Le clustering Thunderbolt 5 de macOS Tahoe 26.2 repr\\xE9sente un changement de paradigme dans l'informatique IA locale. En combinant plusieurs Mac en un supercalculateur unifi\\xE9, les utilisateurs peuvent ex\\xE9cuter des mod\\xE8les de milliers de milliards de param\\xE8tres \\xE0 une fraction du co\\xFBt des clusters GPU traditionnels.\"}),`\n`,(0,e.jsx)(i.p,{children:(0,e.jsx)(i.strong,{children:\"Avantages cl\\xE9s :\"})}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsx)(i.li,{children:\"Consommation d'\\xE9nergie 10 fois inf\\xE9rieure aux alternatives GPU\"}),`\n`,(0,e.jsx)(i.li,{children:\"Aucun mat\\xE9riel sp\\xE9cialis\\xE9 requis\"}),`\n`,(0,e.jsx)(i.li,{children:\"Configuration simple avec MLX et EXO\"}),`\n`,(0,e.jsx)(i.li,{children:\"\\xC9volutif de 2 \\xE0 6+ n\\u0153uds\"}),`\n`,(0,e.jsx)(i.li,{children:\"Traitement IA local et priv\\xE9\"}),`\n`]}),`\n`,(0,e.jsxs)(i.p,{children:[\"Pour les utilisateurs investis dans l'\\xE9cosyst\\xE8me Apple, cette fonctionnalit\\xE9 peut \\xE0 elle seule justifier la mise \\xE0 niveau vers macOS Tahoe 26.2. Consultez notre \",(0,e.jsx)(i.a,{href:\"/blog/macos-tahoe-26-2-update-complete-guide-2025\",children:\"Guide de mise \\xE0 jour macOS Tahoe 26.2\"}),\" pour des instructions de mise \\xE0 jour compl\\xE8tes.\"]}),`\n`,(0,e.jsxs)(i.p,{children:[(0,e.jsx)(i.strong,{children:\"Pr\\xEAt \\xE0 optimiser votre Mac pour les charges de travail IA ?\"}),\" Commencez par notre \",(0,e.jsx)(i.a,{href:\"/blog/macos-tahoe-storage-management-optimization-guide-2025\",children:\"Guide de gestion du stockage macOS Tahoe\"}),\" pour vous assurer d'avoir suffisamment d'espace pour les grands mod\\xE8les.\"]}),`\n`,(0,e.jsx)(i.hr,{}),`\n`,(0,e.jsx)(i.h2,{id:\"sources\",children:\"Sources\"}),`\n`,(0,e.jsxs)(i.ul,{children:[`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.a,{href:\"https://appleinsider.com/articles/25/11/18/macos-tahoe-262-will-give-m5-macs-a-giant-machine-learning-speed-boost\",children:\"Le ML dans macOS Tahoe b\\xE9n\\xE9ficie d'un boost GPU et clustering Thunderbolt 5\"}),\" - Apple Insider, novembre 2025\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.a,{href:\"https://www.engadget.com/ai/you-can-turn-a-cluster-of-macs-into-an-ai-supercomputer-in-macos-tahoe-262-191500778.html\",children:\"Vous pouvez transformer un cluster de Mac en un supercalculateur IA dans macOS Tahoe 26.2\"}),\" - Engadget, novembre 2025\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.a,{href:\"https://9to5mac.com/2025/11/19/a-cluster-of-mac-studios-is-just-one-reason-we-no-longer-need-a-mac-pro/\",children:\"Un cluster de Mac Studio est juste une raison pour laquelle nous n'avons plus besoin d'un Mac Pro\"}),\" - 9to5Mac, novembre 2025\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.a,{href:\"https://www.heise.de/en/news/AI-Cluster-Four-Macs-with-2-TB-can-run-the-giant-model-Kimi-K2-Thinking-11085716.html\",children:\"Cluster IA : Quatre Mac avec 2 To peuvent ex\\xE9cuter le mod\\xE8le g\\xE9ant Kimi K2 Thinking\"}),\" - Heise Online, novembre 2025\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.a,{href:\"https://ml-explore.github.io/mlx/build/html/usage/distributed.html\",children:\"Documentation de communication distribu\\xE9e MLX\"}),\" - Docs officiels Apple MLX\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.a,{href:\"https://github.com/exo-explore/exo\",children:\"EXO : Ex\\xE9cutez votre propre cluster IA \\xE0 la maison\"}),\" - EXO Labs GitHub\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.a,{href:\"https://developer.apple.com/videos/play/wwdc2025/298/\",children:\"Explorez les grands mod\\xE8les de langage sur Apple silicon avec MLX - WWDC25\"}),\" - Apple Developer\"]}),`\n`,(0,e.jsxs)(i.li,{children:[(0,e.jsx)(i.a,{href:\"https://moonshotai.github.io/Kimi-K2/\",children:\"Kimi K2 - Moonshot AI\"}),\" - Officiel Moonshot AI\"]}),`\n`]})]})}function o(n={}){let{wrapper:i}=n.components||{};return i?(0,e.jsx)(i,{...n,children:(0,e.jsx)(c,{...n})}):c(n)}return y(v);})();\n;return Component;","toc":[{"title":"Points clés","url":"#points-clés","depth":2},{"title":"Résumé : Comprendre la technologie de clustering Mac","url":"#résumé--comprendre-la-technologie-de-clustering-mac","depth":2},{"title":"Pourquoi le clustering Thunderbolt 5 est important","url":"#pourquoi-le-clustering-thunderbolt-5-est-important","depth":3},{"title":"Qui bénéficie du clustering Mac ?","url":"#qui-bénéficie-du-clustering-mac-","depth":3},{"title":"Qu'est-ce que le clustering Mac Thunderbolt 5 ?","url":"#quest-ce-que-le-clustering-mac-thunderbolt-5-","depth":2},{"title":"L'évolution du calcul distribué sur Mac","url":"#lévolution-du-calcul-distribué-sur-mac","depth":3},{"title":"Comment fonctionne le clustering Thunderbolt 5","url":"#comment-fonctionne-le-clustering-thunderbolt-5","depth":3},{"title":"Avantage de la mémoire unifiée Apple Silicon","url":"#avantage-de-la-mémoire-unifiée-apple-silicon","depth":3},{"title":"Exigences matérielles et compatibilité","url":"#exigences-matérielles-et-compatibilité","depth":2},{"title":"Modèles Mac compatibles","url":"#modèles-mac-compatibles","depth":3},{"title":"Configurations de cluster recommandées","url":"#configurations-de-cluster-recommandées","depth":3},{"title":"Guide de sélection des câbles Thunderbolt 5","url":"#guide-de-sélection-des-câbles-thunderbolt-5","depth":3},{"title":"Pile logicielle : Frameworks MLX et EXO","url":"#pile-logicielle--frameworks-mlx-et-exo","depth":2},{"title":"Comprendre le calcul distribué MLX","url":"#comprendre-le-calcul-distribué-mlx","depth":3},{"title":"Backends de communication MLX","url":"#backends-de-communication-mlx","depth":3},{"title":"Comprendre l'entraînement distribué vs l'inférence","url":"#comprendre-lentraînement-distribué-vs-linférence","depth":3},{"title":"EXO : Gestion de cluster simplifiée","url":"#exo--gestion-de-cluster-simplifiée","depth":3},{"title":"Guide de configuration de cluster étape par étape","url":"#guide-de-configuration-de-cluster-étape-par-étape","depth":2},{"title":"Prérequis","url":"#prérequis","depth":3},{"title":"Méthode 1 : Configuration native MLX (Recommandé)","url":"#méthode-1--configuration-native-mlx-recommandé","depth":3},{"title":"Étape 1 : Installer MLX","url":"#étape-1--installer-mlx","depth":4},{"title":"Étape 2 : Configurer le réseau Thunderbolt","url":"#étape-2--configurer-le-réseau-thunderbolt","depth":4},{"title":"Étape 3 : Créer la configuration du fichier hôte","url":"#étape-3--créer-la-configuration-du-fichier-hôte","depth":4},{"title":"Étape 4 : Tester la communication distribuée","url":"#étape-4--tester-la-communication-distribuée","depth":4},{"title":"Méthode 2 : Configuration EXO (Conviviale)","url":"#méthode-2--configuration-exo-conviviale","depth":3},{"title":"Étape 1 : Cloner et installer EXO","url":"#étape-1--cloner-et-installer-exo","depth":4},{"title":"Étape 2 : Configurer MLX pour Apple Silicon","url":"#étape-2--configurer-mlx-pour-apple-silicon","depth":4},{"title":"Étape 3 : Démarrer le cluster","url":"#étape-3--démarrer-le-cluster","depth":4},{"title":"Étape 4 : Accéder à l'interface","url":"#étape-4--accéder-à-linterface","depth":4},{"title":"Exécution de grands modèles de langage","url":"#exécution-de-grands-modèles-de-langage","depth":2},{"title":"Téléchargement des modèles","url":"#téléchargement-des-modèles","depth":3},{"title":"Exigences mémoire par modèle","url":"#exigences-mémoire-par-modèle","depth":3},{"title":"Exécution de Kimi K2 Thinking","url":"#exécution-de-kimi-k2-thinking","depth":3},{"title":"Optimisation des performances","url":"#optimisation-des-performances","depth":2},{"title":"Meilleures pratiques de topologie réseau","url":"#meilleures-pratiques-de-topologie-réseau","depth":3},{"title":"Directives de câblage et de connexion","url":"#directives-de-câblage-et-de-connexion","depth":3},{"title":"Équilibrage mémoire et calcul","url":"#équilibrage-mémoire-et-calcul","depth":3},{"title":"Dépannage des problèmes courants","url":"#dépannage-des-problèmes-courants","depth":2},{"title":"Problèmes de connexion","url":"#problèmes-de-connexion","depth":3},{"title":"Erreurs MLX","url":"#erreurs-mlx","depth":3},{"title":"Configuration SSH","url":"#configuration-ssh","depth":3},{"title":"Efficacité énergétique et analyse des coûts","url":"#efficacité-énergétique-et-analyse-des-coûts","depth":2},{"title":"Comparaison de la consommation électrique","url":"#comparaison-de-la-consommation-électrique","depth":3},{"title":"Coût total de possession (TCO)","url":"#coût-total-de-possession-tco","depth":3},{"title":"Cas d'utilisation et applications","url":"#cas-dutilisation-et-applications","depth":2},{"title":"Recherche en apprentissage automatique","url":"#recherche-en-apprentissage-automatique","depth":3},{"title":"Flux de travail créatifs professionnels","url":"#flux-de-travail-créatifs-professionnels","depth":3},{"title":"Développement et tests","url":"#développement-et-tests","depth":3},{"title":"Scénarios de déploiement en entreprise","url":"#scénarios-de-déploiement-en-entreprise","depth":3},{"title":"Avenir du clustering Mac","url":"#avenir-du-clustering-mac","depth":2},{"title":"M5 et au-delà","url":"#m5-et-au-delà","depth":3},{"title":"Implications pour le Mac Pro","url":"#implications-pour-le-mac-pro","depth":3},{"title":"Considérations de sécurité et de confidentialité","url":"#considérations-de-sécurité-et-de-confidentialité","depth":2},{"title":"Pourquoi le traitement local est important","url":"#pourquoi-le-traitement-local-est-important","depth":3},{"title":"Benchmarks de performance réels","url":"#benchmarks-de-performance-réels","depth":2},{"title":"Comparaison de la vitesse d'inférence","url":"#comparaison-de-la-vitesse-dinférence","depth":3},{"title":"Analyse de latence","url":"#analyse-de-latence","depth":3},{"title":"Comparaison du coût par token","url":"#comparaison-du-coût-par-token","depth":3},{"title":"FAQ","url":"#faq","depth":2},{"title":"Combien de Mac puis-je connecter dans un cluster ?","url":"#combien-de-mac-puis-je-connecter-dans-un-cluster-","depth":3},{"title":"Ai-je besoin de Mac identiques pour le clustering ?","url":"#ai-je-besoin-de-mac-identiques-pour-le-clustering-","depth":3},{"title":"Puis-je utiliser des Mac Thunderbolt 4 dans un cluster ?","url":"#puis-je-utiliser-des-mac-thunderbolt-4-dans-un-cluster-","depth":3},{"title":"Quelle est la mémoire minimale requise pour le clustering ?","url":"#quelle-est-la-mémoire-minimale-requise-pour-le-clustering-","depth":3},{"title":"Le clustering Mac convient-il à l'entraînement ou uniquement à l'inférence ?","url":"#le-clustering-mac-convient-il-à-lentraînement-ou-uniquement-à-linférence-","depth":3},{"title":"Comment cela se compare-t-il aux instances GPU cloud ?","url":"#comment-cela-se-compare-t-il-aux-instances-gpu-cloud-","depth":3},{"title":"Puis-je faire fonctionner le cluster 24/7 ?","url":"#puis-je-faire-fonctionner-le-cluster-247-","depth":3},{"title":"Que se passe-t-il si un nœud tombe en panne ?","url":"#que-se-passe-t-il-si-un-nœud-tombe-en-panne-","depth":3},{"title":"Puis-je utiliser le cluster tout en exécutant des charges de travail IA ?","url":"#puis-je-utiliser-le-cluster-tout-en-exécutant-des-charges-de-travail-ia-","depth":3},{"title":"Conclusion","url":"#conclusion","depth":2},{"title":"Sources","url":"#sources","depth":2}],"estimatedTime":29}