Source: https://ailoot.ai/models/en/respan-span-01-lite/
Canonical: https://ailoot.ai/models/en/respan-span-01-lite/
Language: en

# Respan: Span-01 Lite

[Markdown](https://ailoot.ai/models/en/respan-span-01-lite/index.md) · [JSON](https://ailoot.ai/models/en/respan-span-01-lite/facts.json)

## [Respan: Span-01 Lite](https://ailoot.ai/models/en/respan-span-01-lite/)

Span-01 Lite is Respan’s separately named behavior-scoring profile for text conversations and agent traces. It uses caller-defined behaviors and returns present, absent and not-observable probabilities for each, with the same documented scoring workflow as Span-01.

- [**Ailoot Ultra · System One** `POST /v1/systemone` `respan/span-01-lite`](https://ailoot.ai/models/en/respan-span-01-lite/#method-0)

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 Lite is a separately named model profile in Respan’s Span-01 behavior-scoring family. The producer’s quickstart and model table identify Lite as one of the two profiles using the same scoring workflow. It receives a text interaction and plain-language behavior definitions, then returns three probabilities for every definition: present, absent and not observable. The profile’s useful output is a behavior record with explicit uncertainty, not a written answer to the conversation.

#### Choose the observation and its boundary

Define the behavior in the words that match your task. For a handoff check, specify whether it means the user explicitly asks for a person, the assistant says a handoff is needed, or either condition. If mere disappointment should not count, say so. For an apology check, define what wording constitutes an apology rather than relying on an unclear label. Each definition has an identifier that the scorer returns with its probabilities.

The behavior set belongs to the caller. Examples such as frustration, unsupported promises, tool misuse or repetitive agent actions are definitions to supply, not a fixed list of native categories. Keep each definition observable in the supplied interaction. A short span may settle whether the assistant apologized while lacking evidence that an external problem was actually resolved.

#### Prepare the conversation span

Respan’s documented input places preceding messages in span.input and the turn being evaluated in span.output. Message content is a string. Preserve the context needed to understand the turn, including speaker roles, the relevant user request and any textual evidence the assistant used. For a quality check, provide the actual turn rather than a paraphrase that removes the behavior being assessed.

An illustrative review can take a user message describing repeated trouble and an assistant reply offering to investigate. Define user frustration and an assistant promise as separate observations. If a tool result matters to judging whether a claim was grounded, retain that result’s relevant text in the context. The output is an evaluation of those definitions in the supplied span; the model does not perform the promised investigation or alter the conversation itself.

#### Present, absent and not observable

The scoring response contains the behavior id with p\_present, p\_absent and p\_not\_observable, which sum to approximately 1. Not observable means the trace cannot answer the question. It is distinct from absent. For a definition such as customer acceptance of a solution, a span ending before the customer reacts is incomplete evidence even if the assistant’s reply sounds confident.

Keep all three values when preparing a result for review. A category chosen by the highest value can be useful for a display, but the distribution retains how uncertain the observation was. Do not use a low presence value alone to conclude that the behavior definitely did not occur. When missing evidence dominates, the useful action can be obtaining the relevant context or retaining the result as unknown rather than inventing an explanation.

#### Several definitions over the same evidence

The producer’s scoring workflow evaluates multiple behavior definitions together over one trace and returns a result for each identifier in request order. Its documentation specifies no per-request behavior-count cap. This does not establish a universal token window or unlimited trace size. Keep definitions purposeful and the evidence relevant, and retain the association between each returned result and the definition that produced it.

The behavior results are independent observations rather than a single exclusive-choice answer. Frustration, an apology and a proposed handoff can all be present in the same exchange. Their individual three-way distributions have meaning within each definition; adding presence values across different behaviors does not create a normalized category distribution or an ordered rubric score.

#### Keep the selected profile with its results

The maker documents the Lite and standard names with a shared request and result shape. That contract supports preparing traces and interpreting behavior probabilities for either named profile. It does not establish that Lite has the same weights, parameter count or quality as the other edition. Keep the selected profile identifiable when reviewing its results rather than silently exchanging results from different editions.

Use labeled conversations from the intended task to choose thresholds for logging, routing or review. Retain high not-observable results and borderline observations for inspection, and compare any apparent error with the original turn and behavior definition. The useful final artifact contains the text span’s identifier, the definition, the selected profile and the complete three-way probability result. A later application step decides what to do with that observation; Lite’s scoring output does not itself execute a handoff, block a reply or generate a repair.

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

[`respan/span-01-lite`](https://ailoot.ai/models/en/#m=respan%2Fspan-01-lite&route=Ultra&caller=respan%2Fspan-01-lite&fmt=systemone)

Respan /`respan/span-01-lite`

### Overview

Span-01 Lite is Respan’s separately named behavior-scoring profile for text conversations and agent traces. It uses caller-defined behaviors and returns present, absent and not-observable probabilities for each, with the same documented scoring workflow as Span-01.

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

| Field | Type | Requirement | Values & limits | Default |
| --- | --- | --- | --- | --- |
| Field`model` | Type`string` | RequirementRequired | Values & limits respan/span-01-lite | Default— |
| Field`provider` | Type`schema` | RequirementOptional | Values & limits | Default— |
| Field`questions` | Type`object` | RequirementRequired | Values & limits | Default— |
| Field`session_id` | Type`string` | RequirementOptional | Values & limits | Default— |
| Field`state` | Type`schema` | RequirementRequired | Values & limits | Default— |
| Field`trace` | Type`schema` | RequirementOptional | Values & limits | Default— |
| Field`user` | Type`string` | RequirementOptional | Values & limits | Default— |
| Field`questions.<id>.type` | Type`string` | RequirementRequired | Values & limits noul, choice, score | Default— |
| Field`questions.<id>.instructions` | Type`string\|object\|array` | RequirementRequired | Values & limits | Default— |
| Field`questions.<id>.criteria` | Type`object\|array` | RequirementOptional | Values & limits Conditions: choice/score: required; noul: optional. choice criteria is object; score is array with minItems1. | Default— |
| Field`questions.<id>.criteria.true` | Type`string\|object\|array` | RequirementRequired | Values & limits Applies when: noul criteria object supplied | Default— |
| Field`questions.<id>.criteria.false` | Type`string\|object\|array` | RequirementRequired | Values & 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

| Parameter | Contract |
| --- | --- |
| Parameter`content_type` | Contractapplication/json |
| Parameter`required` | Contractmodel, state, questions |
| Parameter`material_types` | Contracttext |
| Parameter`optional_controls` | Contractprovider, session\_id, trace, user |
| Parameter`multimodal_input_binding` | Contractnull |

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.

| Configuration | Rate schedule | Context tokens, more than | Context tokens, up to and including | Charge |
| --- | --- | --- | --- | --- |
| ConfigurationBase token rates | Rate scheduleBase rate | Context tokens, more than— | Context tokens, up to and includingNo upper bound | Charge Input · Input tokens **$0** / 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 1 | Rate schedule— | Context tokens, more than0 | Context tokens, up to and includingNo upper bound | Charge Input · Input tokens **$0** / 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 →](https://ailoot.ai/docs/en/billing/reserve/)

### Example requests

#### Ailoot Ultra · System One

Retained official request structure; documentary exampleUse your actual request material and retain the complete result

```json
{
  "model": "respan/span-01-lite",
  "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."
  }
}
```

```bash
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-lite'
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

| Field | Type |
| --- | --- |
| Field`model` | Typestring |
| Field`id` | Typestring |
| Field`provider` | Typestring |
| Field`answers.<id>.type` | Typestring |
| Field`answers.<id>.noul` | Typenumber |
| Field`answers.<id>.choice` | Typestring |
| Field`answers.<id>.score` | Typenumber |
| Field`answers.<id>.confidence` | Typenumber |
| Field`answers.<id>.probabilities` | Typeobject |
| Field`answers.<id>.legend` | Typeobject |
| Field`usage.input_tokens` | Typeinteger |
| Field`usage.output_tokens` | Typeinteger |
| Field`usage.cost` | Typenumber |

Errors and next steps

| Response | Condition | Next step |
| --- | --- | --- |
| Response400 · `invalid_request_error` | ConditionInvalid required field, representation or value | Next stepCorrect the indicated request field. |

### Aliases

#### Model aliases

**Ailoot Ultra** [`respan/span-01-lite`](https://ailoot.ai/models/en/#m=respan%2Fspan-01-lite&route=Ultra&caller=respan%2Fspan-01-lite&fmt=systemone)

#### Method path aliases

Use the method paths shown above.

#### Related caller IDs

[`respan/span-01-lite`](https://ailoot.ai/models/en/#m=respan%2Fspan-01-lite&route=Ultra&caller=respan%2Fspan-01-lite&fmt=systemone)

FAQ · Respan: Span-01 Lite

What inputs and results are available?

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

Which fields does the request use?

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

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](https://ailoot.ai/docs/en/billing/subscriptions/) · [View model prices](https://ailoot.ai/models/en/)

## 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](mailto:support@ailoot.ai) · [Service offer and licence agreement](https://ailoot.ai/legal/offer?lang=en)

## Ailoot · The company and its project portfolio





Ailoot combines established operating experience, a large client base, stable service and ongoing KPI control.





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





Ailoot brings that operating experience to API access for AI features in customer products, agents, applications and automations.
