-
Notifications
You must be signed in to change notification settings - Fork 396
Provide a config to pass the complete dataset entry as an EvalInputItem field to evaluators #355
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Provide a config to pass the complete dataset entry as an EvalInputItem field to evaluators #355
Conversation
Signed-off-by: Anuradha Karuppiah <anuradhak@nvidia.com>
Signed-off-by: Anuradha Karuppiah <anuradhak@nvidia.com>
Signed-off-by: Anuradha Karuppiah <anuradhak@nvidia.com>
Signed-off-by: Anuradha Karuppiah <anuradhak@nvidia.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is a disconnect here between where this setting is specified and where it will be used. The setting is on the dataset specification but it would only be used by evaluators. So its possible to set pass_full_entry=False and then use a metric which requires the full entry.
Instead, why dont we just always include the full entry and then add options to filter it from the saved output? I dont see any reason why we shouldnt include the full entry by default to the evaluators.
Signed-off-by: Anuradha Karuppiah <anuradhak@nvidia.com>
Signed-off-by: Anuradha Karuppiah <anuradhak@nvidia.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Adds support for passing the full dataset entry through to evaluators via a new full_dataset_entry field on EvalInputItem, controlled by a pass_full_entry flag.
- Always include
full_dataset_entryin eachEvalInputItem(intended to be conditional). - Extend
EvalInputItemmodel andDatasetHandlerto populate the new field. - Add tests and update docs to demonstrate
full_dataset_entry.
Reviewed Changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| tests/aiq/eval/dataset_handler/test_dataset_handler.py | Add fixtures and test to verify full_dataset_entry contains all extra fields. |
| src/aiq/eval/evaluator/evaluator_model.py | Extend EvalInputItem model with full_dataset_entry field |
| src/aiq/eval/dataset_handler/dataset_handler.py | Populate full_dataset_entry via row.to_dict() in create_eval_item |
| docs/source/reference/evaluate.md | Document full_dataset_entry access in evaluators |
| docs/source/extend/custom-evaluator.md | Describe full_dataset_entry in custom evaluator reference |
Comments suppressed due to low confidence (3)
src/aiq/eval/evaluator/evaluator_model.py:30
- [nitpick] Consider making
full_dataset_entryoptional (e.g.,typing.Optional[dict]) or providing a default value so the model remains valid when the feature is disabled.
full_dataset_entry: typing.Any
tests/aiq/eval/dataset_handler/test_dataset_handler.py:156
- Add a test for when
pass_full_entryis set to false to confirmfull_dataset_entryis omitted or empty inEvalInputItem.
dataset_config = EvalDatasetJsonConfig()
docs/source/reference/evaluate.md:90
- Include an example YAML snippet under the dataset config showing how to enable
pass_full_entry(e.g.,dataset: pass_full_entry: true) so users know how to turn this feature on.
### Accessing Additional Dataset Fields in Evaluators
Signed-off-by: Anuradha Karuppiah <anuradhak@nvidia.com>
|
/merge |
…em field to evaluators (NVIDIA#355) - Add support for passing the full dataset entry through to evaluators via a new full_dataset_entry field on EvalInputItem. - Add tests and update docs to demonstrate full_dataset_entry. ## By Submitting this PR I confirm: - I am familiar with the [Contributing Guidelines](https://github.com/NVIDIA/AIQToolkit/blob/develop/docs/source/resources/contributing.md). - We require that all contributors "sign-off" on their commits. This certifies that the contribution is your original work, or you have rights to submit it under the same license, or a compatible license. - Any contribution which contains commits that are not Signed-Off will not be accepted. - When the PR is ready for review, new or existing tests cover these changes. - When the PR is ready for review, the documentation is up to date with these changes. Authors: - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) Approvers: - Yuchen Zhang (https://github.com/yczhang-nv) - Michael Demoret (https://github.com/mdemoret-nv) URL: NVIDIA#355
…em field to evaluators (NVIDIA#355) - Add support for passing the full dataset entry through to evaluators via a new full_dataset_entry field on EvalInputItem. - Add tests and update docs to demonstrate full_dataset_entry. ## By Submitting this PR I confirm: - I am familiar with the [Contributing Guidelines](https://github.com/NVIDIA/AIQToolkit/blob/develop/docs/source/resources/contributing.md). - We require that all contributors "sign-off" on their commits. This certifies that the contribution is your original work, or you have rights to submit it under the same license, or a compatible license. - Any contribution which contains commits that are not Signed-Off will not be accepted. - When the PR is ready for review, new or existing tests cover these changes. - When the PR is ready for review, the documentation is up to date with these changes. Authors: - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) Approvers: - Yuchen Zhang (https://github.com/yczhang-nv) - Michael Demoret (https://github.com/mdemoret-nv) URL: NVIDIA#355
Description
By Submitting this PR I confirm: