{% extends "main.html" %}
{% block tabs %}
{{ super() }}
{% set lang = config.theme.language | default("en") %}
{% set t = {
"hero_title": {
"en": "Which LLM? Which engine?
Which combo wins on your Mac?",
"fr": "Quel LLM ? Quel moteur ?
Quelle combo gagne sur votre Mac ?",
"de": "Welches LLM? Welche Engine?
Welche Kombi gewinnt auf Ihrem Mac?",
"es": "¿Cuál LLM? ¿Cuál motor?
¿Qué combo gana en tu Mac?",
"it": "Quale LLM? Quale motore?
Quale combo vince sul tuo Mac?",
"pt": "Qual LLM? Qual motor?
Qual combo vence no seu Mac?"
},
"hero_tagline": {
"en": "Benchmark to choose. Dashboard to monitor. History to spot problems.",
"fr": "Benchmarker pour choisir. Dashboard pour monitorer. Historique pour repérer les problèmes.",
"de": "Benchmarken zum Auswählen. Dashboard zum Überwachen. Verlauf zum Erkennen von Problemen.",
"es": "Benchmark para elegir. Dashboard para monitorear. Historial para detectar problemas.",
"it": "Benchmark per scegliere. Dashboard per monitorare. Storico per individuare i problemi.",
"pt": "Benchmark para escolher. Dashboard para monitorar. Histórico para detectar problemas."
},
"cta_start": {
"en": "Get Started", "fr": "Démarrer", "de": "Loslegen",
"es": "Empezar", "it": "Inizia", "pt": "Começar"
},
"cta_github": {
"en": "View on GitHub", "fr": "Voir sur GitHub", "de": "Auf GitHub ansehen",
"es": "Ver en GitHub", "it": "Vedi su GitHub", "pt": "Ver no GitHub"
},
"pain_title": {
"en": "The Local LLM Problem", "fr": "Le problème des LLM locaux", "de": "Das Problem lokaler LLMs",
"es": "El problema de los LLM locales", "it": "Il problema dei LLM locali", "pt": "O problema dos LLMs locais"
},
"pain_subtitle": {
"en": "Sound familiar?", "fr": "Ça vous dit quelque chose ?", "de": "Kommt Ihnen das bekannt vor?",
"es": "¿Te suena?", "it": "Ti suona familiare?", "pt": "Parece familiar?"
},
"pain1_title": {
"en": "Fragmented", "fr": "Fragmenté", "de": "Fragmentiert",
"es": "Fragmentado", "it": "Frammentato", "pt": "Fragmentado"
},
"pain1_desc": {
"en": "Ollama, LM Studio, mlx-lm — each with its own CLI, formats, and metrics. No common ground.",
"fr": "Ollama, LM Studio, mlx-lm — chacun avec son CLI, ses formats et ses métriques. Aucun terrain commun.",
"de": "Ollama, LM Studio, mlx-lm — jede mit eigenem CLI, Formaten und Metriken. Kein gemeinsamer Nenner.",
"es": "Ollama, LM Studio, mlx-lm — cada uno con su CLI, formatos y métricas. Sin terreno común.",
"it": "Ollama, LM Studio, mlx-lm — ognuno con il proprio CLI, formati e metriche. Nessun terreno comune.",
"pt": "Ollama, LM Studio, mlx-lm — cada um com seu CLI, formatos e métricas. Nenhum terreno comum."
},
"pain2_title": {
"en": "Blind", "fr": "À l'aveugle", "de": "Blind",
"es": "A ciegas", "it": "Alla cieca", "pt": "Às cegas"
},
"pain2_desc": {
"en": "No real-time VRAM monitoring, no power tracking, no thermal alerts. You're flying blind.",
"fr": "Pas de monitoring VRAM temps réel, pas de suivi de puissance, pas d'alertes thermiques. Vous volez à l'aveugle.",
"de": "Kein Echtzeit-VRAM-Monitoring, kein Stromverbrauch-Tracking, keine Thermal-Warnungen. Sie fliegen blind.",
"es": "Sin monitoreo VRAM en tiempo real, sin seguimiento de consumo, sin alertas térmicas. Vuelas a ciegas.",
"it": "Nessun monitoraggio VRAM in tempo reale, nessun tracking energetico, nessun allarme termico. Voli alla cieca.",
"pt": "Sem monitoramento VRAM em tempo real, sem rastreamento de energia, sem alertas térmicos. Você voa às cegas."
},
"pain3_title": {
"en": "Manual", "fr": "Manuel", "de": "Manuell",
"es": "Manual", "it": "Manuale", "pt": "Manual"
},
"pain3_desc": {
"en": "Benchmarking means curl scripts, copy-pasting numbers, and comparing in spreadsheets.",
"fr": "Benchmarker = scripts curl, copier-coller des chiffres, comparer dans des tableurs.",
"de": "Benchmarking bedeutet curl-Skripte, Zahlen kopieren und in Tabellen vergleichen.",
"es": "Benchmarking significa scripts curl, copiar números y comparar en hojas de cálculo.",
"it": "Benchmark significa script curl, copiare numeri e confrontare nei fogli di calcolo.",
"pt": "Benchmark significa scripts curl, copiar números e comparar em planilhas."
},
"feat_title": {
"en": "Built for Apple Silicon Power Users", "fr": "Conçu pour les power users Apple Silicon",
"de": "Entwickelt für Apple Silicon Power User", "es": "Construido para power users de Apple Silicon",
"it": "Progettato per power user Apple Silicon", "pt": "Feito para power users Apple Silicon"
},
"feat_subtitle": {
"en": "Everything you need to benchmark, monitor, and optimize local inference.",
"fr": "Tout ce qu'il faut pour benchmarker, monitorer et optimiser l'inférence locale.",
"de": "Alles was Sie brauchen, um lokale Inferenz zu benchmarken, überwachen und optimieren.",
"es": "Todo lo que necesitas para benchmark, monitoreo y optimización de inferencia local.",
"it": "Tutto ciò che serve per benchmark, monitoraggio e ottimizzazione dell'inferenza locale.",
"pt": "Tudo que você precisa para benchmark, monitoramento e otimização de inferência local."
},
"feat1_t": {"en": "Head-to-Head Benchmarks", "fr": "Benchmarks face-à-face", "de": "Direkte Vergleichs-Benchmarks", "es": "Benchmarks cara a cara", "it": "Benchmark testa a testa", "pt": "Benchmarks frente a frente"},
"feat1_d": {
"en": "Same model on Ollama vs LM Studio vs mlx-lm. One command, real numbers. No vibes.",
"fr": "Même modèle sur Ollama vs LM Studio vs mlx-lm. Une commande, des vrais chiffres.",
"de": "Gleiches Modell auf Ollama vs LM Studio vs mlx-lm. Ein Befehl, echte Zahlen.",
"es": "Mismo modelo en Ollama vs LM Studio vs mlx-lm. Un comando, números reales.",
"it": "Stesso modello su Ollama vs LM Studio vs mlx-lm. Un comando, numeri reali.",
"pt": "Mesmo modelo no Ollama vs LM Studio vs mlx-lm. Um comando, números reais."
},
"feat2_t": {"en": "Energy Efficiency", "fr": "Efficacité énergétique", "de": "Energieeffizienz", "es": "Eficiencia energética", "it": "Efficienza energetica", "pt": "Eficiência energética"},
"feat2_d": {
"en": "Measure GPU power during inference. Know your tok/s per watt — nobody else does this.",
"fr": "Mesurez la puissance GPU pendant l'inférence. Connaissez vos tok/s par watt — personne d'autre ne le fait.",
"de": "GPU-Leistung während der Inferenz messen. Kennen Sie Ihre tok/s pro Watt — das macht sonst niemand.",
"es": "Mide el consumo GPU durante la inferencia. Conoce tus tok/s por vatio — nadie más lo hace.",
"it": "Misura la potenza GPU durante l'inferenza. Conosci i tuoi tok/s per watt — nessun altro lo fa.",
"pt": "Meça a potência da GPU durante a inferência. Conheça seus tok/s por watt — ninguém mais faz isso."
},
"feat3_t": {"en": "5 Engines, One CLI", "fr": "5 moteurs, un seul CLI", "de": "5 Engines, ein CLI", "es": "5 motores, un CLI", "it": "5 motori, un CLI", "pt": "5 motores, um CLI"},
"feat3_d": {
"en": "Ollama, LM Studio, mlx-lm, llama.cpp, vllm-mlx. Auto-detected, auto-configured.",
"fr": "Ollama, LM Studio, mlx-lm, llama.cpp, vllm-mlx. Détection et configuration automatiques.",
"de": "Ollama, LM Studio, mlx-lm, llama.cpp, vllm-mlx. Automatisch erkannt und konfiguriert.",
"es": "Ollama, LM Studio, mlx-lm, llama.cpp, vllm-mlx. Detección y configuración automática.",
"it": "Ollama, LM Studio, mlx-lm, llama.cpp, vllm-mlx. Rilevamento e configurazione automatici.",
"pt": "Ollama, LM Studio, mlx-lm, llama.cpp, vllm-mlx. Detecção e configuração automáticas."
},
"feat4_t": {"en": "Zero Dependencies", "fr": "Zéro dépendance", "de": "Keine Abhängigkeiten", "es": "Sin dependencias", "it": "Zero dipendenze", "pt": "Zero dependências"},
"feat4_d": {
"en": "stdlib Python only. No requests, no psutil, no rich. Installs in seconds.",
"fr": "Stdlib Python uniquement. Pas de requests, pas de psutil, pas de rich. Installation en secondes.",
"de": "Nur Python-Standardbibliothek. Kein requests, kein psutil, kein rich. Installation in Sekunden.",
"es": "Solo stdlib Python. Sin requests, sin psutil, sin rich. Se instala en segundos.",
"it": "Solo stdlib Python. Nessun requests, nessun psutil, nessun rich. Si installa in secondi.",
"pt": "Apenas stdlib Python. Sem requests, sem psutil, sem rich. Instala em segundos."
},
"feat5_t": {"en": "Thermal Intelligence", "fr": "Intelligence thermique", "de": "Thermische Intelligenz", "es": "Inteligencia térmica", "it": "Intelligenza termica", "pt": "Inteligência térmica"},
"feat5_d": {
"en": "Detects throttling during benchmarks. Alerts when your Mac overheats mid-inference.",
"fr": "Détecte le throttling pendant les benchmarks. Alerte quand votre Mac surchauffe en pleine inférence.",
"de": "Erkennt Throttling während Benchmarks. Warnt, wenn Ihr Mac während der Inferenz überhitzt.",
"es": "Detecta throttling durante benchmarks. Alerta cuando tu Mac se sobrecalienta durante la inferencia.",
"it": "Rileva il throttling durante i benchmark. Avvisa quando il Mac si surriscalda durante l'inferenza.",
"pt": "Detecta throttling durante benchmarks. Alerta quando seu Mac superaquece durante a inferência."
},
"feat6_t": {"en": "Regression Detection", "fr": "Détection de régression", "de": "Regressionserkennung", "es": "Detección de regresiones", "it": "Rilevamento regressioni", "pt": "Detecção de regressões"},
"feat6_d": {
"en": "Auto-detects performance drops after OS or engine updates. SQLite history with 90-day retention.",
"fr": "Détecte les baisses de performances après mise à jour OS ou moteur. Historique SQLite avec rétention 90 jours.",
"de": "Erkennt Leistungseinbrüche nach OS- oder Engine-Updates automatisch. SQLite-Verlauf mit 90 Tagen Aufbewahrung.",
"es": "Detecta caídas de rendimiento tras actualizaciones de OS o motor. Historial SQLite con retención de 90 días.",
"it": "Rileva automaticamente cali di prestazioni dopo aggiornamenti OS o motore. Storico SQLite con ritenzione 90 giorni.",
"pt": "Detecta quedas de desempenho após atualizações de OS ou motor. Histórico SQLite com retenção de 90 dias."
},
"feat7_t": {"en": "REST API", "fr": "API REST", "de": "REST-API", "es": "API REST", "it": "API REST", "pt": "API REST"},
"feat7_d": {
"en": "Full JSON API for automation. /api/snapshot, /api/status, /api/metrics — integrate with any stack.",
"fr": "API JSON complète pour l'automatisation. /api/snapshot, /api/status, /api/metrics — intégration avec n'importe quel stack.",
"de": "Vollständige JSON-API für Automatisierung. /api/snapshot, /api/status, /api/metrics — Integration mit jedem Stack.",
"es": "API JSON completa para automatización. /api/snapshot, /api/status, /api/metrics — integración con cualquier stack.",
"it": "API JSON completa per l'automazione. /api/snapshot, /api/status, /api/metrics — integrazione con qualsiasi stack.",
"pt": "API JSON completa para automação. /api/snapshot, /api/status, /api/metrics — integração com qualquer stack."
},
"feat8_t": {"en": "Prometheus Native", "fr": "Prometheus natif", "de": "Prometheus nativ", "es": "Prometheus nativo", "it": "Prometheus nativo", "pt": "Prometheus nativo"},
"feat8_d": {
"en": "Built-in /metrics endpoint. Plug into Grafana, Datadog, or any Prometheus-compatible tool. Zero config.",
"fr": "Endpoint /metrics intégré. Connectez Grafana, Datadog ou tout outil compatible Prometheus. Zéro config.",
"de": "Integrierter /metrics-Endpunkt. Anbindung an Grafana, Datadog oder jedes Prometheus-kompatible Tool. Null Konfiguration.",
"es": "Endpoint /metrics integrado. Conecta Grafana, Datadog o cualquier herramienta compatible con Prometheus. Sin configuración.",
"it": "Endpoint /metrics integrato. Collega Grafana, Datadog o qualsiasi strumento compatibile con Prometheus. Zero configurazione.",
"pt": "Endpoint /metrics integrado. Conecte Grafana, Datadog ou qualquer ferramenta compatível com Prometheus. Zero configuração."
},
"uc_title": {
"en": "What Will You Discover?", "fr": "Qu'allez-vous découvrir ?", "de": "Was werden Sie entdecken?",
"es": "¿Qué vas a descubrir?", "it": "Cosa scoprirai?", "pt": "O que você vai descobrir?"
},
"uc_subtitle": {
"en": "Real questions from r/LocalLLaMA, answered in one command.",
"fr": "Les vraies questions de r/LocalLLaMA, une commande suffit.",
"de": "Echte Fragen von r/LocalLLaMA, mit einem Befehl beantwortet.",
"es": "Preguntas reales de r/LocalLLaMA, respondidas con un comando.",
"it": "Domande reali da r/LocalLLaMA, risposte con un comando.",
"pt": "Perguntas reais do r/LocalLLaMA, respondidas com um comando."
},
"uc1_t": {"en": "Which engine is fastest?", "fr": "Quel moteur est le plus rapide ?", "de": "Welche Engine ist am schnellsten?", "es": "¿Cuál motor es el más rápido?", "it": "Quale motore è il più veloce?", "pt": "Qual motor é o mais rápido?"},
"uc1_d": {"en": "Head-to-head comparison — the #1 question on r/LocalLLaMA.", "fr": "Comparaison face-à-face — la question n°1 sur r/LocalLLaMA.", "de": "Direktvergleich — die Frage Nr. 1 auf r/LocalLLaMA.", "es": "Comparación directa — la pregunta n°1 en r/LocalLLaMA.", "it": "Confronto diretto — la domanda n°1 su r/LocalLLaMA.", "pt": "Comparação direta — a pergunta n°1 no r/LocalLLaMA."},
"uc2_t": {"en": "Monitor a multi-agent swarm", "fr": "Monitorer un essaim multi-agents", "de": "Multi-Agent-Schwarm überwachen", "es": "Monitorear un enjambre multi-agente", "it": "Monitorare uno sciame multi-agente", "pt": "Monitorar um enxame multi-agente"},
"uc2_d": {"en": "LLMs running 24/7 for AI agents — track VRAM, thermal, and performance.", "fr": "LLMs tournant 24/7 pour des agents IA — suivez VRAM, thermique et performances.", "de": "LLMs laufen 24/7 für KI-Agenten — VRAM, Temperatur und Leistung verfolgen.", "es": "LLMs ejecutándose 24/7 para agentes IA — monitorea VRAM, temperatura y rendimiento.", "it": "LLM in esecuzione 24/7 per agenti IA — monitora VRAM, temperatura e prestazioni.", "pt": "LLMs rodando 24/7 para agentes IA — acompanhe VRAM, temperatura e desempenho."},
"uc3_t": {"en": "Compare energy efficiency", "fr": "Comparer l'efficacité énergétique", "de": "Energieeffizienz vergleichen", "es": "Comparar eficiencia energética", "it": "Confrontare l'efficienza energetica", "pt": "Comparar eficiência energética"},
"uc3_d": {"en": "tok/s per watt between engines. Critical for 24/7 Mac Mini homelabs.", "fr": "tok/s par watt entre moteurs. Essentiel pour les homelabs Mac Mini 24/7.", "de": "tok/s pro Watt zwischen Engines. Kritisch für 24/7 Mac Mini Homelabs.", "es": "tok/s por vatio entre motores. Crítico para homelabs Mac Mini 24/7.", "it": "tok/s per watt tra motori. Critico per homelab Mac Mini 24/7.", "pt": "tok/s por watt entre motores. Crítico para homelabs Mac Mini 24/7."},
"uc4_t": {"en": "Detect regressions after updates", "fr": "Détecter les régressions après mise à jour", "de": "Regressionen nach Updates erkennen", "es": "Detectar regresiones tras actualizaciones", "it": "Rilevare regressioni dopo aggiornamenti", "pt": "Detectar regressões após atualizações"},
"uc4_d": {"en": "Did the Ollama or macOS update break your performance? Auto-detection via SQLite.", "fr": "La mise à jour Ollama ou macOS a cassé vos performances ? Détection auto via SQLite.", "de": "Hat das Ollama- oder macOS-Update Ihre Leistung verschlechtert? Automatische Erkennung via SQLite.", "es": "¿La actualización de Ollama o macOS rompió tu rendimiento? Detección automática via SQLite.", "it": "L'aggiornamento Ollama o macOS ha peggiorato le prestazioni? Rilevamento automatico via SQLite.", "pt": "A atualização do Ollama ou macOS quebrou seu desempenho? Detecção automática via SQLite."},
"uc5_t": {"en": "Test long context support", "fr": "Tester le support long contexte", "de": "Langkontext-Unterstützung testen", "es": "Probar soporte de contexto largo", "it": "Testare il supporto contesto lungo", "pt": "Testar suporte a contexto longo"},
"uc5_d": {"en": "--context-size 64k benchmarks. Does your model survive 256k context?", "fr": "Benchmarks --context-size 64k. Votre modèle survit-il à 256k de contexte ?", "de": "--context-size 64k Benchmarks. Übersteht Ihr Modell 256k Kontext?", "es": "Benchmarks --context-size 64k. Sobrevive tu modelo a 256k de contexto?", "it": "Benchmark --context-size 64k. Il tuo modello sopravvive a 256k di contesto?", "pt": "Benchmarks --context-size 64k. Seu modelo sobrevive a 256k de contexto?"},
"uc6_t": {"en": "Is my Mac thermal throttling?", "fr": "Mon Mac est-il en throttling thermique ?", "de": "Drosselt mein Mac thermisch?", "es": "¿Mi Mac tiene throttling térmico?", "it": "Il mio Mac fa throttling termico?", "pt": "Meu Mac está com throttling térmico?"},
"uc6_d": {"en": "Drift detection across benchmark runs. Unique to asiai.", "fr": "Détection de dérive thermique entre les runs. Unique à asiai.", "de": "Drift-Erkennung über Benchmark-Läufe hinweg. Einzigartig bei asiai.", "es": "Detección de deriva térmica entre ejecuciones. Único en asiai.", "it": "Rilevamento deriva termica tra le esecuzioni. Unico in asiai.", "pt": "Detecção de deriva térmica entre execuções. Único no asiai."},
"uc7_t": {"en": "Reproducible benchmarks", "fr": "Benchmarks reproductibles", "de": "Reproduzierbare Benchmarks", "es": "Benchmarks reproducibles", "it": "Benchmark riproducibili", "pt": "Benchmarks reprodutíveis"},
"uc7_d": {"en": "MLPerf/SPEC methodology. Warmup, median, greedy decoding. Share with confidence.", "fr": "Méthodologie MLPerf/SPEC. Warmup, médiane, décodage greedy. Partagez en confiance.", "de": "MLPerf/SPEC-Methodik. Warmup, Median, Greedy-Dekodierung. Mit Vertrauen teilen.", "es": "Metodología MLPerf/SPEC. Warmup, mediana, decodificación greedy. Comparte con confianza.", "it": "Metodologia MLPerf/SPEC. Warmup, mediana, decodifica greedy. Condividi con fiducia.", "pt": "Metodologia MLPerf/SPEC. Warmup, mediana, decodificação greedy. Compartilhe com confiança."},
"uc8_t": {"en": "Health check in one command", "fr": "Diagnostic en une commande", "de": "Gesundheitscheck mit einem Befehl", "es": "Diagnóstico en un comando", "it": "Diagnostica in un comando", "pt": "Diagnóstico em um comando"},
"uc8_d": {"en": "asiai doctor diagnoses system, engines, and database with fix suggestions.", "fr": "asiai doctor diagnostique système, moteurs et base de données avec suggestions de corrections.", "de": "asiai doctor diagnostiziert System, Engines und Datenbank mit Lösungsvorschlägen.", "es": "asiai doctor diagnostica sistema, motores y base de datos con sugerencias de solución.", "it": "asiai doctor diagnostica sistema, motori e database con suggerimenti di correzione.", "pt": "asiai doctor diagnostica sistema, motores e banco de dados com sugestões de correção."},
"uc9_t": {"en": "Visual dashboard", "fr": "Dashboard visuel", "de": "Visuelles Dashboard", "es": "Dashboard visual", "it": "Dashboard visuale", "pt": "Dashboard visual"},
"uc9_d": {"en": "Dark/light web dashboard with live charts, SSE progress, benchmark controls.", "fr": "Dashboard web dark/light avec graphiques en direct, progression SSE, contrôles de benchmark.", "de": "Dark/Light Web-Dashboard mit Live-Charts, SSE-Fortschritt und Benchmark-Steuerung.", "es": "Dashboard web dark/light con gráficos en vivo, progreso SSE y controles de benchmark.", "it": "Dashboard web dark/light con grafici live, avanzamento SSE e controlli benchmark.", "pt": "Dashboard web dark/light com gráficos ao vivo, progresso SSE e controles de benchmark."},
"uc10_t": {"en": "Compare LLMs head-to-head", "fr": "Comparer les LLMs face-à-face", "de": "LLMs direkt vergleichen", "es": "Comparar LLMs cara a cara", "it": "Confrontare LLM testa a testa", "pt": "Comparar LLMs frente a frente"},
"uc10_d": {"en": "Same engine, different models. Which quantization wins?", "fr": "Même moteur, différents modèles. Quelle quantification gagne ?", "de": "Gleiche Engine, verschiedene Modelle. Welche Quantisierung gewinnt?", "es": "Mismo motor, diferentes modelos. ¿Qué cuantización gana?", "it": "Stesso motore, modelli diversi. Quale quantizzazione vince?", "pt": "Mesmo motor, modelos diferentes. Qual quantização ganha?"},
"uc11_t": {"en": "Prometheus + Grafana monitoring", "fr": "Monitoring Prometheus + Grafana", "de": "Prometheus + Grafana Monitoring", "es": "Monitoreo Prometheus + Grafana", "it": "Monitoraggio Prometheus + Grafana", "pt": "Monitoramento Prometheus + Grafana"},
"uc11_d": {
"en": "Expose /metrics, scrape with Prometheus, visualize in Grafana. Production-grade observability.",
"fr": "Exposez /metrics, scrapez avec Prometheus, visualisez dans Grafana. Observabilité production-ready.",
"de": "Exponieren Sie /metrics, scrapen mit Prometheus, visualisieren in Grafana. Produktionsreife Observability.",
"es": "Expone /metrics, scrape con Prometheus, visualiza en Grafana. Observabilidad de nivel producción.",
"it": "Esponi /metrics, scrape con Prometheus, visualizza in Grafana. Osservabilità production-grade.",
"pt": "Exponha /metrics, scrape com Prometheus, visualize no Grafana. Observabilidade de nível produção."
},
"how_title": {
"en": "Up and Running in 60 Seconds", "fr": "Opérationnel en 60 secondes", "de": "In 60 Sekunden startklar",
"es": "Funcionando en 60 segundos", "it": "Operativo in 60 secondi", "pt": "Funcionando em 60 segundos"
},
"how_subtitle": {
"en": "Three commands. That's it.", "fr": "Trois commandes. C'est tout.", "de": "Drei Befehle. Das war's.",
"es": "Tres comandos. Eso es todo.", "it": "Tre comandi. Tutto qui.", "pt": "Três comandos. Só isso."
},
"step1": {"en": "Install", "fr": "Installer", "de": "Installieren", "es": "Instalar", "it": "Installare", "pt": "Instalar"},
"step2": {"en": "Detect", "fr": "Détecter", "de": "Erkennen", "es": "Detectar", "it": "Rilevare", "pt": "Detectar"},
"step3": {"en": "Benchmark", "fr": "Benchmarker", "de": "Benchmarken", "es": "Benchmark", "it": "Benchmark", "pt": "Benchmark"},
"step2_out": {"en": "3 engines found", "fr": "3 moteurs trouvés", "de": "3 Engines gefunden", "es": "3 motores encontrados", "it": "3 motori trovati", "pt": "3 motores encontrados"},
"disc_title": {
"en": "Real Discoveries", "fr": "Découvertes réelles", "de": "Echte Entdeckungen",
"es": "Descubrimientos reales", "it": "Scoperte reali", "pt": "Descobertas reais"
},
"disc_subtitle": {
"en": "Numbers from actual benchmarks on Apple Silicon.",
"fr": "Chiffres issus de vrais benchmarks sur Apple Silicon.",
"de": "Zahlen aus echten Benchmarks auf Apple Silicon.",
"es": "Números de benchmarks reales en Apple Silicon.",
"it": "Numeri da benchmark reali su Apple Silicon.",
"pt": "Números de benchmarks reais em Apple Silicon."
},
"disc1_d": {
"en": "MLX is 2.3x faster for MoE architectures (Qwen3.5-35B-A3B) on Apple Silicon.",
"fr": "MLX est 2,3x plus rapide pour les architectures MoE (Qwen3.5-35B-A3B) sur Apple Silicon.",
"de": "MLX ist 2,3x schneller für MoE-Architekturen (Qwen3.5-35B-A3B) auf Apple Silicon.",
"es": "MLX es 2,3x más rápido para arquitecturas MoE (Qwen3.5-35B-A3B) en Apple Silicon.",
"it": "MLX è 2,3x più veloce per architetture MoE (Qwen3.5-35B-A3B) su Apple Silicon.",
"pt": "MLX é 2,3x mais rápido para arquiteturas MoE (Qwen3.5-35B-A3B) em Apple Silicon."
},
"disc2_t": {
"en": "VRAM: 64k → 256k", "fr": "VRAM : 64k → 256k", "de": "VRAM: 64k → 256k",
"es": "VRAM: 64k → 256k", "it": "VRAM: 64k → 256k", "pt": "VRAM: 64k → 256k"
},
"disc2_d": {
"en": "VRAM stays constant from 64k to 256k context with DeltaNet — not documented anywhere else.",
"fr": "La VRAM reste constante de 64k à 256k de contexte avec DeltaNet — non documenté ailleurs.",
"de": "VRAM bleibt konstant von 64k bis 256k Kontext mit DeltaNet — nirgendwo anders dokumentiert.",
"es": "La VRAM se mantiene constante de 64k a 256k con DeltaNet — no documentado en ningún otro lugar.",
"it": "La VRAM resta costante da 64k a 256k di contesto con DeltaNet — non documentato altrove.",
"pt": "A VRAM permanece constante de 64k a 256k de contexto com DeltaNet — não documentado em nenhum outro lugar."
},
"disc3_t": {
"en": "Engine > Model", "fr": "Moteur > Modèle", "de": "Engine > Modell",
"es": "Motor > Modelo", "it": "Motore > Modello", "pt": "Motor > Modelo"
},
"disc3_d": {
"en": "Same model, same Mac: 30 tok/s on one engine, 71 tok/s on another. The engine matters more.",
"fr": "Même modèle, même Mac : 30 tok/s sur un moteur, 71 tok/s sur un autre. Le moteur compte plus.",
"de": "Gleiches Modell, gleicher Mac: 30 tok/s auf einer Engine, 71 tok/s auf einer anderen. Die Engine zählt mehr.",
"es": "Mismo modelo, mismo Mac: 30 tok/s en un motor, 71 tok/s en otro. El motor importa más.",
"it": "Stesso modello, stesso Mac: 30 tok/s su un motore, 71 tok/s su un altro. Il motore conta di più.",
"pt": "Mesmo modelo, mesmo Mac: 30 tok/s em um motor, 71 tok/s em outro. O motor importa mais."
},
"eng_title": {
"en": "Supported Engines", "fr": "Moteurs supportés", "de": "Unterstützte Engines",
"es": "Motores soportados", "it": "Motori supportati", "pt": "Motores suportados"
},
"eng_subtitle": {
"en": "Auto-detected, zero configuration needed.",
"fr": "Détection automatique, zéro configuration.",
"de": "Automatisch erkannt, keine Konfiguration nötig.",
"es": "Detección automática, sin configuración.",
"it": "Rilevamento automatico, zero configurazione.",
"pt": "Detecção automática, zero configuração."
},
"eng_port": {"en": "Default Port", "fr": "Port par défaut", "de": "Standard-Port", "es": "Puerto por defecto", "it": "Porta predefinita", "pt": "Porta padrão"},
"eng_native": {"en": "Native", "fr": "Native", "de": "Nativ", "es": "Nativa", "it": "Nativa", "pt": "Nativa"},
"eng_compat": {"en": "OpenAI-compatible", "fr": "Compatible OpenAI", "de": "OpenAI-kompatibel", "es": "Compatible con OpenAI", "it": "Compatibile OpenAI", "pt": "Compatível com OpenAI"},
"met_title": {
"en": "What We Measure", "fr": "Ce qu'on mesure", "de": "Was wir messen",
"es": "Qué medimos", "it": "Cosa misuriamo", "pt": "O que medimos"
},
"met_subtitle": {
"en": "8 metrics, consistent methodology, every run.",
"fr": "8 métriques, méthodologie constante, à chaque run.",
"de": "8 Metriken, konsistente Methodik, bei jedem Lauf.",
"es": "8 métricas, metodología consistente, cada ejecución.",
"it": "8 metriche, metodologia coerente, ogni esecuzione.",
"pt": "8 métricas, metodologia consistente, cada execução."
},
"m_toks": {"en": "Generation speed (tokens/sec)", "fr": "Vitesse de génération (tokens/sec)", "de": "Generierungsgeschwindigkeit (Tokens/Sek.)", "es": "Velocidad de generación (tokens/seg)", "it": "Velocità di generazione (token/sec)", "pt": "Velocidade de geração (tokens/seg)"},
"m_ttft": {"en": "Time to first token", "fr": "Temps au premier token", "de": "Zeit bis zum ersten Token", "es": "Tiempo al primer token", "it": "Tempo al primo token", "pt": "Tempo ao primeiro token"},
"m_power": {"en": "GPU power draw in watts", "fr": "Consommation GPU en watts", "de": "GPU-Leistungsaufnahme in Watt", "es": "Consumo GPU en vatios", "it": "Consumo GPU in watt", "pt": "Consumo GPU em watts"},
"m_eff": {"en": "Energy efficiency", "fr": "Efficacité énergétique", "de": "Energieeffizienz", "es": "Eficiencia energética", "it": "Efficienza energetica", "pt": "Eficiência energética"},
"m_stab": {"en": "Run-to-run variance", "fr": "Variance inter-runs", "de": "Lauf-zu-Lauf-Varianz", "es": "Varianza entre ejecuciones", "it": "Varianza tra esecuzioni", "pt": "Variância entre execuções"},
"m_vram": {"en": "GPU memory footprint", "fr": "Empreinte mémoire GPU", "de": "GPU-Speicherbedarf", "es": "Huella de memoria GPU", "it": "Footprint memoria GPU", "pt": "Pegada de memória GPU"},
"m_therm": {"en": "Throttling state", "fr": "État de throttling", "de": "Throttling-Status", "es": "Estado de throttling", "it": "Stato di throttling", "pt": "Estado de throttling"},
"m_ctx": {"en": "Long context perf scaling", "fr": "Scaling perf long contexte", "de": "Langkontext-Performance", "es": "Escalado contexto largo", "it": "Scaling contesto lungo", "pt": "Escala contexto longo"},
"cta_title": {
"en": "Get Started", "fr": "Démarrer", "de": "Loslegen",
"es": "Empezar", "it": "Inizia", "pt": "Começar"
},
"cta_subtitle": {
"en": "Install in seconds. Zero dependencies.",
"fr": "Installation en secondes. Zéro dépendance.",
"de": "Installation in Sekunden. Keine Abhängigkeiten.",
"es": "Instalación en segundos. Sin dependencias.",
"it": "Installazione in secondi. Zero dipendenze.",
"pt": "Instalação em segundos. Zero dependências."
},
"cta_doc": {"en": "Documentation", "fr": "Documentation", "de": "Dokumentation", "es": "Documentación", "it": "Documentazione", "pt": "Documentação"},
"cta_method": {"en": "Methodology", "fr": "Méthodologie", "de": "Methodik", "es": "Metodología", "it": "Metodologia", "pt": "Metodologia"}
} %}
{# Helper macro to get translation with fallback to English #}
{% macro tr(key) %}{{ t[key][lang] | default(t[key]["en"]) }}{% endmacro %}
{{ tr("hero_tagline") }}
asiai bench
asiai web
{{ tr("pain_subtitle") }}
{{ tr("pain1_desc") }}
{{ tr("pain2_desc") }}
{{ tr("pain3_desc") }}
{{ tr("feat_subtitle") }}
{{ tr("feat1_d") }}
{{ tr("feat2_d") }}
{{ tr("feat3_d") }}
{{ tr("feat4_d") }}
{{ tr("feat5_d") }}
{{ tr("feat6_d") }}
{{ tr("feat7_d") }}
{{ tr("feat8_d") }}
{{ tr("uc_subtitle") }}
{{ tr("uc1_d") }}
{{ tr("uc2_d") }}
{{ tr("uc3_d") }}
{{ tr("uc4_d") }}
{{ tr("uc5_d") }}
{{ tr("uc6_d") }}
{{ tr("uc7_d") }}
{{ tr("uc8_d") }}
{{ tr("uc9_d") }}
{{ tr("uc10_d") }}
{{ tr("uc11_d") }}
{{ tr("how_subtitle") }}
brew install asiai
$ asiai detect
✔ ollama (11434)
✔ lmstudio (1234)
✔ mlx-lm (8080)
→ {{ tr("step2_out") }}
$ asiai bench -m qwen3.5
Engine tok/s TTFT
lmstudio 71.2 42ms
ollama 54.8 61ms
mlx-lm 30.1 38ms
{{ tr("disc_subtitle") }}
{{ tr("disc1_d") }}
{{ tr("disc2_d") }}
{{ tr("disc3_d") }}
{{ tr("met_subtitle") }}
{{ tr("m_toks") }}
{{ tr("m_ttft") }}
{{ tr("m_power") }}
{{ tr("m_eff") }}
{{ tr("m_stab") }}
{{ tr("m_vram") }}
{{ tr("m_therm") }}
{{ tr("m_ctx") }}
{{ tr("cta_subtitle") }}
brew tap druide67/tap
brew install asiai
pip install asiai