菜单

认证方法

相关源文件

本文档涵盖了 g4f 提供商用来访问 AI 服务的各种认证机制。该系统支持多种认证策略,从 API 密钥和浏览器自动化到 HAR 文件解析和 cookie 管理。

有关特定提供商实现的信息,请参阅 已认证提供商。有关提供商开发模式的详细信息,请参阅 提供商开发

概述

g4f 系统实现了一个复杂的、多层级的认证架构,以支持超过 50 个 AI 提供商,每个提供商都有不同的认证要求。根据复杂性和自动化程度,认证方法被分为几类。

认证方法类别

来源:g4f/Provider/needs_auth/OpenaiAPI.py1-11 g4f/Provider/openai/har_file.py25-43 g4f/Provider/You.py75-90

HAR 文件认证

HAR(HTTP Archive)文件认证从浏览器网络录音中提取会话数据,以与需要复杂浏览器端认证流程的服务进行认证。

HAR 文件处理架构

HAR 文件认证流程

来源:g4f/Provider/openai/har_file.py44-56 g4f/Provider/openai/har_file.py58-90 g4f/Provider/openai/har_file.py94-107

RequestConfig 结构

RequestConfig 类将从 HAR 文件中提取的认证数据集中起来

字段类型目的
cookiesdict来自浏览器的会话 cookie
headersdict请求头,包括认证令牌
访问令牌str用于 API 认证的 Bearer 令牌
proof_tokenlist工作量证明令牌数据
turnstile_tokenstrCloudflare Turnstile 令牌
arkose_requestarkReqArkose Labs 挑战请求
arkose_tokenstr生成的 arkose 令牌

来源:g4f/Provider/openai/har_file.py25-33

Arkose 挑战处理

系统通过加密操作处理 Arkose Labs 的反机器人挑战

Arkose 请求处理

来源:g4f/Provider/openai/har_file.py109-127 g4f/Provider/openai/har_file.py129-151

API 密钥身份验证

API 密钥认证是最直接的方法,由提供传统 REST API 访问的提供商使用。

OpenaiTemplate 模式

OpenaiTemplate 类为基于 API 密钥的提供商提供了一个标准化的模式

API 密钥提供商架构

来源:g4f/Provider/needs_auth/OpenaiAPI.py5-11 g4f/Provider/needs_auth/Groq.py5-11 g4f/Provider/needs_auth/ThebApi.py22-28

提供商特定的配置

提供商API 基础地址登录 URL特殊功能
OpenaiAPIhttps://api.openai.com/v1平台 API 密钥页面标准 OpenAI 兼容性
Groqhttps://api.groq.com/openai/v1控制台密钥页面模型别名支持
ThebApihttps://api.theb.ai/v1Beta 主页自定义模型参数
DeepInfrahttps://api.deepinfra.com/v1/openai仪表板 API 密钥动态模型发现
PerplexityApihttps://api.perplexity.ai设置 API 页面在线搜索模型

来源:g4f/Provider/needs_auth/OpenaiAPI.py8-9 g4f/Provider/needs_auth/Groq.py7-8 g4f/Provider/needs_auth/DeepInfra.py12-13

浏览器自动化

浏览器自动化通过使用 nodriver 进行无头浏览器控制,来与需要交互式浏览器会话的服务进行认证。

浏览器认证流程

浏览器自动化过程

来源:g4f/Provider/You.py75-90

You.com 浏览器认证示例

You 提供商展示了用于 cookie 提取的浏览器自动化

来源:g4f/Provider/You.py81-90

Cookie 管理处理跨请求的持久化会话数据,支持自动发现和手动配置。

Cookie 管理架构

来源:g4f/Provider/You.py76-79 g4f/Provider/needs_auth/Cerebras.py35-36

提供商所需 Cookie提取方法目的
You.comafUserId浏览器自动化用户会话标识
Cerebras.cerebras.ai系统 cookie演示 API 密钥检索
OpenAI Chat来自 HAR 的会话 cookieHAR 文件解析ChatGPT 网页界面

来源:g4f/Provider/You.py80 g4f/Provider/needs_auth/Cerebras.py36

工作量证明 (Proof-of-Work) 令牌

工作量证明令牌通过计算挑战来验证合法的客户端行为,主要由 OpenAI 的网页界面使用。

Proof Token 生成

工作量证明算法

来源:g4f/Provider/openai/proofofwork.py7-38

Proof Token 结构

Proof 令牌包含浏览器环境数据和计算证明

来源:g4f/Provider/openai/proofofwork.py16-25

提供商认证集成

不同的提供商根据其特定的要求和安全模型集成认证方法。

认证方法分布

提供商认证方法

来源: g4f/Provider/needs_auth/__init__.py1-32 g4f/Provider/You.py75-90 g4f/Provider/needs_auth/Cerebras.py34-42

Cerebras 混合身份验证

Cerebras 提供商演示了结合使用 cookie 和 API 密钥提取的混合身份验证。

来源: g4f/Provider/needs_auth/Cerebras.py34-42