discourse/plugins/discourse-ai/evals/lib/runners
Natalie Tay fbcbdc46d8
FIX: Data explorer agent reliability for schema and plurality (#40152)
Reported through a few user tests, the agent was unreliable in three
ways:
- `tags.tag_name` instead of `tags.name`
- did not use `current_user_id` for "my posts" prompts
- plural nouns as singular
- and used unparse-able date defaults like "today".

Few issues:
- `DbSchema` tool was returning a dense one-line-per-table comma that
qwen was unable to deal with. Now line-per-column so schema accuracy
originally flaky is now 5/5 PASSING on qwen and Gemini.
- The prompt was teaching the wrong thing where the `-- null boolean
:opt_flag = #null` example made models use `#null` as a default value.
We now have a "Parameter rules" section, ISO date examples that match
the "no natural-language defaults" rule below them, explicit
`current_user_id` guidance for first-person prompts, and a plural-noun
rule that applies to each plural noun independently in the same prompt
(e.g. "categories and tags" → BOTH list params, not one of each).
- Eval runner now captures `name` and `description` separately, not just
`sql`. The description text is graded directly rather than grading the
SQL string.

Tested against qwen 3.5 122B (our hosted model) + Gemini 3.1 Flash Lite
(judge GPT-5.2): 20/20 each. New eval cases ship in this PR
https://github.com/discourse/discourse-ai-evals/pull/18
2026-05-19 16:23:17 +08:00
..
ai_helper.rb DEV: AI persona to agent migration (#38319) 2026-03-10 15:59:45 +11:00
base.rb FEATURE: AI-generated DE queries on /new before creation (#39412) 2026-04-22 13:50:26 +08:00
data_explorer.rb FIX: Data explorer agent reliability for schema and plurality (#40152) 2026-05-19 16:23:17 +08:00
discoveries.rb DEV: AI persona to agent migration (#38319) 2026-03-10 15:59:45 +11:00
hyde.rb DEV: AI persona to agent migration (#38319) 2026-03-10 15:59:45 +11:00
inference.rb DEV: AI persona to agent migration (#38319) 2026-03-10 15:59:45 +11:00
spam.rb DEV: AI persona to agent migration (#38319) 2026-03-10 15:59:45 +11:00
summarization.rb DEV: AI persona to agent migration (#38319) 2026-03-10 15:59:45 +11:00
translation.rb DEV: Update post translation prompts for german cases (#40112) 2026-05-18 20:31:13 +08:00