Respan: Span-01 Lite
Span-01 Lite 是 Respan 另行命名的行為評分模型設定,適用於文字對話與 AI 代理執行軌跡。它採用由呼叫端定義的行為,並為每一項行為回傳「存在」、「不存在」與「無法觀察」三種機率,其文件所載的評分工作流程與 Span-01 相同。
關於模型
此說明介紹模型的能力。Ailoot 可用的輸入、輸出與選項,依所選方法列於下方。
Span-01 Lite 是 Respan Span-01 行為評分系列中另行命名的模型設定。開發商的快速入門指南與模型表將 Lite 列為採用相同評分工作流程的兩個模型設定之一。它接收一段文字互動與以白話撰寫的行為定義,接著為每一項定義回傳三種機率:存在、不存在與無法觀察。此模型設定的有用輸出是一份明確標示不確定性的行為紀錄,而不是針對對話寫出的回覆。
選定觀察項目及其界線
請用符合任務的措辭來定義行為。若要檢查轉接真人,請具體說明這是指使用者明確要求真人服務、助理表示需要轉接,還是兩者任一皆算。如果單純表達失望不應計入,也請明確寫出。若要檢查道歉,請定義哪些措辭構成道歉,而不是仰賴含糊的標籤。每項定義都有一個識別碼,評分器會將其與對應機率一同回傳。
行為集合由呼叫端自行決定。挫折感、無根據的承諾、工具誤用或 AI 代理的重複動作等例子,都是需要自行提供的定義,而非內建的固定類別清單。請確保每項定義都能在所提供的互動中觀察得到。一段簡短的片段或許足以判斷助理是否道歉,卻可能缺乏證據證明外部問題確實已經解決。
準備對話片段
依 Respan 文件所載的輸入格式,先前的訊息放在 span.input,待評估的對話輪次則放在 span.output。訊息內容為字串。請保留理解該輪次所需的上下文,包括發言者角色、相關的使用者請求,以及助理所引用的任何文字證據。進行品質檢查時,請提供實際的對話輪次,而不是會抹去待評估行為的改寫版本。
舉例來說,一次審查可以取用一則描述反覆遇到問題的使用者訊息,以及一則表示願意著手調查的助理回覆。請將使用者的挫折感與助理的承諾定義為兩項獨立的觀察。如果判斷某項說法是否有依據時需要參考工具結果,請在上下文中保留該結果的相關文字。輸出是針對所提供片段中這些定義的評估;模型不會執行所承諾的調查,也不會更動對話本身。
存在、不存在與無法觀察
評分回應包含行為 id 以及 p_present、p_absent 與 p_not_observable,三者總和約為 1。無法觀察表示該執行軌跡無法回答這個問題,這與不存在是不同的。以「客戶接受解決方案」這類定義為例,若片段在客戶做出反應之前就結束,即使助理的回覆聽起來十分篤定,證據仍不完整。
準備供審查的結果時,請保留全部三個數值。依最高值選出的類別方便用於顯示,但機率分布才能保留觀察的不確定程度。不要僅憑較低的存在值,就斷定該行為肯定沒有發生。當缺乏證據的情況占多數時,有用的做法是取得相關上下文,或將結果保留為未知,而不是自行編造解釋。
針對同一份證據的多項定義
開發商的評分工作流程會針對同一段執行軌跡一併評估多項行為定義,並依請求順序為每個識別碼回傳一筆結果。其文件並未規定每次請求的行為數量上限。但這並不代表具有通用的 token 視窗,或執行軌跡大小不受限制。請讓每項定義都有明確目的、證據保持相關,並維持每筆回傳結果與產生它的定義之間的對應關係。
各項行為結果是彼此獨立的觀察,而不是單一的互斥選擇答案。挫折感、道歉與提議轉接,可能同時出現在同一段往來對話中。各自的三向機率分布只在其所屬定義內才有意義;把不同行為的存在值相加,並不會得到正規化的類別分布,也不會得到有序的評分準則分數。
讓所選模型設定與其結果保持關聯
製造商在文件中說明,Lite 與標準版兩個名稱共用相同的請求與結果格式。這份規範讓你能為任一具名模型設定準備執行軌跡並解讀行為機率,但並不代表 Lite 與另一個版本具有相同的權重、參數量或品質。審查結果時,請確保能辨識所選的模型設定,而不是在不同版本之間暗自互換結果。
請使用目標任務中已標註的對話,來選定記錄、分流或審查所用的門檻值。保留無法觀察值偏高的結果與處於臨界的觀察以供檢查,並將任何看似錯誤的結果與原始對話輪次及行為定義進行比對。有用的最終成果應包含文字片段的識別碼、定義、所選模型設定,以及完整的三向機率結果。如何處理該觀察由後續的應用程式步驟決定;Lite 的評分輸出本身不會執行轉接、阻擋回覆或產生修正內容。
Ailoot Ultra · System One POST /v1/systemone respan/span-01-lite
respan/span-01-lite入門
Span-01 Lite 是 Respan 另行命名的行為評分模型設定,適用於文字對話與 AI 代理執行軌跡。它採用由呼叫端定義的行為,並為每一項行為回傳「存在」、「不存在」與「無法觀察」三種機率,其文件所載的評分工作流程與 Span-01 相同。
- 接受的輸入
- 文字
- 結果
- decisions
Ailoot 可用 · 輸入與方法
Ailoot Ultra · System One POST /v1/systemone
- 輸入
text- 輸出
decisions- 輸出格式
- json
| 欄位 | 類型 | 要求 | 值與限制 | 預設值 |
|---|---|---|---|---|
欄位model | 類型string | 要求必填 | 值與限制 respan/span-01-lite | 預設值— |
欄位provider | 類型schema | 要求選填 | 值與限制 | 預設值— |
欄位questions | 類型object | 要求必填 | 值與限制 | 預設值— |
欄位session_id | 類型string | 要求選填 | 值與限制 | 預設值— |
欄位state | 類型schema | 要求必填 | 值與限制 | 預設值— |
欄位trace | 類型schema | 要求選填 | 值與限制 | 預設值— |
欄位user | 類型string | 要求選填 | 值與限制 | 預設值— |
欄位questions.<id>.type | 類型string | 要求必填 | 值與限制 noul, choice, score | 預設值— |
欄位questions.<id>.instructions | 類型string|object|array | 要求必填 | 值與限制 | 預設值— |
欄位questions.<id>.criteria | 類型object|array | 要求選填 | 值與限制 條件: choice/score:必填;noul:選填。choice 的條件為物件;score 為陣列,並要求 minItems1。 | 預設值— |
欄位questions.<id>.criteria.true | 類型string|object|array | 要求必填 | 值與限制 適用條件: 已提供 noul criteria 物件 | 預設值— |
欄位questions.<id>.criteria.false | 類型string|object|array | 要求必填 | 值與限制 適用條件: 已提供 noul criteria 物件 | 預設值— |
輸入素材組合
noul · 必填: state, questions.<id>.type=noul, questions.<id>.instructions
choice · 必填: state, questions.<id>.type=choice, questions.<id>.instructions, criteria object
score · 必填: state, questions.<id>.type=score, questions.<id>.instructions, criteria array with minItems1
方法參數與生命週期
| 參數 | 規格 |
|---|---|
參數content_type | 規格application/json |
參數required | 規格model, state, questions |
參數material_types | 規格text |
參數optional_controls | 規格provider, session_id, trace, user |
參數multimodal_input_binding | 規格null |
生命週期: synchronous
請傳送完全相符的模型 ID,並保留完整的原生回應。
方案
費率資訊不會增加請求選項。支援的參數列於所選方法中。
- 快速模式
- 未指定 選取快速模式時
- flex 模式
- 未指定 選取 flex 模式時
- 最高推理強度
- 未指定 最高推理強度採用 default 調整值時
Ailoot 費率
各設定的價格
請逐一核對各項費用與所列條件。每組互為替代選項的設定只套用一種費率。
| 設定 | 費率表 | 上下文 Token 數大於 | 上下文 Token 數小於或等於 | 費用 |
|---|---|---|---|---|
| 設定詞元基本費率 | 費率表基本費率 | 上下文 Token 數大於— | 上下文 Token 數小於或等於無上限 | 費用 輸入 · 輸入 Token $0 / 1K Token 輸出 · 輸出 Token $0 / 1K Token 輸入 · 讀取快取 — / 1K Token 輸入 · 寫入快取 — / 1K Token 輸入 · 寫入快取,1 小時 — / 1K Token |
| 設定請求長度級距 1 | 費率表— | 上下文 Token 數大於0 | 上下文 Token 數小於或等於無上限 | 費用 輸入 · 輸入 Token $0 / 1K Token 輸出 · 輸出 Token $0 / 1K Token 輸入 · 讀取快取 — / 1K Token 輸入 · 寫入快取 — / 1K Token 輸入 · 寫入快取,1 小時 — / 1K Token |
Ailoot 會在請求前預留估算金額。取得結果後,依實測用量結算最終費用。串流結算採用最終用量紀錄。預留金額與結算的運作方式 →
請求範例
Ailoot Ultra · System One
{
"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."
}
}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
接收並儲存結果
Ailoot Ultra · System One
json
保留所有已完成的結果
請保留所有完整傳回的回應、檔案與內容區塊。
會保留每個已提供的問題 ID 答案,包括其確切型別、noul/choice/score 值、信心值、機率與圖例。完整的原始 JSON 會先儲存,並僅在結算後回傳。
需要檢查原始回應時
請保留原始操作與完整/部分回覆;切勿重送 POST。
回應欄位
| 欄位 | 類型 |
|---|---|
欄位model | 類型string |
欄位id | 類型string |
欄位provider | 類型string |
欄位answers.<id>.type | 類型string |
欄位answers.<id>.noul | 類型number |
欄位answers.<id>.choice | 類型string |
欄位answers.<id>.score | 類型number |
欄位answers.<id>.confidence | 類型number |
欄位answers.<id>.probabilities | 類型object |
欄位answers.<id>.legend | 類型object |
欄位usage.input_tokens | 類型integer |
欄位usage.output_tokens | 類型integer |
欄位usage.cost | 類型number |
錯誤與後續步驟
| 回應 | 條件 | 下一步 |
|---|---|---|
回應400 · invalid_request_error | 條件必要欄位、表示方式或值無效 | 下一步請修正指出的請求欄位。 |
別名
模型別名
Ailoot Ultra respan/span-01-lite
方法路徑別名
請使用上方列出的 API 方法路徑。
相關呼叫用 ID
FAQ · Respan: Span-01 Lite
- 可以使用哪些輸入與結果?
POST /v1/systemone·respan/span-01-lite:text→decisions- 請求使用哪些欄位?
POST /v1/systemone·respan/span-01-lite:model,provider,questions,session_id,state,trace,user