GitHub Copilot 调用第三方模型API

GitHub Copilot 调用第三方模型API

一、说明

OAI Compatible Provider for Copilot 的作用是:把 Copilot/Copilot Chat 发出的“类似 OpenAI API 的请求”,转发到指定的 OpenAI-Compatible 服务端(例如 ModelScope 推理网关、自建的兼容网关等)。

⚠️ Warning

登录 GitHub Copilot​ 的账号一定要是非组织方式开通 pro 会员的,不然无法管理模型。

推荐直接用免费的free账号登录即可。

二、插件安装

在 VS Code 扩展市场安装并启用:

  • GitHub Copilot
  • GitHub Copilot Chat​
  • ​OAI Compatible Provider for Copilot​(johnny-zhao.oai-compatible-copilot​)

安装后:Developer: Reload Window​ 重载窗口一次。

确保已在 VS Code 中登录 GitHub,并且 Copilot 正常可用(不然你分不清是 Copilot 本身问题还是 provider 转发问题)。

三、配置示例

建议将配置放置在项目内的: .vscode/settings.json​

1、单模型示例

{ "oaicopilot.baseUrl": "https://api.soraharu.com/v1", "oaicopilot.delay": 0, "oaicopilot.readFileLines": 0, "oaicopilot.retry": { "enabled": true, "max_attempts": 3, "interval_ms": 1000, "status_codes": [] }, "oaicopilot.commitLanguage": "English", "oaicopilot.models": [ { "id": "__provider__soraharu", "owned_by": "soraharu", "baseUrl": "https://api.api.soraharu.com/v1", "apiMode": "openai" }, { "id": "google/gemini-3-pro-preview", "owned_by": "soraharu", "baseUrl": "https://api.soraharu.com/v1", "context_length": 128000, "max_tokens": 4096, "vision": true, "apiMode": "openai", "temperature": 0 } ] } 

2、多模型示例

{ "oaicopilot.baseUrl": "https://api.soraharu.com/v1", "oaicopilot.delay": 0, "oaicopilot.readFileLines": 0, "oaicopilot.retry": { "enabled": true, "max_attempts": 3, "interval_ms": 1000, "status_codes": [] }, "oaicopilot.commitLanguage": "English", "oaicopilot.models": [ { "id": "__provider__soraharu", "owned_by": "soraharu", "baseUrl": "https://api.soraharu.com/v1", "apiMode": "openai" }, { "id": "google/gemini-3-pro-preview", "owned_by": "soraharu", "baseUrl": "https://api.soraharu.com/v1", "context_length": 128000, "max_tokens": 4096, "vision": true, "apiMode": "openai", "temperature": 0 }, { "id": "anthropic/claude-opus-4-5-thinking", "owned_by": "soraharu", "baseUrl": "https://api.soraharu.com/v1", "context_length": 128000, "max_tokens": 4096, "vision": true, "apiMode": "openai", "temperature": 0 }, { "id": "anthropic/claude-sonnet-4-thinking", "owned_by": "soraharu", "baseUrl": "https://api.soraharu.com/v1", "context_length": 128000, "max_tokens": 8192, "vision": true, "apiMode": "openai", "temperature": 0 } ] } 

3、配置讲解

配置主要分为两块:

  • 顶层通用项(全局 API 地址、重试等)
  • ​oaicopilot.models​数组(定义可选的大模型)
顶层通用项
字段作用
​oaicopilot.baseUrl​通用 API 基地址,推荐全局只用一处。
​oaicopilot.delay​控制 Copilot 插件调用接口时的延迟,一般设 0(默认即可)
​oaicopilot.readFileLines​配合 Copilot 文件分段补全时用,设 0 即可
​oaicopilot.retry​Copilot Chat请求失败时的自动重试策略。
​oaicopilot.commitLanguage​Copilot建议生成commit的语言,通常填"English"即可
模型池 oaicopilot.models​
字段作用
​id​必须和/v1/models​能获得的模型id​一致(如"google/gemini-3-pro-preview"​)
​owned_by​一般填"provider名"即可,描述归属或来源
​baseUrl​建议只在顶层写一处,模型对象里不强制(写也可以,冲突时顶层优先)
​apiMode​绝大多数 Soraharu/OneAPI都填"openai",如果是anthropic/olllama/自定义才需变
​context_length​最大上下文长度(token数,依照模型能力填)
​max_tokens​每次回应的最大输出(token数,官方建议4096/8192之类)
​vision​支持多模态(如Gemini/Claude/Sonnet等具备图文能力才设true)
​temperature​控制AI输出随机性,越低回答越稳定,代码任务建议设为0

4、配置KEY

在 VSCode​ 页面进行操作:

  • ​Windows/Linux​ 环境:​​Ctrl+Shift+P​
  • ​Mac​ 环境:Cmd+Shift+P​

输入下面的命令,然后将KEY输入进去:

​Set OAl Compatible Multi-Provider Apikey​

四、模型使用

  1. 点击进入 Copilot 聊天框
  2. 点击模型选择框
  3. 点击模型管理(Manage Modules....)
  4. 选择 OAI Compatible​ 将左侧的隐藏眼睛关闭,这样我们自己设定的模型就会出现在选择框了。

Read more

【前端小站】CSS 样式美学:从基础语法到界面精筑的实战宝典

【前端小站】CSS 样式美学:从基础语法到界面精筑的实战宝典

半桔:个人主页  🔥 个人专栏: 《前端扫盲》《手撕面试算法》《C++从入门到入土》 🔖阻止了我的脚步的,并不是我所看见的东西,而是我所无法看见的那些东西。 《海上钢琴师》 文章目录 * 前言 * 一. CSS是什么 * 1.1 概念 * 1.2 基本语法 * 二. CSS如何引入HTML * 2.1 内部样式表 * 2.2 行内选择器 * 2.3 外部引入 * 三. CSS选择器 * 3.1 基础选择器 * 3.1.1 标签选择器 * 3.1.2 类选择器 * 3.1.3 id选择器 * 3.

By Ne0inhk
Clawdbot(Moltbot)源码部署全实测:从环境搭建到 WebChat 验证,避坑指南收好

Clawdbot(Moltbot)源码部署全实测:从环境搭建到 WebChat 验证,避坑指南收好

一、为啥折腾 Clawdbot? 最近刷技术圈总刷到 Clawdbot(后来也叫 Moltbot),说是能搭私人 AI 助手,支持 WhatsApp、Telegram 这些常用通道,还能跑在自己设备上,不用依赖第三方服务 —— 想着拉下来测试一下功能,顺便研究一下其源码的实现。 于是拉上 GitHub 仓库https://github.com/openclaw/openclaw,打算从源码部署试试,过程里踩了不少坑,干脆整理成记录,给同样想折腾的朋友避避坑。 二、源码部署前的准备:Windows 环境优先选 WSL2 一开始想直接用 Windows CMD 部署,结果装依赖时各种报错,查仓库文档才发现 Windows 推荐用 WSL2(Ubuntu/Debian 镜像就行),后续操作全在 WSL2 里完成: 1.

By Ne0inhk
【前端】Vue3+elementui+ts,TypeScript Promise<string>转string错误解析,习惯性请出DeepSeek来解答

【前端】Vue3+elementui+ts,TypeScript Promise<string>转string错误解析,习惯性请出DeepSeek来解答

🌹欢迎来到《小5讲堂》🌹 🌹这是《前端》系列文章,每篇文章将以博主理解的角度展开讲解。🌹 🌹温馨提示:博主能力有限,理解水平有限,若有不对之处望指正!🌹 目录 * 前言 * 报错信息 * DeepSeek解答 * 问题原因 * 解决方案 * 最佳实践 * 异步和同步 * 1. 同步(Synchronous)操作 * 示例:同步数据更新 * 2. 异步(Asynchronous)操作 * 示例 1:`setTimeout` * 示例 2:`async/await` * 3. Vue 3 的异步更新机制 * 如何等待 DOM 更新? * 4. 生命周期钩子中的异步 * 5. 总结 * 最佳实践 * 文章推荐 前言 好久没有写前端,

By Ne0inhk

JSP基础1:客户端请求端,前端和后端的联系(半成品)

JSP虽然是20年前的老框架,它的存在是为了讲解前后端不分离,在前端html,css中可以嵌入兼容java后端代码,类似的有vue3 下面的看不懂先跳过 问题如下:request对象 = 后端创建,封装前端发送的数据或请求. 还有哪些对象可以对前后端互相发送的请求做处理.哪些对象可以进行前后端交互 在Java Web开发中,主要使用以下对象处理前后端交互:(JSP很老的框架没必要都学把下面能让你理解前后端交互的学了就行) 对象创建位置主要作用数据流向request服务器端封装请求信息前端→后端response服务器端封装响应信息后端→前端session服务器端维护用户会话双向application服务器端全局共享数据双向Cookie服务器端创建,前端存储小数据持久化双向 选择建议:临时数据传递 → request用户状态保持 → session小数据持久化 → Cookie全局数据共享 → application 以上内容看不懂先跳过 1. "客户端"的含义 在 request 对象的上下文中,"客户端"指的是: * 浏览器(Chrome、Firefox、E

By Ne0inhk