Skip to content

Paper: Voice Capture, Structured Extraction, and Multi-Source Routing: Building and Evaluating a Field-Inspection Assistant in Python - #1222

Open
CarolynOlsen wants to merge 10 commits into
scipy-conference:2026from
CarolynOlsen:paper-carolyn-olsen
Open

CarolynOlsen wants to merge 10 commits into
scipy-conference:2026from
CarolynOlsen:paper-carolyn-olsen

Conversation

@CarolynOlsen

Copy link
Copy Markdown

Draft submission for 2026. Thank you for your time and consideration!

@github-actions

github-actions Bot commented Jun 12, 2026 •

Copy link
Copy Markdown

Curvenote Preview

Directory Preview Checks Updated (UTC)
papers/carolyn_olsen 🔍 Inspect ✅ 48 checks passed (19 optional) Oct 9, 2026, 5:39 AM

@CarolynOlsen
CarolynOlsen marked this pull request as ready for review June 13, 2026 02:00
Copilot AI review requested due to automatic review settings June 13, 2026 02:00

Copilot AI 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.

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Adds a new SciPy 2026 paper submission for Carolyn Olsen (HiveGuide), including the MyST build config, manuscript text, and bibliography.

Changes:

  • Added myst.yml project configuration for building/exporting the paper PDF.
  • Added the full manuscript (main.md) with citations, figures, and tables.
  • Added a dedicated bibliography file (mybib.bib) for references cited in the manuscript.

Reviewed changes

Copilot reviewed 3 out of 6 changed files in this pull request and generated 3 comments.

File Description
papers/carolyn_olsen/myst.yml Defines MyST project metadata, build/export settings, and citation error rules for the paper.
papers/carolyn_olsen/mybib.bib Supplies BibTeX entries referenced by the manuscript’s [@...] citations.
papers/carolyn_olsen/main.md Adds the paper content, including citations that rely on bibliography configuration and BibTeX parsing.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +1 to +3
version: 1
extends: ../papers.yml
project:

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

I'm wondering if this is a false positive in the copilot auto PR review comments? I don't see any leading spaces here, unless I'm looking in the wrong place.

Comment thread papers/carolyn_olsen/main.md
Comment thread papers/carolyn_olsen/mybib.bib
@rowanc1 rowanc1 added the draft This triggers Curvenote Preview actions label Jun 13, 2026
@CarolynOlsen

Copy link
Copy Markdown
Author

Hello, @scipy-conference/2026-proceedings! I just wanted to make sure I didn't miss any steps for submission, since I haven't seen a reviewer assigned? Thank you in advance!

@cdlindsey cdlindsey self-assigned this Jul 3, 2026

@ileri-oluwa-kiiye ileri-oluwa-kiiye 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.

Overall Assessment

This is a strong, well-scoped submission. HiveGuide combines a genuine open-source Python contribution with an empirical evaluation of seven source-routing strategies on a 501-query benchmark. The paper is particularly strong in being transparent about limitations, including low absolute Hit@5 scores, agent failures, and single-pass evaluation constraints.

I recommend acceptance with minor revisions.

Fit for SciPy

Clear yes. The contribution is concretely Python-based (FastAPI, pgvector, LangChain, Pydantic, LightGBM, scikit-learn, NumPy), reusable through its pluggable architecture, and framed as a domain-agnostic template rather than only a beekeeping application.

Reproducibility

Strong. The three-command reproduction path, frozen results, fixed seed, checkpointing, and public repository provide a solid foundation for reproducibility.

Writing Quality

The paper has a clear motivation, explicit contributions, minimal marketing language, and claims that are generally well-supported by experiments. The requested inline comments are primarily to improve clarity and reproducibility for readers.

the pgvector extension [@pgvector]; orchestration uses LangChain [@langchain]; the
client is a React Native (iOS) app; and all model calls are routed through
OpenRouter: GPT-4o for intent classification, `gpt-oss-120b` for generation, and
`text-embedding-3-large` for vectors. These three lanes are the units a forker

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

The forkability argument is a strong part of the contribution. Consider adding a small table here distinguishing domain-agnostic infrastructure (capture/ingestion/assistant lanes, validation harness, routing interfaces) from beekeeping-specific components (inspection schema, corpus, routing examples). This would make the reuse story clearer for readers evaluating what they can directly adapt.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Great idea -- I've added some text and a table here: b95807d

unnecessary retrieval. The embedding router achieved 87.0% with no model training
(only labeled example queries), making it attractive when training data is scarce.
Heuristics captured surprising signal (73.1%) from keyword patterns alone.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

The relationship between routing accuracy and Hit@5 could use additional clarification here. The supervised classifier’s high routing accuracy does not translate into dramatically higher Hit@5 because retrieval quality remains a bottleneck after the correct source is selected. A short distinction between “selecting the correct source” and “retrieving the correct chunk from that source” would help readers interpret these metrics.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Clarified in 6412ec0

End-to-end **latency** is measured with `perf_counter` and includes retries, and
**cost** combines per-model token usage at list prices for GPT-4o, `gpt-oss-120b`, and
the Claude Haiku 4.5 judge.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

The use of Claude Haiku 4.5 as an LLM judge is reasonable, but a brief justification would strengthen this section. For example, mention whether this choice was motivated by cost, availability, or prior evidence of agreement between LLM-based evaluation and human judgments. This is particularly important because groundedness scores drive one of the more surprising findings in the results.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Added explanation in 40e3261

Comment thread papers/carolyn_olsen/main.md Outdated
boosting rounds) on TF-IDF features (unigrams and bigrams, up to 5000) of 499 labeled
queries with a stratified 75/25 split. The **embedding** router indexes 20 example
queries per category (60 vectors) and uses `k=3` neighbors, tuned on a held-out
split. The **LLM** classifier uses GPT-4o with few-shot prompting; label

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

For reproducibility, could you specify the held-out split used for tuning (e.g., number of samples and how it was separated from the evaluation benchmark)?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

This is now addressed here: 4bcb815

If the clarification isn't clear enough, please let me know.

@CarolynOlsen

Copy link
Copy Markdown
Author

@ileri-oluwa-kiiye Thank you so much for your comments and suggestions! I have made edits to address your feedback and will respond to your individual comments with the relevant commits.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@fwkoch fwkoch added approved This triggers Curvenote Submission action and removed draft This triggers Curvenote Preview actions labels Oct 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved This triggers Curvenote Submission action

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants