Skip to content

Serve a provider's inference region as a facet - #447

Merged
seribaymadina merged 4 commits into
mainfrom
inference-region
Aug 5, 2026
Merged

Serve a provider's inference region as a facet#447
seribaymadina merged 4 commits into
mainfrom
inference-region

Conversation

@seribaymadina

@seribaymadina seribaymadina commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Fish Audio flagged that we measure them from us-east-1 while their inference runs in us-west-1, so their TTFA carries a cross-country round-trip that isn't the model's own speed.

This records an optional region on the registry entry and serves it as an "Inference region" facet on /v1/providers. API-only. The web change that renders the badge follows once this is deployed, it needs prod /v1/providers to serve region before the badge has anything to show.

Greptile Summary

Adds an optional confirmed inference region to registered models and exposes it as a raw-valued facet through /v1/providers.

  • Labels all three Fish Audio models with us-west-1.
  • Adds the region tag category and “Inference region” display label.
  • Preserves region identifiers without capitalization and tests labeled and unlabeled providers.

Confidence Score: 5/5

The PR appears safe to merge; no concrete blocking or independently actionable non-blocking defect remains.

The optional field defaults safely, all current Fish Audio models are labeled consistently, the API schema accepts the new category, and provider runtime configuration remains isolated from the metadata field.

Reviews (1): Last reviewed commit: "Serve a provider's inference region as a..." | Re-trigger Greptile

Context used:

Fish Audio runs inference in us-west-1 while our workers are in us-east-1, so
their latency carries a cross-country round-trip. Records the region on the
registry entry and serves it as an Inference region facet; models stay
unlabelled unless the provider confirmed where they serve from.
@seribaymadina
seribaymadina requested a review from a team as a code owner August 5, 2026 00:13
@vercel

vercel Bot commented Aug 5, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
benchmarks Ready Ready Preview Aug 5, 2026 7:53pm

Request Review

@coderabbitai

coderabbitai Bot commented Aug 5, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@seribaymadina, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 47 minutes

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 1293e201-7ec5-4256-a145-59e2dd0623c6

📥 Commits

Reviewing files that changed from the base of the PR and between fbf31ea and a004908.

📒 Files selected for processing (3)
  • web/components/overview/AboutMethodology.tsx
  • web/lib/utils/facets.test.ts
  • web/lib/utils/facets.ts

Walkthrough

Registered models now support optional serving regions. Fish Audio models declare us-west-1. Provider tags expose raw region facets when configured. Dashboard state derives cross-region models from region facets and passes them to charts, tooltips, and tables. Shared region badges and interactive markers display the inference region. Methodology text documents regional latency effects.

Suggested reviewers: coval-cale, cooperr1

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 75.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main change: exposing a provider's inference region as a facet.
Description check ✅ Passed The description directly explains the inference-region metadata, API facet, affected models, and related dashboard changes.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Fish Audio serves inference from us-west-1 while our workers run in us-east-1,
so their latency carries a round-trip we can't subtract. Models served outside
our region now show a globe beside the model on the box plot, the WER bars and
the comparison table, a row in each chart tooltip, and an Inference region
filter chip. The methodology note says why the gap exists.

@coderabbitai coderabbitai 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.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@web/components/overview/AboutMethodology.tsx`:
- Line 57: Update the methodology text in AboutMethodology so it distinguishes
excluded connection setup from included request-path network latency, avoiding
the claim that measurements reflect only the model. Replace “wherever they've
told us” with wording that indicates a provider region is labeled only when
confirmed.

In `@web/lib/utils/facets.ts`:
- Around line 232-237: Update the facet-group filtering condition in the
region/category construction logic so REGION_CATEGORY also requires at least one
shared region value before the group is pushed. Preserve the existing
SOURCE_CATEGORY and other-category thresholds, ensuring globally defined regions
with no visible model values do not render an empty facet.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 5d95b06f-7cf1-4961-bbd6-3fba721db5f3

📥 Commits

Reviewing files that changed from the base of the PR and between a9e1489 and fbf31ea.

⛔ Files ignored due to path filters (1)
  • web/lib/api/generated/schema.ts is excluded by !**/generated/**
📒 Files selected for processing (16)
  • runner/src/coval_bench/registries/models.py
  • web/components/charts/d3/BoxPlot.tsx
  • web/components/charts/tooltips/BarTooltip.tsx
  • web/components/charts/tooltips/ScatterTooltip.tsx
  • web/components/dashboard/BoxPlotSection.tsx
  • web/components/dashboard/LatencyAccuracySection.tsx
  • web/components/dashboard/ModelComparisonSection.tsx
  • web/components/dashboard/ModelComparisonTable.tsx
  • web/components/dashboard/QualityBarSection.tsx
  • web/components/overview/AboutMethodology.tsx
  • web/components/shared/DedicatedInferenceInfo.tsx
  • web/components/shared/InferenceRegionInfo.tsx
  • web/components/shared/TooltipBadge.tsx
  • web/hooks/useDashboardState.tsx
  • web/lib/utils/facets.ts
  • web/types/chart.types.ts
🚧 Files skipped from review as they are similar to previous changes (1)
  • runner/src/coval_bench/registries/models.py

Comment thread web/components/overview/AboutMethodology.tsx Outdated
Comment thread web/lib/utils/facets.ts Outdated
An exempt category skipped the value-count check entirely, so benchmarks with
no region-labelled model rendered an empty group header. Region now needs one
value rather than two. Also drops the claim that latency reflects only the
model, since excluding connection setup doesn't exclude the request round-trip.
@seribaymadina
seribaymadina added this pull request to the merge queue Aug 5, 2026
Merged via the queue into main with commit e5f38ee Aug 5, 2026
11 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.

2 participants