feat: add Volcano Engine providers and coding plan support#1093
feat: add Volcano Engine providers and coding plan support#1093Maaannnn wants to merge 9 commits into
Conversation
添加火山引擎(Doubao)和火山引擎编码计划作为新的AI提供商支持,包括: - 在多个文件中添加VOLCENGINE_API_KEY环境变量配置 - 添加volcengine和volcengine_coding提供商信息 - 更新模型目录添加火山引擎相关模型
更新模型目录中的火山引擎编码计划模型,增加新模型并调整现有模型的参数
将火山引擎相关配置移至列表更靠前的位置,并确保其配置完整
…vider Updated the display name for the Volcano Engine provider across multiple files to remove the "(Doubao)" suffix for consistency.
…ific lookups - Updated `find_model` and `pricing` methods in `ModelCatalog` to support provider-prefixed IDs, preventing cross-provider pricing errors. - Introduced `estimate_cost_with_catalog_for_provider` in `MeteringEngine` for accurate cost estimation based on provider. - Adjusted various references in `OpenFangKernel` to utilize new provider-aware methods for model lookups and cost estimation. All tests passing. 8 files changed, 50 insertions.
…the model catalog
|
@jaberjaber23 Resubmitted with the duplicate-ID follow-up and targeted test evidence in the PR body. Could you please take another look when you have time? Thank you. |
# Conflicts: # crates/openfang-cli/src/main.rs # crates/openfang-runtime/src/mcp.rs
|
Reviewed. Models are real (Doubao Seed 2.0 series, MiniMax M2.5, GLM-4.7, DeepSeek V3.2, Kimi K2.5, ark-code-latest), context windows match official specs within rounding, no User-Agent spoofing, wiring is complete (catalog, metering, driver defaults, CLI provider list, init wizard, welcome, key probe, env var detection). The provider-prefixed IDs and pricing_for_provider/estimate_cost_with_catalog_for_provider correctly fix the duplicate-name collision raised on #873, and the see provider pricing label is the right call for a subscription plan. Cannot merge: branch has conflicts with main. Please rebase onto latest main. |
Summary
This resubmits Volcano Engine support for OpenFang and folds in the follow-up requested on #873.
Behavior Changes
volcengineandvolcengine_codingto provider discovery, setup flows, and API key validationVolcano Enginevolcengine_codingzero-price placeholders asfreein the init wizardReview Follow-up
volcengine_coding/...and using provider-aware model/pricing resolution in the catalog, metering, and kernel pathsark-code-latestas the default Coding Plan model for setup flowssee provider pricingin the CLI instead of claiming they are freeTests
cargo test -p openfang-runtime model_catalog -- --nocapturecargo test -p openfang-kernel metering -- --nocapturecargo test -p openfang-cli render_as_free -- --nocapturecargo test -p openfang-cli volcengine_coding_zero_cost_models_do_not_render_as_free -- --nocapturecargo test -p openfang-cli provider -- --nocapture(compiled successfully; 0 tests matched the filter)Not Run
cargo test --workspacecargo clippy --workspace --all-targets -- -D warnings