Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

BUG SelfAskScaleScorer crashes on an out-of-range judge score instead of retrying

Aperta Adatta ai principianti
#2,809 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
82/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
python
Ambito
security

Direzione di ricerca

Inizia con SelfAskScaleScorer, SelfAskGeneralFloatScaleScorer e l’implementazione di response-handler accanto a TrueFalseResponseHandler. Segui il punto in cui gli score analizzati entrano nella costruzione di Score, quindi verifica che i valori del giudice fuori intervallo vengano gestiti nel percorso di retry, mentre i valori validi proseguono normalmente.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

On the default TAP 1–10 scale, if the judge answers 0 or 11, SelfAskScaleScorer fails after one call instead of retrying:

RuntimeError: Error in scorer SelfAskScaleScorer: ... Float scale scorers must have a score value between 0 and 1. Got -0.1111111111111111

The response handler only checks that the value is a finite float. The range check happens later, when the Score is built, which is outside the JSON retry. So one sloppy answer ends the attack, and this is the default scorer for TAP and Crescendo. SelfAskGeneralFloatScaleScorer has the same problem. Likert and the true/false scorers already validate their score domain inside the parser, so a bad value there just gets retried.

Suggested fix: a small NumericRangeResponseHandler wrapper next to TrueFalseResponseHandler, used by both scale scorers.

Lingua principale
Python
Stelle
4.5k
Fork
896
Merge medio
3g 5h
PR unite (30g)
200

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di microsoft/PyRIT

Tutte le issue di microsoft/PyRIT

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.