在 VS Code 中使用 GenStudio 模型
VS Code 可以使用 GenStudio API Key 接入模型,不要求订阅 GitHub Copilot。请根据当前站点提供的接入方式选择以下路径;语义搜索、行内代码补全以及依赖嵌入模型的功能是否可用,仍取决于 GitHub 账户和 Copilot 服务。
- VS Code Custom Endpoint无需安装提供方扩展,但需要在
chatLanguageModels.json中逐个维护模型 ID、协议、能力和 Token 限制。适合只需维护少量模型,且模型不要求跨轮保留思考内容的场景。
获取 API Key 和端点
创建以 sk- 开头的 GenStudio API Key。密钥只在 VS Code 的密钥输入框中填写,不要把真实密钥写入工作区文件、文档示例或分组名称。
VS Code 接入使用以下端点:
| 用途 | 地址 |
|---|---|
| 发现模型 | https://neogpu.com/maas/v1/models |
| OpenAI Chat Completions | https://neogpu.com/maas/v1/chat/completions |
| Anthropic Messages | https://neogpu.com/maas/v1/messages |
模型 ID、上下文窗口、最大输出长度、多模态和工具调用能力会随模型变化。配置 Custom Endpoint 前,请先在模型广场查看模型卡片,或调用模型发现端点,确认当前账号可用的模型及其能力。
通过 VS Code Custom Endpoint 接入
VS Code 的 Bring Your Own Key(BYOK)功能可以连接兼容的 Chat Completions、Responses 或 Messages 端点。以下步骤使用 Custom Endpoint 手动添加 GenStudio 模型,无需安装提供方扩展。
重要
Custom Endpoint 需要手动填写模型 ID、协议、能力和 Token 限制,也不提供自动模型发现、连接诊断或跨轮思考内容保留。使用前,请确认所选模型不要求在后续请求中继续携带思考内容;否则,请选择支持该能力的接入方式。
确认 VS Code 和组织策略
- 使用 VS Code
1.130.0或更高版本。 - 准备 GenStudio API Key 和目标模型 ID。
- 如果使用 Copilot Business 或 Enterprise,请确认组织管理员没有禁用 BYOK。
- 如果使用 Agents 窗口,请启用
chat.agentHost.byokModels.enabled,然后重启 Agent Host。
添加 OpenAI Chat Completions 模型
在 Chat 模型选择器中选择管理模型齿轮,或从命令面板运行 Chat: Manage Language Models。
选择 Add Models > Custom Endpoint。
输入分组名称,例如
GenStudio OpenAI。这是本地显示标签,不会发送给 GenStudio。输入显示名称和 API Key,API 类型选择 Chat Completions。
VS Code 打开
chatLanguageModels.json后,按模型卡片修改以下配置并保存:language-json[ { "name": "GenStudio OpenAI", "vendor": "customendpoint", "apiKey": "${input:genstudioApiKey}", "apiType": "chat-completions", "models": [ { "id": "gpt-oss-120b", "name": "gpt-oss-120b", "url": "https://neogpu.com/maas/v1/chat/completions", "toolCalling": true, "vision": false, "contextWindow": 131072, "maxOutputTokens": 32768 } ] } ]
此处的模型和 Token 数值只是配置示例。保存前,请将模型 ID、contextWindow、maxOutputTokens、toolCalling 和 vision 改为当前账号模型卡片中显示的值。
添加 Anthropic Messages 模型
Claude 模型使用 GenStudio Anthropic Messages 端点时,必须把 API 类型设置为 Messages,并使用完整的 /v1/messages 地址。
再次选择 Add Models > Custom Endpoint。
输入分组名称,例如
GenStudio Anthropic。输入显示名称和 API Key,API 类型选择 Messages。
在
chatLanguageModels.json中按模型卡片修改并保存:language-json[ { "name": "GenStudio Anthropic", "vendor": "customendpoint", "apiKey": "${input:genstudioApiKey}", "apiType": "messages", "models": [ { "id": "claude-sonnet-4-6", "name": "Claude Sonnet 4.6", "url": "https://neogpu.com/maas/v1/messages", "toolCalling": true, "vision": true, "contextWindow": 200000, "maxOutputTokens": 64000 } ] } ]
只有在模型卡片确认支持工具调用和图片输入时,才保留 toolCalling: true 和 vision: true。Agent 模型选择器会隐藏未声明工具调用能力的模型,但把字段改为 true 不会为模型增加该能力。
校正 Context Size 和模型能力
contextWindow 表示输入与输出共享的总上下文窗口,maxOutputTokens 表示一次请求允许的最大输出。VS Code 会用 contextWindow - maxOutputTokens 计算输入预算。如果改用 maxInputTokens,请分别填写输入和输出上限,不要把完整的共享窗口同时填入两个字段。
本文示例按 kimi-k3 的 1,048,576 Token 共享窗口配置。配置 Custom Endpoint 时,使用 contextWindow: 1048576,并根据任务选择小于该窗口的 maxOutputTokens;如果模型广场显示不同值,请以当前模型卡片为准。
以下字段直接影响 VS Code 的模型展示和筛选:
toolCalling:是否允许模型出现在 Agent 模型选择器中。vision:是否允许附加图片输入。contextWindow:输入和输出共享的总窗口。maxOutputTokens:单次请求的输出上限。
启用模型并开始对话
- 保存
chatLanguageModels.json。如果新模型没有立即出现,重启 VS Code。 - 打开 Language Models,确认目标模型的眼睛图标为可见。
- 从 Chat 模型选择器中选择该模型。
- 如果普通 Chat 可见但 Agent 模式不可见,请检查
toolCalling,并在模型卡片中确认该模型支持工具调用。
BYOK 可用于 Chat、编辑和具备相应能力的 Agent 流程,但不提供标准行内代码补全。需要为编辑器 Inline Chat 指定默认模型时,设置 inlineChat.defaultModel。
配置后台任务模型
VS Code 使用轻量模型生成标题、提交信息和意图分类。未登录 GitHub、只使用 BYOK 时,内置后台模型不可用,可配置:
chat.utilityModel:标题、摘要、设置搜索和 Git review 等通用任务。chat.utilitySmallModel:提交信息、重命名、分支名和意图检测等轻量任务。chat.byokUtilityModelDefault:选择 BYOK 主 Agent 模型时,决定后台任务默认使用主模型、GitHub Copilot 模型或不使用默认模型。
排查 VS Code 接入问题
模型没有出现在 Agent 模式中
- 先确认模型在普通 Chat 模型选择器中可见。
- 在 Language Models 中使用
@capability:agent或@capability:tools检查能力。 - 使用 Custom Endpoint 时,确认
toolCalling为true且模型实际支持工具调用。 - 使用 Agents 窗口时,确认
chat.agentHost.byokModels.enabled已启用并重启 Agent Host。
把所有模型设为可见只会通过可见性筛选,不会绕过 Agent 的工具调用能力筛选。
Claude 请求返回协议或认证错误
- 使用 Custom Endpoint 时,确认
apiType为messages,URL 为https://neogpu.com/maas/v1/messages。 - 在 Language Models 中更新当前提供方或 Custom Endpoint 的 API Key。
Custom Endpoint 模型没有出现
- 保存
chatLanguageModels.json后重启 VS Code。 - 确认
vendor为customendpoint,apiType与完整 URL 匹配。 - 确认
maxOutputTokens已设置,并且同时设置了contextWindow或maxInputTokens。 - 运行 Chat: Manage Language Models,检查配置语法错误和眼睛图标可见性。