Skip to content

Add sub metrics for conversation correctly finished - #191

Open
gabegma wants to merge 13 commits into
mainfrom
pr/ggm/add-sub-metrics
Open

Add sub metrics for conversation correctly finished#191
gabegma wants to merge 13 commits into
mainfrom
pr/ggm/add-sub-metrics

Conversation

@gabegma

@gabegma gabegma commented Jul 22, 2026

Copy link
Copy Markdown
Collaborator

No description provided.

Base automatically changed from pr/audio_llm_stream to main July 22, 2026 22:22
from pathlib import Path
from typing import Any

from eva.metrics.processor import is_agent_timeout_on_user_turn

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i think we should move is_agent_timeout_on_user_turn to utils instead of importing from eva.metrics since the metrics already import utils or compute is_parent_failure in the metric itself

- ``acknowledgement``: leads with a confirmation/ack ("Yes, that is correct.", "Ok thanks",
"[neutral] Okay.", "No.") AND is at most ``_ACKNOWLEDGEMENT_MAX_WORDS`` words — a long sentence
that merely starts "yeah …" is not counted.
- ``spelled_entity``: letter/digit spell-out of an ID/code/name ("E M P eight nine …", NATO,

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i think the NATO alphabet check is a bit loose, eg "hotel" or "november". Like i think "I am waiting in the hotel lobby" or "I need a flight that leaves November 6th." would get flagged incorrectly

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great point

Comment on lines +54 to +58
signals = extract_conv_finish_signals(context)
classification = classify_conv_finish_failure(signals)
sub_metrics = build_conv_finish_sub_metrics(classification, self.name)
# Orthogonal input-characteristic flags (short / acknowledgement / spelled final turn).
sub_metrics.update(build_final_turn_flag_sub_metrics(signals.user_final_words, self.name))

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this section should likely have it's own try-catch, otherwise if something fails in here, we lose the other calculated info like details.reason or details.speaker

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done!

Comment thread src/eva/utils/conversation_correctly_finished/classifier.py Outdated
@gabegma
gabegma marked this pull request as ready for review August 7, 2026 20:01
@gabegma

gabegma commented Aug 7, 2026

Copy link
Copy Markdown
Collaborator Author

@katstankiewicz thank you for the feedback! I should have addressed all of your comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants