Skip to content

feat: Model & Provider Catalog#11420

Draft
DeJeune wants to merge 12 commits intov2from
feat/v2/catalog
Draft

feat: Model & Provider Catalog#11420
DeJeune wants to merge 12 commits intov2from
feat/v2/catalog

Conversation

@DeJeune
Copy link
Collaborator

@DeJeune DeJeune commented Nov 23, 2025

model 和 provider 参数化

@DeJeune DeJeune changed the title Initial Prompt feat: Model & Provider Catalog Nov 23, 2025
- Introduced common types and validation utilities in common.types.ts
- Unified export of all schemas in index.ts for easier access
- Defined model configuration schemas including capabilities, pricing, and reasoning in model.schema.ts
- Created provider model override schemas to manage provider-specific configurations in override.schema.ts
- Established provider configuration schemas detailing metadata, capabilities, and behaviors in provider.schema.ts
- Introduced unified export for all catalog schemas and types in `index.ts`.
- Defined model configuration schemas in `model.ts`, including modalities, capabilities, reasoning, parameter support, and pricing.
- Created provider model override schemas in `override.ts` to manage provider-specific configurations.
- Established provider configuration schemas in `provider.ts`, detailing endpoint types, authentication methods, pricing models, and behavior characteristics.
- Implemented utility functions for JSON value validation and parsing in `json-value` and `parse-json` modules.
- Developed a schema validation utility in `SchemaValidator.ts` to validate model, provider, and override configurations with detailed error handling and warnings.
@DeJeune DeJeune marked this pull request as draft November 24, 2025 04:17
- Added a new Textarea component for user input.
- Configured ESLint with custom rules and global ignores.
- Developed a comprehensive API client with CRUD operations and error handling.
- Defined catalog types and schemas using Zod for type safety.
- Created utility functions for class name merging and validation.
- Established Next.js configuration for API rewrites and static file headers.
- Set up package.json with necessary dependencies and scripts.
- Configured PostCSS for Tailwind CSS integration.
- Added SVG assets for UI components.
- Configured TypeScript with strict settings and module resolution.
- Changed `perMillionTokens` to `per_million_tokens` in PricePerTokenSchema for snake_case consistency.
- Removed unused types from index.ts and simplified ProviderModelOverrideSchema by removing deprecated fields.
- Enhanced ModelConfigSchema to enforce unique capabilities and modalities, and made context_window and max_output_tokens optional.
- Updated ProviderConfigSchema to require at least one supported endpoint.
- Removed commented-out code and unused imports in route.ts for cleaner code.
- Added a cleanup script to remove deprecated fields from overrides.json.
- Implemented a new importer for AIHubMix models, transforming API data into the internal format.
- Created a utility for applying and validating model overrides, ensuring better error handling and warnings.
- Updated various scripts for better organization and clarity, including removing search models and generating AIHubMix models.
…ng deep merge capabilities

- Implemented mergeObjects function to smartly merge objects, preserving existing values and allowing for configurable overwrite options.
- Added mergeModelsList and mergeProvidersList functions to handle merging of model and provider lists, respectively, with case-insensitive ID matching.
- Introduced preset merge strategies for common use cases.
- Created a new API route for syncing provider models, handling data import and merge operations.
- Developed ModelEditForm and ProviderEditForm components for editing model and provider details, respectively, with form validation and state management.
- Added UI components for labels, selects, and notifications to enhance user experience.
@0xfullex
Copy link
Collaborator

0xfullex commented Dec 24, 2025

Note

This comment was translated by Claude.

Design documentation is required, down to detailed design level.


Original Content

需要设计文档,到详细设计级别

@0xfullex
Copy link
Collaborator

0xfullex commented Mar 10, 2026

Note

This comment was translated by Claude.

I thought of a name, we can call it model & provider registry.


Original Content

想到名字了,可以叫 model & provider registry

@DeJeune
Copy link
Collaborator Author

DeJeune commented Mar 10, 2026

I thought of a name, we can call it model & provider registry.

Note

This comment was translated by Claude.

OK


Original Content

🉑

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants