一键免费部署您的私人 Gemini 应用, 支持 Gemini 1.5 Pro、Gemini 1.5 Flash、Gemini Pro 和 Gemini Pro Vision 模型。
English · 简体中文
分享 GeminiNextChat 仓库
简洁的界面,支持图片识别和语音对话
支持 Gemini 1.5 和 Gemini 2.0 多模态模型
支持插件功能,内置网络搜索、网页解读、论文搜索、实时天气等多种实用插件
跨平台的应用客户端,支持常驻菜单栏,让您的工作效率翻倍
注意:如果您项目使用过程中遇到问题,可以查看常见问题的已知问题及解决方案。
- 在 1 分钟内使用 Vercel 免费一键部署
- 提供体积极小(~4MB)的跨平台客户端(Windows/MacOS/Linux),可以常驻菜单栏,提升办公效率
- 支持多模态模型,可以理解图片、视频、音频和部分文本文档
- 语音模式:让您直接与 Gemini 对话
- 视觉识别,让 Gemini 可以看懂图片内容
- 助理市场,拥有数百精选的系统指令
- 插件系统,内置网络搜索、网页解读、论文搜索、实时天气等多种实用插件
- 会话列表,让您可以保持重要的会话内容或与 Gemini 讨论不同的话题
- 支持 Artifact,让您可以更加优雅地修改对话内容
- 完整的 Markdown 支持:KaTex 公式、代码高亮等等
- 自动压缩上下文聊天记录,在节省 Token 的同时支持超长对话
- 隐私安全,所有数据保存在用户浏览器本地
- 支持 PWA,可以以应用形式运行
- 精心设计的 UI,响应式设计,支持深色模式
- 极快的首屏加载速度,支持流式响应
- 静态部署,支持部署在任何支持静态页面的网站服务,比如 Github Page、Cloudflare、Vercel 等
- 多国语言支持:English、简体中文、繁体中文、日本語、한국어、Español、Deutsch、Français、Português、Русский 以及 العربية
- 重构话题广场,引入 Prompt 列表
- 使用 tauri 打包桌面应用
- 实现基于 functionCall 插件
- 支持会话列表
- 支持对话导出功能
- 启用 Multimodal Live API
-
一键部署项目,可以选择部署到 Vercel
-
开始使用
目前项目支持部署到 Cloudflare,但您需要按照 如何部署到 Cloudflare Page 进行操作。
如果你想立即更新,可以查看GitHub文档以了解如何将分叉项目与上游代码同步。
您可以关注该项目或关注作者以及时获取发布通知。
您的 Gemini api 密钥。 如果您需要“启用”服务器 api,这是必需的。
默认值:
https://generativelanguage.googleapis.com
示例:
http://your-gemini-proxy.com
覆盖 Gemini api 请求基本 url。为了避免服务端代理 url 泄漏,不会覆盖前端页面中的链接。
自定义模型列表,默认为: all。
文件上传大小限制。默认不限制文件大小。
访问密码。
用于注入的脚本代码可用于统计或错误跟踪。
仅用于静态部署模式下设置页面基础路径。
项目提供访问控制。请在 .env
文件或环境变量页面添加名为 ACCESS_PASSWORD
的环境变量。
添加或修改此环境变量后,请重新部署项目以使更改生效。
本项目支持自定义模型列表。请在 .env
文件或环境变量页面添加名为 NEXT_PUBLIC_GEMINI_MODEL_LIST
的环境变量。
默认模型列表使用 all
表示,多个模型之间使用 ,
分隔。
如果需要增加新的模型请直接写入模型名称 all,new-model-name
,或使用 +
符号加上模型名称表示增加,即 all,+new-model-name
。
如果要移除模型列表中的某个模型,请使用 -
符号加上模型名称表示移除,即 all,-existing-model-name
。如果要移除默认模型列表,可以用 -all
表示。
如果要设定默认模型,可以使用 @
符号加上模型名称表示默认模型,即 all,@default-model-name
。
如果您没安装过 pnpm
npm install -g pnpm
# 1. 先安装nodejs和yarn
# 2. 配置本地变量,请将 `.env.example` 改为 `.env` 或 `.env.local`
# 3. 运行
pnpm install
pnpm dev
NodeJS >= 18,Docker >= 20
Docker 版本需要在 20 及其以上,否则会提示找不到镜像。
⚠️ 注意:docker 版本在大多数时间都会落后最新的版本 1 到 2 天,所以部署后会持续出现“存在更新”的提示,属于正常现象。
docker pull xiangfa/talk-with-gemini:latest
docker run -d --name talk-with-gemini -p 5481:3000 xiangfa/talk-with-gemini
您也可以指定额外的环境变量:
docker run -d --name talk-with-gemini \
-p 5481:3000 \
-e GEMINI_API_KEY=AIzaSy... \
-e ACCESS_PASSWORD=your-password \
xiangfa/talk-with-gemini
如果您需要指定其他环境变量,请自行在上述命令中增加 -e 环境变量=环境变量值
来指定。
使用 docker-compose.yml
部署:
version: '3.9'
services:
talk-with-gemini:
image: xiangfa/talk-with-gemini
container_name: talk-with-gemini
environment:
- GEMINI_API_KEY=AIzaSy...
- ACCESS_PASSWORD=your-password
ports:
- 5481:3000
您也可以直接构建静态页面版本,然后将 out
目录下的所有文件上传到任何支持静态页面的网站服务,比如 Github Page、Cloudflare、Vercel 等。
pnpm build:export
如果您将项目部署在子目录下,在访问时会遇到资源加载失败的情况,请在 .env
文件或者变量设置页面增加 EXPORT_BASE_PATH=/路径/项目名称
。
1、使用 Cloudflare AI Gateway 转发 api。目前 Cloudflare AI Gateway 已经支持 Google Vertex AI 相关 api。如何使用请参考 如何使用 Cloudflare AI Gateway 。该方案速度快、稳定性好,推荐使用。
2、使用 Cloudflare Worker 进行 api 代理转发,详细设置请参考 如何使用 Cloudflare Worker 代理 api。注意,该方案在某些情况下可能无法正常工作。
目前 Gemini 1.5
和 Gemini 2.0
这两类模型支持的大部分的图片、音频、视频和部分文本类的文件。对于其他文档类型,后续将尝试使用 LangChain.js 来实现。
vercel 部署后生成的域名在几年前就已经被国内网络屏蔽,但并没有屏蔽服务器的 ip 地址。可以自定义域名,就可以在国内正常访问了。由于 vercel 在国内并没有服务器,所以有时候会出现些许的网络波动,属于正常现象。如何设置域名,可以参考我从网上找到的解决文章Vercel绑定自定义域名。