decision-machine-1 Disponible
Des décisions en moins d'une seconde.
Un modèle de langage pour les décisions à l'intérieur de vos logiciels. Il lit un message, un billet ou une page et renvoie une réponse typée avec une probabilité, sans jamais rédiger une phrase.
- Latence typique
- 0,5–1,3 s
- De bout en bout, transit réseau compris.
- Prix
- 0,04 $
- Par million de jetons d'entrée. La sortie est gratuite.
- Capacités
- Huit
- Une décision typée chacune, plus une route compatible OpenAI.
- Par requête
- 20 000 car.
- Ou jusqu'à 32 textes en un seul lot.
01L'argument d'affaires
decision-machine-1
Décider cesse d'être le goulot d'étranglement.
Ce qui ralentit une entreprise, ce n'est pas le travail, c'est l'attente d'une décision. Celui-ci décide en environ une seconde, pour un centième du prix.
02Le modèle
decision-machine-1
C'est comme l'IA générative. Sans la génération.
Dans un logiciel, une réponse décide souvent d'un embranchement, d'un champ ou d'un score. L'application a besoin de la valeur, pas de la prose autour, alors decision-machine-1 s'arrête à la valeur.
- Acheminer un message de soutienAvec un LLM Une consigne, une reprise quand le JSON revient malformé, et une seule étiquette qu'il faut croire sur parole.Avec decision-machine-1 L'étiquette, sa probabilité et le score de toutes les autres étiquettes proposées, en une seule réponse typée.
- Extraire un champ d'un documentAvec un LLM Un paragraphe à analyser, ou un schéma que le modèle remanie discrètement quand il lui prend d'ajouter un champ.Avec decision-machine-1 L'objet décrit par votre schéma JSON, typé, avec les positions de caractères d'où proviennent les valeurs.
- Savoir quand il hésiteAvec un LLM Demandez un indice de confiance et vous obtenez un nombre que le modèle a rédigé, pas un nombre qu'il a mesuré.Avec decision-machine-1 Une distribution de probabilités sur les options fournies. Deux étiquettes à 0,5 chacune, c'est un cas pour un humain, et il le dit.
- Ce que coûte un appelAvec un LLM Vous payez la réflexion et la réponse, et les deux augmentent avec la question.Avec decision-machine-1 0,04 $ par million de jetons d'entrée. Le prix suit le texte envoyé, pas le nombre d'étiquettes, d'énoncés ou de questions posées à son sujet.
- Ce que prend un appelAvec un LLM Des secondes, et une file d'attente derrière dès qu'il faut la réponse dans le chemin de la requête.Avec decision-machine-1 D'une demi-seconde à une seconde et un tiers, réseau compris. Sa place est dans le chemin de la requête.
03Spécification
decision-machine-1
Tout ce qu'il est, sur une page.
Un modèle hébergé, une URL de base, un prix. Ce qu'il ne fera pas fait partie de la spécification, ce n'est pas une réserve.
Modèle
- Nom
- decision-machine-1
- Catégorie
- Modèle de décision Fait partie de milliseconds.ai, une famille de modèles de décision rapides et précis par CloudRaker.
- Tâche
- Décisions typées sur du texte Classement, notation, sélection d'extraits et remplissage de schéma. Aucune génération libre.
- Exécution
- Modèles encodeurs sur CPU Aucun GPU dans le chemin de la requête, d'où le plancher de latence.
- Disponibilité
- API hébergée
Interface
- URL de base
- https://api.milliseconds.ai
- Routes natives
- POST /v1/decision-machine-1/{capability} Une route par capacité, chacune avec son type de requête et de réponse.
- Compatible OpenAI
- POST /v1/chat/completions Extraction et appel de fonctions depuis un client OpenAI que vous avez déjà.
- Authentification
- Authorization: Bearer sk-ms-... Requis sur chaque route /v1.
Limites
- Entrée par texte
- 20 000 caractères Le texte de plus de 2 000 caractères est découpé automatiquement.
- Lot
- 32 textes par requête Envoyez `text` ou `texts`, jamais les deux. Les résultats reviennent dans l'ordre d'entrée.
- En-têtes de réponse
- x-input-chars, x-input-tokens, x-inference-ms Chaque appel indique ce qu'il a lu et la durée de l'inférence.
- Langue
- Texte non anglais, étiquettes en anglais Le modèle lit le texte de l'étiquette : gardez les étiquettes en anglais.
Prix
- Entrée
- 0,04 $ par million de jetons Le même prix sur chaque capacité et sur la route compatible OpenAI.
- Sortie
- 0 $ Distributions de probabilités, extraits et résultats de lot ne coûtent rien, quelle que soit leur taille.
Hors périmètre
- Génération
- Aucune Chaque extrait renvoyé provient de votre entrée, avec ses positions. Il ne résume ni ne réécrit.
- Raisonnement
- Une seule passe Pas de chaîne de pensée, pas de délibération en plusieurs étapes.
- Conversation
- Sans état Pas de consigne système, aucun contexte entre les appels, pas de diffusion de jetons.
04Capacités
decision-machine-1
Un modèle. Huit capacités.
Chacune pose une question différente au même texte et répond dans son propre type. Choisissez celle qui correspond à la décision que votre code doit prendre.
curl -X POST https://api.milliseconds.ai/v1/decision-machine-1/yes-no \
-H "Content-Type: application/json" \
-H "authorization: Bearer sk-ms-..." \
-d '{
"text": "I need this fixed today, my launch is tomorrow.",
"statements": [
"The customer expresses urgency.",
"The customer is asking about shipping."
]
}'{
"results": [
{ "statement": "The customer expresses urgency.", "answer": true, "probability": 1 },
{ "statement": "The customer is asking about shipping.", "answer": false, "probability": 0 }
]
}curl -X POST https://api.milliseconds.ai/v1/decision-machine-1/classify \
-H 'content-type: application/json' \
-H 'authorization: Bearer sk-ms-...' \
-d '{
"text": "I was charged twice for my subscription this month and support has not replied.",
"labels": {
"billing": "payments, invoices, charges, refunds",
"shipping": "delivery, tracking, returns of physical goods",
"account": "login, password, profile settings"
}
}'{
"label": "billing",
"probability": 0.995,
"confidence": 0.97,
"scores": {
"billing": 0.995,
"shipping": 0,
"account": 0.005
}
}curl -X POST https://api.milliseconds.ai/v1/decision-machine-1/classify-tree \
-H 'content-type: application/json' \
-H 'authorization: Bearer sk-ms-...' \
-d '{
"text": "62-year-old man with crushing substernal chest pain radiating to the left arm for 40 minutes, sweating, and ST elevation in leads II, III and aVF.",
"tree": {
"cardiovascular": {
"description": "heart and blood vessels: chest pain, arrhythmia, heart failure, hypertension",
"labels": {
"ischemic": {
"description": "reduced blood flow to the heart: angina, myocardial infarction",
"labels": {
"stemi": "ST-elevation myocardial infarction: ST elevation on the ECG",
"nstemi": "non-ST-elevation myocardial infarction: troponin rise without ST elevation",
"unstable_angina": "chest pain at rest without a troponin rise"
}
},
"arrhythmia": "abnormal heart rhythm: palpitations, atrial fibrillation, bradycardia",
"heart_failure": "fluid overload, breathlessness on exertion, swollen legs, reduced ejection fraction"
}
},
"pulmonary": {
"description": "lungs and airways: cough, breathlessness, wheeze, pneumonia",
"labels": {
"infection": "pneumonia or bronchitis: fever with a productive cough",
"obstructive": "asthma or COPD: wheeze, chronic cough, smoking history",
"embolism": "pulmonary embolism: sudden breathlessness, pleuritic pain, low oxygen"
}
},
"gastrointestinal": "digestive tract: abdominal pain, nausea, vomiting, bleeding",
"neurological": "brain and nerves: headache, seizure, weakness, numbness"
}
}'{
"path": ["cardiovascular", "arrhythmia"],
"label": "arrhythmia",
"probability": 0.739,
"confidence": 0.433,
"levels": [
{
"label": "cardiovascular",
"probability": 0.982,
"confidence": 0.93,
"scores": {
"cardiovascular": 0.982,
"pulmonary": 0.001,
"gastrointestinal": 0.001,
"neurological": 0.016
},
"input_chars": 456,
"input_tokens": 112,
"inference_ms": 585
},
{
"label": "arrhythmia",
"probability": 0.753,
"confidence": 0.466,
"scores": {
"ischemic": 0.241,
"arrhythmia": 0.753,
"heart_failure": 0.006
},
"input_chars": 401,
"input_tokens": 98,
"inference_ms": 578
}
]
}curl -X POST https://api.milliseconds.ai/v1/decision-machine-1/rate \
-H "content-type: application/json" \
-H "authorization: Bearer sk-ms-..." \
-d '{
"text": "Our production database is down and every customer request is failing right now.",
"scale": ["No impact", "Minor inconvenience", "Degraded service", "Major outage"]
}'{"score":2.5,"level":2,"label":"Degraded service","confidence":0.5,"scores":[0,0,0.5,0.5]}curl -X POST https://api.milliseconds.ai/v1/decision-machine-1/answer \
-H "content-type: application/json" \
-H "authorization: Bearer sk-ms-..." \
-d '{
"text": "Order 88214 shipped on 3 March 2026 from the Berlin warehouse. The customer, Maria Fischer, paid 249.00 EUR by credit card. Delivery is expected within five working days.",
"question": "Who is the customer?"
}'{
"question": "Who is the customer?",
"answer": "Maria Fischer",
"probability": 0.999,
"start": 77,
"end": 90
}curl -X POST https://api.milliseconds.ai/v1/decision-machine-1/extract \
-H "content-type: application/json" \
-H "authorization: Bearer sk-ms-..." \
-d '{
"text": "INVOICE #4471\nBilled to: Acme Corp\nCurrency: USD\nPaid: yes\nTotal due: $2,676.00\nPayment terms: Net 30",
"schema": {
"type": "object",
"title": "invoice",
"properties": {
"invoice_number": { "type": "string", "description": "invoice number" },
"customer": { "type": "string", "description": "the company billed" },
"total_due": { "type": "number", "description": "total amount due" },
"net_terms_days": { "type": "integer", "description": "payment terms in days" },
"paid": { "type": "boolean", "description": "is the invoice paid" },
"currency": { "enum": ["USD", "EUR", "GBP"], "description": "currency code" }
}
}
}'{
"data": {
"invoice_number": "4471",
"customer": "Acme Corp",
"total_due": 2676,
"net_terms_days": 30,
"paid": true,
"currency": "USD"
}
}curl -s -X POST https://api.milliseconds.ai/v1/decision-machine-1/entities \
-H 'content-type: application/json' \
-H 'authorization: Bearer sk-ms-...' \
-d '{
"text": "Tim Cook announced the iPhone 17 in Cupertino on 9 September.",
"types": ["person", "product", "location"]
}'{
"entities": [
{"type": "person", "text": "Tim Cook", "probability": 0.999, "start": 0, "end": 8},
{"type": "product", "text": "iPhone 17", "probability": 0.993, "start": 23, "end": 32},
{"type": "location", "text": "Cupertino", "probability": 0.999, "start": 36, "end": 45}
]
}curl -X POST https://api.milliseconds.ai/v1/decision-machine-1/verify \
-H "content-type: application/json" \
-H "authorization: Bearer sk-ms-..." \
-d '{
"text": "INVOICE #4471 - Acme Corp. Issued 2026-03-02. Net 30. Subtotal $2,500.00. Tax $176.00. Total due $2,676.00.",
"field": {
"name": "invoice_number",
"description": "The invoice number printed on the document"
},
"value": "4471"
}'{"matches":true,"probability":0.689,"found":["4471"]}05À côté de votre LLM
decision-machine-1
Gardez votre LLM. Appelez-le au besoin.
Ce n'est pas un remplacement. C'est une première passe. Exécutez d'abord la décision typée, peu coûteuse, acceptez les résultats qui franchissent votre seuil, et n'escaladez vers un grand modèle ou vers une personne que les cas ambigus.
Le seuil vous appartient, parce que le modèle vous donne les nombres pour le fixer : une probabilité, une confiance et le score de chaque option proposée. Quand deux étiquettes reviennent à 0,5 chacune, ce n'est pas un échec. C'est le modèle qui vous dit que le texte est réellement ambigu, et c'est précisément le cas qui mérite un second regard.
- Acheminez selon les nombres. Acceptez au-dessus de votre seuil, escaladez en dessous.
- Encadrez un appel au LLM, pour que le modèle coûteux ne voie que les cas qui l'exigent.
- Vérifiez ce qu'un plus grand modèle a produit par rapport à la source qui lui a été fournie.
06Tarification
decision-machine-1
De petites décisions. À grande échelle.
Évaluez chaque message entrant, vérifiez chaque champ extrait, notez chaque billet. Le prix suit le texte envoyé : la facture suit donc votre trafic, pas le nombre de questions posées.
$ 0.04
par million de jetons d'entrée. La sortie est gratuite : distributions de probabilités, extraits et résultats de lot ne coûtent rien, quelle que soit leur taille.
- Jetons de sortie
- 0 $
- Chaque capacité, et la route compatible OpenAI
- même prix
- Étiquettes, énoncés et questions posés sur un texte
- non facturés
- Un court message de soutien
- bien moins d'un cent
07Intégration
decision-machine-1
Gardez le client que vous avez déjà.
Une route compatible OpenAI accepte l'extraction par schéma JSON et l'appel de fonctions depuis n'importe quel client OpenAI. Pointez l'URL de base vers api.milliseconds.ai et indiquez le modèle. La conversation libre est rejetée avec un 400, volontairement.
curl -X POST https://api.milliseconds.ai/v1/chat/completions \
-H "content-type: application/json" \
-H "authorization: Bearer sk-ms-..." \
-d '{
"model": "decision-machine-1",
"messages": [
{
"role": "user",
"content": "Book me a table for 4 at Nobu on Friday at 8pm"
}
],
"response_format": {
"type": "json_schema",
"json_schema": {
"name": "booking",
"schema": {
"type": "object",
"properties": {
"restaurant": { "type": "string" },
"party_size": { "type": "integer" },
"day": { "type": "string" },
"time": { "type": "string" }
}
}
}
}
}'{
"id": "chatcmpl-7f3a1c2e9b8d4e6f0a1b2c3d",
"object": "chat.completion",
"created": 1789000000,
"model": "decision-machine-1",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "{\"restaurant\":\"Nobu\",\"party_size\":4,\"day\":\"Friday\",\"time\":\"8pm\"}"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 12,
"completion_tokens": 16,
"total_tokens": 28
}
}08Dans Paperwork
decision-machine-1
Une couche de décision en moins d'une seconde pour une paperasse plus intelligente.
Voici le chemin d'une requête dans l'API Paperwork. decision-machine-1 est la première chose qu'elle touche. Il décide où va le travail, et s'il faut réveiller un modèle de raisonnement.
Toutes les étapes sauf la décision existent déjà sur CloudRaker. Ce que le modèle ajoute, c'est la possibilité de placer un jugement dans le chemin de la requête sans payer un grand modèle pour le rendre.
- Intent
Une personne ou un agent demande quelque chose
Un message, un billet, un fichier téléversé, un appel d'outil venant d'un agent.
- Sub-second decision
decision-machine-1
Une réponse typée avec une probabilité, en environ une seconde. C'est l'étape qui rend déterministe le reste du parcours.
-
- Acheminer
Agent
Confier le travail au bon agent, avec l'étiquette déjà décidée.
- Déclencher
API
Appeler la capacité choisie par la décision, et rien d'autre.
- Décider
Flux de travail
Brancher un playbook, approuver, escalader ou retenir, sur un nombre.
- Acheminer
-
- Non
Directement à l'action
L'essentiel du trafic. La décision était tout le travail, et aucun grand modèle n'est réveillé.
- Oui
Appeler un modèle de raisonnement
Le reste ambigu, et lui seul, ce qui maintient la facture stable.
- Non
- Paperwork capabilities
Le travail lui-même
Ce que la décision a choisi, exécuté sur le document : une surface, un contrat, une piste d'audit.
- Output
Une tâche accomplie, pas un paragraphe
Des champs structurés, un document signé, un webhook vers le système d'enregistrement, avec la décision et sa probabilité rattachées à l'exécution.
09Questions
decision-machine-1
Des questions importantes, des réponses rapides.
Une sortie structurée signifie-t-elle que la réponse est juste ?
Non. Cela signifie que la réponse a la bonne forme et s'accompagne d'un nombre exploitable. Une réponse typée élimine les échecs d'analyse, pas l'erreur du modèle. D'où la probabilité et la distribution complète des scores à chaque appel, pour fixer un seuil et acheminer ce qui tombe en dessous.
Quand devrais-je plutôt utiliser un LLM ?
Dès que vous avez besoin de nouveau texte (un résumé, une réponse, une réécriture), d'un raisonnement en plusieurs étapes, ou de connaissances du monde absentes du texte envoyé. decision-machine-1 ne renvoie que des extraits de votre entrée et des scores sur les options que vous avez définies.
Que m'indiquent la probabilité et la confiance ?
La probabilité est le poids de l'option gagnante. La confiance décrit la netteté avec laquelle la distribution la sépare des autres. Une étiquette à 0,51 avec une confiance de 0,02 et une étiquette à 0,51 avec une confiance de 0,9 sont deux situations très différentes, et seule la seconde s'automatise sans risque.
Puis-je garder mon SDK OpenAI ?
Oui, pour l'extraction et l'appel de fonctions. Pointez l'URL de base de votre client vers https://api.milliseconds.ai et indiquez le modèle decision-machine-1. La conversation libre est rejetée avec un 400. Il n'y a pas de conversation à tenir.
Gère-t-il d'autres langues que l'anglais ?
Il lit du texte dans d'autres langues. Gardez les étiquettes, les énoncés, les questions et les descriptions de champs en anglais. C'est ce libellé que le modèle lit réellement pour noter vos options.
Quel est l'effet du traitement par lot sur le prix et la latence ?
Envoyez jusqu'à 32 textes en une requête et les résultats reviennent dans l'ordre d'entrée. La facturation porte sur les jetons d'entrée de chaque élément, et le surcoût de plusieurs questions sur un même texte est faible : deux énoncés mesurés à 0,49 s, trois questions à 0,40 s.
decision-machine-1 est l'un de trois.
La même infrastructure sous chacun. Choisissez le modèle qui correspond à l'entrée dont vous disposez.
Commencez par une vraie tâche.
Prenez un classement ou une extraction que vous envoyez déjà à un LLM. Comparez l'exactitude, la latence et le coût sur des entrées représentatives, puis gardez le gagnant.
milliseconds.ai est une catégorie de modèles de décision rapides et précis par CloudRaker, l'infrastructure de la paperasse pour l'ère agentique.