Skip to content

feat(eval-harness): default retrieval to auto search - #589

Merged
jackaldenryan merged 2 commits into
mainfrom
jack/eval-auto-search-config
Jul 31, 2026
Merged

feat(eval-harness): default retrieval to auto search#589
jackaldenryan merged 2 commits into
mainfrom
jack/eval-auto-search-config

Conversation

@jackaldenryan

Copy link
Copy Markdown
Contributor

Summary

  • Moves eval context retrieval into retrieval_strategy.build_context_block, defaulting to scope="auto" with a 10k character budget.
  • Prepends the user-node summary (fetched via user.get_node) and optionally concatenates document-graph auto search when --doc-run is set.
  • Removes per-type facts/entities/episodes limit constants and updates harness docs to describe the strategy-module approach.

Test plan

  • Run a user-only eval (uv run zep_evaluate.py) and confirm context includes <USER_SUMMARY> plus auto-packed graph context
  • Run with --doc-run N and confirm document context is appended
  • Check results JSON search_configuration shows strategy/scope/max_characters

Made with Cursor

Move context retrieval into retrieval_strategy.build_context_block so evals use scope=auto with a 10k character budget, prepend the user-node summary, and drop per-type search limit constants.

Co-authored-by: Cursor <cursoragent@cursor.com>

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

  • Criticalzep-eval-harness/config/evaluation_config/retrieval_strategy.py:72: build_context_block() now fetches the same user summary for every test case. With the default concurrency of 15, this creates many concurrent user.get_node() calls per user, each potentially retrying nine times. This can trigger rate limits, substantially delay evaluations, and cause inconsistent context when only some lookups fail. Previously, the summary was fetched once per user. Fetch it once in evaluate_all_questions() and pass it into build_context_block(), or cache one task/result per user.

Avoid redundant user.get_node calls under concurrent evaluation by loading the summary once and passing it into build_context_block.

Co-authored-by: Cursor <cursoragent@cursor.com>

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

No actionable findings. The auto-search retrieval refactor appears internally consistent with the harness’s configuration snapshotting, retry, concurrency, and result-generation conventions.

@jackaldenryan
jackaldenryan merged commit 1c58192 into main Jul 31, 2026
10 checks passed
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.

1 participant