Skip to content

Conversation

@AnthonyRonning
Copy link
Contributor

@AnthonyRonning AnthonyRonning commented Dec 10, 2025

Changes

  • Allow starter plan users (any paid user) to access Qwen3-VL 30B
  • Change the Image Analysis category to use Qwen3-VL 30B instead of Gemma 3 27B
  • Gemma 3 27B remains available in the Advanced menu

This upgrades the default vision model for paid users while keeping Gemma accessible for those who prefer it.

Summary by CodeRabbit

  • New Features
    • Qwen3-VL 30B model now accessible to Starter tier users (previously Pro-only)
    • Image analysis category now powered by Qwen3-VL model

✏️ Tip: You can customize this high-level summary in your review settings.

AnthonyRonning and others added 2 commits December 10, 2025 13:23
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Gemma 3 27B remains available in the advanced menu.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
@coderabbitai
Copy link

coderabbitai bot commented Dec 10, 2025

Walkthrough

Two configuration adjustments to the Qwen3-VL 30B model in ModelSelector: the model's access requirement lowered from Pro to Starter tier with badge simplification, and the image category mapping reassigned from gemma-3-27b to qwen3-vl-30b.

Changes

Cohort / File(s) Summary
Qwen3-VL 30B Model Configuration
frontend/src/components/ModelSelector.tsx
Updated MODEL_CONFIG["qwen3-vl-30b"]: reduced badges from ["Pro","New"] to ["New"] and lowered access constraint from requiresPro: true to requiresStarter: true
Image Category Mapping
frontend/src/components/ModelSelector.tsx
Changed CATEGORY_MODELS.image assignment from "gemma-3-27b" to "qwen3-vl-30b"

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

  • Simple property updates in a single configuration object with no logic changes or side effects

Possibly related PRs

Poem

🐰 A model finds its place anew,
From Pro to Starter—quite the view!
Qwen takes the image-sight domain,
With badge-light simplified and plain.

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Upgrade vision model to Qwen3-VL 30B' directly and accurately describes the main change: updating the default vision model to Qwen3-VL 30B and adjusting access levels.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch upgrade-vision-model

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 10538ff and e7454f5.

📒 Files selected for processing (1)
  • frontend/src/components/ModelSelector.tsx (2 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
**/*.{ts,tsx}

📄 CodeRabbit inference engine (CLAUDE.md)

**/*.{ts,tsx}: Use path aliases (@/* maps to ./src/*) for imports in TypeScript/React files
Use 2-space indentation, double quotes, and enforce 100-character line limit in TypeScript/React code
Maintain strict TypeScript and avoid using any type
Use PascalCase for component names and camelCase for variables and function names
Use functional components with React hooks instead of class components
Use React context for global state management and TanStack Query for server state management
Run just format, just lint, and just build after making TypeScript/React changes to ensure code quality and compilation

Files:

  • frontend/src/components/ModelSelector.tsx
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
  • GitHub Check: build-android
  • GitHub Check: build-ios
  • GitHub Check: build-macos (universal-apple-darwin)
  • GitHub Check: build-linux
  • GitHub Check: Cloudflare Pages
🔇 Additional comments (2)
frontend/src/components/ModelSelector.tsx (2)

92-99: Qwen3-VL 30B access flags align with Starter (paid) tier requirement

Switching qwen3-vl-30b to requiresStarter: true (and dropping the Pro badge) correctly makes it available to Starter/Pro/Max/Team via hasAccessToModel, while still blocking free users. supportsVision: true stays intact so image flows and sorting continue to treat it as a vision model. The badge simplification is consistent with the existing getModelBadges filtering and won’t regress UI.


113-120: Image category now correctly targets Qwen3-VL 30B as default vision model

Pointing CATEGORY_MODELS.image at "qwen3-vl-30b" ensures:

  • Image category selection uses Qwen3-VL by default.
  • Auto-switch on chatHasImages will choose Qwen3-VL when the user has Starter-or-better access.
    Gemma 3 27B remains in MODEL_CONFIG and will still appear in the Advanced list when provided by the backend, matching the PR intent.

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

@cloudflare-workers-and-pages
Copy link

Deploying maple with  Cloudflare Pages  Cloudflare Pages

Latest commit: e7454f5
Status: ✅  Deploy successful!
Preview URL: https://a363bbc0.maple-ca8.pages.dev
Branch Preview URL: https://upgrade-vision-model.maple-ca8.pages.dev

View logs

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Dec 10, 2025

Greptile Overview

Greptile Summary

Changed the default vision model for image analysis from Gemma 3 27B to Qwen3-VL 30B and made it accessible to all paid users (Starter plan and above).

Changes:

  • Downgraded qwen3-vl-30b access requirement from Pro to Starter tier
  • Removed "Pro" badge, kept "New" badge
  • Updated CATEGORY_MODELS.image to use qwen3-vl-30b instead of gemma-3-27b
  • Gemma 3 27B remains available in the Advanced menu for users who prefer it

The changes are minimal, well-targeted, and preserve backward compatibility by keeping Gemma 3 27B available.

Confidence Score: 5/5

  • This PR is safe to merge with minimal risk
  • The changes are simple configuration updates affecting only model tier requirements and default selection. The code follows existing patterns, preserves vision capabilities, maintains backward compatibility by keeping Gemma 3 27B accessible, and aligns with the stated goal of upgrading the default vision model for paid users.
  • No files require special attention

Important Files Changed

File Analysis

Filename Score Overview
frontend/src/components/ModelSelector.tsx 5/5 Changed Qwen3-VL 30B from Pro to Starter tier and set it as default Image Analysis model, replacing Gemma 3 27B

Sequence Diagram

sequenceDiagram
    participant User
    participant ModelSelector
    participant hasAccessToModel
    participant BillingStatus
    
    User->>ModelSelector: Upload image to chat
    ModelSelector->>ModelSelector: chatHasImages = true
    ModelSelector->>ModelSelector: Check CATEGORY_MODELS.image
    Note over ModelSelector: CATEGORY_MODELS.image = "qwen3-vl-30b"
    
    ModelSelector->>hasAccessToModel: Check access to "qwen3-vl-30b"
    hasAccessToModel->>BillingStatus: Get product_name
    
    alt User has Starter/Pro/Max/Team plan
        BillingStatus-->>hasAccessToModel: "starter" or higher plan
        hasAccessToModel-->>ModelSelector: true (access granted)
        ModelSelector->>ModelSelector: Auto-switch to Qwen3-VL 30B
        ModelSelector-->>User: Model set to Qwen3-VL 30B
    else User on free plan
        BillingStatus-->>hasAccessToModel: free plan
        hasAccessToModel-->>ModelSelector: false (no access)
        ModelSelector->>ModelSelector: Show upgrade dialog
        ModelSelector-->>User: Prompt to upgrade
    end
    
    Note over ModelSelector: Gemma 3 27B still available<br/>in Advanced menu
Loading

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

1 file reviewed, no comments

Edit Code Review Agent Settings | Greptile

@AnthonyRonning AnthonyRonning merged commit 700f00a into master Dec 10, 2025
7 checks passed
@AnthonyRonning AnthonyRonning deleted the upgrade-vision-model branch December 10, 2025 20:24
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