Azure / Azure/azure-sdk-for-python

azure-ai-evaluation: Improper handling of missing fields by evaluators during batch evaluation

Aperta
#42,358 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
customer-reported Evaluation feature-request needs-team-attention
Lingua principale
Python
Stelle
5.6k
Fork
3.4k
Merge medio
2g 2h
PR unite (30g)
213

Descrizione

- **Package Name**: `azure-ai-evaluation`
- **Package Version**: 1.8.0
- **Operating System**: macOS Sequoia 15.5
- **Python Version**: 3.11.8

**Describe the bug**
There is a bug I've found which I reported details of [here](https://github.com/orgs/azure-ai-foundry/discussions/111). The gist is that, when you provide Q&A sets where ground truth is present for some, but not all, the evaluation results will be heavily skewed for response completeness given all Q&A sets without ground truth will receive a response completeness score of 1. In addition, this scenario also elicits errors in the logs during the batch evaluation step.

**To Reproduce**
Steps to reproduce the behavior:
1. Create an evaluation-compatible Q&A sets file with a list of questions and their corresponding answers, some of which (but not all) having `ground_truth`, too.
2. Run batch evaluations on that file, requesting both response completeness and any other evaluators.

**Expected behavior**
My expectation for this scenario would be for results to not be skewed by Q&A sets where the ground truth was not provided. Instead, the response completeness evaluation should be avoided altogether for those specific Q&A sets. In other words, this is the breakdown of the possible scenarios:
1. Q&A set with all required fields: Run all provided evaluators.
2. Q&A set without ground truth: Run all evaluators **except** response completeness.

Importantly, this doesn't apply to just response completeness, but more broadly, any scenario where you may have missing fields for certain evaluators. There should be a preventative step that looks at the type of data of the given Q&A set and determines what evaluators qualify.

**Screenshots**
N/A

**Additional context**
- See my initial discussion post on this issue [here](https://github.com/orgs/azure-ai-foundry/discussions/111) where I talked with Nitya.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia dal flusso di valutazione batch di azure-ai-evaluation e riproduci un set misto di Q&A con e senza ground_truth, richiedendo al contempo la completezza della risposta. Traccia come vengono controllati i campi richiesti dagli evaluator; il lavoro è completato quando gli evaluator vengono ignorati per i set di Q&A non idonei, i punteggi non risultano distorti e gli errori registrati vengono evitati.

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

Valutazione

Stack tecnologico
azure, python
Ambito
ai, machine-learning
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.