keywords: ChatGPT OpenAI Clash 自定义 节点 机场 VPN 预处理 YAML
前言
随着 ChatGPT 的大火,OpenAI 为降低负载堵住不可用地区用户钻空子而封禁了许多服务器 IP 段,导致大量节点无法访问。最严重的莫过于甲骨文(Oracle),其个人永久免费云带宽极高,被大量用于低价机场建设,IP 段也是被封禁最严重的之一。虽然 OpenAI 近期解封了不少服务器 IP 段(据传与其营收压力有关),不过尚不确定解封是永久还是仅仅短时有效,因此一个丝滑访问 ChatGPT 的方法就显得尤为必要。
笔者今天要使用的方法基于 Clash for Windows(以下简称 cfw)的预处理(Parsers)功能,你可以在 设置 → 预处理
打开(英文版为 Settings → Parsers
)
打开后就是 cfw 的编辑器了。不出意外的话,你会看到以下内容:
parsers:
#
这里简单介绍一下预处理的语法和关键字的作用。Clash 的配置使用 YAML 编写,容易上手,这是维基百科对于 YAML 的介绍:
YAML是"YAML Ain't a Markup Language"(YAML不是一种标记语言)的递归缩写。在开发的这种语言时,YAML的意思其实是:"Yet Another Markup Language"(仍是一种标记语言)[4],但为了强调这种语言以数据为中心,而不是以标记语言为重点,而用反向缩略语重命名。
简单来说,YAML 可以广泛应用于数据标记、配置存储。
这是预处理配置可用的数据字段:
键 | 类型 | 操作 |
---|---|---|
append-rules | 数组 | 数组合并至原配置rules 数组后 |
prepend-rules | 数组 | 数组合并至原配置rules 数组前 |
append-proxies | 数组 | 数组合并至原配置proxies 数组后 |
prepend-proxies | 数组 | 数组合并至原配置proxies 数组前 |
append-proxy-groups | 数组 | 数组合并至原配置proxy-groups 数组后 |
prepend-proxy-groups | 数组 | 数组合并至原配置proxy-groups 数组前 |
mix-proxy-providers | 对象 | 对象合并至原配置proxy-providers 中 |
mix-rule-providers | 对象 | 对象合并至原配置rule-providers 中 |
mix-object | 对象 | 对象合并至原配置最外层中 |
commands | 数组 | 在上面操作完成后执行简单命令操作配置文件 |
方案实施
我们需要使用的是 prepend-proxy-groups
和 prepend-rules
字段。
parsers:
- reg: .+
yaml:
prepend-proxy-groups:
- ...
prepend-rules:
- ...
接着,在 字段中添加一个名为 ChatGPT 的组(你也可以改成你喜欢的名字):
parsers:
- reg: .+
yaml:
prepend-proxy-groups:
- name: ChatGPT
prepend-rules:
- ...
优点为可以自行选择节点,找到最快的那一个;缺点是如果节点被 OpenAI 屏蔽则需要手动切换。
为数组添加属性:
parsers:
- reg: .+
yaml:
prepend-proxy-groups:
- name: ChatGPT
type: select
proxies:
prepend-rules:
- ...
添加 command 字段,添加数值以复制节点列表到新的代理组:
parsers:
- reg: .+
yaml:
prepend-proxy-groups:
- name: ChatGPT
type: select
proxies:
commands:
- proxy-groups.ChatGPT.proxies=[]proxyNames| #“|”后面可以添加过滤字符,如chatgpt即节点标题仅包含“chatgpt”的节点
prepend-rules:
- ...
在 prepend-rules 字段中添加数值:
parsers:
- reg: .+
yaml:
prepend-proxy-groups:
- name: ChatGPT
type: select
proxies:
commands:
- proxy-groups.ChatGPT.proxies=[]proxyNames| #“|”后面可以添加过滤字符,如chatgpt即节点标题仅包含“chatgpt”的节点
prepend-rules:
- "DOMAIN-SUFFIX,openai.com,ChatGPT"
保存。
接着,我们就可以在代理组中为 openai.com 指定节点了。
Comments 4 条评论
博主 Z
这是一条私密评论
博主 CircleCrop
@Z 预处理主要是针对我个人的一些应用和网站,可能会涉及隐私,就不发了~
博主 haveFun
试了,还是没搞定
博主 CircleCrop
@haveFun 你的节点有可以访问 GPT 的喵?如果有的话在新建的分组里选中它,还不行可以提供一下截图发给我