FR
Contact
Menu

Recherche Poids publics

Reflex-1

Modèles de décision pour agents

Un modèle de décision de 421M paramètres pour les agents. Une seule passe, sur CPU ou GPU.

Poids affinés disponibles sur Hugging Face.

Présentation

De nombreuses décisions des agents se terminent par un choix : quelle file d'attente reçoit une demande, quel outil correspond à une tâche ou quelle action suivre. Reflex-1 note les choix fournis par votre application en une seule passe. Elle renvoie une distribution de probabilité que l'application peut utiliser pour prendre cette décision.

Cette recherche s’inscrit dans la voie des modèles de décision explorée par Jev, avec une architecture et une procédure d’entraînement supervisé distinctes. Un encodeur de contexte de 28 couches et un encodeur de candidats de six couches alimentent une tête de calcul des scores commune. Le checkpoint actuel met à jour l’ensemble des 420,778,370 paramètres.

Le téléchargement public par défaut fournit le dernier checkpoint affiné. Sa fiche présente les résultats d’évaluation et les mesures CPU actuels. Les études et enregistrements datés ci-dessous conservent l’identité de leurs checkpoints d’origine.

Modèle de décision

Version publique · environnement d’exécution 1.0.0
Utiliser
Choisissez parmi les options proposées par une application : étiquettes, itinéraires ou actions possibles.
Entrée → sortie
Énoncez, posez une question et 1 à 255 choix → une répartition des choix en une seule passe.
modèle
421M paramètres. Un encodeur de contexte de 28 couches, un encodeur de candidats de 6 couches et une tête de calcul des scores commune.
Exécuter localement
CPU ou GPU · FP32. La répétition actuelle sur CPU a mesuré un pic de mémoire de 2.17 GiB avec un ou quatre threads de calcul.
Évaluation
92.93% sur un sous-ensemble réservé de 495 cas Banking77 ; 21/30 épisodes natifs MiniWoB++. Ces familles de tâches sont représentées dans l’entraînement.
Accès
Pondérateurs publics, tokeniseurs et code d'inférence sous Apache 2.0. Texte en anglais ; temps d'exécution 1.0.0.

Le téléchargement par défaut fournit le dernier checkpoint affiné. Les études et enregistrements datés ci-dessous concernent des checkpoints antérieurs. L’application fournit les choix et contrôle l’exécution.

Résultats actuels

La version du 5 octobre a terminé 21/30 épisodes natifs de navigateur MiniWoB++ avec un contrôleur fixe. Elle a obtenu 92.93% sur 495 exemples Banking77. Il s’agit de sous-ensembles réservés de familles de tâches présentes dans l’entraînement, et non de scores sur les benchmarks complets.

Checkpoint du 5 octobre · sous-ensembles de classification réservés
TâcheRéussites / cas évaluésExactitude
AG News465 / 50093.00%
SST-5299 / 50059.80%
Emotion458 / 50091.60%
Banking77460 / 49592.93%
BoolQ171 / 20284.65%
MNLI436 / 50087.20%
RACE287 / 50057.40%
SciQ123 / 12896.09%

Sur un CPU Intel Xeon Platinum 8558, l’inférence Banking77 a pris 375.2 ms en médiane et 452.1 ms au p95 avec quatre threads de calcul. Le pic de mémoire du processus était de 2.17 GiB, chargement, préchauffage et inférence inclus.

Mesures CPU actuelles

Intel Xeon Platinum 8558 · FP32 · taille de lot 1

Un thread de calcul

Latence · plus faible signifie plus rapideMédiane/p95
  1. AG News 1209.7 / 1385.0 ms
  2. SST-5 973.6 / 1160.3 ms
  3. Emotion 956.9 / 1165.8 ms
  4. Banking77 1101.7 / 1276.9 ms
  5. BoolQ 1600.8 / 2710.6 ms

Quatre threads de calcul

Latence · plus faible signifie plus rapideMédiane/p95
  1. AG News 389.5 / 480.4 ms
  2. SST-5 320.6 / 404.2 ms
  3. Emotion 318.8 / 391.0 ms
  4. Banking77 375.2 / 452.1 ms
  5. BoolQ 486.7 / 782.2 ms

480 appels par configuration de threads sur 120 entrées, dans deux nouveaux processus. Tokenisation et inférence incluses ; chargement et préchauffage exclus. Hôte partagé, environnement d’évaluation, sans cache entre requêtes.

L’évaluation complète reste inachevée. BoolQ, RACE et le diagnostic public JevBench ont régressé par rapport au checkpoint précédent ; Dino natif a atteint l’objectif de 60 secondes dans 0/16 essais. La latence GPU actuelle n’a pas été mesurée. L’évaluation publiée précise le checkpoint, les conditions et les points restant à évaluer.

Comment ça marche

Les réponses candidates sont fournies avec chaque demande. Le modèle prend en charge 1 à 255 choix par question, dans les limites de ses jetons, et plusieurs questions peuvent partager un état compressé. Une application de support peut fournir ses propres files d'attente ; un agent peut fournir des descriptions des outils dont il dispose. Les nouveaux types de décisions nécessitent leurs propres tests de précision.

Le modèle note les options proposées ; l'application construit les arguments de l'outil et décide quelles actions sont autorisées. Le texte de l'état est plafonné à 512 jetons contextuels et peut être encore raccourci en fonction du budget de la demande. Chaque choix accepte jusqu'à 512 jetons d'option. Vérifiez state_truncated quand le contexte a peut-être été raccourci.

Reflex-1/Modèle de décision

D'une question à un choix.

  1. 01 / Fournir

    Définissez la décision.

    Votre application fournit l'état, une question et les choix sur lesquels elle peut agir. Ces choix peuvent changer à chaque demande : files d'attente d'assistance, outils disponibles ou actions autorisées.

    État + question

    Le client a été débité deux fois.
    Quel problème correspond ?

    Charge dupliquéeCarte perdueFrais inconnusRetrait d'espèces
    Contexte + questionModernBERT
    Chaque choixMiniLM
    Tête de pointage partagéeProbabilités de choix
    DemandeAutorisation → arguments → action
    Demande d'assistance illustrative. L'application définit l'ensemble de candidats.
  2. 02 / Encoder

    Représentez le contexte et les candidats.

    Un encodeur ModernBERT adapté lit l'état et la question. Un encodeur MiniLM figé représente chaque choix fourni. Plusieurs questions peuvent partager un état condensé.

    État + question

    Le client a été débité deux fois.
    Quel problème correspond ?

    Charge dupliquéeCarte perdueFrais inconnusRetrait d'espèces
    Contexte + questionModernBERT
    Chaque choixMiniLM
    Tête de pointage partagéeProbabilités de choix
    DemandeAutorisation → arguments → action
    Deux encodeurs alimentent une tête de notation partagée. Il s'agit d'un schéma de l'architecture de prévisualisation.
  3. 03 / Évaluer

    Marquez chaque choix fourni en une seule passe.

    La tête partagée combine le contexte et les représentations des candidats, puis renvoie une distribution de probabilité sur les choix fournis. Les nouveaux types de décisions nécessitent encore des tests de précision et d'étalonnage.

    État + question

    Le client a été débité deux fois.
    Quel problème correspond ?

    Charge dupliquéeCarte perdueFrais inconnusRetrait d'espèces
    Contexte + questionModernBERT
    Chaque choixMiniLM
    Tête de pointage partagéeProbabilités de choix
    DemandeAutorisation → arguments → action
    Un score par candidat fourni, normalisé selon une distribution de probabilité.
  4. 04 / Agir

    Laissez l'application exécuter la décision.

    L'application décide quelles actions sont autorisées, construit tous les arguments de l'outil et exécute l'action sélectionnée. Reflex-1 fournit les scores ; le système environnant est propriétaire de la boucle de contrôle.

    État + question

    Le client a été débité deux fois.
    Quel problème correspond ?

    Charge dupliquéeCarte perdueFrais inconnusRetrait d'espèces
    Contexte + questionModernBERT
    Chaque choixMiniLM
    Tête de pointage partagéeProbabilités de choix
    DemandeAutorisation → arguments → action
    Les limites de l'application sont importantes : la notation d'un outil ne l'exécute pas.

Aperçu de l'architecture du développement public. La demande d'assistance illustre le format d'entrée.

Exemples

Les exemples et comparaisons de qualité des décisions ci-dessous utilisent le snapshot du 3 octobre. Les mesures de vitesse et de ressources sont identifiées séparément. Chaque enregistrement conserve sa fin observée, y compris en cas d’échec.

Chromium Dino

Cet enregistrement utilise le jeu original chrome://dino de Chromium. Reflex-1 reçoit la géométrie des obstacles visibles et choisit de courir, sauter ou se baisser. Des événements clavier natifs exécutent ces choix, tandis que le jeu continue pendant l’inférence. La vidéo montre les images réelles du navigateur à vitesse normale.

Reflex-1 · Chromium original43.6 s VIDÉO SILENCIEUSE
Reflex-1 · Chromium Dino. Reflex-1 dans Chromium Dino natif, avec la géométrie visible structurée du moteur. Version du 3 octobre 2026. L’enregistrement complet d’un parcours indépendant se termine par une collision à 42.309 secondes (score 535) ; il n’atteint pas 60 secondes. Le navigateur continue pendant l’inférence. Enregistrement du navigateur à vitesse normale ; le jeu continue pendant l’inférence.

Les deux essais se sont terminés par une collision après 42.31 secondes et 30.41 secondes ; aucun n’a atteint la limite de 60 secondes. Le plus long apparaît en premier. Les parcours aléatoires sont indépendants et ne permettent pas de comparaison appariée des modèles. Le second essai est conservé intégralement ci-dessous.

Voir la deuxième tentative de Dino
Reflex-1 · Chromium original31.8 s VIDÉO SILENCIEUSE
Reflex-1 · Chromium Dino. Reflex-1 dans Chromium Dino natif, avec la géométrie visible structurée du moteur. Version du 3 octobre 2026. L’enregistrement complet d’un parcours indépendant se termine par une collision à 30.410 secondes (score 351) ; il n’atteint pas 60 secondes. Le navigateur continue pendant l’inférence. Enregistrement du navigateur à vitesse normale ; le jeu continue pendant l’inférence.

ViZDoom

Il s’agit du scénario Defend the Center de ViZDoom natif, en difficulté 5. Reflex-1 choisit ses actions à partir des limites des objets visibles, de la santé et des munitions. Ce contrôleur utilise un état structuré et ne déduit pas les actions des pixels. L’enregistrement conserve l’exemple désigné à l’avance, avec une seule vue Reflex-1.

Reflex-1 · ViZDoom natif36.5 s VIDÉO SILENCIEUSE
Reflex-1 · ViZDoom. Reflex-1 dans ViZDoom 1.3.1 natif, Defend the Center, difficulté 5. Version du 3 octobre 2026 ; graine de l’enregistrement définie à l’avance : 510001. L’épisode complet se termine par la mort à 34.514 des 45 secondes de simulation autorisées, avec 30 ennemis éliminés. Le modèle reçoit les étiquettes visibles et la santé/les munitions, pas les pixels. La lecture suit le temps de simulation, sans délai d’inférence. La lecture suit le temps de simulation, sans les délais d’inférence ; l’arrêt sur l’écran final est conservé.

Sur les 32 épisodes réservés, cette version a obtenu en moyenne 18.88 ennemis éliminés et 22.47 secondes de survie. Tous les épisodes se sont terminés avant la limite de 45 secondes. Le graphique conserve tous les modèles externes évalués et le nombre complet d’épisodes.

ViZDoom · ennemis éliminés et limites de survie

3 octobre 2026 · version de développement 70a843878214

Defend the Center · difficulté 5

Ennemis éliminés · plus élevé = meilleurMoyenne · intervalle à 95%
  1. Reflex-10/32 ont atteint 45 s · 32 morts · 0 erreurs · survie moyenne 22.47 s 18.9IC à 95% 16.6–21.2
  2. Laya0/32 ont atteint 45 s · 32 morts · 0 erreurs · survie moyenne 4.90 s 1.4IC à 95% 1.2–1.6
  3. OpenJev · DeBERTa0/32 ont atteint 45 s · 32 morts · 0 erreurs · survie moyenne 4.90 s 1.4IC à 95% 1.2–1.6
  4. Kev-0.8B0/32 ont atteint 45 s · 32 morts · 0 erreurs · survie moyenne 4.90 s 1.4IC à 95% 1.2–1.6

Ici, Reflex-1 désigne les poids de développement du 3 octobre, pas le téléchargement par défaut ni une version finale. Moteur ViZDoom original, état visible structuré en entrée et actions argmax directes ; limite de 45 secondes. Tous les résultats déclarés sont conservés. Les intervalles de moyenne rééchantillonnent les graines appariées 10,000 fois. Réserver des graines ne garantit pas des états structurés inédits. Cette comparaison porte sur l’adaptateur et l’environnement nommés, pas sur un score officiel ni une politique à entrée pixel.

Reflex-1 obtient en moyenne 18.88 ennemis éliminés et 22.47 secondes de survie, avec 0/32 épisodes menés jusqu’au terme. Laya, OpenJev et Kev obtiennent chacun 1.375 ennemi éliminé en moyenne et 0/32 épisodes terminés. Les modèles de référence sont utilisés tels que distribués ; leurs entraînements diffèrent.

Tâches dans le navigateur

Ce sont des sites WebGym synthétiques, distribués avec Laya Browser et hébergés localement. Les états ont été capturés dans Chromium réel, et le vérificateur d’origine détermine la réussite. Reflex-1 choisit les actions et les cibles ; un auxiliaire Qwen3-1.7B commun fournit les textes et les valeurs des listes déroulantes. Le résultat évalue ce système complet.

Reflex-1 · WebGym synthétique30.1 s · 4× VIDÉO SILENCIEUSE
Réservation au restaurant · tâche terminée. Version de développement du 3 octobre ; 15 actions. États capturés dans Chromium, lus à 4× le temps réel, avec le dénouement et l’arrêt final complets. Tâche synthétique locale avec un auxiliaire de texte Qwen3-1.7B commun. Cette version diffère des poids par défaut du Hub.
Reflex-1 · WebGym synthétique8.1 s · 4× VIDÉO SILENCIEUSE
Achat · objectif non atteint. Version de développement du 3 octobre ; 4 actions. États capturés dans Chromium, lus à 4× le temps réel, avec le dénouement et l’arrêt final complets. Tâche synthétique locale avec un auxiliaire de texte Qwen3-1.7B commun. Cette version diffère des poids par défaut du Hub.

La réservation au restaurant réussit ; l’achat échoue. Les deux utilisent la même graine de tâche définie à l’avance et conservent leur dénouement. La lecture à 4× le temps réel reprend les états capturés et conserve l’arrêt sur l’écran final. Ce sont des résultats de développement sur sites synthétiques, et non des scores MiniWoB++, WebArena ou sur sites réels.

Tâches terminées · WebGym synthétique

3 octobre 2026 · version de développement 70a843878214
Épisodes terminés (%) · plus élevé = meilleurValeur enregistrée
  1. Reflex-1485 appels de décision (0 erreurs) · 102 appels à l’auxiliaire (0 erreurs HTTP / 5 de contrat) 13/35
  2. Laya Browser505 appels de décision (0 erreurs) · 100 appels à l’auxiliaire (0 erreurs HTTP / 7 de contrat) 17/35
  3. Laya56 appels de décision (0 erreurs) · 12 appels à l’auxiliaire (0 erreurs HTTP / 0 de contrat) 0/35
  4. OpenJev · DeBERTa35 appels de décision (24 erreurs) · 0 appels à l’auxiliaire (0 erreurs HTTP / 0 de contrat) 0/35
  5. Kev-0.8B196 appels de décision (0 erreurs) · 82 appels à l’auxiliaire (0 erreurs HTTP / 0 de contrat) 1/35

Ici, Reflex-1 désigne les poids de développement du 3 octobre, pas le téléchargement par défaut ni une version finale. Captures Chromium réelles de sites WebGym synthétiques locaux. Tous les groupes utilisent le même exécuteur, auxiliaire Qwen3-1.7B et plafond de 40 étapes. Reflex-1 utilise autocast BF16 et 1,024 tokens d’état / 16,384 de requête ; les autres conditions figurent dans le téléchargement. Les 35 essais par groupe, échecs de requête et erreurs de l’auxiliaire sont conservés. Ce graphique est distinct des évaluations MiniWoB++, WebArena et sur sites réels.

Le contrôle final du site indique 13/35 tâches terminées pour Reflex-1 et 17/35 pour Laya Browser. Le spécialiste reste en tête ; les trois autres groupes externes figurent aussi dans le graphique.

Reflex-1 a terminé 13/35 tâches, contre 17/35 pour Laya Browser. Les dénominateurs conservent tous les essais, échecs et erreurs de requête. Un essai pilote ultérieur dans l’environnement officiel MiniWoB++ a terminé 0/30 tâches avec cette version ; les résultats synthétiques ne prouvent donc pas une réussite sur ce benchmark.

Qualité des décisions

Typed Decisions couvre l’assistance client, les factures, les alertes de sécurité et les traces d’agents. L’évaluation conserve les groupes d’états d’origine et soumet aux modèles les cinq mêmes jugements via une interface de choix commune. Reflex-1 a répondu correctement à 1,508/2,000 jugements (75.4%).

Décisions structurées

3 octobre 2026 · version de développement 70a843878214

Assistance client

Précision (%) · plus c'est haut, mieux c'estExactitude · intervalle à 95%
  1. Reflex-1383/500 corrects · 0 erreurs · 0 états tronqués 76.6%IC à 95% 72.0–80.8%
  2. Laya · native210/500 corrects · 0 erreurs · 39 états tronqués 42.0%IC à 95% 38.2–45.8%
  3. OpenJev · DeBERTa206/500 corrects · 0 erreurs · 350 états tronqués 41.2%IC à 95% 37.8–44.0%
  4. Kev-0.8B314/500 corrects · 0 erreurs · 10 états tronqués 62.8%IC à 95% 58.2–67.4%

Traitement des factures

Précision (%) · plus c'est haut, mieux c'estExactitude · intervalle à 95%
  1. Reflex-1394/500 corrects · 0 erreurs · 0 états tronqués 78.8%IC à 95% 75.0–82.4%
  2. Laya · native192/500 corrects · 0 erreurs · 0 états tronqués 38.4%IC à 95% 32.6–44.6%
  3. OpenJev · DeBERTa203/500 corrects · 0 erreurs · 500 états tronqués 40.6%IC à 95% 38.2–43.0%
  4. Kev-0.8B252/500 corrects · 0 erreurs · 0 états tronqués 50.4%IC à 95% 45.2–55.8%

Alertes de sécurité

Précision (%) · plus c'est haut, mieux c'estExactitude · intervalle à 95%
  1. Reflex-1362/500 corrects · 0 erreurs · 0 états tronqués 72.4%IC à 95% 68.4–76.2%
  2. Laya · native167/500 corrects · 0 erreurs · 0 états tronqués 33.4%IC à 95% 30.0–37.0%
  3. OpenJev · DeBERTa210/500 corrects · 0 erreurs · 275 états tronqués 42.0%IC à 95% 39.2–44.6%
  4. Kev-0.8B236/500 corrects · 0 erreurs · 0 états tronqués 47.2%IC à 95% 42.6–51.8%

Traces d’agents

Précision (%) · plus c'est haut, mieux c'estExactitude · intervalle à 95%
  1. Reflex-1369/500 corrects · 0 erreurs · 0 états tronqués 73.8%IC à 95% 69.0–78.4%
  2. Laya · native193/500 corrects · 0 erreurs · 0 états tronqués 38.6%IC à 95% 33.4–44.0%
  3. OpenJev · DeBERTa192/500 corrects · 0 erreurs · 0 états tronqués 38.4%IC à 95% 34.6–42.2%
  4. Kev-0.8B179/500 corrects · 0 erreurs · 0 états tronqués 35.8%IC à 95% 31.6–40.4%

Ici, Reflex-1 désigne les poids de développement du 3 octobre, pas le téléchargement par défaut ni une version finale. 400 états sources réservés sont développés en 2,000 jugements, soit 500 par tâche. Les intervalles rééchantillonnent les états sources en conservant les cinq têtes associées. Limites de tokens : Reflex-1: état 1,024, requête 4,096; Laya · natif: requête 512, instruction/options 192; OpenJev · DeBERTa: état 256, requête 512; Kev-0.8B: état 512, branche incluant état 2,048. Raccourcissements des instructions/options sur toute la cohorte (non additionnables entre graphiques) : Laya · natif 0/2,000. Ces nombres sont distincts des états tronqués ci-dessus.

Accord avec le choix le plus fréquent du modèle enseignant via une interface commune. Ce sont des résultats sur données adaptées, pas un score officiel de classement multi-têtes.

Sur la cohorte CLINC réservée, Reflex-1 a correctement traité 3,680/4,490 requêtes d’intention ou hors périmètre (82.0%). Pour les outils inconnus, il a obtenu 72/87, sous le meilleur résultat externe de 82/87. Les points forts et les écarts restants figurent ci-dessous.

Routage d’intentions

3 octobre 2026 · version de développement 70a843878214

Requêtes connues et inconnues

Précision (%) · plus c'est haut, mieux c'estExactitude · intervalle à 95%
  1. Reflex-13,680/4,490 corrects · 0 erreurs · 0 états tronqués · 64 rejets incorrects · 370 acceptations incorrectes 82.0%IC à 95% 80.8–83.1%
  2. Laya · native1,425/4,490 corrects · 0 erreurs · 0 états tronqués · 0 rejets incorrects · 942 acceptations incorrectes 31.7%IC à 95% 30.3–33.2%
  3. Laya · agrandi1,017/4,490 corrects · 0 erreurs · 0 états tronqués · 0 rejets incorrects · 942 acceptations incorrectes 22.7%IC à 95% 21.4–23.9%
  4. OpenJev · DeBERTa2,496/4,490 corrects · 0 erreurs · 0 états tronqués · 5 rejets incorrects · 939 acceptations incorrectes 55.6%IC à 95% 54.1–57.0%
  5. Kev-0.8B2,298/4,490 corrects · 0 erreurs · 0 états tronqués · 1 rejets incorrects · 937 acceptations incorrectes 51.2%IC à 95% 49.6–52.6%

Ici, Reflex-1 désigne les poids de développement du 3 octobre, pas le téléchargement par défaut ni une version finale. 4,490 requêtes réservées : 3,548 intentions connues et 942 hors périmètre. Laya natif et sa condition distincte à contexte élargi sont tous deux présentés. Limites de tokens : Reflex-1: état 1,024, requête 4,096; Laya · natif: requête 512, instruction/options 192; Laya · élargi: requête 2,048, instruction/options 1,536; OpenJev · DeBERTa: état 256, requête 512; Kev-0.8B: état 512, branche incluant état 2,048. Raccourcissements des instructions/options sur toute la cohorte (non additionnables entre graphiques) : Laya · natif 4,490/4,490 ; Laya · élargi 0/4,490. Ces nombres sont distincts des états tronqués ci-dessus.

Reflex-1 route correctement 3,108/3,548 requêtes d’intention connue et rejette 572/942 requêtes hors périmètre. Il rejette à tort 64 requêtes connues et accepte 370 requêtes hors périmètre. Toutes les conditions externes sont conservées.

Sélection d’outils inconnus

3 octobre 2026 · version de développement 70a843878214

Sélection d’outils

Précision (%) · plus c'est haut, mieux c'estExactitude · intervalle à 95%
  1. Reflex-172/87 corrects · 0 erreurs · 0 états tronqués 82.8%IC à 95% 74.7–90.8%
  2. Laya · native80/87 corrects · 0 erreurs · 14 états tronqués 92.0%IC à 95% 86.2–97.7%
  3. Laya · agrandi80/87 corrects · 0 erreurs · 0 états tronqués 92.0%IC à 95% 86.2–97.7%
  4. OpenJev · DeBERTa82/87 corrects · 0 erreurs · 30 états tronqués 94.3%IC à 95% 88.5–98.9%
  5. Kev-0.8B81/87 corrects · 0 erreurs · 1 états tronqués 93.1%IC à 95% 87.4–97.7%

Ici, Reflex-1 désigne les poids de développement du 3 octobre, pas le téléchargement par défaut ni une version finale. 87 requêtes réservées, avec noms d’outils et états normalisés séparés avant l’entraînement. Il s’agit d’une adaptation au choix d’outils ; génération d’arguments et exécution sont hors périmètre. Limites de tokens : Reflex-1: état 1,024, requête 4,096; Laya · natif: requête 512, instruction/options 192; Laya · élargi: requête 2,048, instruction/options 1,536; OpenJev · DeBERTa: état 256, requête 512; Kev-0.8B: état 512, branche incluant état 2,048. Raccourcissements des instructions/options sur toute la cohorte (non additionnables entre graphiques) : Laya · natif 87/87 ; Laya · élargi 65/87. Ces nombres sont distincts des états tronqués ci-dessus.

Reflex-1 choisit correctement 72/87 outils. Laya atteint 80/87 dans chaque condition déclarée, OpenJev 82/87 et Kev 81/87. L’évaluation porte sur le choix parmi les outils fournis, pas sur la génération d’arguments ni l’exécution.

Ces adaptations utilisent une interface de choix commune et des cohortes déclarées ; elles ne constituent pas des soumissions aux classements officiels. Les modèles externes ont été évalués tels que distribués, sans l’entraînement spécialisé de Reflex-1. Les figures conservent les intervalles d’incertitude, budgets de tokens et nombres de troncatures d’origine.

Vitesse et ressources

Les mesures de cette section concernent le checkpoint du 2 octobre. Celles du checkpoint actuel figurent dans la fiche de modèle liée ci-dessus.

Latence des requêtes H200

Nous avons rejoué 120 requêtes distinctes deux fois par modèle sur une carte NVIDIA H200 partagée. Ils provenaient de cinq environnements de jeu et de navigateur. Chaque modèle a reçu les mêmes entrées, avec une demande en vol à la fois.

Latence des requêtes H200

120 entrées · deux répétitions · une demande en vol
Millisecondes · plus c'est plus rapideMédiane/p95
  1. Reflex-1FP32 27.5 / 30.5
  2. OpenJevFP32 32.0 / 33.8
  3. Laya (native)BF16 27.1 / 142.0
  4. Laya (replay du FP32)FP32 40.2 / 44.4

Point : médiane. Fin de ligne : p95. Inclut la tokenisation, la notation et le bouclage HTTP ; exclut le chargement et le préchauffage.

120 entrées identiques, chacune rejouée deux fois, avec une requête en cours. La synchronisation inclut le formatage, la tokenisation, l'inférence et le bouclage HTTP. Les intervalles indiquent une valeur médiane allant jusqu'à p95. La précision varie selon l'étiquette ; le replay de la FP32 Laya a changé deux décisions.
Tableau de mesure complet et protocole
H200 · requêtes identiques · latence en millisecondes · plus c'est bas, mieux c'est
modèleRessources de calculMédianep95
reflex-1FP3227.530.5
OpenJevFP3232.033.8
Laya (native)BF1627.1142.0
Laya (replay du FP32)FP3240.244.4

Laya native utilise la diffusion automatique du BF16 ; un replay FP32 séparé est également inclus. OpenJev est le point de contrôle public de DeBerta, pas Jev hébergé. Ces chronométrages des demandes ne mesurent pas le succès des tâches ni le débit simultané. Enregistré le 2026-09-29.

La médiane de reflex-1 était de 27.5 ms et son p95 de 30.5 ms. Il était plus rapide qu’OpenJev en FP32 et que Laya lors de la mesure séparée en FP32. La configuration native de Laya utilisait autocast BF16 et obtenait une médiane légèrement inférieure. La machine partagée et la taille de l’échantillon limitent les conclusions possibles lorsque les résultats sont proches.

Le minuteur inclut la tokenisation, la notation des modèles, la normalisation des sorties et le HTTP en boucle. Cela exclut le chargement et trois demandes de préchauffage. Les caches de réponses et d' options ont été désactivés. Nous n'avons pas mesuré le débit de service simultané au cours de cette période. OpenJev est ici le point de contrôle public de DeBerta ; il ne s'agit pas du service Jev hébergé.

LATENCE DU CPU M4

Le test du CPU a utilisé un MacBook Air M4, FP32 et un lot de taille 1. Chaque modèle utilisait un thread intra-op PyTorch, un thread inter-op et une limite de thread BLAS d'un. Chaque tâche comportait 24 cas distincts, chacun répété deux fois. L'ordre des modèles était équilibré sur huit blocs d'exécution.

Latence des demandes du CPU M4

FP32 · premier lot · fils PyTorch 1/1 · Limite BLAS 1

Banking77

Millisecondes · échelle logarithmique · plus faible est plus rapideMédiane/p95
  1. Reflex-1 345.2 / 692.0
  2. OpenJev 1,332.6 / 2,857.1
  3. Laya 912.4 / 2,649.9
  4. Kev 4,283.4 / 11,073.7

Emotion

Millisecondes · échelle logarithmique · plus faible est plus rapideMédiane/p95
  1. Reflex-1 256.2 / 610.4
  2. OpenJev 381.8 / 1,029.5
  3. Laya 240.1 / 427.7
  4. Kev 1,121.9 / 4,422.3

AG News

Millisecondes · échelle logarithmique · plus faible est plus rapideMédiane/p95
  1. Reflex-1 321.7 / 578.7
  2. OpenJev 424.5 / 934.0
  3. Laya 324.1 / 760.5
  4. Kev 1,356.5 / 4,997.2

SST-5

Millisecondes · échelle logarithmique · plus faible est plus rapideMédiane/p95
  1. Reflex-1 299.1 / 631.0
  2. OpenJev 360.5 / 894.5
  3. Laya 250.7 / 548.5
  4. Kev 902.2 / 4,480.5

BoolQ

Millisecondes · échelle logarithmique · plus faible est plus rapideMédiane/p95
  1. Reflex-1 463.4 / 1,329.1
  2. OpenJev 451.9 / 1,398.9
  3. Laya 440.4 / 1,587.9
  4. Kev 1,775.3 / 6,548.0

Point : médiane. Extrémité du segment : p95. Toutes les tâches utilisent la même échelle logarithmique. Mémoire : RSS maximal du processus de 1.50 GiB lors d’une mesure séparée de Reflex-1 ; la mémoire de chaque modèle n’a pas été mesurée dans cette comparaison.

FP32, taille de lot un ; PyTorch utilise 1/1 threads intra-op/inter-op et BLAS est limité à 1 thread. Étude de latence initiale : 24 entrées par tâche, chacune répétée deux fois. Une mesure séparée de 240 requêtes Reflex-1 a relevé un RSS maximal du processus de 1.50 GiB, chargement, préchauffage et inférence compris. La comparaison initiale ne relevait pas la mémoire par modèle. Les segments vont de la médiane au p95. Laya tronque les options de Banking77 ; Kev utilise les noyaux de référence CPU avec des adaptateurs non fusionnés.
Tableau de mesure complet et protocole
CPU M4 · FP32 · PyTorch intra-op/inter-op 1/1 · Limite BLAS 1 · médiane/p95 en millisecondes
Tâchereflex-1OpenJevLayaKev
Banking77345.2/ 692.01332.6/ 2857.1912.4/ 2649.94283.4/ 11073.7
Emotion256.2/ 610.4381.8/ 1029.5240.1/ 427.71121.9/ 4422.3
AG News321.7/ 578.7424.5/ 934.0324.1/ 760.51356.5/ 4997.2
SST-5299.1/ 631.0360.5/ 894.5250.7/ 548.5902.2/ 4480.5
BoolQ463.4/ 1329.1451.9/ 1398.9440.4/ 1587.91775.3/ 6548.0

Budgets d'exécution natifs. Laya tronque les options de Banking77 à son budget d'origine ; les résultats du budget élargi sont présentés séparément. Kev utilise ses noyaux de référence CPU et ses adaptateurs non fusionnés. Enregistré le 2026-09-24.

Mémoire mesurée par Reflex-1 : mémoire résidente maximale du processus (RSS) de 1.50 GiB. Rediffusion séparée des ressources Reflex-1 des 120 entrées d'origine, chacune ayant été notée deux fois. Le mémoire résidente maximale de l’ensemble du processus (RSS) comprend les importations, le chargement du modèle, le préchauffage et l'inférence. La comparaison de latence initiale entre quatre modèles n'enregistrait pas la mémoire par modèle. Enregistré le 2026-10-02 UTC. Mesures des ressources et protocole.

Banking77 demande de choisir parmi 77 intentions. La médiane de reflex-1 était de 345.2 ms, contre 1,332.6 ms pour OpenJev lors de la même mesure. Sur les cinq tâches, les médianes de reflex-1 allaient de 256.2 à 463.4 ms.

Laya a été plus rapide sur plusieurs tâches à choix restreint. Son budget d'origine Banking77 a tronqué les options, de sorte que son calendrier couvre un ensemble réduit de candidats. Kev a utilisé des noyaux de référence CPU avec des adaptateurs non fusionnés. L'activité en arrière-plan des ordinateurs portables a contribué à l'augmentation des latences de queue.

Ce test mesure le temps entre la construction de la requête et la sortie normalisée, avec le modèle déjà chargé. Les tests CPU et GPU utilisent des requêtes différentes ; leurs durées ne permettent donc pas de calculer directement le gain de vitesse du GPU par rapport au CPU.

Précision sur les tâches connues

reflex-1 a obtenu 95.0% sur Banking77 et 92.2% sur Emotion. Il a dominé les points de contrôle comparés sur les deux points, a égalé le meilleur score sur AG News et SST-5, et a obtenu un score légèrement inférieur à OpenJev sur BoolQ.

Exactitude des décisions

500 exemples par tâche · diagnostics de développement

Banking77

Précision (%) · plus c'est haut, mieux c'estValeur enregistrée
  1. Reflex-1 95.0%
  2. OpenJev 90.6%
  3. Laya · native 44.4%
  4. Laya · agrandi 55.4%
  5. Kev 82.4%

Emotion

Précision (%) · plus c'est haut, mieux c'estValeur enregistrée
  1. Reflex-1 92.2%
  2. OpenJev 53.0%
  3. Laya · native 57.6%
  4. Laya · agrandi 57.6%
  5. Kev 54.4%

AG News

Précision (%) · plus c'est haut, mieux c'estValeur enregistrée
  1. Reflex-1 91.2%
  2. OpenJev 77.4%
  3. Laya · native 91.2%
  4. Laya · agrandi 91.2%
  5. Kev 87.2%

SST-5

Précision (%) · plus c'est haut, mieux c'estValeur enregistrée
  1. Reflex-1 59.8%
  2. OpenJev 59.8%
  3. Laya · native 51.0%
  4. Laya · agrandi 51.0%
  5. Kev 55.2%

BoolQ

Précision (%) · plus c'est haut, mieux c'estValeur enregistrée
  1. Reflex-1 86.0%
  2. OpenJev 86.8%
  3. Laya · native 71.2%
  4. Laya · agrandi 71.2%
  5. Kev 82.6%

Les familles de tâches ont été incluses dans la entraînement et ces sous-ensembles ont été inspectés pendant le développement. L'exposition à l'entraînement varie selon les modèles. Le budget natif de Laya tronque les options de Banking77.

Chaque modèle a reçu les mêmes 500 exemples par tâche. Ces familles de tâches ont été incluses dans l'entraînement Reflex, et les sous-ensembles ont été inspectés pendant le développement. L'exposition à l'entraînement varie selon les modèles. Laya, société à budget élargi, conserve les 77 labels Banking77.
Tableau de mesure complet et protocole
Précision (%) · 500 exemples par tâche · diagnostics de développement
Tâchereflex-1Laya, nativeLaya, agrandieOpenJevKev
Banking7795.044.455.490.682.4
Emotion92.257.657.653.054.4
AG News91.291.291.277.487.2
SST-559.851.051.059.855.2
BoolQ86.071.271.286.882.6

Le SDK Laya 0.3.20 est présenté avec des budgets de jetons natifs et étendus. Le budget natif de Banking77 tronque le jeu d'options ; le budget étendu conserve les 77 libellés. Il s'agit de diagnostics de développement et non d'évaluations indépendantes des transferts.

Il s'agissait de 500 exemples de diagnostics par tâche. Les familles de tâches ont été incluses dans la entraînement, et nous avions inspecté les sous-ensembles pendant le développement. Les budgets de entraînement et l'exposition antérieure diffèrent selon les modèles. La précision a été mesurée séparément de la latence, sur d'autres exemples.

Le point de contrôle général n'a effectué aucun des 80 essais avec notre contrôleur de navigateur personnalisé. Le résultat révèle un écart important entre la classification des tâches familières et le contrôle autonome. Le transfert vers des questions inconnues et l'étalonnage des probabilités restent des problèmes d'évaluation ouverts.

Formation et stockage

Le modèle publié comporte 420,778,370 paramètres après la fusion des adaptateurs. ModernBERT code l'état et les questions ; un encodeur MiniLM figé représente les choix. La tête partagée combine leurs représentations.

reflex-1 · taille des portions et budget d'adaptation
RessourceConfiguration enregistrée
Paramètres de service420,778,370
Paramètres entraînés à l'adaptation9,036,290
Matériel d'adaptation1 × NVIDIA H200
Course principale6,000 mises à jour · 75 min 7 sec
Modèle FP32 extrait sur disque≈ 1.69 GB
Mémoire de processus du CPU mesuréeRSS de pointe de 1.50 GiB · rediffusion séparée de 240 requêtes
Fils de calcul du CPUPyTorch intra-opération/inter-opération 1/1 · BLAS limite 1

La principale série d'adaptation a mis à jour 9,036,290 paramètres en 6,000 étapes, en utilisant 290,657 enregistrements provenant de huit familles de tâches. Il a fallu 75 minutes et 7 secondes sur un H200, y compris les écrans de développement et les sauvegardes aux points de contrôle. La entraînement préalable au modèle de base, la préparation des données, l'ajustement des projections et les expériences antérieures constituent des coûts supplémentaires.

Le modèle FP32 extrait occupe environ 1.69 GB sur disque. La mesure séparée des ressources CPU a relevé un RSS maximal du processus de 1.50 GiB, comprenant les allocations du framework, les tokeniseurs, le chargement, le préchauffage et l’inférence. L’utilisation de mémoire GPU n’a pas encore été mesurée.

Accès au modèle

La version publique de Hugging Face contient les poids FP32 de 1.68 GB, à la fois des tokeniseurs, et une implémentation autonome de Transformers sous Apache 2.0. Aucun compte, clé API ou accès à GitHub n'est requis. Utilisez Python 3.12 :

python -m pip install "torch==2.8.0" "transformers==5.17.0" "safetensors==0.8.0"
import torch
from transformers import AutoModel

torch.set_num_threads(1)
model = AutoModel.from_pretrained("gai-labs/reflex-1", trust_remote_code=True)

decision = model.predict(
    state="The customer was charged twice for one card payment.",
    question="Choose the matching issue.",
    options=["duplicate charge", "lost card", "unknown fee", "cash withdrawal"],
)[0]
print(decision.choice)

Chargez le modèle une fois et réutilisez-le. La fiche modèle documente l'inférence par lots, les questions multiples, le chargement hors ligne et les hachages de publication. Le référentiel de développement reste privé ; le package public inclut le code nécessaire à l'inférence.

L'entraînement initial utilisait RACE et SciQ, dont les conditions comportent des restrictions non commerciales. La fiche du modèle documente leur usage et les révisions fixes. L'examen de provenance ne détermine pas l'application de ces conditions aux poids entraînés.

Enregistrements et reproductibilité

Utilisez la révision fixe du Hub du 3 octobre pour reproduire ces enregistrements. Les graphiques conservent les résultats mesurés, y compris les pertes de capacités antérieures. Chaque vidéo précise l'environnement, le format d'entrée et la vitesse de lecture.

La version actuelle dispose d’une évaluation distincte accessible depuis sa fiche de modèle. Ces enregistrements et études conservent leurs résultats d’origine.

Également en recherche

  • Samsara-VLA

    Deux politiques robotiques compactes pour la manipulation guidée par le langage. Regardez-les saisir, placer, ouvrir et accomplir des tâches en plusieurs étapes.

  • VIO-lens-2

    Recherche en cours.

Correspondance

Écrivez-nous

Contactez-nous au sujet des évaluations, de l'accès à des modèles ou d'une collaboration en matière de recherche.

research@goodailabs.com