新增: provider 支持(11 厂商预设 + modalities 修正 + defaultModel 更新 + 噪音过滤 + UI 提示)
providerPresets 扩展 6 厂商(Qwen/Kimi/ERNIE/Spark/Doubao/Gemini)+ SenseNova base_url 修正; modalities 预设表补 SenseNova flash-lite vision;defaultModel 过时更新;sensenova-u1 图像生成 噪音过滤;ProviderPanel defaultModel UI 提示。
This commit is contained in:
@@ -96,6 +96,9 @@
|
||||
<div class="form-field">
|
||||
<label class="form-label">{{ $t('settings.labelDefaultModel') }}</label>
|
||||
<input v-model="providerForm.defaultModel" class="setting-input" :placeholder="$t('settings.phDefaultModel')" />
|
||||
<!-- 方向 A(轻量):defaultModel 仅作"建议起点"——预设 model id 易过时(DeepSeek chat 停用 /
|
||||
Gemini 2.5→3.5 等),提示用户点「测试连接」拉真实模型列表覆盖,降低踩过时默认值的困惑。 -->
|
||||
<div class="form-field-hint">{{ $t('settings.defaultModelHint') }}</div>
|
||||
</div>
|
||||
<!-- P0-2: 保存失败持久错误横幅(常驻表单内,非自隐 toast)。
|
||||
含分类建议:keyring/迁移失败 → 查系统钥匙串权限;其它 → 通用重试。
|
||||
@@ -530,6 +533,9 @@ onMounted(loadProviders)
|
||||
.form-grid { display: flex; flex-direction: column; gap: 14px; }
|
||||
.form-field { display: flex; flex-direction: column; gap: 4px; }
|
||||
.form-label { font-size: 12px; font-weight: 500; color: var(--df-text-secondary); }
|
||||
/* 字段级辅助说明(默认模型提示等):弱化色 + 小字,与 label/input 区分层级。
|
||||
复用现有 --df-text-dim token(对齐 .empty-hint / .pool-weight-hint 风格)。 */
|
||||
.form-field-hint { font-size: 11px; color: var(--df-text-dim); line-height: 1.5; }
|
||||
.form-actions { display: flex; justify-content: flex-end; padding-top: 4px; }
|
||||
|
||||
/* P0-2: 保存失败持久错误横幅(常驻 form-actions 上方,醒目于自隐 toast) */
|
||||
|
||||
@@ -2,18 +2,24 @@
|
||||
* 厂商预设数据(项 D:文档探索失败时兜底 + 配置体验)。
|
||||
*
|
||||
* 选中预设后表单自动填入 providerType / baseUrl / defaultModel;用户仍可手改覆盖。
|
||||
* "自定义" 不预填(纯手填)。endpoints 均来自代码库实测核验,非猜测:
|
||||
* "自定义" 不预填(纯手填)。endpoints 均来自官方文档/WebSearch 核验,非猜测:
|
||||
*
|
||||
* - OpenAI openai_compat https://api.openai.com (openai_compat.rs:45 / presets/models.json)
|
||||
* - GLM/智谱 openai_compat https://open.bigmodel.cn/api/paas/v4 (model_fetch_helpers.rs:178,实测端点)
|
||||
* - DeepSeek openai_compat https://api.deepseek.com (openai_compat.rs:45 / model_fetch_helpers.rs:187)
|
||||
* - SenseNova openai_compat https://api.sensenova.cn/compatible-mode/v1 (scripts/test_sensenova.py 实测,非 token 端点)
|
||||
* - Anthropic anthropic https://api.anthropic.com (anthropic_compat.rs:51)
|
||||
* - GLM/智谱 openai_compat https://open.bigmodel.cn/api/paas/v4 (model_fetch_helpers.rs:178,实测端点)
|
||||
* - DeepSeek openai_compat https://api.deepseek.com (openai_compat.rs:45)
|
||||
* - SenseNova openai_compat https://token.sensenova.cn/v1 (官方 token plan 端点;db 用户实测可用;来源见下方 SenseNova 注释)
|
||||
* - 通义千问 openai_compat https://dashscope.aliyuncs.com/compatible-mode/v1 (阿里云百炼 DashScope;https://help.aliyun.com/zh/model-studio/compatibility-of-openai-with-dashscope)
|
||||
* - 月之暗面 Kimi openai_compat https://api.moonshot.cn/v1 (Moonshot AI;https://platform.moonshot.cn/docs)
|
||||
* - 百度文心 openai_compat https://qianfan.baidubce.com/v2 (百度千帆 ModelBuilder v2;https://ai.baidu.com/ai-doc/WENXINWORKSHOP/2m3fihw8s)
|
||||
* - 讯飞星火 openai_compat https://spark-api-open.xf-yun.com/v1 (讯飞开放平台 OpenAI 兼容;https://www.xfyun.cn/doc/spark/HTTP%E8%B0%83%E7%94%A8%E6%96%87%E6%A1%A3.html)
|
||||
* - 字节豆包 openai_compat https://ark.cn-beijing.volces.com/api/v3 (火山方舟 Ark;https://www.volcengine.com/docs/82379/1330626)
|
||||
* - Google Gemini openai_compat https://generativelanguage.googleapis.com/v1beta/openai (Google AI for Developers;https://ai.google.dev/gemini-api/docs/openai)
|
||||
* - OpenAI openai_compat https://api.openai.com (openai_compat.rs:45)
|
||||
* - Anthropic anthropic https://api.anthropic.com (anthropic_compat.rs:51)
|
||||
*
|
||||
* chat_url/messages_url 智能拼接(见 openai_compat.rs chat_url / anthropic_compat.rs messages_url):
|
||||
* - 仅域名(OpenAI/DeepSeek)→ 后端补 /v1/chat/completions
|
||||
* - 已含版本段 GLM /v4、SenseNova /compatible-mode/v1 → 后端补 /chat/completions
|
||||
* 故 baseUrl 既可填带 /v1 也可不填,均能工作;此处采用代码库注释示例形态(更接近用户文档预期)。
|
||||
* - 已含版本段 GLM /v4、SenseNova /v1、千帆 /v2 等 → 后端补 /chat/completions
|
||||
* 故 baseUrl 既可填带 /v1 也可不填,均能工作;此处采用各厂商官方文档示例形态(更接近用户预期)。
|
||||
*/
|
||||
|
||||
/** providerType 字面量(对齐后端 ProviderType serde,与 ProviderPanel.vue 下拉 option value 一致) */
|
||||
@@ -40,22 +46,118 @@ export const PROVIDER_PRESETS: readonly ProviderPreset[] = [
|
||||
id: 'glm',
|
||||
name: 'GLM / 智谱',
|
||||
providerType: 'openai_compat',
|
||||
// 来源:智谱 OpenAI 兼容 https://docs.bigmodel.cn/cn/guide/develop/openai/introduction
|
||||
baseUrl: 'https://open.bigmodel.cn/api/paas/v4',
|
||||
defaultModel: 'glm-4.6',
|
||||
// glm-4.6(2025-09,355B/激活 32B)稳定便宜适合做默认;最新旗舰 GLM-5.2(2026-06-16,开源 SOTA,1M 上下文)
|
||||
// 需要更强能力改 glm-5.2(确认 model id 字符串后)。
|
||||
},
|
||||
{
|
||||
id: 'deepseek',
|
||||
name: 'DeepSeek',
|
||||
providerType: 'openai_compat',
|
||||
// 来源:DeepSeek API Docs https://api-docs.deepseek.com/
|
||||
baseUrl: 'https://api.deepseek.com',
|
||||
defaultModel: 'deepseek-chat',
|
||||
defaultModel: 'deepseek-v4-flash',
|
||||
// 重要:deepseek-chat / deepseek-reasoner 旧名已于 2026-07-24 停用,
|
||||
// 现分别指向 deepseek-v4-flash 的非思考/思考模式(V4-Flash 2026-07-31 发布)。
|
||||
// 思考模式改 deepseek-v4-flash(传 thinking 参数)或 deepseek-v4-pro。
|
||||
},
|
||||
{
|
||||
id: 'sensenova',
|
||||
name: 'SenseNova / 商汤',
|
||||
providerType: 'openai_compat',
|
||||
baseUrl: 'https://api.sensenova.cn/compatible-mode/v1',
|
||||
defaultModel: 'SenseNova-Turbo',
|
||||
// 来源:GitHub cc-switch #2559 实测确认 token plan 端点;db 用户实测 base_url=token.sensenova.cn 可用。
|
||||
// 旧端点 https://api.sensenova.cn/compatible-mode/v1 已废弃,改为 token.sensenova.cn 对齐官方 token plan。
|
||||
// 官方文档 https://platform.sensenova.cn/docs / Token Plan https://www.sensenova.cn/token-plan
|
||||
// 完整路径:token.sensenova.cn/v1/chat/completions(HuggingFace SenseNova-U1 文档实测确认)
|
||||
baseUrl: 'https://token.sensenova.cn/v1',
|
||||
// 官方文档(platform.sensenova.cn/docs)核实:Token Plan API 仅 3 个模型 ——
|
||||
// sensenova-6.7-flash-lite(多模态对话主力)/ sensenova-u1-fast(图像生成,不能对话)/ deepseek-v4-flash(纯文本对话)。
|
||||
// 无 U1 / U1-Pro 对话模型(那是官网产品名,API 不提供);旧 SenseNova-Turbo 已退役。
|
||||
// 默认填对话主力 sensenova-6.7-flash-lite(文档所有工具接入示例的 Model ID)。
|
||||
defaultModel: 'sensenova-6.7-flash-lite',
|
||||
},
|
||||
{
|
||||
id: 'qwen',
|
||||
name: '通义千问 / Qwen',
|
||||
providerType: 'openai_compat',
|
||||
// 来源:阿里云百炼 DashScope OpenAI 兼容
|
||||
// https://help.aliyun.com/zh/model-studio/compatibility-of-openai-with-dashscope
|
||||
// 海外节点:https://dashscope-us.aliyuncs.com/compatible-mode/v1
|
||||
// 注意:compatible-mode/v1 是 OpenAI SDK 兼容端点;原生 dashscope SDK 用 api/v1,二者不同。
|
||||
baseUrl: 'https://dashscope.aliyuncs.com/compatible-mode/v1',
|
||||
defaultModel: 'qwen-plus',
|
||||
// qwen-plus 是百炼稳定别名(指向当前 plus 档主力,无需带版本号),适合做默认;
|
||||
// 更强用 qwen-max、更便宜用 qwen-turbo,详见 https://help.aliyun.com/zh/model-studio/models
|
||||
},
|
||||
{
|
||||
id: 'moonshot',
|
||||
name: '月之暗面 / Kimi',
|
||||
providerType: 'openai_compat',
|
||||
// 来源:Kimi API 开放平台 https://platform.kimi.com/docs
|
||||
// 海外节点:https://api.moonshot.ai/v1
|
||||
// 重要:moonshot-v1 系列对新注册用户已下线,官方转向 kimi-k2 / kimi-k3 系列。
|
||||
baseUrl: 'https://api.moonshot.cn/v1',
|
||||
defaultModel: 'kimi-k3',
|
||||
// kimi-k3 = Kimi 当前旗舰(2.8T 参数 MoE,1M 上下文,原生多模态,2025-07 发布);需 Moderato 及以上会员。
|
||||
// 编程场景改 kimi-k2.7-code / kimi-k2.7-code-highspeed;通用轻量改 kimi-k2.6(256K,免费档可调用)。
|
||||
},
|
||||
{
|
||||
id: 'ernie',
|
||||
name: '百度文心 / ERNIE',
|
||||
providerType: 'openai_compat',
|
||||
// 来源:百度千帆 ModelBuilder v2 OpenAI 兼容接口
|
||||
// https://ai.baidu.com/ai-doc/WENXINWORKSHOP/2m3fihw8s
|
||||
// 鉴权用 bce-v3 开头的 V2 API Key(Bearer),不再是旧的 AK/SK + Access Token 方式
|
||||
baseUrl: 'https://qianfan.baidubce.com/v2',
|
||||
defaultModel: 'ernie-4.5-300B-A47B',
|
||||
// 当前主力:ernie-4.5-300B-A47B(MoE 架构 300B/激活 47B,128K 上下文,2025-06 开源);
|
||||
// 推理增强改 ernie-x1-turbo-32k;最新预览 ERNIE-5.1-Preview(2026-04)。
|
||||
},
|
||||
{
|
||||
id: 'spark',
|
||||
name: '讯飞星火 / Spark',
|
||||
providerType: 'openai_compat',
|
||||
// 来源:讯飞开放平台星火 HTTP 接口文档(OpenAI SDK 兼容章节)
|
||||
// https://www.xfyun.cn/doc/spark/HTTP%E8%B0%83%E7%94%A8%E6%96%87%E6%A1%A3.html
|
||||
// api_key 填控制台 APIPassword(非 APIKey);完整路径 /v1/chat/completions
|
||||
baseUrl: 'https://spark-api-open.xf-yun.com/v1',
|
||||
defaultModel: '4.0Ultra',
|
||||
// 4.0Ultra 仍是官方 HTTP 文档 cURL 示例列出的综合旗舰(model 字段值经验证可用);
|
||||
// 深度推理改 spark-x1 / spark-x1.5(Ultra 已融合 X1.5 快思考模式,2026 主推);
|
||||
// 2026-03 Max 套餐下线合并到 Ultra,可选 lite / pro-128k / max-32k 等。
|
||||
},
|
||||
{
|
||||
id: 'doubao',
|
||||
name: '字节豆包 / Doubao',
|
||||
providerType: 'openai_compat',
|
||||
// 来源:火山方舟(火山引擎 Ark)OpenAI 兼容
|
||||
// https://www.volcengine.com/docs/82379/1330626 (兼容 OpenAI SDK)
|
||||
// https://www.volcengine.com/docs/82379/1298459 (Base URL 鉴权)
|
||||
// 完整路径:ark.cn-beijing.volces.com/api/v3/chat/completions
|
||||
// 注意:豆包可用「模型名」(带日期快照)或「推理接入点 Endpoint ID」(ep-xxx)调用。
|
||||
baseUrl: 'https://ark.cn-beijing.volces.com/api/v3',
|
||||
defaultModel: 'doubao-seed-1-6-250615',
|
||||
// TODO(2026-08):豆包模型名随版本迭代频繁变更且带日期快照,无"永久稳定"占位。
|
||||
// - doubao-seed-1-6-250615(2025-06)近期已被列入下线名单,正过渡到 Doubao Seed 2.x 系列;
|
||||
// - 2026 主力:豆包 2.1 Pro(2026-06-23 发布)/ Doubao Seed 2.1(Agent 旗舰)/ Doubao-Seed-2.0-Code(编程);
|
||||
// - 具体可用的 model id 字符串(如 doubao-seed-2-1-xxx)需在火山方舟控制台模型列表核实后填入;
|
||||
// - 生产环境强烈建议:控制台创建 Endpoint,把 defaultModel 改成 ep-xxxxxxxx(版本无关)。
|
||||
},
|
||||
{
|
||||
id: 'gemini',
|
||||
name: 'Google Gemini',
|
||||
providerType: 'openai_compat',
|
||||
// 来源:Google AI for Developers OpenAI compatibility
|
||||
// https://ai.google.dev/gemini-api/docs/openai
|
||||
// 关键:路径已含 /v1beta/openai,不要在末尾再补 /v1(常见错误)。
|
||||
// 认证:Gemini API Key 作 Bearer Token。
|
||||
// TODO(2026-08):该端点主要支持 Chat Completions,部分 OpenAI 高级特性(Responses API 等)不完整。
|
||||
baseUrl: 'https://generativelanguage.googleapis.com/v1beta/openai',
|
||||
defaultModel: 'gemini-3.5-flash',
|
||||
// gemini-3.5-flash = 2026-05 Google I/O 发布的性价比主力(Firebase 文档确认 model id 无 preview 后缀);
|
||||
// 高端场景改 gemini-3.1-pro(2026-02);2.5 系列已被 3.x 接棒。
|
||||
},
|
||||
{
|
||||
id: 'openai',
|
||||
|
||||
Reference in New Issue
Block a user