模型与 Provider 配置
wescode 支持多种 LLM 模型和 Provider,提供灵活的配置和切换能力。
Provider 类型
三种 Provider 来源
| 类型 | 说明 | 适用场景 |
|---|---|---|
| WES(平台) | weisyn 平台代理的模型 | 开箱即用,平台计费 |
| Org(组织) | 企业组织提供的模型 | 团队/企业统一管理 |
| BYOK(自带密钥) | 用户自己配置的 Provider | 完全自主控制 |
WES 平台模型
- 无需配置 API Key
- 登录后即可使用
- 按 token 计费,从平台钱包扣费
- 支持的模型由平台 catalog 动态提供
BYOK 自带密钥
支持主流 LLM 供应商:
| Provider | 模型示例 |
|---|---|
| OpenAI | GPT-4o, GPT-4, GPT-3.5-turbo |
| Anthropic | Claude 3.5 Sonnet, Claude 3 Opus |
| DeepSeek | DeepSeek V3, DeepSeek Coder |
| Gemini Pro, Gemini Ultra | |
| 本地部署 | Ollama, vLLM |
| Azure | Azure OpenAI 各模型 |
配置 Provider
添加 BYOK Provider
在设置页面配置:
- 打开设置 → 模型 & Provider
- 添加新 Provider
- 填写:
- Provider 名称
- API Base URL
- API Key(加密存储)
- 模型列表
Provider 配置示例
# BYOK OpenAI
Provider: OpenAI
Base URL: https://api.openai.com/v1
API Key: sk-xxx...
Models:
- gpt-4o (Context: 128K, Vision: ✅)
- gpt-4-turbo (Context: 128K, Vision: ✅)
# 本地 Ollama
Provider: Ollama
Base URL: http://localhost:11434/v1
API Key: (留空)
Models:
- llama3.1 (Context: 128K)
- codellama (Context: 16K)
# Azure OpenAI
Provider: Azure OpenAI
Base URL: https://xxx.openai.azure.com
API Key: xxx
Deployment: gpt-4o
API Key 安全
API Key 的存储方式:
| 方式 | 说明 |
|---|---|
| inline | AES-256-GCM 加密存储在本地 |
| env | 从环境变量读取 |
| live | 运行时动态获取(WES/Org 模式) |
inline 模式:密钥经加密后存储在 hypervisor.db,密钥文件在 secrets/spec.key(0600 权限)。
模型选择
Chat 面板模型选择器
在 Chat 面板顶部的模型选择器中切换模型:
- 显示所有可用模型(WES + Org + BYOK)
- 标注模型来源
- 显示不可用模型的原因(如欠费)
模型必填
wescode 要求每次 Chat 必须明确选择模型:
- 不存在"默认模型"的隐式选择
- 模型选择器为空时,发送按钮禁用
- 用户始终知道在和哪个模型对话
模型能力
模型选择器显示每个模型的能力:
| 能力 | 说明 |
|---|---|
| Vision | 是否支持图片输入 |
| Context Window | 上下文窗口大小 |
| 来源标注 | WES / BYOK / Org |
Provider 策略
策略类型
| 策略 | 说明 |
|---|---|
| own_only | 仅使用自有 BYOK Provider |
| shared_only | 仅使用平台共享 Provider |
| own_first | 优先 BYOK,fallback 到平台 |
| shared_first | 优先平台,fallback 到 BYOK |
wescode 默认策略
wescode 个人版默认 own_only(自有密钥优先)。
有 WES 账号时,可以同时使用 WES 和 BYOK 模型。
Billing 状态
WES 计费
当使用 WES 模型时:
- 按 token 计费
- 从 WES 个人钱包扣费
- 欠费时 WES 模型标记为不可用
- BYOK 模型不受影响
欠费处理
| 场景 | 行为 |
|---|---|
| WES 欠费 + 有 BYOK | WES 模型禁用,BYOK 正常可用 |
| WES 欠费 + 无 BYOK | 所有模型不可用,引导充值 |
| WES 欠费 + 已选 BYOK | 正常使用,无欠费提示 |
连通性测试
测试 Provider
在设置页面测试 Provider 连通性:
| 测试模式 | 说明 |
|---|---|
| Chat 测试 | 发送简单消息验证模型可用 |
| Embedding 测试 | 验证 Embedding 模型可用 |
| Vision 测试 | 验证视觉能力可用 |
本地模型
Ollama 集成
使用本地 Ollama 模型:
- 安装 Ollama:
brew install ollama - 拉取模型:
ollama pull llama3.1 - 在 wescode 中配置 Provider:
- Base URL:
http://localhost:11434/v1 - 添加模型名称
- 配置 Context Window
- Base URL:
vLLM
使用 vLLM 部署的模型:
- 启动 vLLM 服务
- 配置 Base URL 指向 vLLM 端点
- 模型名称与 vLLM 一致
Catalog 机制
模型目录
模型的市场化数据(名称、上下文窗口、能力、价格)来自 weisyn 平台的 catalog.yaml:
catalog.yaml → Go embed → 后端 RPC → 前端运行时获取
- 引擎不含 LLM 模型知识
- 前端不硬编码模型列表
- 本地部署模型不列入 catalog(用户自行声明)
注意事项
- 不同模型的能力差异较大,选择合适的模型很重要
- 频繁切换模型会使 prompt cache 失效,增加成本
- API Key 存储在本地,不会上传
- 本地模型的 Context Window 需要手动配置
- 使用 Vision 功能需要模型支持且声明了
SupportsVision - WES 模型的可用性取决于平台状态和账户余额