GPT4Free:免费接入 GPT-4、Gemini 等大模型
【免费下载链接】gpt4freeThe official gpt4free repository | various collection of powerful language models | opus 4.6 gpt 5.3 kimi 2.5 deepseek v3.2 gemini 3项目地址: https://gitcode.com/GitHub_Trending/gp/gpt4free
GPT4Free(g4f)是一个社区驱动的开源项目,把 GPT-4、Gemini、DeepSeek、Claude 等多家提供商的模型聚合成统一接口,为不想付 API 费的开发者和学生提供免费的大模型调用、图片生成和 OpenAI 兼容 API。
项目全景
| 项目 | 说明 |
|---|---|
| 开发语言 | Python 3.10+,另有 Go 启动器 g4f-go |
| 许可证 | GPLv3,可自由再分发和修改 |
| 核心依赖 | curl_cffi、aiohttp、fastapi、uvicorn、flask(见 requirements.txt) |
| 适用场景 | 本地聊天、免费大模型 API、多模态生成、OpenAI 生态迁移 |
| 社区状态 | 由 xtekky 创建、hlohaus 维护,持续新增提供商与模型 |
代码结构很清晰:提供商适配器在 g4f/Provider/(按 github、glm、openai、needs_auth 等目录分类),客户端封装在 g4f/client/,Web 界面在 g4f/gui/。
三步跑起来
安装方式共三种,各有取舍:
| 方式 | 命令 | 适合谁 |
|---|---|---|
| Docker(推荐) | docker pull hlohaus789/g4f | 运维、零配置用户 |
| pip | pip install -U g4f[all] | Python 开发者 |
| g4f-go | 单个 Go 二进制,首次运行自动下载 Python 运行时 | 没有 Python 环境的机器 |
推荐 Docker,环境隔离、依赖齐全,支持 x86_64 和 arm64:
# 1. 创建存放 cookies 和生成媒体的目录 mkdir -p har_and_cookies generated_media # 2. 拉取镜像 docker pull hlohaus789/g4f # 3. 启动:8080 为 GUI/API,7900 为可选的提供商登录桌面 docker run -p 8080:8080 -p 7900:7900 --shm-size="2g" \ -v $(pwd)/har_and_cookies:/app/har_and_cookies \ -v $(pwd)/generated_media:/app/generated_media \ hlohaus789/g4f:latest启动后浏览器打开http://localhost:8080/chat/就能聊天。如果走 pip 路线,第一次调用也很短:
# 先执行:pip install -U g4f[all] from g4f.client import Client client = Client() response = client.chat.completions.create( model="gpt-4o-mini", messages=[{"role": "user", "content": "用一句话介绍你自己"}], ) print(response.choices[0].message.content)能力拆解
对话与补全:这是主能力域。g4f/models.py 中定义了 GPT-4o、Gemini 3、DeepSeek、Claude、Llama 等几十个模型,请求时自动挑选可用提供商,支持流式输出、系统消息和工具调用。典型用法就是上面那个Client()调用,换model参数即可切换模型。
多模态生成:图片、音频、视觉理解都在同一套客户端里。比如client.images.generate(model="flux", prompt="a white siamese cat")返回图片 URL;文本转语音走 TTS 模型;部分模型(如 gpt-4o、Llama 3.2)带视觉输入能力。
工程化能力:内置 OpenAI 兼容的 Interference API(python -m g4f --port 8080启动,带 Swagger 页面)、MCP 服务器、本地推理后端(Ollama),以及一个很实用的特性——config.yaml自定义模型路由,按配额和错误数在多提供商间自动切换:
# 放在 har_and_cookies/ 目录下,客户端用 name 调用 models: - name: "my-gpt4" providers: - provider: "OpenaiAccount" model: "gpt-4o" condition: "balance > 0 or error_count < 3" # 有配额才走 - provider: "PollinationsAI" # 兜底提供商 model: "openai-large"场景 → 方案速查:
| 场景 | 推荐方案 |
|---|---|
| 日常聊天、演示 | Docker + Web GUI(8080) |
| Python 脚本集成 | g4f.client.Client/AsyncClient |
| 已有 OpenAI SDK 代码 | Interference API(/v1) |
| 让 AI 助手接搜索、抓取工具 | g4f mcp |
| 无 Python 环境的服务器 | g4f-go 启动器 |
| 多提供商容灾、按配额调度 | config.yaml 路由 |
端到端工作流
场景一:把现有 OpenAI 应用零改造切过来。输入是你的 OpenAI SDK 代码;处理是 Docker 部署后,把base_url改为容器的/v1端点,API Key 用 example.env 模板里配置的G4F_API_KEY;输出与官方 OpenAI 接口一致的 JSON。整条链路不依赖任何 OpenAI 账号,还能打开/docs页面直接试接口。
场景二:一条路由吃多个提供商。输入是业务代码里固定的model="my-gpt4";处理是 g4f 读取 config.yaml,先检查 OpenaiAccount 的配额余额和近一小时错误数,条件不满足就落到 PollinationsAI;输出对业务完全透明,换后端不用改代码。
选择建议与避坑
决策表:
| 你的情况 | 选法 |
|---|---|
| 只想体验、不想装环境 | Docker,打开 8080 页面 |
| 写脚本、要异步并发 | pip 安装 +AsyncClient |
| 已有 OpenAI 生态代码 | Interference API |
| 目标机器很干净 | g4f-go |
常见坑:
- 某些提供商报登录过期/401:通过 7900 端口的 VNC 桌面登录网站,把 cookies/HAR 文件存进
har_and_cookies/即可。 - Docker 里浏览器类提供商报错:把
--shm-size加到 2g 以上,并确认镜像含 Chrome/Chromium。 - 某模型偶尔失败:免费提供商有限流是常态,用 config.yaml 配兜底提供商,别在业务层写死。
- 海外服务无响应:在
.env里设置G4F_PROXY代理,模板见 example.env。 - 想暴露到局域网或公网:先加 HTTPS、认证和防火墙,并限制对 cookies 目录的访问。
延伸与参与
项目由社区共同维护,Release 节奏稳定,提供商目录还在持续扩充。参与入口都有现成路径:
- 总览文档:docs/README.md
- 贡献流程:CONTRIBUTING.md(新建 Provider 可参考 etc/tool/create_provider.py 模板)
- 可运行示例:etc/examples/
- 测试用例(也是用法参考):etc/unittest/
总结
GPT4Free 的价值在于把「免费模型 + 统一客户端 + 兼容 API + 部署工具」打包成一条完整链路:你只面对一个Client或一个/v1端点,背后是多提供商的自动切换。下一步可以这样做:
- 用 Docker 命令拉起容器,打开
http://localhost:8080/chat/试一轮对话; - 在你的脚本里用
g4f.client.Client跑通一次补全和图片生成; - 翻一遍 etc/examples/ 里的流式和工具调用示例,找到和你场景最贴近的一份。
【免费下载链接】gpt4freeThe official gpt4free repository | various collection of powerful language models | opus 4.6 gpt 5.3 kimi 2.5 deepseek v3.2 gemini 3项目地址: https://gitcode.com/GitHub_Trending/gp/gpt4free
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考