models

Respan: Span-01

Markdown · JSON

Respan: Span-01

Span-01 is Respan’s text behavior classifier for conversations and agent traces. Define the behaviors in plain language, and it returns three probabilities for each: present, absent and not observable, preserving uncertainty when the supplied trace cannot settle the question.

About the model

This description covers the model’s capabilities. Available in Ailoot inputs, outputs and options are listed for the selected method below.

Span-01 is Respan’s behavior-scoring model for conversations and agent traces. It reads a text interaction together with behavior definitions written in plain language and returns probabilities for each definition. The output distinguishes a behavior that is present, absent or not observable in the supplied trace. This gives an evaluation workflow a numerical signal with an explicit way to represent missing evidence, rather than a generated explanation to parse.

Define the behavior you want to observe

Behaviors are supplied by the caller. Prompt injection, unsupported claims, secrets exposure, repetitive loops, tool misuse and user frustration are possible definitions, not a fixed taxonomy built into the model. State what counts as the behavior and what does not. A narrow definition can distinguish a user asking for a human handoff from merely expressing disappointment. Another can distinguish an assistant acknowledging a problem from promising an action it cannot perform.

Use stable identifiers with the definitions, so results remain associated with the behavior being evaluated. Keep the criterion focused on something the trace can show. If the behavior requires a source document, a tool result or a later customer response, include that evidence in the text interaction where it belongs. A definition alone cannot establish a fact absent from the trace.

Prepare the preceding context and target turn

The documented input separates preceding messages in span.input from the target turn in span.output. Each message’s content is a string. Supply the actual conversation context and the turn you want scored, preserving the speaker roles and the order needed to interpret it. This is a text-scoring profile; prepared document text or a transcript can be evidence, while media from which that text was obtained is not itself the documented input.

For a support interaction, keep the customer’s request with the assistant’s proposed reply. For a tool-using agent, retain the relevant tool observation and the answer that relied on it. An illustrative grounding definition might ask whether the assistant asserts a conclusion that the supplied observation does not support. The useful result concerns the defined behavior in that span, not a complete diagnosis of the whole application.

Read three probabilities for every definition

Each result includes the behavior identifier and p_present, p_absent and p_not_observable. The three probabilities sum to approximately 1. Present estimates that the behavior occurred; absent estimates that it did not; not observable estimates that the supplied span lacks the evidence required to decide. These are separate meanings and should stay separate when results are interpreted.

For example, a span that ends with an assistant saying it will solve a problem may show a promise. It cannot yet show that the customer accepted the eventual solution if no customer reply is present. Treat that missing-evidence result as unknown rather than converting it to absent. A low probability of presence is not automatically strong evidence of absence when a significant share of the distribution is not observable.

One-pass scoring across behavior definitions

Respan describes Span-01 as a reasoning classifier trained first for general classification with RLAIF and then specialized for behavior detection. Each definition runs as a parallel branch over the same trace, and the model returns the behavior probabilities in one forward pass. Hybrid attention supports its treatment of long, complex traces. It does not generate tokens, write a narrative judgment or produce a free-form explanation of its classification.

The concept guide and scoring reference document no per-request behavior-count cap. Every definition is still part of the supplied evaluation, so keep each one clear and relevant rather than treating the absence of a count cap as evidence of unlimited input capacity. The result contains one entry per behavior in request order, identified by its id. Multiple definitions describe multiple independent observations; they are not mutually exclusive category choices that must add up to one across behaviors.

Preparing a useful evaluation artifact

Combine the returned probabilities with task-specific thresholds and review rules outside the model. The producer recommends using labeled conversations to choose those thresholds and inspecting borderline presence or high not-observable results. A support workflow can record frustration, a proposed escalation and an unsupported promise separately. An agent-quality workflow can track repeated actions or whether a response used the evidence made available to it.

Keep the text span, behavior definition, result identifier and full three-way distribution together. When the definition changes, recognize that it changes what the probability measures. Review apparent errors against the actual conversation instead of treating a numerical result as proof of an unobserved event. A useful artifact is a behavior record tied to the trace and criterion, with uncertainty retained for later inspection or an application’s next decision.

Ailoot Ultra · System One POST /v1/systemone respan/span-01

respan/span-01

Respan /respan/span-01

Overview

Span-01 is Respan’s text behavior classifier for conversations and agent traces. Define the behaviors in plain language, and it returns three probabilities for each: present, absent and not observable, preserving uncertainty when the supplied trace cannot settle the question.

Accepted inputs
Text
Results
decisions

Available in Ailoot · inputs & methods

Ailoot Ultra · System One POST /v1/systemone
Input types
text
Output types
decisions
Output format
json
FieldTypeRequirementValues & limitsDefault
FieldmodelTypestringRequirementRequiredValues & limits
respan/span-01
Default—
FieldproviderTypeschemaRequirementOptionalValues & limitsDefault—
FieldquestionsTypeobjectRequirementRequiredValues & limitsDefault—
Fieldsession_idTypestringRequirementOptionalValues & limitsDefault—
FieldstateTypeschemaRequirementRequiredValues & limitsDefault—
FieldtraceTypeschemaRequirementOptionalValues & limitsDefault—
FielduserTypestringRequirementOptionalValues & limitsDefault—
Fieldquestions.<id>.typeTypestringRequirementRequiredValues & limits
noul, choice, score
Default—
Fieldquestions.<id>.instructionsTypestring|object|arrayRequirementRequiredValues & limitsDefault—
Fieldquestions.<id>.criteriaTypeobject|arrayRequirementOptionalValues & limits
Conditions: choice/score: required; noul: optional. choice criteria is object; score is array with minItems1.
Default—
Fieldquestions.<id>.criteria.trueTypestring|object|arrayRequirementRequiredValues & limits
Applies when: noul criteria object supplied
Default—
Fieldquestions.<id>.criteria.falseTypestring|object|arrayRequirementRequiredValues & limits
Applies when: noul criteria object supplied
Default—
Input material combinations

noul · Required: state, questions.<id>.type=noul, questions.<id>.instructions

choice · Required: state, questions.<id>.type=choice, questions.<id>.instructions, criteria object

score · Required: state, questions.<id>.type=score, questions.<id>.instructions, criteria array with minItems1

Method parameters and lifecycle
ParameterContract
Parametercontent_typeContractapplication/json
ParameterrequiredContractmodel, state, questions
Parametermaterial_typesContracttext
Parameteroptional_controlsContractprovider, session_id, trace, user
Parametermultimodal_input_bindingContractnull

Lifecycle: synchronous

Send the exact model ID and retain the complete native response.

Pricing

Tariff references do not add request options. Supported parameters are listed for the selected method.

Fast mode
Not specified When fast mode is selected
Flex mode
Not specified When flex mode is selected
Maximum reasoning effort
Not specified When maximum reasoning effort uses the default adjustment

Ailoot rates

Prices by configuration

Match each charge to the conditions shown. Use one rate for each set of alternative configurations.

ConfigurationRate scheduleContext tokens, more thanContext tokens, up to and includingCharge
ConfigurationBase token ratesRate scheduleBase rateContext tokens, more than—Context tokens, up to and includingNo upper boundCharge
Input · Input tokens $0.00004 / 1K tokens
Output · Output tokens $0 / 1K tokens
Input · Cache read — / 1K tokens
Input · Cache write — / 1K tokens
Input · Cache write, 1 hour — / 1K tokens
ConfigurationRequest-length tier 1Rate schedule—Context tokens, more than0Context tokens, up to and includingNo upper boundCharge
Input · Input tokens $0.00004 / 1K tokens
Output · Output tokens $0 / 1K tokens
Input · Cache read — / 1K tokens
Input · Cache write — / 1K tokens
Input · Cache write, 1 hour — / 1K tokens

Ailoot reserves an estimated amount before a request. After the result, it settles the final charge from measured usage. Streaming settlement uses the final usage record. How reservation and settlement work →

Example requests

Ailoot Ultra · System One

Retained official request structure; documentary exampleUse your actual request material and retain the complete result
{
  "model": "respan/span-01",
  "questions": {
    "is_bug": {
      "criteria": {
        "false": "The customer is asking a question or requesting a feature.",
        "true": "The customer describes broken or unexpected product behavior."
      },
      "instructions": "Is the customer reporting a software defect?",
      "type": "noul"
    },
    "team": {
      "criteria": {
        "account": "Login, permissions, or profile issues.",
        "frontend": "Rendering, layout, or browser compatibility issues.",
        "payments": "Checkout, billing, or payment processing issues."
      },
      "instructions": "Which team should own this ticket?",
      "type": "choice"
    },
    "urgency": {
      "criteria": [
        "Can wait for the next release",
        "Should be fixed this week",
        "Blocking revenue right now"
      ],
      "instructions": "How urgent is this ticket?",
      "type": "score"
    }
  },
  "state": {
    "customer_tier": "enterprise",
    "ticket": "My checkout page shows a blank screen after I click Pay. I have tried two browsers."
  }
}
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_REQUEST_FILE:?Set your actual JSON request file}"
export AILOOT_REQUEST_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads(Path(os.environ['AILOOT_REQUEST_FILE']).read_text(encoding='utf-8'))
if not isinstance(p,dict): raise SystemExit('Request must be a JSON object')
p['model']='respan/span-01'
Path('request.json').write_text(json.dumps(p,ensure_ascii=False),encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/systemone \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path('result.json').read_text()),ensure_ascii=False,indent=2))
PY_RESULT

Receive and save results

Ailoot Ultra · System One

json

Keep all completed results

Keep every complete returned response, file and content part.

Every supplied question-ID answer with its exact type, noul/choice/score value, confidence, probabilities and legend is retained. Entire original JSON is stored and returned only after settlement.

If the original response needs checking

Preserve original operation and full/partial reply; do not replay POST.

Response fields
FieldType
FieldmodelTypestring
FieldidTypestring
FieldproviderTypestring
Fieldanswers.<id>.typeTypestring
Fieldanswers.<id>.noulTypenumber
Fieldanswers.<id>.choiceTypestring
Fieldanswers.<id>.scoreTypenumber
Fieldanswers.<id>.confidenceTypenumber
Fieldanswers.<id>.probabilitiesTypeobject
Fieldanswers.<id>.legendTypeobject
Fieldusage.input_tokensTypeinteger
Fieldusage.output_tokensTypeinteger
Fieldusage.costTypenumber
Errors and next steps
ResponseConditionNext step
Response400 · invalid_request_errorConditionInvalid required field, representation or valueNext stepCorrect the indicated request field.

Aliases

Model aliases

Ailoot Ultra respan/span-01

Method path aliases

Use the method paths shown above.

Related caller IDs

respan/span-01

FAQ · Respan: Span-01
What inputs and results are available?

POST /v1/systemone · respan/span-01: text → decisions

Which fields does the request use?

POST /v1/systemone · respan/span-01: model, provider, questions, session_id, state, trace, user

More details

Connect Ailoot to Claude Code, OpenCode, Hermes or your own app.

The company and its project portfolio

The company and its project portfolio: millions of customers; monthly sales in the billions.

Buy tokens at a discount.

Subscription discounts for regular use. Promo codes offer up to 50% off token purchases.

Subscription
Choose a discounted plan for your regular requests.
Promo code: up to 50% off
Enter your code at checkout. The price updates to reflect the current promotion.
Spending in your history
The model, tokens and amount are recorded for each request.

Choose a subscription · View model prices

Connect the API to a product you sell.

Use Ailoot in SaaS, apps and bots under its official service offer and licence agreement. Request a reseller licence for resale.

Commercial application
Add text, image, video and audio generation to paid features in your service.
Reseller licence
Send a description of your project and how you provide access. Request written terms for use and resale.
Documents on the website
The service offer, licence agreement and data processing policy are available before you connect.

Request a reseller licence · Service offer and licence agreement