Abondance
Google Daily Hub : anatomie d’un système (trop ?) ambitieux qui révèle le futur de la recherche
Damien Andell, cofondateur de 1492.vision, a réussi à décrypter l'architecture interne du Daily Hub de Google, révélant un système d'une complexité technique remarquable. Ces découvertes exclusives, qu'il m'a partagées en avant-première, s'inscrivent dans l'accélération fulgurante de Google vers l'hyperpersonnalisation que nous observons depuis quelques mois : Sources Préférées, pages profils d'éditeurs suivables dans Discover, Brand Profiles dans Merchant Center... Autant de briques qui convergent vers un seul objectif : anticiper vos besoins avant même que vous ne formuliez une requête.
Rappelez-vous : lors de nos investigations cet été, sur les 90 projets IA de Google via le menu debug de l'AI Mode, nous avions identifié "News Digest & Daily Brief" parmi la constellation d'agents spécialisés. Daily Hub est précisément la concrétisation de ces projets. Mais comme nous allons le voir, son architecture révèle une complexité technique qui explique pourquoi Google a dû suspendre temporairement ce service en septembre 2025, à peine un mois après son lancement sur les Pixel 10.
L'architecture à trois étages du Daily Hub
Pour comprendre le Daily Hub, imaginez un chef d'orchestre (Gemini) qui doit coordonner trois sections d'un orchestre symphonique, chacune jouant une partition différente mais devant s'harmoniser en temps réel. C'est exactement ce que tente de faire Google avec ce système.
Premier étage : la couche « mémoire & embeddings »Le Daily Hub s'appuie sur deux types de documents fondamentaux qui constituent sa mémoire :
Le MemoryDocument représente l'unité de contenu complète. Chaque document contient :
Le MemoryEntityDocument est plus léger et représente chaque entité extraite :
Concrètement, si Daily Hub traite un article sur "Lionel Messi rejoint l'Inter Miami", le système va créer :
Cette double structure permet au système de naviguer soit par contenu (via les documents), soit par entité (pour des recommandations thématiques).
Deuxième étage : le triptyque de la personnalisationDamien a découvert que trois systèmes parallèles alimentent la personnalisation du Daily Hub :
1. Nephesh (le système d'embeddings universels)
C'est le système d'embeddings universels de Google que Damien avait déjà documenté dans ses analyses sur Discover (pour préserver son anonymat, le nom de ce modèle a été modifié dans cet article). Dans le contexte du Daily Hub, Nephesh :
Exemple de structure de données Nephesh :
{ "football": "0.82", "cooking": "0.65", "AI": "0.91" }Le code découvert révèle le mécanisme de parsing :
CustomNepheshData.getScore() → String parseDouble() → Double → injection dans le builder d'intérêt2. AIP_TOP_ENTITIES
Ce système gère les "top entités" Knowledge Graph de l'utilisateur :
Le mécanisme fonctionne ainsi : quand vous cliquez "Follow" sur un éditeur dans Discover, son entité KG (avec son MID comme /g/11h7hztqbj) est ajoutée à votre profil via l'URL profile.google.com. Ces Google Profile Pages permettent de voir l'historique social de l'éditeur, ses derniers articles, et créent un lien persistant entre vous et cette entité. Le lendemain, cette entité apparaît dans les prompts envoyés à Gemini pour personnaliser Daily Hub.
Mais attention, cette liste n'est pas construite uniquement à partir des clics sur le bouton « Follow », mais à partir d'un mélange de signaux explicites (ce que vous choisissez de suivre) et de signaux implicites (ce que Google déduit de votre navigation et des contenus que vous consommez).
Autrement dit, le bouton « Follow » est la partie visible de l'iceberg : il fournit un signal explicite fort, mais AIP_TOP_ENTITIES orchestre au final un classement plus large, qui agrège aussi des signaux implicites.
3. TAPAS_USER_PROFILE
Le système de profil sémantique qui agrège :
C'est là que la coordination s'opère. Le système AmbientRanking orchestre l'affichage des cartes via des métadonnées structurées :
AmbientRankingMetaDataDocument contient pour chaque carte :
Prenons un exemple concret :
Carte "Score Lakers vs Celtics" :
Fenêtre globale : 18h00 → 23h00 Intervalles importants : 20h00 → 22h00 (match en cours) Confiance : 0.92 Comportement : - à 21h : score maximal (dans fenêtre + interval important + haute confiance) - à 10h : carte invisible (hors fenêtre) - à 19h : score moyen (dans fenêtre mais hors interval important)Le système supporte différents types de cartes Ambient :
Les prompts Gemini : la pensée du système révélée
Damien a réussi à capturer les prompts exacts envoyés à Gemini. C'est une mine d'or pour comprendre la logique du système.
Prompt « News Topics » : l'actualité sur 7 joursLe système utilise gemini-2.5-flash-lite avec ce prompt structuré détaillé :
Vous êtes expert pour comprendre les centres d'intérêt d'une personne et identifier les sujets d'actualité qu'elle aimerait suivre. Vous êtes aussi expert pour passer en revue les annonces et articles publiés au cours des sept derniers jours via Google Search, puis résumer les points clés.Les contraintes imposées sont nombreuses :
1. Date courante : 2025-08-31 ; toutes les sources dans les 7 derniers jours. 2. Les sujets doivent intéresser une personne ayant les intérêts suivants : [liste 100+]. 3. Chaque sujet doit se rattacher à un intérêt différent, sans répétition. 4. Exclure tout thème lié à la banque et au shopping. 5. Catégories retenues : Global News, Business News, Technology News, Popular Culture News, Sports News, Science News.Restrictions thématiques explicites :
"N'incluez aucun thème lié à la banque ou au shopping." "Ne choisissez pas d'activités virtuelles liées à la banque en ligne et aux achats en ligne."Formatage de sortie :
{ "suggestions": [ { "headline": "≤ 4 mots, sujet principal sans point", "category": "Global News | Business News | Technology News | Popular Culture News | Sports News | Science News", "article_publish_date": "date de publication la plus récente pour ce sujet", "article_title": "titre de l'article le plus récent", "rank": "1 à 5", "pitch": "≤ 6 mots, verbe à l'impératif, sans point", "image_description": "≤ 15 mots, image représentative sans personne, sans couleur, en minuscules" } ] }Prompt « Virtual Activities » : la recommandation YouTube élaboréeLe prompt complet révèle une logique complexe :
Vous identifiez des « activités virtuelles » adaptées à la persona : événements en direct, replays, compétitions, concerts en streaming, vidéos d'info et divertissement. Directives : 1) considérer les intérêts principaux par ordre d'importance 2) tenir compte de l'heure actuelle (ex. 10 h) 3) intégrer l'activité au planning du jour 4) considérer la localisation (ex. San Jose, CA) 5) tenir compte de la météo 6) exclure banque et achats en ligne 7) focaliser news et entertainment 8) prioriser du contenu neuf, frais, en directL'algorithme de sélection détaillé :
1. comprendre la persona et le caractère 2. proposer 5 activités pertinentes 3. pour chacune, lister les 3 meilleures chaînes YouTube 4. vérifier l'existence via une recherche Google 5. classer les 15 chaînes de 1 à 15 6. ne garder que les rangs [7, 4, 5, 1]Prompt « Focus Areas » : la croissance personnelleVous aidez à identifier des objectifs de développement personnel alignés avec les intérêts. Directives : 1) ne retenir que 5 sous-thèmes avec subtopicRank 1 → 29 2) pertinence avec les intérêts 3) 2 nouvelles idées par sous-thème 4) créatif et stimulant 5) exclure banque et shoppingPrompt « Distilled Context » : la synthèse contextuelleConsidérer : météo du jour, événements d'agenda, temps de trajet, heure courante (phases : matin 4-12, après-midi 12-18, soir 18-22, nuit 22-4), date ISO, principaux intérêts. Sortie « DistilledContext » ≤ 50 mots : - niveau d'occupation - créneaux courts (< 1 h) et longs (> 1 h) - ressenti probable selon le planning et la personaLe système de génération des « New Topics »
Un aspect notable découvert par Damien est le pipeline de génération de nouveaux sujets, stocké dans NewTopic.db.
Structure des données avec catégories fixes :
{ "new_topic": [ {"topic_category": "Learning","topic": "Game Development"}, {"topic_category": "Self Improvement","topic": "Mindfulness Meditation"}, {"topic_category": "Fitness & Wellness","topic": "Yoga Practice"}, {"topic_category": "News Themes","topic": "Tesla Earnings"} ] }Distribution fixe découverte :
10 topics « Learning » :
Data Science, Blockchain Technology, Machine Learning, Cloud Computing, Stock Trading, Digital Photography, Creative Writing, Culinary Arts, World History, Game Development
10 topics « Self Improvement » :
Mindfulness Meditation, Financial Planning, Relationship Building, Time Management, Stress Reduction, Public Speaking, Emotional Intelligence, Personal Branding, Habit Formation, Conflict Resolution
10 topics « Fitness & Wellness » :
Yoga Practice, Cycling Outdoors, Weight Training, Swimming Laps, Pilates Class, Hiking Trails, Rock Climbing, Boxing Fitness, Dance Cardio, Running Club
20 topics « News Themes » :
Tesla Earnings, iPhone Release, Metaverse Development, Semiconductor Shortage, Cybersecurity Threats, Beyonce Album, Grammy Awards, Marvel Movies, Netflix Series, Coachella Festival, Lakers Playoffs, NFL Draft, Champions League, World Series, Kentucky Recruiting, Bitcoin Price, Inflation Report, Fed Meeting, Google Stock, Hollywood Strike
Total : 50 topics exactement, régénérés périodiquement pour maintenir la fraîcheur.
Les bases de données locales : le cache intelligent
Le Daily Hub utilise plusieurs bases SQLite pour le stockage local :
ContentInterest.db :
NewTopic.db :
Mécanisme de fallback :
si la récupération échoue, le système génère des intérêts par défaut via un builder qui applique des scores standards.
L'intégration avec l'écosystème Google
La synchronisation des entités via Google Profile PagesLe flux de données :
Jour J - 10h : l'utilisateur clique "Follow" sur un éditeur dans Discover → redirection vers profile.google.com/cp/[ENTITY_MID] → l'entité KG est ajoutée au profil utilisateur Jour J - 18h : le batch de mise jour s'exécute → l'entité apparaît dans AIP_TOP_ENTITIES → synchronisation avec les Google Profile Pages Jour J+1 - 00h : régénération des prompts Daily Hub → l'éditeur est inclus dans la liste des top interests → pondération selon le score d'engagement Jour J+1 - 6h : ouverture du Daily Hub → les contenus liés à cette entité ont un boost de scoring → affichage prioritaire dans les cartes pertinentesLes types d'entités recommandablesLe système distingue deux catégories d'entités :
recommendationEntityTypes : RECOMMENDATION_TVM (TV/Movies) RECOMMENDATION_ENTERTAINMENT_VIDEO RECOMMENDATION_EBOOK RECOMMENDATION_AUDIOBOOK RECOMMENDATION_PERSON RECOMMENDATION_ARTICLE continuationEntityTypes : CONTINUATION_TVM CONTINUATION_ENTERTAINMENT_VIDEO CONTINUATION_RESTNT_RESERVATION CONTINUATION_TRANSPORTATION_RESERVATION CONTINUATION_SHOPPING CONTINUATION_EBOOKLe contexte temporel et spatial
Un élément important du Daily Hub est sa conscience du contexte :
Temporal awareness :
Heure actuelle injectée : "Consider the current time 4 PM" Phases de la journée : - morning (4h-12h) - afternoon (12h-18h) - evening (18h-22h) - night (22h-4h) Événements calendrier : "No scheduled events for the remainder of the day"Spatial awareness :
Localisation : "San Jose, Santa Clara County, California, United States" Météo : "No available weather forecast" (quand indisponible) Temps de trajet : "Commute time Home-Work: empty"Impact sur les recommandations :
le prompt "DistilledContext" génère un résumé de 50 mots maximum qui évalue :
Les mécanismes de scoring avancés
Le score de confiance multiniveauChaque élément dans Daily Hub reçoit trois niveaux de scoring :
Le système combine ces trois scores pour obtenir la pertinence finale de chaque élément.
Les raisons de l'échec temporaire
Problème 1 : la désynchronisation des systèmesNephesh : mise à jour en batch toutes les 24h AIP_TOP_ENTITIES : rafraîchissement en continu TAPAS : agrégation sur fenêtre glissante de 7 jours AmbientRanking : calcul en temps réelRésultat : des incohérences temporelles qui génèrent des recommandations décalées.
Problème 2 : l'explosion combinatoireAvec 50 new topics × 100+ top entities × 6 catégories d'actualité × 4 phases journalières, le système doit gérer des millions de combinaisons possibles. Les prompts Gemini deviennent trop complexes et génèrent des résultats imprévisibles.
Problème 3 : la qualité des recommandationsLes retours utilisateurs collectés sur les forums et réseaux sociaux rapportent des suggestions inadaptées :
Ces témoignages d'utilisateurs, recueillis notamment sur Reddit et Twitter, illustrent les difficultés du système à générer des recommandations pertinentes malgré la complexité de son architecture.
L'architecture complète : vue d'ensemble
Le cycle de vie d'une recommandation
Étape 1 : collecte des signaux (T-24h)
- Interactions Discover, YouTube, Search compilées - Calcul des embeddings Nephesh mis à jour - Entités KG extraites et scorées - Synchronisation avec Google Profile PagesÉtape 2 : préparation du contexte (T-1h)
- Récupération du profil TAPAS - Chargement des TOP_ENTITIES depuis AIP - Extraction du contexte temporel/spatial - Vérification des restrictions (no banking, no shopping)Étape 3 : génération Gemini (T-0)
- Construction du prompt avec les 100+ top interests - Appel à gemini-2.5-flash-lite - Parsing du JSON de réponse - Validation des contraintes de formatÉtape 4 : scoring Ambient (T+10ms)
- Application des fenêtres de validité - Calcul du score temporel - Tri par pertinence finaleÉtape 5 : affichage (T+100ms)
- Rendu des cartes selon le score - Tracking des interactions - Mise à jour des signaux pour le cycle suivantLes optimisations cachées
Le système de déduplicationdedupe_key_nephesh_content_interest dedupe_key_new_topicCela évite les doublons lors des mises à jour batch et maintient la cohérence des données.
Le cache multiniveauL1 Cache : SQLite local sur device (ContentInterest.db, NewTopic.db) L2 Cache : AppSearch pour les MemoryDocument avec index sémantique L3 Cache : serveur pour les embeddings et entités KGLes embeddings hiérarchiquesDocument complet : contentEmbeddings Chunks de texte : chunkEmbeddings Entités : embedding simple Cette hiérarchie permet des comparaisons à différentes granularités selon le besoin.Conclusion : un système trop ambitieux... pour l'instant
Le Daily Hub révèle l'ambition démesurée de Google : créer un assistant qui non seulement comprend vos intérêts, mais anticipe vos besoins selon le moment de la journée, votre localisation, votre planning, et même votre état émotionnel probable.
L'architecture à trois couches (Memory, Personnalisation, Orchestration) est techniquement impressionnante mais souffre de problèmes de coordination qui expliquent la suspension du service. Les prompts Gemini montrent une remarquable tentative de générer du contenu personnalisé, mais la qualité des outputs reste insuffisante.
Ce qui frappe dans cette analyse, c'est la convergence de tous les systèmes Google vers cette hyperpersonnalisation : les entités Knowledge Graph deviennent centrales via les Google Profile Pages, les embeddings comportementaux s'affinent, et l'IA générative tente d'orchestrer le tout.
Daily Hub n'est pas un échec : c'est un prototype public qui révèle la direction que prend Google. Quand les problèmes techniques seront résolus, nous aurons affaire à un système capable d'anticiper nos besoins avec une précision remarquable. La question n'est plus "si" mais "quand" : et au vu de l'accélération observée depuis mi 2025, la réponse pourrait être : plus tôt qu'on ne le pense.
Les découvertes de Damien Andell nous offrent une fenêtre rare sur cette transformation en cours. Le Daily Hub suspendu aujourd'hui pourrait bien être, demain, le nouveau paradigme de notre interaction avec l'information numérique.
L’article "Google Daily Hub : anatomie d’un système (trop ?) ambitieux qui révèle le futur de la recherche" a été publié sur le site Abondance.