Judge posts in groups: one classifier request per group - #8
Merged
Merged
Conversation
The classifier answers every question in a request in parallel, so a group of posts costs about one round trip and half the tokens of asking one by one. Measured on OpenRouter with 16 posts: ~440 ms for one request of 16 against ~380 ms for a single post, and 3,175 tokens against 6,710. - A group goes in one request, keyed p1..pN, each question naming its own post so the others are context and never the subject. A lone post keeps the single-post request it always had. - Images work per group: one request scores the text, a second carries only the posts whose score fell in the reader's image range, plus any with no text. A failed text request is no reason to pay for images. - "Posts per request" is the batch size the chat model already used; the classifier's other slider now counts requests at once, which is what the worker-wide gate limits. One post per request is still a setting away. - A post the classifier skips fails alone and is retried; a request that fails takes only its own group with it. - The debug trace says how many posts shared a request. Clear cases score the same either way. Borderline posts move, since they are judged side by side, so the prompt version is bumped and cached verdicts are decided again once.
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (4)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
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.
The classifier answers every question in a request in parallel, so posts now go to it in groups.
Measured
OpenRouter, 16 posts, filter "no crypto shilling":
Clear cases scored within 1–2 points either way. Borderline posts moved by up to ~30 points, and in this sample toward the better call ("Bitcoin ETF flows, explained" 79% alone, ~50% in a group). Repeat runs differ by 1–3 points, so the shift is the batching, not noise. One filter and 16 posts: a good sign, not proof.
What changes
p1..pN; each question names its own post. A lone post keeps the single-post request.Not run against Vercel or TypeSafe keys; same request shape. Not tried in a browser on x.com; the extension's own
classifywas run live against OpenRouter.125 tests pass;
bun run checkis clean.