YakGPT:开源本地ChatGPT界面工具,支持语音转文字与多模型接入

原创 发布日期:
27

一、YakGPT是什么?

YakGPT是一个基于Web技术开发的开源ChatGPT UI(用户界面)工具,其核心定位是“简单、本地运行、高效交互”的智能聊天平台。与官方ChatGPT界面不同,YakGPT无需用户下载安装独立应用,仅需通过现代浏览器即可运行——既支持直接访问在线部署版本,也可克隆代码在本地搭建服务,所有操作均在浏览器环境中完成,轻量化且易上手。

从本质来看,YakGPT是OpenAI API、语音服务API与前端交互界面的“桥梁”:它剥离了复杂的后端中转环节,让用户的浏览器直接与OpenAI等服务的API建立连接,从而实现更快的响应速度;同时,它强化了“隐私安全”与“交互便捷性”两大核心需求,解决了官方UI可能存在的延迟、数据隐私顾虑、输入方式单一等问题。

项目的核心设计理念可概括为三点:

  1. 轻量化部署:无需依赖复杂的服务器环境,本地浏览器或简单的Docker容器即可运行,降低使用门槛;

  2. 隐私优先:用户自主掌控API密钥,数据传输不经过第三方服务器,本地存储且不参与模型训练,规避数据泄露风险;

  3. 高效交互:融合语音输入/输出功能,减少手动打字成本,同时优化界面响应逻辑,比官方UI更流畅。

YakGPT的适用人群广泛:既包括需要快速调用GPT模型但注重数据隐私的个人用户,也涵盖希望在本地环境测试API、简化交互流程的开发者,还适合需要语音交互功能的移动场景用户(如通勤时使用)。项目完全开源,所有代码托管在GitHub,允许用户自由修改、二次开发,满足个性化需求。

二、功能特色

YakGPT的功能围绕“高效、隐私、便捷”三大核心展开,既覆盖了基础的智能聊天需求,又提供了差异化的语音交互、本地运行等特性,具体如下:

1. 多模型支持,兼容GPT-3.5与GPT-4

YakGPT通过直接对接OpenAI API,实现了对GPT-3.5和GPT-4两大核心模型的支持:

  • GPT-3.5:默认对所有用户开放,无需额外权限,适合日常聊天、信息查询、简单文本生成等场景,响应速度快、使用成本低;

  • GPT-4:需用户拥有OpenAI官方的GPT-4 API访问权限(通常需申请或满足一定使用条件),适用于复杂逻辑推理、专业内容创作、深度分析等高精度需求。

用户可在界面中自由切换模型,根据需求选择合适的模型完成任务,无需在不同平台间切换,提升使用连贯性。

2. 全链路语音交互,解放双手

YakGPT深度集成了语音转文字(STT)与文字转语音(TTS)功能,形成“语音输入→智能回复→语音输出”的全链路交互闭环,无需手动打字即可完成聊天,尤其适合移动场景或不便打字的情况。具体支持如下:

语音功能模块 技术支持方 核心优势 使用场景
语音转文字(STT) Azure、OpenAI Whisper 识别准确率高,支持多语言,适配不同口音 通勤时输入问题、双手忙碌时发起聊天、长文本快速录入
文字转语音(TTS) Azure、Eleven Labs 语音自然度高,支持多种音色选择,可流式输出 听取长文本回复、沉浸式聊天交互、辅助视力障碍用户

语音交互的操作极为简单:用户仅需在浏览器中授予麦克风权限,点击界面中的麦克风图标即可激活语音输入;生成回复后,可通过语音播放按钮听取内容,无需逐字阅读,大幅提升交互效率。

3. 本地运行+在线试用双模式,灵活适配不同需求

YakGPT提供两种核心使用方式,用户可根据自身场景选择:

  • 在线试用:直接访问官方部署的网址(https://yakgpt.vercel.app),无需任何配置,打开浏览器即可使用,适合快速体验或临时需求;

  • 本地运行:通过Git克隆仓库代码,使用Yarn/npm安装依赖后构建运行,或通过Docker部署本地服务,数据完全存储在本地设备,适合长期使用、隐私敏感场景或无网络环境(需提前配置API密钥)。

两种模式均无需安装独立应用,仅依赖现代浏览器(如Chrome、Firefox、Edge等),轻量化且兼容性强。

4. 隐私安全保障,数据自主可控

隐私保护是YakGPT的核心亮点之一,通过多重机制确保用户数据安全,解决了很多用户对“数据被滥用”的顾虑:

  • 自主API密钥:用户需使用自己的OpenAI(及可选的Azure、Eleven Labs)API密钥,所有请求直接从浏览器发送至官方API,无第三方服务器中转,避免数据被拦截;

  • 数据存储规则:通过API提交的数据仅按OpenAI官方规则存储30天,且不用于模型训练(遵循OpenAI API数据政策);同时,YakGPT的所有应用状态(如聊天记录、配置信息)均存储在浏览器的localStorage中,仅保存在用户本地设备,不上传至任何外部服务器;

  • 无额外追踪:应用不集成任何 analytics(数据分析)工具,不发起外部服务调用,避免用户行为被追踪。

这种“数据自主掌控”的设计,让YakGPT特别适合处理敏感信息(如工作文档、个人隐私话题),比依赖第三方中转的工具更安全。

5. 性能优化,响应速度优于官方UI

由于YakGPT采用“浏览器直接对接API”的架构,省去了官方UI可能存在的多层后端转发、流量控制等环节,因此在响应速度上更具优势:

  • 减少网络链路:用户请求直接发送至OpenAI API服务器,无需经过第三方中转节点,降低网络延迟;

  • 轻量化界面:前端代码简洁,无冗余功能和广告,页面加载速度快,交互响应即时;

  • 流式处理:支持TTS音频流式输出(已修复相关issue),无需等待完整回复生成即可听取语音,进一步提升使用体验。

6. 友好的界面设计,多场景适配

YakGPT的界面设计注重实用性与兼容性,支持多种场景下的使用:

  • 多主题切换:提供浅色主题(Light Theme)和深色主题(Dark Theme),用户可根据使用环境(如白天/夜间)自由切换,保护视力;

  • 移动端适配:完全支持移动设备浏览器访问,界面布局自动适配手机屏幕,语音输入功能在移动端尤为便捷;

  • 简洁交互逻辑:界面无复杂操作按钮,核心功能(输入框、语音开关、模型切换)一目了然,新手也能快速上手;

  • Markdown支持:支持Markdown格式的回复渲染(已修复MD显示相关issue),对于代码、表格等内容的展示更清晰,适合技术交流、文档创作等场景。

7. 灵活的API配置,支持扩展功能

除了核心的OpenAI API,YakGPT还支持集成其他第三方服务API,扩展功能边界:

  • 语音服务扩展:可配置Azure语音服务或Eleven Labs API,满足不同用户对语音音色、识别准确率的需求;

  • 密钥持久化:支持将API密钥存储在本地.env.local文件中(仅本地使用),避免每次启动应用重复输入,提升使用便捷性;

  • 无强制依赖:除OpenAI API外,其他语音服务API为可选配置,用户可根据需求选择是否启用,降低使用门槛。

YakGPT:开源本地ChatGPT界面工具,支持语音转文字与多模型接入

三、技术细节

YakGPT的技术栈围绕“前端轻量化、部署便捷化、功能模块化”展开,核心技术选型与实现细节如下:

1. 核心技术栈

技术类别 具体技术/工具 核心作用
前端框架 Next.js(React框架) 提供服务端渲染(SSR)和静态站点生成(SSG)能力,优化页面加载速度;支持路由管理、API路由配置,便于本地部署和在线部署(Vercel)。
编程语言 TypeScript 提供类型安全,减少代码错误;提升代码可读性和可维护性,便于开源社区协作开发。
UI组件库 Mantine UI 提供丰富的前端组件(如输入框、按钮、主题切换、响应式布局),快速构建友好的用户界面,减少重复开发。
状态管理 localStorage + 自定义存储逻辑 所有应用状态(聊天记录、API密钥、主题配置等)存储在localStorage,无需后端数据库,实现本地运行;状态持久化,刷新页面后数据不丢失。
语音处理 opus-media-recorder 解决跨浏览器音频录制问题,支持压缩音频格式,避免移动端网络下的传输缓慢问题(OpenAI Whisper API不支持Safari生成的音频,该工具提供解决方案)。
语音服务SDK microsoft-cognitiveservices-speech-sdk 集成Azure语音服务,实现语音转文字和文字转语音功能。
API请求处理 Axios 处理与OpenAI、Azure、Eleven Labs等API的HTTP请求,支持请求拦截、响应处理,确保数据传输稳定。
构建工具 Yarn(包管理器) 管理项目依赖,提供快速安装、构建、启动命令;使用yarn.lock锁定依赖版本,确保跨环境构建一致性。
容器化部署 Docker 提供标准化的部署环境,支持一键构建镜像和运行容器,简化本地部署流程;支持amd64架构预构建镜像,arm64架构可本地构建。
代码质量工具 ESLint 规范代码风格,检测代码错误,提升开源项目的代码质量和协作效率。
配置文件 tsconfig.json、next.config.js 配置TypeScript编译规则、Next.js运行参数(如端口、环境变量),适配不同部署场景。

2. 核心功能实现逻辑

(1)模型调用流程

YakGPT的核心功能是对接OpenAI API实现模型调用,流程如下:

  1. 用户在界面输入文本或通过语音转文字生成输入内容;

  2. 前端通过Axios将输入内容、模型选择(GPT-3.5/GPT-4)等参数封装为API请求;

  3. 请求携带用户自主配置的OpenAI API密钥,直接发送至OpenAI官方API端点(无第三方中转);

  4. OpenAI API返回流式响应(Stream),前端实时接收并渲染回复内容;

  5. 若用户启用TTS功能,前端将生成的文本回复同步发送至Azure/Eleven Labs API,获取语音流并实时播放。

(2)语音交互实现

  • 语音转文字(STT):依赖Azure Speech SDK或OpenAI Whisper API,通过浏览器麦克风获取音频流,使用opus-media-recorder进行压缩编码(避免原始WAV文件过大),再发送至语音服务API进行识别,识别结果自动填充至输入框;

  • 文字转语音(TTS):支持流式输出(修复issue #43),即文本回复生成过程中,分段发送至TTS服务API,获取分段语音流并连续播放,无需等待完整文本生成,提升交互流畅度。

(3)本地存储机制

所有应用状态均通过localStorage存储,包括:

  • 聊天记录(历史对话内容、模型选择记录);

  • API密钥(OpenAI、Azure、Eleven Labs等,加密存储?文档未提及加密,但强调本地存储不泄露);

  • 界面配置(主题选择、语音功能开关状态)。

localStorage的优势是无需后端支持,完全本地运行,同时数据仅保存在用户设备,符合隐私优先的设计理念;缺点是若清除浏览器缓存,数据会丢失,因此项目提供.env.local文件配置密钥的方式,实现密钥持久化。

(4)Docker部署实现

项目提供Dockerfile和.dockerignore文件,优化Docker构建流程(issue #52):

  • 预构建镜像:针对amd64架构提供Docker Hub预构建镜像(yakgpt/yakgpt:latest),用户可直接拉取运行;

  • 本地构建:支持arm64等其他架构,用户可通过docker build命令本地构建镜像,适配不同硬件环境;

  • 容器运行:通过-p 3000:3000映射端口,容器启动后即可通过http://localhost:3000访问,与本地构建运行效果一致。

3. 项目结构解析

从GitHub仓库的文件结构来看,YakGPT的代码组织遵循Next.js项目规范,核心目录与文件功能如下:

  • .github/workflows:GitHub Actions工作流配置,用于自动化构建、测试(已移除arm架构构建,可能因兼容性或资源原因);

  • components:前端组件目录,包含输入框、聊天记录、语音按钮、主题切换等可复用组件,修复了“inline rendering”相关问题;

  • pages:Next.js路由目录,包含首页(index.tsx)、API路由(若有)等,实现页面跳转和功能入口;

  • public:静态资源目录,包含图标(已裁剪优化)、图片等,支持界面展示;

  • stores:状态管理目录,实现聊天记录、API密钥、界面配置等状态的存储与管理,修复了“trim message before cleaning”问题(issue #97);

  • styles:样式文件目录,包含全局样式、主题样式等,支持明暗主题切换;

  • 核心配置文件:

    • Dockerfile:Docker构建配置,优化构建产物(issue #52);

    • .env.local(用户创建):本地环境变量文件,存储API密钥;

    • next.config.js:Next.js配置,优化Docker构建(issue #52);

    • package.json:依赖管理文件,包含构建、启动脚本,最近更新修复了MD显示问题(issue #29);

    • tsconfig.json:TypeScript配置,初始化时创建(Mar 30, 2023);

    • yarn.lock:Yarn依赖版本锁定文件,确保依赖一致性。

4. 关键技术亮点

(1)跨浏览器音频兼容性解决方案

OpenAI Whisper API不支持Safari浏览器生成的音频格式,导致Safari用户无法使用语音转文字功能。YakGPT通过集成opus-media-recorder,实现了跨平台压缩音频录制:

  • 基于Web Worker技术,在后台进行音频编码,不阻塞主线程,保证界面流畅;

  • 生成的opus格式音频体积小、传输快,适配移动端网络环境;

  • 兼容Chrome、Firefox、Safari等主流浏览器,解决了浏览器兼容性问题。

(2)轻量化无后端架构

YakGPT无需部署后端服务器,所有逻辑均在前端实现:

  • API请求直接从浏览器发送至第三方服务(OpenAI等),省去后端中转环节;

  • 状态存储依赖localStorage和.env.local文件,无需数据库支持;

  • 部署仅需前端构建产物(静态文件或Docker容器),服务器资源占用低,可在个人电脑、树莓派等设备上运行。

(3)流式响应处理

针对TTS功能,YakGPT实现了流式音频输出(issue #52修复):

  • 利用Axios的流式响应能力,分段接收TTS服务返回的音频数据;

  • 前端通过Audio API实时播放分段音频,实现“边生成边播放”,减少等待时间;

  • 适配长文本回复场景,避免因文本过长导致的语音播放延迟。

四、应用场景

基于YakGPT的核心功能(本地运行、语音交互、隐私安全、多模型支持),其应用场景覆盖个人、办公、学习、开发等多个领域,具体如下:

1. 个人日常聊天与信息查询

  • 适用人群:普通用户、对隐私敏感的个人用户;

  • 核心需求:日常聊天、快速查询信息(如天气、常识、生活建议)、无需安装APP;

  • 应用方式:使用在线版本(https://yakgpt.vercel.app),无需配置本地环境,直接通过浏览器访问;启用语音交互功能,通勤、做家务等双手忙碌时,通过语音提问获取回复;

  • 优势:无需安装应用,轻量化;语音交互便捷,无需打字;数据本地存储,隐私安全,避免聊天内容泄露。

2. 办公场景高效沟通与文档创作

  • 适用人群:职场人士、文案工作者、程序员;

  • 核心需求:快速生成文档(如报告、邮件、会议纪要)、技术咨询(如代码调试、语法优化)、语音输入减少打字成本;

  • 应用方式:本地部署YakGPT(Docker或源码构建),配置自有OpenAI API密钥;使用语音输入功能快速记录会议要点,生成会议纪要;调用GPT-4模型进行专业文档创作(如项目方案、技术文档),利用Markdown渲染功能优化文档格式;

  • 优势:响应速度快,比官方UI更高效;数据不经过第三方服务器,适合处理公司敏感文档;语音输入提升办公效率,减少手动打字时间;Markdown支持便于技术文档和表格类内容创作。

3. 学习辅助与知识获取

  • 适用人群:学生、终身学习者、专业领域入门者;

  • 核心需求:知识点查询、难题解答、语言学习、专业内容解读;

  • 应用方式:使用本地部署版本,避免网络波动影响学习;调用GPT-4模型进行复杂知识点拆解(如数学公式推导、编程概念解释);启用TTS功能,听取英文回复,辅助语言学习(如发音纠正、听力练习);

  • 优势:隐私安全,学习记录仅保存在本地,避免个人学习数据泄露;语音交互适合碎片化学习场景(如通勤时听知识点解读);多模型切换可适配不同学习需求(GPT-3.5快速查询,GPT-4深度解读)。

4. 移动场景下的便捷交互

  • 适用人群:经常外出、需要随时使用AI工具的用户;

  • 核心需求:无电脑环境下使用GPT模型、快速输入问题、无需安装专用APP;

  • 应用方式:通过手机浏览器访问在线版本或本地部署的服务(需同一网络);启用麦克风权限,通过语音输入问题(如“帮我写一条请假短信”“解释一下区块链的基本概念”);利用移动端适配界面,快速查看回复或听取语音;

  • 优势:无需安装APP,节省手机存储空间;语音输入无需手动打字,适配移动场景;本地部署支持无网络环境(需提前配置API密钥和缓存)。

5. 隐私敏感场景下的AI工具使用

  • 适用人群:处理敏感信息的用户(如律师、医生、企业高管)、注重数据安全的开发者;

  • 核心需求:使用AI工具处理敏感内容(如客户信息、病历、商业机密)、避免数据被第三方获取;

  • 应用方式:本地部署YakGPT(源码构建+本地网络),确保所有数据传输在本地完成;配置自有OpenAI API密钥,数据直接发送至OpenAI官方服务器,无第三方中转;聊天记录存储在localStorage,定期清理,避免敏感信息留存;

  • 优势:数据自主掌控,无第三方服务器参与,降低泄露风险;API数据仅存储30天且不用于训练,符合隐私政策;本地运行可隔绝外部网络攻击,进一步提升安全性。

6. 开发者API测试与二次开发

  • 适用人群:前端开发者、AI工具爱好者、需要定制化ChatGPT UI的用户;

  • 核心需求:测试OpenAI API调用效果、自定义UI界面、扩展功能(如集成其他API);

  • 应用方式:克隆GitHub仓库代码,基于现有架构进行二次开发(如添加自定义主题、集成新的语音服务);通过本地部署测试不同参数(如模型温度、回复长度)对结果的影响;修改Dockerfile适配特定硬件环境(如arm64架构设备);

  • 优势:开源代码,结构清晰,便于二次开发;支持.env.local文件配置,便于API密钥管理和测试;Docker部署简化测试环境搭建,快速验证功能修改。

7. 视力障碍用户的辅助工具

  • 适用人群:视力不佳、无法正常阅读屏幕的用户;

  • 核心需求:语音输入问题、语音听取回复、无需依赖视觉交互;

  • 应用方式:启用语音转文字功能,通过麦克风输入问题;生成回复后自动触发TTS播放,听取内容;使用深色/浅色主题切换,适配视觉感受(若能部分阅读);

  • 优势:全链路语音交互,减少视觉依赖;语音播放清晰(支持Azure/Eleven Labs高质量TTS);界面简洁,操作按钮少,便于盲操作或语音控制。

YakGPT:开源本地ChatGPT界面工具,支持语音转文字与多模型接入

五、使用方法

YakGPT提供在线试用、本地部署(源码构建)、Docker部署三种核心使用方式,操作步骤详细如下,全程通俗易懂,新手也能快速上手:

1. 在线试用(最便捷,无需配置)

步骤1:访问官方在线地址

打开任意现代浏览器(推荐Chrome、Firefox、Edge、Safari),输入网址:https://yakgpt.vercel.app,直接进入YakGPT界面。

步骤2:配置OpenAI API密钥

首次使用时,界面会提示输入OpenAI API密钥(若未提示,可在设置中找到密钥配置入口):

  • 如何获取OpenAI API密钥:访问OpenAI官网(https://platform.openai.com/),注册/登录账号,进入“API Keys”页面,创建并复制密钥(注意:密钥仅显示一次,需妥善保存);

  • 输入密钥:将复制的API密钥粘贴至YakGPT的密钥输入框,点击“保存”即可。

步骤3:开始使用

  • 模型选择:默认使用GPT-3.5(无需额外权限),若已拥有GPT-4 API访问权限,可在界面顶部切换至GPT-4;

  • 输入方式:

    • 文本输入:直接在底部输入框打字,按回车或点击发送按钮提交;

    • 语音输入:点击输入框旁的麦克风图标,授予浏览器麦克风权限,开始说话,说完后停止录音,系统会自动将语音转为文本并提交;

  • 查看回复:文本回复会实时渲染在聊天界面,若启用TTS功能,点击回复旁的播放按钮即可听取语音;

  • 主题切换:在界面设置中选择“Light Theme”或“Dark Theme”,适配使用环境。

2. 本地部署(源码构建,适合长期使用)

前置条件(Prerequisites)

在开始前,需确保电脑已安装以下工具:

  • Git:用于克隆仓库代码(下载地址:https://git-scm.com/);

  • 包管理器:Yarn(推荐,下载地址:https://yarnpkg.com/)或npm(Node.js自带,下载Node.js:https://nodejs.org/)、pnpm;

  • 现代浏览器:Chrome、Firefox、Edge等(用于访问本地服务)。

步骤1:克隆仓库代码

打开终端(Windows:命令提示符/ PowerShell;Mac/Linux:Terminal),输入以下命令,克隆YakGPT仓库至本地:

git clone https://github.com/yakGPT/YakGPT.git

克隆完成后,进入项目目录:

cd YakGPT

步骤2:安装依赖并构建项目

使用Yarn安装项目依赖(若使用npm,将yarn替换为npm installyarn build替换为npm run build):

# 安装依赖
yarn

# 构建项目(生成优化后的前端产物)
yarn build

# 启动本地服务器
yarn start

步骤3:访问本地服务

启动成功后,终端会提示“Ready on http://localhost:3000”,打开浏览器,输入该地址即可访问本地运行的YakGPT。

步骤4:配置API密钥(持久化)

若希望每次启动服务时无需重复输入API密钥,可配置.env.local文件:

  1. 在项目根目录下创建.env.local文件(注意文件名前有小数点);

  2. 打开文件,输入以下内容(替换为自己的API密钥):

# OpenAI API密钥(必填)
NEXT_PUBLIC_OPENAI_API_KEY=<your-open-ai-key-here>

# 可选:Eleven Labs API密钥(用于TTS功能)
NEXT_PUBLIC_11LABS_API_KEY=<your-eleven-labs-key-here>

# 可选:Azure API密钥(用于STT/TTS功能)
# NEXT_PUBLIC_AZURE_SPEECH_KEY=<your-azure-speech-key-here>
# NEXT_PUBLIC_AZURE_SPEECH_REGION=<your-azure-speech-region-here>
  1. 保存文件后,重启本地服务(yarn start),密钥会自动加载,无需再次输入。

3. Docker部署(容器化,适配多环境)

前置条件

已安装Docker(下载地址:https://www.docker.com/),并确保Docker服务已启动。

方式1:使用预构建镜像(amd64架构)

适合Windows(64位)、Mac(Intel芯片)、Linux(amd64架构)用户,无需本地构建,直接拉取镜像运行:

  1. 打开终端,输入以下命令拉取YakGPT镜像:

docker pull yakgpt/yakgpt:latest
  1. 运行容器,映射端口3000:

docker run -it -p 3000:3000 yakgpt/yakgpt:latest
  1. 容器启动后,打开浏览器访问http://localhost:3000,即可使用,API密钥配置方式与在线试用/本地部署一致。

方式2:本地构建镜像(适配arm64架构,如Mac M1/M2芯片)

预构建镜像仅支持amd64架构,arm64架构用户需本地构建:

  1. 克隆仓库代码(同本地部署步骤1):

git clone https://github.com/yakGPT/YakGPT.git
cd YakGPT
  1. 构建Docker镜像:

docker build -t yakgpt:latest .

(注意命令末尾的.,表示基于当前目录的Dockerfile构建) 3. 运行容器:

docker run -it -p 3000:3000 yakgpt:latest
  1. 访问http://localhost:3000,完成API密钥配置即可使用。

4. 麦克风集成使用注意事项

  • 浏览器权限:首次使用语音输入时,浏览器会弹出麦克风权限请求,需点击“允许”,否则无法使用;

  • 设备要求:确保电脑/手机有可用的麦克风(内置或外置),且无其他应用占用麦克风;

  • 浏览器兼容性:推荐使用Chrome、Firefox、Edge浏览器,Safari浏览器需确保版本较新(opus-media-recorder已适配);

  • 语音转文字效果:网络环境越好,识别准确率越高;若识别错误,可手动修改输入框中的文本后提交。

YakGPT:开源本地ChatGPT界面工具,支持语音转文字与多模型接入

六、常见问题解答(FAQ)

1. 我需要哪些API密钥才能使用YakGPT?

  • 核心密钥:必须拥有OpenAI API密钥(用于调用GPT-3.5/GPT-4模型),无此密钥无法使用核心聊天功能;

  • 可选密钥:若需使用语音转文字(STT)或文字转语音(TTS)功能,可配置Azure语音服务API密钥或Eleven Labs API密钥;若不配置,仅影响语音功能,文本聊天功能仍可正常使用。

2. 如何获取OpenAI API密钥?

  • 访问OpenAI官方平台:https://platform.openai.com/;

  • 注册或登录账号(需科学上网,支持邮箱、Google账号登录);

  • 登录后,点击右上角头像,选择“View API keys”;

  • 点击“Create new secret key”,输入密钥名称(可选),点击“Create secret key”;

  • 复制生成的密钥(仅显示一次,务必保存到安全位置,丢失无法找回)。

3. 为什么我无法使用GPT-4模型?

  • GPT-4 API访问权限需单独申请或满足OpenAI的使用条件(如付费用户、API调用量达标等);

  • 若未获得GPT-4权限,YakGPT仅能使用GPT-3.5(默认启用,无需额外配置);

  • 申请GPT-4 API权限:可在OpenAI平台提交申请,或升级为ChatGPT Plus会员后查看是否有API访问权限。

4. 我的API密钥会被泄露吗?

  • 不会。YakGPT的API密钥存储在浏览器localStorage或本地.env.local文件中(仅本地使用),不会上传至任何外部服务器;

  • 所有API请求直接从你的浏览器发送至OpenAI等官方API服务器,无第三方中转,确保密钥安全;

  • 注意:若使用公共设备(如网吧电脑),使用后请及时清除浏览器缓存或删除.env.local文件,避免密钥泄露。

5. 聊天记录和数据会被保存多久?

  • 聊天记录:存储在浏览器localStorage中,只要不清除浏览器缓存,数据会一直保留;若清除缓存,聊天记录会丢失;

  • API提交的数据:按OpenAI官方政策,数据仅存储30天,且不用于模型训练;YakGPT本身不存储任何聊天数据到外部服务器。

6. 本地部署后,断网能使用吗?

  • 不能。YakGPT的核心功能依赖调用OpenAI API,需要网络连接才能发送请求和接收回复;

  • 仅当已配置API密钥且浏览器缓存了相关状态时,断网后可查看历史聊天记录,但无法发起新的聊天请求。

7. Docker部署支持arm64架构吗?

  • 支持,但需本地构建镜像。官方提供的预构建镜像(yakgpt/yakgpt:latest)仅支持amd64架构;

  • arm64架构用户(如Mac M1/M2芯片、树莓派)需按“Docker部署-方式2”的步骤,克隆代码后本地构建镜像,再运行容器。

8. 语音功能无法使用怎么办?

  • 检查浏览器权限:确保已授予麦克风权限(可在浏览器设置中查看);

  • 检查麦克风设备:确保麦克风正常工作,无其他应用占用;

  • 更换浏览器:推荐使用Chrome或Firefox,若使用Safari,确保版本为最新;

  • 配置语音API密钥:若需使用Azure或Eleven Labs的语音服务,需确保已正确配置对应的API密钥。

9. 如何更新YakGPT到最新版本?

  • 在线试用:无需更新,官方部署的版本会自动同步GitHub最新代码;

  • 本地部署(源码):进入项目目录,执行git pull拉取最新代码,再重新运行yarn && yarn build && yarn start

  • Docker部署:若使用预构建镜像,执行docker pull yakgpt/yakgpt:latest拉取最新镜像,再重新运行容器;若本地构建,先git pull更新代码,再重新构建镜像。

10. 为什么YakGPT比官方ChatGPT UI更快?

  • 架构差异:YakGPT直接从浏览器调用API,无第三方中转环节,减少网络延迟;

  • 轻量化设计:界面无冗余功能和广告,代码简洁,加载和响应速度更快;

  • 流式处理:TTS功能支持流式输出,无需等待完整回复生成即可听取语音,提升体验。

YakGPT:开源本地ChatGPT界面工具,支持语音转文字与多模型接入

YakGPT:开源本地ChatGPT界面工具,支持语音转文字与多模型接入

七、相关链接

八、总结

YakGPT是一款以“本地运行、隐私优先、高效交互”为核心的开源ChatGPT UI工具,通过直接对接OpenAI API实现GPT-3.5与GPT-4模型的调用,集成Azure、OpenAI Whisper、Eleven Labs的语音转文字(STT)和文字转语音(TTS)功能,无需安装额外应用,可通过浏览器在线试用或本地部署(源码/ Docker方式)使用。其核心优势在于数据隐私安全(自主API密钥、本地存储、无第三方中转)、交互便捷性(语音输入/输出、多主题适配、移动端支持)和性能优化(响应速度优于官方UI、流式TTS输出),同时具备开源免费、二次开发友好等特点,适用于个人聊天、办公文档创作、学习辅助、隐私敏感场景使用、开发者API测试等多种需求。无论是普通用户追求轻量化、安全的AI聊天工具,还是开发者需要定制化ChatGPT界面,YakGPT都提供了简单易用、灵活适配的解决方案,是开源社区中一款兼具实用性与安全性的优质AI工具。

打赏
THE END
作者头像
AI工具箱
一个喜欢收集AI工具的小萌新