Score — оценяване по скала в Jev

Score е един от трите типа въпроси в модела Jev на TypeSafe. Оценява входа спрямо подредени нива, които ти написваш, и връща претеглена по вероятност стойност, която може да попадне между две нива.

Score е скала. Написваш нивата по ред, най-ниското първо, с думи — а отговорът е позиция по тази скала, номерирана от 0. Тъй като е претеглена по вероятност средна на нивата, тя може и често попада между две от тях.

Описвай нивата, вместо да ги номерираш. Собствената документация на TypeSafe показва как един и същ вход получава чиста оценка спрямо три описани нива и разпилява вероятността си, когато са дадени голи числа: без нищо, към което да се съпостави, моделът няма от какво да разсъждава.

Истински отговор

Изпратено до jev-1.13.0. Числата по-долу са това, което се върна.

Състоянието

Експортът към CSV тихо се отрязва на 1000 реда от 4.2.0. Не се показва грешка. Връщането към по-стара версия го оправя. Възпроизведено при два акаунта. Това чупи месечното ни приключване.

Въпросът

Колко сериозен е този проблем?

70%
средна
2.35 от 4 · Голям, счупен е работен процес

2,35 стои точно след „счупен е работен процес“ — но чети разпределението, а не числото. 77% са на ниво 2, и все пак 13% стоят чак на ниво 4, защото тихото отрязване наистина може да е загуба на данни. Средна 2,35 и тесен връх при 2,35 са различни отговори и само `probabilities` ги различава.

Заявката и отговорът, дословно
Заявка
{
  "state": "CSV export silently truncates at 1000 rows since 4.2.0. No error shown. Downgrading fixes it. Reproduced on two accounts. This breaks our month-end close.",
  "model": "jev-latest",
  "questions": {
    "severity": {
      "type": "score",
      "instructions": "How severe is this issue?",
      "criteria": [
        "Cosmetic",
        "Minor, has a workaround",
        "Major, a workflow is broken",
        "Critical, core functionality is unusable",
        "Catastrophic, data loss or a security hole"
      ]
    }
  }
}
Отговор
{
  "model": "jev-1.13.0",
  "answers": {
    "severity": {
      "type": "score",
      "score": 2.35,
      "confidence": 0.7,
      "legend": {
        "0": "Cosmetic",
        "1": "Minor, has a workaround",
        "2": "Major, a workflow is broken",
        "3": "Critical, core functionality is unusable",
        "4": "Catastrophic, data loss or a security hole"
      },
      "probabilities": {
        "0": 0,
        "1": 0,
        "2": 0.77,
        "3": 0.1,
        "4": 0.13
      }
    }
  }
}

Какво съдържа отговорът

type "score"
Съвпада с типа на въпроса.
score number
Претеглената по вероятност средна на номерата на нивата. За пет нива върви от 0 до 4 и може да попадне между нива.
legend map<string, string>
Всеки номер на ниво, съпоставен обратно с описанието, което си написал.
probabilities map<string, number>
Всяко ниво, съпоставено с вероятността си. Сумират се до 1.
confidence number
От 0 до 1. Един връх на едно ниво е висока; вероятност, разпръсната по нивата, е ниска.

Правила и ограничения

  • criteria е подреден масив от описания на нива, с долния край първо. Нужни са поне две нива и приема до десет.
  • Номерът на ниво е позицията му в масива, започвайки от 0.
  • Различни разпределения дават една и съща оценка: 1,0 може да означава, че цялата вероятност стои на ниво 1, или че е разделена поравно между нива 0 и 2. Чети probabilities и confidence заедно с нея.

Посегни към Score, когато

  • Отговорите са стъпала на една стълба — сериозност, спешност, раздразнение, качество, риск.
  • Попадането между две нива е информативно, а не проблем.
  • Искаш да съчетаеш няколко оценки с тегла, които контролираш, вместо да задаваш един мъгляв въпрос за общото качество.

Използвай нещо друго, когато

  • Опциите не са подредени. Choice е честната форма за неподредени категории.
  • Не можеш да опишеш нивата отчетливо. Използвай толкова, колкото можеш да опишеш, и не повече — неописаните нива не дават на модела към какво да се съпостави.

Другите два

Задай Score за собствения си текст

Площадката изпраща на Jev каквото поставиш и чертае всеки отговор. Без акаунт, без ключ.

Отвори площадката