简介
LibreChat 是一个免费的开源AI聊天平台,让你在一个界面中使用多个提供商的最先进语言模型。LibreChat提供丰富的定制选项、创新的增强功能和无缝的AI服务集成,带来无与伦比的对话体验。
特点
-
开源且免费
LibreChat是完全开源的项目,你可以自由使用、修改和分发软件,无需任何费用或订阅。 -
多提供商AI支持
LibreChat支持OpenAI、Azure、Anthropic、Google等多种AI提供商。你可以无缝切换不同的模型并利用它们的独特功能。 -
可定制且可扩展
LibreChat的模块化设计和丰富的定制选项,可以根据你的需求进行个性化配置。你可以创建和共享自定义预设、集成插件,甚至参与项目开发。 -
多语言支持
LibreChat的界面支持多种语言,确保全球用户的可访问性和易用性。
功能
界面匹配ChatGPT,包括暗模式、流式传输和最新更新
多模态聊天:上传和分析图像、与文件聊天,并利用工具和API操作的高级代理
多语言界面:支持多种语言
AI模型选择:OpenAI、Azure、Anthropic、Google等
创建、保存和共享自定义预设
编辑、重新提交和继续消息与对话分支
以多种格式导出对话(截图、markdown、文本、JSON)
搜索所有消息和对话
插件支持扩展功能(网页访问、图像生成等)
多用户支持,具有安全身份验证和管理工具
灵活的部署选项(代理、反向代理、Docker等)
完全开源和社区驱动开发
入门教程
MongoDB配置
注册账号
访问 注册页 注册账号并去邮箱 verify
填写问卷
弹出的问卷调查随便填,填完 finish
选择套餐
选择免费计划,Region 建议选择 Virginia,然后点击 CreateDeployment
创建用户
创建用户,copy 密码后复制保存备用,然后 Create Database User
访问链接
点击 Choose a connection method 选择 Drivers,然后复制 3项次 下的字符串,就是这里我用黑粗线隐藏的地方,确认用户名和密码无误并删除 &w=majority
,完成后保存备用,编辑后格式如下
mongodb+srv://username:[email protected]/LibreChat?retryWrites=true&appName=LibreChat
访问权限
点击 Done 关闭弹窗,在左侧菜单栏点击 Network Access,删除原有记录并添加新记录如下设置好后点击 Confirm
HuggingFace配置
这里假设你已经有了一个抱脸账号(如果您还没有账号:注册)
复制样板
访问 样板页,点击右上角三个点选择 Duplicate this Space
填写变量
部分变量如下,没有 KEY 留空即可,填完点击 Duplicate Space 即可发布
KEY | VALUE |
---|---|
MONGO_URI | 使用上一步中获取的字符串 |
OPENAI_API_KEY | 自定义 |
BINGAI_TOKEN | 自定义 |
CHATGPT_TOKEN | 自定义 |
ANTHROPIC_API_KEY | 自定义 |
GOOGLE_KEY | 自定义 |
略 | 略 |
CREDS_KEY | 见下文 获取凭据 |
CREDS_IV | 见下文 获取凭据 |
JWT_SECRET | 见下文 获取凭据 |
JWT_REFRESH_SECRET | 见下文 获取凭据 |
详细配置文档:https://www.librechat.ai/docs/configuration/dotenv
获取凭据
访问 工具页,直接点击 Generate然后点击 Copy 复制值一一对应上面填入
访问页面
稍等几分钟部署完成后,访问地址 https://username-liebrechat.hf.space
开始使用,注意替换链接中 username 为您的用户名,若忘记可在抱脸的地址栏查看。
如果您觉得这个域名并不方便使用,希望自定义域名,可参考下方的 进阶指南:自定义访问域名
进阶指南:自定义访问域名
您需要有一个绑定了域名的 cf 账号用于创建反代worker并在抱脸空间 settings,点击 make public 公开页面
- 新建 worker
worker 的代码如下,您需自行替换代码中所有的username
为您的用户名
export default {
async fetch(request, env) {
const _url = new URL(request.url);
const hostname = _url.hostname;
_url.hostname = "username-librechat.hf.space";
const req = new Request(_url, request);
req.headers.set('origin', 'https://username-librechat.hf.space');
const res = await fetch(req);
let newres = new Response(res.body, res);
let location = newres.headers.get('location');
if (location !== null && location !== "") {
location = location.replace('://username-librechat.hf.space', '://'+hostname);
newres.headers.set('location', location);
}
return newres;
},
};
- 添加路由
部署完成后,在 设置 - 触发器 - 添加路由 自定义域名,注意域名应与区域对应,意即区域选择的是chat.com
,填写的域名就应该是libre.chat.com/*
- 添加DNS记录
添加一个A记录指向这个域名,ip填写优选ip并关闭小黄云,优选ip可参考 【Cloudflare系列教程】加速访问论坛
进阶教程
文本转语音(TTS)
修改 Dockerfile 27、28 行
#RUN curl -o /app/librechat.yaml https://raw.githubusercontent.com/eggacheb/lc-config-yaml/main/librechat-rw.yaml
COPY librechat.yaml /app/librechat.yaml
在根目录新建 librechat.yaml 写入以下行
version: 1.0.9
cache: true
registration:
socialLogins: ["discord", "facebook", "github", "google", "openid"]
tts:
openai:
apiKey: '${TTS_API_KEY}'
model: 'tts-1'
voices: ['alloy','echo','fable','onyx','nova','shimmer'] # 可自定义
url: "https://api.compatible.com/v1/audio/speech" # 请自行修改
添加环境变量
KEY | Value | Description |
---|---|---|
TTS_API_KEY | sk-abcdefg | 你的密钥 |
完成后在设置选择 External
语音转文本 (STT)
在 librechat.yml 添加以下行
stt:
openai:
apiKey: '${STT_API_KEY}'
model: 'whisper-1'
url: 'https://api.compatible.com/v1/audio/transcriptions' # 请自行修改
添加环境变量
KEY | Value | Description |
---|---|---|
STT_API_KEY | sk-abcdefg | 你的密钥 |
完成后同样在设置选择 External
你也可以参考这篇:Cloudflare免费模型食用指南 , 获取每天免费 50分钟 的语音
第三方登录(Oauth)
这里以 Google 为例,请参考:Google Oauth ,自行获取 Client ID 和 Client Secrect,个人使用测试版功能足够不需 Publish,测试版需要添加测试用户后才能使用,类似白名单功能
添加以下环境变量
KEY | Value | Description |
---|---|---|
DOMAIN_CLIENT | https://your-domain.com | 客户端域名,如果没有使用自定义域名,请使用 http://localhost:3080 |
DOMAIN_SERVER | https://your-domain.com | 服务器域名,如果没有使用自定义域名,请使用 http://localhost:3080 |
GOOGLE_CLIENT_ID | your_client_id | Google OAuth 客户端 ID |
GOOGLE_CLIENT_SECRET | your_client_secret | Google OAuth 客户端密钥 |
GOOGLE_CALLBACK_URL | /oauth/google/callback | Google OAuth 回调 URL,不要修改 |
ALLOW_SOCIAL_LOGIN | true | 允许用户通过oauth登录 |
ALLOW_SOCIAL_REGISTRATION | true | 允许通过oauth注册 |
文件上传(RAG)
这部分较复杂,请参考: 用huggingface部署Librechat,可上传pdf,图片等文件,ChatGPT网页服务