Le oui-non, le choix et le niveau suffisent-ils comme langage ?

Noul, Choice et Score sont un langage pour le code. Ce texte se sert d'une note de frais pour montrer comment les trois questions se séparent, et quand ce langage ne suffit pas.

Co-auteur : folkbench.com (Folkbench est une plateforme vérifiable d’évaluation et de sélection pour les API d’IA, les services de modèles et les sites associés. Elle s’appuie sur les informations publiées sur le service, les prix, la disponibilité, la latence et les fenêtres de preuve pour aider les utilisateurs à comparer des voies et à en choisir une.)

Dix textes dans cette série :

Savoir si ce langage suffit dépend de ce que vous voulez lui faire dire. Trois questions fermées achètent de la vitesse, et elles achètent la composabilité. Le coût, c'est que tout ce qui doit se déplier, il ne peut pas le dire. C'est un langage pour le code. Ce n'est pas pour qu'une personne le lise.

La doc et le site d'évaluation le partagent de la même façon : Noul, Choice et Score. Il n'y a pas de quatrième sorte sur la page.

Les trois sortes dans la doc

Noul ne demande que oui ou non. Il renvoie une probabilité. Dans la doc, ce nombre va de 0 à 1. Près de 1, c'est un oui assuré. Près de 0, c'est un non assuré. S'il s'arrête près de 0.5, cela veut seulement dire que les deux côtés sont également possibles. Cela ne veut pas dire « un degré moyen ». La doc nomme ce piège : demandez si quelqu'un est fort en Python, et 0.5 n'est pas un niveau moyen. Si vous voulez vraiment mesurer le niveau, passez à Score et écrivez à quoi ressemble chaque niveau. Noul n'attache pas non plus une confiance à part. La probabilité est le signal.

Choice prend un élément dans un ensemble qui a été fixé. Ce qui revient, c'est l'élément choisi, plus toute la distribution et une confiance. La confiance regarde si la distribution est aiguë. Si la probabilité est étalée, la confiance est basse, et le code sait que cette question est instable. Le plafond de cardinalité de cette question, pour Jev, est 255. Au-dessus, Jev prend deux étapes. Deux étapes, cela veut dire noter d'abord indépendamment, puis faire un choix explicite. C'est parfois un peu plus lent. La lenteur, c'est le pas en plus, pas la même question étroite qui devient soudain chère.

Score, ce sont des niveaux sur une échelle. À l'usage, c'est une échelle ordonnée de 2 à 10 niveaux. La doc dit au moins deux niveaux, et l'interface en accepte dix au plus. Un niveau doit s'écrire comme une situation à laquelle on peut faire correspondre. Écrivez seulement « un peu haut » ou « ça va », et le modèle n'a rien à faire correspondre. Le score peut se poser entre deux niveaux. Ce nombre est la somme de la position de chaque niveau multipliée par sa probabilité. Une décimale entre deux niveaux est normale. Ce n'est pas un calcul cassé. Il renvoie le score, et en même temps la distribution sur les niveaux et une confiance. Le même score peut être tout pressé sur le niveau du milieu, ou un partage entre les deux bouts. Ne regardez que le score, et vous traiterez cela comme la même chose. Lisez la distribution et la confiance ensemble.

Aucune des trois réponses ne peut quitter les cases que vous avez données d'avance. Les questions sur le même matériau sont indépendantes les unes des autres. Ajoutez-en une ou retirez-en une, et les autres questions ne changent pas. Si un jugement dépend de plusieurs choses ensemble, demandez-les séparément et laissez les poids dans le code. Plus tard, quand vous ajustez la politique, vous changez ces nombres. Vous ne réécrivez pas tout un prompt.

Une note de frais, démontée

La page d'évaluation officielle se sert d'une note de frais comme d'un jouet. À gauche, un paragraphe qu'une personne a écrit, le genre de politique qu'une équipe noterait. Chaque note doit porter un reçu. Si le reçu ne peut pas se lire, demandez à l'employé d'en donner un autre. Puis voyez si la dépense est un repas, un déplacement, ou du matériel. Si un repas dépasse $75 et que la description ne correspond pas au reçu, un responsable doit signer. Les autres notes sont traitées comme approuvées.

À droite, le même paragraphe est découpé en un flux. Chaque phrase de politique est une question, ou une règle de code. Savoir si le reçu peut se lire est un oui-non. S'il ne le peut pas, le code en demande un nouveau, et ce pas ne redemande pas au modèle. La catégorie utilise un choix unique, et les options sont repas, déplacement, ou matériel. Savoir si le montant dépasse $75, le code le compare tout seul. Seule la demi-phrase sur la description qui ne correspond pas au reçu a besoin qu'on redemande au modèle une fois. Avec le montant, cela décide si un responsable signe. Les notes qui n'ont pas besoin de la signature d'un responsable, le code les traite comme approuvées. Le modèle n'écrit pas de commentaire ici.

La direction sur la page d'évaluation tient en une phrase : la structure vaut toujours mieux qu'un grand prompt. En moyenne sur les quatre flux d'exemple, chaque modèle sur le workflow a une exactitude plus haute que toute la politique en un seul prompt, et la dépense et le temps sont plus bas. Le côté prompt remet toute la politique et laisse le modèle marcher la logique à l'intérieur d'une seule réponse. Le côté workflow donne au code tout ce qui peut s'écrire comme une règle, et ne laisse comme questions que les jugements étroits.

Le flux réel le plus stable n'est d'habitude pas une grande question. Ce sont beaucoup de questions étroites, indépendantes les unes des autres. Le comportement dépend de la probabilité, pas seulement d'une étiquette discrète. La catégorie peut avoir l'air réglée pendant que les autres options tiennent encore une part de la probabilité. Le code peut faire un pas de plus au seuil que vous avez écrit, sans jeter la distribution. Hors du flux, c'est encore une branche. La couche du milieu est de l'ingénierie de domaine. Quelle question n'est pas utilisée cette fois, et quel nombre compte comme le passage de la ligne, cela doit s'écrire pour ce métier, et se dérouler de la même façon à chaque fois. Une fois les réponses aux questions étroites dans le code, les poids et les seuils se fixent dans cette couche.

Après qu'on a renoncé à la génération de chaînes

Jev renonce à la génération de chaînes et prend en échange l'échantillonnage parallèle. Les questions d'une requête se calculent ensemble. Chaque sortie sort d'un coup. Pas token par token. Un modèle de chat doit grandir un token après l'autre, chacun regardant celui d'avant. Il n'y a pas ici de pas lettre par lettre. Ajoutez quelques questions étroites ordinaires, et le temps monte à peine avec elles. Le coût en plus, c'est surtout les tokens propres à la question.

Le prix officiel n'est pas le prix de l'interface de chat. L'entrée est à $0.042 par million de tokens. La sortie est FREE. Sans une longue suite de mots générés facturés au token, la sortie n'est pas facturée. La latence tombe à 70–500 millisecondes. Cet intervalle est pour une chaîne d'appels, pas pour l'attente dans une boîte de chat.

La valeur de retour va droit au code. La probabilité de Noul peut entrer dans un if. Le routage utilise l'étiquette de Choice. Un seuil de notation utilise la position de Score. Pas d'analyse d'abord. Si un modèle de chat rend un morceau de Markdown, vous devez d'abord séparer les mots, et une phrase de trop peut tordre le format au point que le reste ne peut plus se brancher. Les trois questions ne rendent pas ce texte, parce que Jev ne le génère pas.

Expliquer pourquoi cette note a été refusée ne tient pas dans les trois questions, et une excuse non plus, ni une négociation. Une raison écrite pour qu'une personne la lise n'est pas non plus dans la valeur de retour. Cela va à un modèle qui sait parler. Jev s'arrête au jugement.

Quand cela ne suffit pas, les cas sont concrets. Si les options sont des noms dans un monde ouvert, des noms de société et des noms de produit n'arrêtent pas d'apparaître, et l'ensemble ne peut pas se fixer d'avance. 255 est un plafond de cardinalité, pas une liste infinie. Quand une raison doit citer une phrase de la source, il n'y a pas de telle phrase à remettre. Quand un utilisateur attend une phrase humaine, l'interface veut des mots lisibles. Forcer Jev alors, c'est traiter une articulation comme une bouche.

Quand la politique peut se refermer en oui-non, choix unique et niveaux, ce qui suit est une branche, et le jugement se rassemble dans le même code. Si ce que vous voulez, c'est la vitesse, et cette sorte de composabilité, cela suffit. Ce qui doit se déplier, il ne peut pas le dire. La vitesse et la composabilité, c'est ce que cet échange achète.

Sources

Série