Présentation

DigitalOcean a enrichi son Inference Router d’un mécanisme de routage sensible au cache. Cette mise à jour permet au service de prendre en compte le coût de la rupture d’un cache de prompt chaud lorsqu’il décide de changer de modèle au cours d’une session. Le changement s’accompagne de deux nouveaux contrôles : un en‑tête d’affinité de modèle qui lie les requêtes à une session, et un paramètre de budget de routage qui plafonne le coût supplémentaire engendré par le basculement.

Fonctionnement du routage sensible au cache

Le router conserve un cache de prompts pré‑chargés pour chaque modèle afin de réduire la latence d’inférence. Lorsqu’une requête arrive, le système calcule d’abord le gain de performance d’utiliser le modèle déjà en cache. Si un autre modèle offrirait une meilleure pertinence, le router compare le gain attendu à la penalité de rupture de cache : le temps et les ressources nécessaires pour charger le nouveau modèle et réinitialiser le cache. Le paramètre routing‑budget définit la marge maximale autorisée pour ce basculement, exprimée en unités de coût (par ex. millisecondes ou crédits). L’en‑tête d’affinité (model‑affinity) garantit que toutes les requêtes d’une même session restent associées au même modèle tant que le budget n’est pas dépassé, évitant ainsi des oscillations fréquentes entre modèles.

Impact sur les coûts et les performances

En limitant les changements de modèle, la fonctionnalité réduit le nombre de chargements de poids de modèle, qui sont les opérations les plus coûteuses en GPU/CPU et en bande passante. Selon les tests internes de DigitalOcean, le budget de routage moyen de 5 % de coût supplémentaire permet de diminuer la latence moyenne de 12 % tout en conservant une précision comparable. Le contrôle d’affinité évite également les « cold starts » qui, dans les environnements multi‑tenant, peuvent entraîner des pics de consommation d’énergie et des facturations imprévues.

Limites et considérations

Le mécanisme repose sur une estimation précise du coût de rupture de cache, qui dépend du type de matériel (GPU, CPU) et de la taille du modèle. Dans des environnements où les modèles sont très hétérogènes, la métrique de coût peut être sous‑ou surestimée, conduisant à des décisions de routage sous‑optimales. De plus, le paramètre de budget doit être ajusté manuellement ; un budget trop restrictif peut empêcher l’utilisation de modèles plus performants, tandis qu’un budget trop laxiste annule les bénéfices de la mise en cache. Enfin, la visibilité sur les métriques de cache reste limitée aux outils de monitoring fournis par DigitalOcean, ce qui complique le diagnostic en cas de dégradation inattendue.