feat: Update model metadata for Anthropic, Google, OpenAI#11916
feat: Update model metadata for Anthropic, Google, OpenAI#11916HimavarshaVS merged 20 commits intomainfrom
Conversation
Add and reorganize model metadata across providers: - Anthropic: add "claude-opus-4-6" and "claude-sonnet-4-6", reinsert "claude-opus-4-5-20251101" and mark older claude-3 haiku models as deprecated. - Google Generative AI: add preview model "gemini-3.1-pro-preview". - OpenAI: add "gpt-5.2" (reasoning) and add "gpt-4.1", "gpt-4.1-mini", "gpt-4.1-nano" as tool-calling models; convert "gpt-4.5-preview" to deprecated and adjust deprecation/not_supported flags for several o* reasoning models (e.g. o1-mini deprecated, other o1/o3/o4 variants marked not_supported as appropriate). These changes update available/preview/deprecated flags and add newly supported model entries to the unified metadata lists.
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the Use the checkbox below for a quick retry:
WalkthroughThis PR updates model configurations and availability metadata by adding newer Claude, GPT, and Gemini model variants, deprecating older versions, and updating the vlmrun dependency version. Changes are isolated to model definition constants and a component index configuration file. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes 🚥 Pre-merge checks | ✅ 5 | ❌ 2❌ Failed checks (1 error, 1 warning)
✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Pull request overview
Updates the unified model metadata lists and the UI model selectors to reflect newly added, preview, and deprecated LLM models across Anthropic, Google Generative AI, and OpenAI.
Changes:
- Added new model metadata entries (OpenAI:
gpt-5.2,gpt-4.1*; Google:gemini-3.1-pro-preview; Anthropic:claude-*-4-6). - Adjusted lifecycle flags (
preview,deprecated,not_supported) for several existing models. - Updated the component index JSON options/defaults to include the new model names.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| src/lfx/src/lfx/base/models/openai_constants.py | Adds OpenAI model entries and adjusts flags for gpt-4.5-preview and o* reasoning models. |
| src/lfx/src/lfx/base/models/google_generative_ai_constants.py | Adds gemini-3.1-pro-preview to Google Generative AI model metadata. |
| src/lfx/src/lfx/base/models/anthropic_constants.py | Adds Claude 4.6 models and marks older Claude Haiku models as deprecated. |
| src/lfx/src/lfx/_assets/component_index.json | Updates model dropdown options/defaults and bumps dependency/version metadata in the generated index. |
Comments suppressed due to low confidence (2)
src/lfx/src/lfx/_assets/component_index.json:1
- This PR updates a dependency version inside the generated
component_index.jsonwithout showing the corresponding source-of-truth change (e.g., lockfile / dependency manifest update). Ifcomponent_index.jsonis generated, it’s better to update the actual dependency definition and regenerate the index (so the “why” and provenance are auditable), rather than editing the generated artifact directly.
src/lfx/src/lfx/_assets/component_index.json:1 - The Anthropic model constants keep
claude-3-5-haiku-20241022andclaude-3-haiku-20240307asdeprecated=True, but those models are removed entirely from the UI options list here. If the intent is “still selectable but labeled deprecated,” these options should remain present (with whatever UI mechanism indicates deprecation). If the intent is “not selectable,” consider reflecting that in metadata asnot_supported=True(or removing the entries) to keep the unified metadata and UI selector behavior consistent.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| ), | ||
| create_model_metadata( | ||
| provider="OpenAI", name="gpt-4.5-preview", icon="OpenAI", tool_calling=True, preview=True, not_supported=True | ||
| provider="OpenAI", name="gpt-4.5-preview", icon="OpenAI", tool_calling=True, preview=True, deprecated=True |
There was a problem hiding this comment.
Having preview=True and deprecated=True on the same entry is semantically unclear (is it still being previewed or already being phased out?), and deprecated=True combined with not_supported=True is also ambiguous (deprecated usually implies still usable but discouraged). Consider standardizing lifecycle semantics so each model’s state is unambiguous (e.g., avoid preview+deprecated together, and use either deprecated or not_supported unless there’s a clearly documented meaning for the combination).
| ), | ||
| create_model_metadata( | ||
| provider="OpenAI", name="o4-mini-high", icon="OpenAI", reasoning=True, preview=True, not_supported=True | ||
| provider="OpenAI", name="o1-mini", icon="OpenAI", reasoning=True, not_supported=True, deprecated=True |
There was a problem hiding this comment.
Having preview=True and deprecated=True on the same entry is semantically unclear (is it still being previewed or already being phased out?), and deprecated=True combined with not_supported=True is also ambiguous (deprecated usually implies still usable but discouraged). Consider standardizing lifecycle semantics so each model’s state is unambiguous (e.g., avoid preview+deprecated together, and use either deprecated or not_supported unless there’s a clearly documented meaning for the combination).
| create_model_metadata(provider="OpenAI", name="o3-mini", icon="OpenAI", reasoning=True, not_supported=True), | ||
| create_model_metadata(provider="OpenAI", name="o3", icon="OpenAI", reasoning=True, not_supported=True), | ||
| create_model_metadata(provider="OpenAI", name="o3-pro", icon="OpenAI", reasoning=True, not_supported=True), | ||
| create_model_metadata(provider="OpenAI", name="o4-mini", icon="OpenAI", reasoning=True, not_supported=True), |
There was a problem hiding this comment.
This change drops preview=True from these reasoning models (they were previously marked as preview in this same section). If any UI/logic relies on preview to label or group models, this will change behavior beyond the stated “adjust not_supported flags”. If they are still considered preview models, add preview=True back; if not, update the surrounding comments/grouping to reflect they’re no longer preview.
Codecov Report✅ All modified and coverable lines are covered by tests. ❌ Your project status has failed because the head coverage (42.03%) is below the target coverage (60.00%). You can increase the head coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## main #11916 +/- ##
=======================================
Coverage 35.34% 35.34%
=======================================
Files 1534 1534
Lines 75081 75081
Branches 11312 11312
=======================================
Hits 26539 26539
Misses 47095 47095
Partials 1447 1447
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
🧹 Nitpick comments (2)
src/lfx/src/lfx/base/models/openai_constants.py (1)
65-67: Redundant flags:deprecatedhas no effect whennot_supported=True.Setting both
not_supported=Trueanddeprecated=Trueono1-miniis redundant. Thenot_supportedflag already excludes this model fromOPENAI_REASONING_MODEL_NAMES(line 118), making thedeprecatedflag effectively invisible to consumers.If the intent is to track that OpenAI deprecated this model externally, consider adding a comment. Otherwise, remove the redundant flag.
♻️ Option 1: Remove redundant deprecated flag
create_model_metadata( - provider="OpenAI", name="o1-mini", icon="OpenAI", reasoning=True, not_supported=True, deprecated=True + provider="OpenAI", name="o1-mini", icon="OpenAI", reasoning=True, not_supported=True ),♻️ Option 2: Add clarifying comment if both flags are intentional
+ # o1-mini: deprecated by OpenAI and not supported in Langflow create_model_metadata( provider="OpenAI", name="o1-mini", icon="OpenAI", reasoning=True, not_supported=True, deprecated=True ),🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/lfx/src/lfx/base/models/openai_constants.py` around lines 65 - 67, The entry for "o1-mini" in create_model_metadata sets both not_supported=True and deprecated=True which is redundant because not_supported already excludes it from OPENAI_REASONING_MODEL_NAMES; either remove the deprecated=True flag from the create_model_metadata call for name="o1-mini", or if you intentionally want to record external deprecation keep deprecated=True but add a clarifying comment above the create_model_metadata call explaining that not_supported hides the flag from consumers and the deprecated flag is only for historical/annotation purposes.src/lfx/src/lfx/base/models/google_generative_ai_constants.py (1)
68-75: Section comment doesn't match model version.The model
gemini-3.1-pro-previewis placed under the# GEMINI 3.0 (preview)section header. Consider updating the section comment to reflect the 3.x family or adding a separate# GEMINI 3.1 (preview)section for clarity.♻️ Suggested section reorganization
- # GEMINI 3.0 (preview) + # GEMINI 3.x (preview) create_model_metadata( provider="Google Generative AI", name="gemini-3.1-pro-preview",🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/lfx/src/lfx/base/models/google_generative_ai_constants.py` around lines 68 - 75, Section header is inaccurate: move or rename the comment above create_model_metadata entries so the gemini-3.1-pro-preview entry is under a matching GEMINI 3.1 section; specifically update the comment from "# GEMINI 3.0 (preview)" to either "# GEMINI 3.x (preview)" or add a new "# GEMINI 3.1 (preview)" header and place the create_model_metadata(provider="Google Generative AI", name="gemini-3.1-pro-preview", ...) entry under that header to keep version grouping consistent.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@src/lfx/src/lfx/base/models/google_generative_ai_constants.py`:
- Around line 68-75: Section header is inaccurate: move or rename the comment
above create_model_metadata entries so the gemini-3.1-pro-preview entry is under
a matching GEMINI 3.1 section; specifically update the comment from "# GEMINI
3.0 (preview)" to either "# GEMINI 3.x (preview)" or add a new "# GEMINI 3.1
(preview)" header and place the create_model_metadata(provider="Google
Generative AI", name="gemini-3.1-pro-preview", ...) entry under that header to
keep version grouping consistent.
In `@src/lfx/src/lfx/base/models/openai_constants.py`:
- Around line 65-67: The entry for "o1-mini" in create_model_metadata sets both
not_supported=True and deprecated=True which is redundant because not_supported
already excludes it from OPENAI_REASONING_MODEL_NAMES; either remove the
deprecated=True flag from the create_model_metadata call for name="o1-mini", or
if you intentionally want to record external deprecation keep deprecated=True
but add a clarifying comment above the create_model_metadata call explaining
that not_supported hides the flag from consumers and the deprecated flag is only
for historical/annotation purposes.
ℹ️ Review info
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (4)
src/lfx/src/lfx/_assets/component_index.jsonsrc/lfx/src/lfx/base/models/anthropic_constants.pysrc/lfx/src/lfx/base/models/google_generative_ai_constants.pysrc/lfx/src/lfx/base/models/openai_constants.py
* Update model metadata for Anthropic, Google, OpenAI Add and reorganize model metadata across providers: - Anthropic: add "claude-opus-4-6" and "claude-sonnet-4-6", reinsert "claude-opus-4-5-20251101" and mark older claude-3 haiku models as deprecated. - Google Generative AI: add preview model "gemini-3.1-pro-preview". - OpenAI: add "gpt-5.2" (reasoning) and add "gpt-4.1", "gpt-4.1-mini", "gpt-4.1-nano" as tool-calling models; convert "gpt-4.5-preview" to deprecated and adjust deprecation/not_supported flags for several o* reasoning models (e.g. o1-mini deprecated, other o1/o3/o4 variants marked not_supported as appropriate). These changes update available/preview/deprecated flags and add newly supported model entries to the unified metadata lists. * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: himavarshagoutham <himavarshajan17@gmail.com> Co-authored-by: Adam Aghili <Adam.Aghili@ibm.com> Co-authored-by: Himavarsha <40851462+HimavarshaVS@users.noreply.github.com>
Add and reorganize model metadata across providers:
These changes update available/preview/deprecated flags and add newly supported model entries to the unified metadata lists.
Summary by CodeRabbit
Release Notes
New Features
Chores