Tag BFCL near-duplicate tool-surface failures - #45
Open
SonAIengine wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
failure_tagsto BFCL model-loop case resultsnear_duplicate_tool_surfacefailure_tag_breakdownin model-loop and sweep summariesrow_vs_retrieved_deltasso row-pass/retrieved-fail subsets can be split into duplicate-surface vs other lossesWhy
The current 0.27 bottleneck is not just retrieval miss. In the 100-case qwen3.6-27B middle sweep, row-source passes but retrieved-source fails on 11 cases. Several are cases where the model selects a semantically near-equivalent sibling tool (
solve_quadraticvssolve_quadratic_equation,math.gcdvsnumber_theory.gcd).This change does not change scoring or hide exact-match failures. It marks high-confidence duplicate/equivalent tool surfaces so the next XGEN search work can focus on duplicate grouping, equivalence evidence, and selector rerank instead of blindly tuning BFCL exact names.
Evidence
Cached rerun of the 100-case qwen3.6-27B middle sweep with the new diagnostics:
Output includes:
Tagged cases:
simple_python_6:solve_quadraticvssolve_quadratic_equationsimple_python_12:geometry.circumferencevscalculate_circumferencesimple_python_21:number_theory.gcdvsmath.gcdsimple_python_22:math.gcdvsnumber_theory.gcdValidation
poetry run pytest tests/test_bfcl_tool_selection_llm_loop.py tests/test_bfcl_tool_selection_sweep.py -qpoetry run ruff check .poetry run ruff format --check .poetry run pytest tests/ -q(956 passed, 3 skipped)