Choice — Jev で 1 つの選択肢を選ぶ

Choice は TypeSafe の Jev モデルにある 3 つの質問タイプのひとつです。あなたが定義した集合からちょうど 1 つを選び、勝者、すべての選択肢の確率、そして確信度を返します。

Choice は名前つきの選択肢の集合をモデルに渡し、そのうちちょうど 1 つを受け取ります。選択肢の名前はあなたのものなので、答えはすでにコードが switch できる値です。正規化すべき文字列もなく、定義していない名前が返る可能性もありません。

面白いのは勝者ではなく、一緒に返ってくる分布のほうです。すべての選択肢に確率がつき、その合計は 1 になり、次点はモデルがもう少しで選びかけたものを教えてくれます。

実際の答え

jev-1.13.0 に送信。下の数字は返ってきたものそのものです。

state

今朝の 4.2 リリース以降、SSO ログインが 500 を返し続けています。チームの誰もログインできません。Chrome でも Safari でも同じ、テナントが 2 つ違っても同じです。

質問

このチケットはどのチームが担当すべきですか?

83%
技術 が 87%、4 個の選択肢のうち
87% 技術

技術が 87% で勝ちますが、アカウントが 13% を保持しています。そしてこれは正しい不一致です。SSO の障害は本当に両者の境界にあるからです。むき出しのラベルならこれを隠してしまったでしょう。振り分けを誤るコストがあるなら、13% こそがしきい値を置くべき数字です。

リクエストとレスポンスの原文
リクエスト
{
  "state": "Our SSO login has been throwing a 500 since the 4.2 release this morning. Nobody on the team can get in. Same on Chrome and Safari, two different tenants.",
  "model": "jev-latest",
  "questions": {
    "queue": {
      "type": "choice",
      "instructions": "Which team should own this ticket?",
      "criteria": {
        "Billing": "Payments, invoices, refunds, plan changes",
        "Technical": "Bugs, outages, API errors, integrations",
        "Account": "Login, permissions, seats, data export",
        "Sales": "Pricing, upgrades, contracts"
      }
    }
  }
}
レスポンス
{
  "model": "jev-1.13.0",
  "answers": {
    "queue": {
      "type": "choice",
      "choice": "Technical",
      "confidence": 0.83,
      "probabilities": {
        "Technical": 0.87,
        "Sales": 0,
        "Account": 0.13,
        "Billing": 0
      }
    }
  }
}

答えに含まれるもの

type "choice"
質問タイプと対応します。
choice string
最も確率の高い選択肢。
probabilities map<string, number>
定義したすべての選択肢とその確率。合計は 1 になります。
confidence number
0 から 1。確率の広がり方から計算されます。明確なピークが 1 つなら高く、平らに広がっていれば低くなります。

ルールと制限

  • criteria は各選択肢を説明に対応づけます。名前だけで十分なときは null にできます。
  • Choice は最大 255 個の選択肢を取れます。絞ったリストではなく、チームやカテゴリの全リストをモデルに渡してください。選択肢 1 つのコストは数トークンです。
  • リストがすべての入力を網羅できないかもしれないときは、OtherNone of the above を足して、どれも当てはまらないと言える道をモデルに残してください。

Choice を使うのはこんなとき

  • 答えがすでにコードの中にある閉じた集合のとき。キュー、カテゴリ、ステータス、次のアクション。
  • 勝者だけでなく次点も見たいとき。
  • 振り分けをしていて、行き先ごとのコスト差が大きく、選択肢ごとにしきい値を置きたいとき。

別のものを使うべきとき

  • 選択肢が 1 本の尺度の順序つきの段のとき。低・中・高など。Score はそれが順序だと知っていて、段の間に落ちることもできます。Choice は無関係なラベルとして扱います。
  • 同時に複数が真になりうるとき。その場合は選択肢ごとに Noul を聞いてください。

残りの 2 つ

自分のテキストに Choice を聞く

プレイグラウンドは貼り付けたものを Jev に送り、すべての答えを描きます。アカウントもキーも不要です。

プレイグラウンドを開く