TypeSafe: Jev 1.13
Jev 1.13 是 TypeSafe 推出的純文字 System One 決策模型。它直接回傳型別化的 Choices、可為小數的評分準則 Scores,以及是/否機率,並附上機率分布與模型專屬的信心度統計,適用於分類、分流與聚焦判斷。
- Ailoot Ultra · System One
POST /v1/systemonetypesafe/jev-1.13 - Ailoot Ultra · System One
POST /v1/systemone~typesafe/jev-latest
關於模型
此說明介紹模型的能力。Ailoot 可用的輸入、輸出與選項,依所選方法列於下方。
Jev 1.13 是 TypeSafe 推出、具版本編號的 System One 結構化決策模型。其原廠識別碼為 jev-1.13.0。它會依據型別化問題評估文字或文字形式的 JSON 狀態,並直接回傳數值與機率分布,而不撰寫書面答案。此版本適合可能結果在請求之前即已確定的分類、分流、條件檢查與評分準則判斷。
狀態與聚焦問題的準備
以字串、JSON 物件或文字值陣列作為狀態提供。當證據包含相關紀錄、對話與政策時,請使用具名欄位。保留每個問題所需的部分,若指向特定欄位或項目能清楚標示證據,就加以引用。Jev 1.13 僅支援文字;圖片、音訊、影片與二進位檔案需要在此模型之外先轉換為文字或結構化的文字欄位。
每個問題都有類型、指示,以及該類型所需的任何準則。指示與準則描述可以使用文字或 JSON 結構。原廠會以問題識別碼回傳答案,但這些識別碼不參與推論。請寫出完整的問題,而不是依賴像 urgent 這樣的識別碼來暗示預期的準則。實用的客服狀態可以包含訊息與影響細節,再以不同的問題分別定義其類別與嚴重程度。
Choice:提供的類別及其分布
Choice 會從呼叫端定義的無序集合中,選出機率最高的選項。其準則對應表包含選項鍵與描述,若某個選項不需額外說明,可使用 null。文件記載的上限為每個 Choice 255 個選項。當分類體系無法涵蓋所有可能的證據時,請加入「其他」或「無符合」選項,並說明簡短類別名稱無法釐清的界線。
答案包含所選選項、每個選項的機率與信心度。當兩個候選相當接近時,請保留機率分布,而不要把所選標籤視為確定無疑。所選類別可以指出建議的分流方向;是否執行以及如何執行該分流,由外圍的應用程式決定。
Score:期望等級,而非精確測量
Score 使用一個附有描述的有序等級陣列,建議至少兩個等級,最多支援十個。索引從 0 開始。數值結果是等級索引的機率加權平均值,因此可能落在兩個等級之間。答案中的圖例(legend)將索引與其描述對應起來,等級機率則顯示判斷的分布情形。
以嚴重程度為例,請描述外觀上的影響、有可行替代做法與任務受阻之間的差異。小數分數有助於排定優先順序或彙整判斷,而選出最可能的類別則是另一種操作。TypeSafe 針對此版本的指南提醒,Score 不擅長透過在等級之間內插來重建精確的物理量或數值。請將精確的計算與測量放在模型之外處理。
Noul 與信心度各有不同含義
Noul 回傳所定義條件為真的機率,範圍為 0 到 1。可選的 true 與 false 準則可釐清判斷界線。它沒有獨立的信心度欄位。接近 0.5 的機率表示在是與否之間不確定,而不是分級量表上的中間值。
Choice 與 Score 的信心度是從各自的分布推導而來。對於至少有兩個選項(n > 1)、所選機率為 p_max 的 Choice,文件記載的公式為 (p_max − 1/n) / (1 − 1/n):它將最高結果與平均分配相比較。Score 的信心度還會考量與最可能等級之間的機率加權距離,並以均勻分布的離散程度進行正規化,下限為 0。因此,相鄰等級之間的模稜兩可,與兩端對立的模稜兩可,具有不同的含義。當任務需要比單一統計值更多的細節時,請保留完整的分布。
針對共用證據的獨立判斷
同一個請求中的問題看到的是相同的狀態,並且各自獨立評估。某個問題的結果不會成為另一個問題的隱藏脈絡。請將籠統的判斷拆分為聚焦的考量,再依任務解讀或合併回傳的數值。一個問題可以同時具有類別、影響評等與相關性檢查,而不必把這些獨立的準則混成一個含糊的優先順序標籤。
如果後續問題需要根據先前結果取得證據或選擇選項,請在之後的請求中明確表達這項相依關係。進行候選擷取時,先從來源取得可用的值,再以有界的 Choice 從中選擇。Jev 1.13 並未針對自由形式的文字生成進行訓練,不應被描述為能產生任意新字串或敘述性說明。
版本專屬的上下文與語言限制
原廠列出的額度為:狀態加上所有問題合計 64k 個 token,以及狀態加上最長的單一問題 32k 個 token。這兩項限制都很重要。即使狀態符合總額度,仍可能讓個別問題的指示與選項空間不足。請移除無關素材,同時保留決定答案的證據。
英文是此版本的主要訓練語言,原廠回報在英文上準確度最佳。其他語言(包括 CJK 文字)也可接受,但準確度並不相同。評估機率或類別界線應如何解讀時,請使用目標語言的代表性來源素材。純文字的輸入規範並不代表在所有語言中都有同等表現。
已公布的實質限制
TypeSafe 記載了以下限制:會依字面解讀範圍限定詞與否定詞、計數與算術不可靠、難以將日期當作有序數量進行比較,以及在多層間接參照下可靠度降低。原廠建議以程式碼執行精確計算,將語意判斷交給模型。數值編碼的效果可能不如有意義的名稱,而充斥無關細節的大型狀態也可能分散對相關證據的注意力。
同一份指南指出,狀態中的對抗性內容可能左右答案;相互矛盾的指示與準則可能造成混淆;Choice 的選項順序有時會讓結果偏向較前面的選項。請定義實際的條件、讓指示與準則一致、減少不必要的推理跳轉,並將邊界判斷與來源比對。解讀 Jev 1.13 的判斷時,請將這些限制納入考量。
實用的 Jev 1.13 產出會保留狀態識別碼、完整問題、選項或等級、型別化結果、機率,以及相關的信心度統計值。當結果或門檻值取決於此版本時,請明確記錄版本。將不確定的案例與證據對照審查,並讓應用程式執行精確計算與工作流程動作;模型提供的是附帶數值化不確定性的聚焦判斷。
Ailoot Ultra · System One POST /v1/systemone typesafe/jev-1.13
typesafe/jev-1.13typesafe/jev-1.13~typesafe/jev-latest
入門
Jev 1.13 是 TypeSafe 推出的純文字 System One 決策模型。它直接回傳型別化的 Choices、可為小數的評分準則 Scores,以及是/否機率,並附上機率分布與模型專屬的信心度統計,適用於分類、分流與聚焦判斷。
- 接受的輸入
- 文字
- 結果
- decisions
Ailoot 可用 · 輸入與方法
Ailoot Ultra · System One POST /v1/systemone
- 輸入
text- 輸出
decisions- 輸出格式
- json
| 欄位 | 類型 | 要求 | 值與限制 | 預設值 |
|---|---|---|---|---|
欄位model | 類型string | 要求必填 | 值與限制 typesafe/jev-1.13 | 預設值— |
欄位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.000084 / 1K Token 輸出 · 輸出 Token $0 / 1K Token 輸入 · 讀取快取 — / 1K Token 輸入 · 寫入快取 — / 1K Token 輸入 · 寫入快取,1 小時 — / 1K Token |
| 設定請求長度級距 1 | 費率表— | 上下文 Token 數大於0 | 上下文 Token 數小於或等於無上限 | 費用 輸入 · 輸入 Token $0.000084 / 1K Token 輸出 · 輸出 Token $0 / 1K Token 輸入 · 讀取快取 — / 1K Token 輸入 · 寫入快取 — / 1K Token 輸入 · 寫入快取,1 小時 — / 1K Token |
Ailoot 會在請求前預留估算金額。取得結果後,依實測用量結算最終費用。串流結算採用最終用量紀錄。預留金額與結算的運作方式 →
請求範例
Ailoot Ultra · System One
{
"model": "typesafe/jev-1.13",
"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']='typesafe/jev-1.13'
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 typesafe/jev-1.13, ~typesafe/jev-latest
方法路徑別名
請使用上方列出的 API 方法路徑。
相關呼叫用 ID
Ailoot Ultra · System One POST /v1/systemone ~typesafe/jev-latest
~typesafe/jev-latesttypesafe/jev-1.13~typesafe/jev-latest
入門
Jev 1.13 是 TypeSafe 推出的純文字 System One 決策模型。它直接回傳型別化的 Choices、可為小數的評分準則 Scores,以及是/否機率,並附上機率分布與模型專屬的信心度統計,適用於分類、分流與聚焦判斷。
- 接受的輸入
- 文字
- 結果
- decisions
Ailoot 可用 · 輸入與方法
Ailoot Ultra · System One POST /v1/systemone
- 輸入
text- 輸出
decisions- 輸出格式
- json
| 欄位 | 類型 | 要求 | 值與限制 | 預設值 |
|---|---|---|---|---|
欄位model | 類型string | 要求必填 | 值與限制 ~typesafe/jev-latest | 預設值— |
欄位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: required; noul: optional. choice criteria is object; score is array with minItems1. | 預設值— |
欄位questions.<id>.criteria.true | 類型string|object|array | 要求必填 | 值與限制 適用條件: noul criteria object supplied | 預設值— |
欄位questions.<id>.criteria.false | 類型string|object|array | 要求必填 | 值與限制 適用條件: noul criteria object supplied | 預設值— |
輸入素材組合
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
Send the exact model ID and retain the complete native response.
方案
費率資訊不會增加請求選項。支援的參數列於所選方法中。
- 快速模式
- 未指定 選取快速模式時
- flex 模式
- 未指定 選取 flex 模式時
- 最高推理強度
- 未指定 最高推理強度採用 default 調整值時
Ailoot 費率
各設定的價格
請逐一核對各項費用與所列條件。每組互為替代選項的設定只套用一種費率。
| 設定 | 費率表 | 上下文 Token 數大於 | 上下文 Token 數小於或等於 | 費用 |
|---|---|---|---|---|
| 設定基礎 token 費率 | 費率表基本費率 | 上下文 Token 數大於— | 上下文 Token 數小於或等於無上限 | 費用 輸入 · 輸入 Token $0.000084 / 1K Token 輸出 · 輸出 Token $0 / 1K Token 輸入 · 讀取快取 — / 1K Token 輸入 · 寫入快取 — / 1K Token 輸入 · 寫入快取,1 小時 — / 1K Token |
| 設定請求長度級距 1 | 費率表— | 上下文 Token 數大於0 | 上下文 Token 數小於或等於無上限 | 費用 輸入 · 輸入 Token $0.000084 / 1K Token 輸出 · 輸出 Token $0 / 1K Token 輸入 · 讀取快取 — / 1K Token 輸入 · 寫入快取 — / 1K Token 輸入 · 寫入快取,1 小時 — / 1K Token |
Ailoot 會在請求前預留估算金額。取得結果後,依實測用量結算最終費用。串流結算採用最終用量紀錄。預留金額與結算的運作方式 →
請求範例
Ailoot Ultra · System One
{
"model": "~typesafe/jev-latest",
"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']='~typesafe/jev-latest'
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
保留所有已完成的結果
請保留所有完整傳回的回應、檔案與內容區塊。
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.
需要檢查原始回應時
Preserve original operation and full/partial reply; do not replay 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 | 條件Invalid required field, representation or value | 下一步Correct the indicated request field. |
別名
模型別名
Ailoot Ultra typesafe/jev-1.13, ~typesafe/jev-latest
方法路徑別名
請使用上方列出的 API 方法路徑。
相關呼叫用 ID
FAQ · TypeSafe: Jev 1.13
- 可以使用哪些輸入與結果?
POST /v1/systemone·typesafe/jev-1.13:text→decisionsPOST /v1/systemone·~typesafe/jev-latest:text→decisions- 請求使用哪些欄位?
POST /v1/systemone·typesafe/jev-1.13:model,provider,questions,session_id,state,trace,userPOST /v1/systemone·~typesafe/jev-latest:model,provider,questions,session_id,state,trace,user