VSCode Github Copilot使用OpenAI兼容的自定义模型方法

VSCode Github Copilot使用OpenAI兼容的自定义模型方法

背景

VSCode 1.105.0发布了,但是用户最期待的Copilot功能却没更新!!!
(Github Copilot Chat 中使用OpenAI兼容的自定义模型。)

在这里插入图片描述

🔥官方也关闭了Issue,并且做了回复,并表示未来也不会更新这个功能:
“实际上,这个功能在可预见的未来只面向内部人员开放,作为一种“高级”实验功能。是否实现特定模型提供者的功能,我们交由扩展作者自行决定。仅限内部人员使用可以让我们快速推进,并提供一种可能并非始终百分之百完善,但能够持续改进并快速修复 bug 的体验。如果这个功能对你很重要,我建议切换到内部版本 insider。”

在这里插入图片描述

🤗 官方解决方案:安装VSCode扩展支持

你们完全不用担心只需要在 VS Code 中安装扩展:OAI Compatible Provider for Copilot

在这里插入图片描述

通过任何兼容 OpenAI 的提供商驱动的 GitHub Copilot Chat,使用前沿开源大模型,如 Kimi K2、DeepSeek V3.2、GLM 4.6 等。

✨ 特色功能

  • 支持几乎所有与 OpenAI 兼容的供应商,例如 ModelScope、SiliconFlow、DeepSeek…
  • 支持视觉模型。
  • 为聊天请求提供额外的配置选项。
  • 支持同时配置来自多个供应商的模型,自动管理 API 密钥而无需反复切换。
  • 支持为同一模型 ID 定义多种配置(例如为 GLM-4.6 启用/禁用思考功能)。Supports almost all

支持控制模型在聊天界面中显示思考与推理内容。

thinkingPartDemo

⚡ 快速开始

  1. 安装“OAI Compatible Provider for Copilot”扩展。
  2. 打开 VS Code 设置,配置 oaicopilot.baseUrloaicopilot.models
  3. 打开 Github Copilot聊天界面。
  4. 点击模型选择器,选择“管理模型…”。
  5. 选择“OAI Compatible”提供商。
  6. 输入您的 API 密钥 —— 它将被本地保存。
  7. 选择您希望添加到模型选择器中的模型。

Settings Example

"oaicopilot.baseUrl":"https://api-inference.modelscope.cn/v1","oaicopilot.models":[{"id":"Qwen/Qwen3-Coder-480B-A35B-Instruct","owned_by":"modelscope","context_length":256000,"max_tokens":8192,"temperature":0,"top_p":1}]

Read more

Playwright实战:打造绕过全维度前端反爬的无头浏览器爬虫(2026实战版)

Playwright实战:打造绕过全维度前端反爬的无头浏览器爬虫(2026实战版)

做爬虫开发6年,从最初的requests+BeautifulSoup裸奔爬取,到Selenium模拟浏览器,再到如今的Playwright无头爬虫,踩过的反爬坑能装满一整个笔记本。前端反爬机制这些年迭代极快,早已从简单的UA检测、IP封禁,升级到WebGL/Canvas指纹识别、行为轨迹分析、WebSocket心跳验证、JS混淆风控等全维度检测——传统爬虫要么被秒封,要么爬取数据失真;Selenium因自带webdriver特征,哪怕加了各种隐藏参数,也极易被前端指纹库识别,笔者去年爬取某电商平台商品数据时,Selenium爬虫上线10分钟就被风控拦截,IP和账号直接封禁。 而Playwright作为微软推出的新一代自动化测试工具,天生为爬虫场景做了适配:原生支持无头模式且无明显特征、可深度模拟真实浏览器行为、支持网络请求拦截与篡改、能精准模拟设备指纹,成为当前绕过前端反爬的最优解。本文基于笔者近期爬取某企业级数据平台的实战经验,从前端反爬机制拆解、Playwright核心反爬绕过策略、实战爬虫开发、性能优化四个维度,手把手教你打造一套能绕过99%前端反爬的无头浏览器爬虫,所有代码均

前端WebSocket实时通信:别再用轮询了!

前端WebSocket实时通信:别再用轮询了! 毒舌时刻 WebSocket?听起来就像是前端工程师为了显得自己很专业而特意搞的一套复杂技术。你以为随便用个WebSocket就能实现实时通信?别做梦了!到时候你会发现,WebSocket连接断开的问题让你崩溃,重连机制让你晕头转向。 你以为WebSocket是万能的?别天真了!WebSocket在某些网络环境下会被防火墙拦截,而且服务器的负载也是个问题。还有那些所谓的WebSocket库,看起来高大上,用起来却各种问题。 为什么你需要这个 1. 实时性:WebSocket提供全双工通信,可以实现真正的实时通信,比轮询更高效。 2. 减少网络流量:WebSocket只需要建立一次连接,减少了HTTP请求的开销。 3. 服务器推送:服务器可以主动向客户端推送数据,而不需要客户端轮询。 4. 低延迟:WebSocket的延迟比轮询低,适合实时应用。 5. 更好的用户体验:实时通信可以提供更好的用户体验,比如实时聊天、实时数据更新等。 反面教材 // 1. 简单WebSocket连接 const socket =

我在Mac mini使用OpenClaw接上本地Gemma4后,确认了一件事:AI成本正在归零

Google 全新发布的 Gemma4 堪称 2026 年本地 AI 最优解,260 亿参数开源免费,普通笔记本就能离线全速运行。 今天我在折腾一件事: 👉 用 Mac mini 跑 Gemma 4 + 接入 OpenClaw 跑通之后,我的第一反应不是“AI更强了”,而是: AI 的使用成本,正在被打到接近 0。 一、我是在 Mac mini 上跑起来的 Gemma 4 先说结论: 👉 Gemma 4 是可以在 Mac mini 上跑的 我用的是轻量版本(E4B),本地直接跑,完全离线。 没有云,没有API,没有费用。 两分钟搞定:

前端安全:别让你的网站变成黑客的游乐场

前端安全:别让你的网站变成黑客的游乐场 毒舌时刻 这代码写得跟筛子似的,到处都是漏洞。 各位前端同行,咱们今天聊聊前端安全。别告诉我你还在忽略安全问题,那感觉就像在没有锁的房子里放贵重物品——能放,但随时可能被偷。 为什么你需要关注前端安全 最近看到一个项目,直接在前端存储用户密码,没有任何加密措施。我就想问:你是在做网站还是在做慈善? 反面教材 // 反面教材:不安全的代码 function Login() { const [username, setUsername] = React.useState(''); const [password, setPassword] = React.useState(''); const handleSubmit = async (e) => { e.preventDefault(); // 直接发送密码,没有加密 const response = await fetch('