elastic / elastic/elastic-evals-sdk-python

[kbn-evals] connector_id reported as model identity

Aperta
#37 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
kbn-evals Team:nightshift-context-and-research
Lingua principale
Python
Stelle
2
Fork
0
Merge medio
1g 13h
PR unite (30g)
18

Descrizione

### Summary

Kibana shows a connector ID as both the task model and the evaluator model. The actual models are available in telemetry. CODE evaluators (latency, tokens, tool_calls) don't use a model at all but still get one assigned.

### Problem

- `executor/client.py:256` falls back to `CONNECTOR_ID` as `task_model` in `_build_task_model()` when `ELASTIC_EVALS_MODEL` is not set
- `client.py:261-262` assigns the same connector ID as the evaluator model to all evaluators, including CODE evaluators
- A connector ID identifies a route to an inference service, not a model

### Fix

- Read the actual task model from execution data (e.g. `gen_ai.request.model` telemetry)
- Read the actual evaluator model from the Kibana evaluator response
- Don't assign a model field to CODE evaluators
- Make `CONNECTOR_ID` optional at the global config level; require it only when inference is actually used

### Done when

- [ ] Kibana shows the actual task model, not the connector ID
- [ ] CODE evaluators are ingested without a model field
- [ ] `CONNECTOR_ID` is not required for runs that don't use Kibana inference

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia in executor/client.py, intorno a _build_task_model() alla riga 256 e all’assegnazione del modello dell’evaluator alle righe 261-262. Traccia il modo in cui la telemetria dell’esecuzione e le risposte degli evaluator di Kibana forniscono l’identità del modello e il modo in cui sono rappresentati gli evaluator CODE. Il lavoro è completato quando vengono riportati i modelli effettivi del task e dell’evaluator, gli evaluator CODE non hanno un campo model e le esecuzioni che non usano l’inferenza di Kibana non richiedono CONNECTOR_ID.

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

Valutazione

Stack tecnologico
python
Ambito
backend, observability
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
52/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.