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

Flutter 组件 saropa_lints 适配鸿蒙 HarmonyOS 实战:代码质量守卫,构建性能合规性检查与自定义分析规约治理架构

Flutter 组件 saropa_lints 适配鸿蒙 HarmonyOS 实战:代码质量守卫,构建性能合规性检查与自定义分析规约治理架构

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 组件 saropa_lints 适配鸿蒙 HarmonyOS 实战:代码质量守卫,构建性能合规性检查与自定义分析规约治理架构 前言 在鸿蒙(OpenHarmony)生态迈向大规模工业化协同、涉及超大型项目敏捷迭代、海量模块解耦及严苛 AOT 性能交付标准的背景下,如何实现一套能够自动拦截低质量代码、保障跨团队开发风格绝对统一且符合鸿蒙性能极致要求的“静态扫描中心”,已成为决定应用长期可维护性与研发效能感的关键。在鸿蒙设备这类强调 AOT 静态优化与严格类型安全的环境下,如果应用代码中充斥着滥用的 dynamic 调用或循环引用,由于由于编译期的类型擦除与运行时的屏障开销,极易由于由于“代码腐化”导致鸿蒙应用在长期运行后发生不可预知的内存泄露。 我们需要一种能够强制约束研发纪律、支持自定义规则扩展且具备“一站式”合规性判定的 Linter 方案。 saropa_lints 为 Flutter 开发者引入了“质量铁律”范式。它不是简单的代码检查

By Ne0inhk
微信小程序虚拟支付整合thinkphp核心实现 你的小程序如有开通会员等则为虚拟类型 要使用虚拟支付了 要不然判定为违规

微信小程序虚拟支付整合thinkphp核心实现 你的小程序如有开通会员等则为虚拟类型 要使用虚拟支付了 要不然判定为违规

小程序虚拟支付业务管理规范更新公告2026-02-27 各位开发者: 微信小程序现已全面支持iOS端虚拟支付服务,为虚拟支付业务相关的开发者提供更广阔的用户覆盖。目前iOS端虚拟支付享受15%优惠费率,极大降低开发者的运营成本。 为保障用户权益,提高交易安全,开发者在小程序内提供的虚拟商品、购买和支付现均需接入小程序虚拟支付。 若你的小程序内涉及虚拟支付业务,请在4月1日前全终端(包括iOS端、安卓端、Windows与鸿蒙端)接入虚拟支付,到期未接入将被判定为违规,根据违规程度将对该小程序采取风险提醒、限制功能直至暂停或终止提供服务等措施,请广大开发者及时对照以下接入指引、运营规范等文件业务,确保合规经营。 什么是虚拟支付业务:虚拟支付业务是指购买非实物商品,比如:VIP会员、充值代币、录制课程、录制音频视频等虚拟产品。 接入指引:小程序虚拟支付接入指引 运营规范:小程序虚拟支付行为运营规范 v 基于微信虚拟支付文档,你需要实现以下关键服务器API。所有接口请求方式均为POST,Content-Type: application/json,且需在URL中携带access_toke

By Ne0inhk
Unity游戏开发深度解析:从零基础到高级架构的完整实战指南

Unity游戏开发深度解析:从零基础到高级架构的完整实战指南

🌟 Hello,我是蒋星熠Jaxonic! 🌈 在浩瀚无垠的技术宇宙中,我是一名执着的星际旅人,用代码绘制探索的轨迹。 🚀 每一个算法都是我点燃的推进器,每一行代码都是我航行的星图。 🔭 每一次性能优化都是我的天文望远镜,每一次架构设计都是我的引力弹弓。 🎻 在数字世界的协奏曲中,我既是作曲家也是首席乐手。让我们携手,在二进制星河中谱写属于极客的壮丽诗篇! 摘要 Unity的魅力不仅在于其直观的可视化编辑器和强大的跨平台能力,更在于它为开发者提供了一个完整的生态系统。无论你是想要开发2D像素风格的独立游戏,还是要构建3D AAA级别的大型项目,Unity都能为你提供相应的解决方案。在我的开发历程中,我曾用Unity开发过移动端的休闲游戏、PC端的策略游戏,甚至还涉足了VR和AR应用的开发,每一次的项目经历都让我对Unity有了更深层次的理解。 特别值得一提的是Unity的组件化架构设计,这种设计理念不仅让游戏对象的管理变得更加灵活,也为代码的复用和维护提供了极大的便利。通过合理的组件设计和脚本编写,我们可以构建出高度模块化的游戏系统,这对于大型项目的团队协作尤为重要。

By Ne0inhk
详解RabbitMQ高级特性之延迟插件的安装和使用

详解RabbitMQ高级特性之延迟插件的安装和使用

目录 延迟队列插件 延迟队列插件的下载 延迟队列插件的安装  延迟队列插件的启用 编辑 添加配置 常量类 声明队列和交换机并绑定二者关系 编写生产消息代码 编写消费消息代码 观察效果 面试题 延迟队列插件 RabbitMQ官⽅也提供了⼀个延迟的插件来实现延迟的功能。 延迟队列插件的下载 插件下载链接---》链接 根据⾃⼰的RabbitMQ版本选择相应版本的延迟插件, 下载后上传到服务器。 查看RabbitMQ版本的命令 rabbitmqctl status | grep "RabbitMQ"  /usr/lib/rabbitmq/plugins 是⼀个附加⽬录, RabbitMQ包本⾝不会在此安装任何内容, 如果 没有这个路径, 可以⾃⼰进⾏创建。 延迟队列插件的安装  把下载好的 .ez文件上传到   /usr/lib/rabbitmq/

By Ne0inhk