适合所有人的开源人工智能聊天应用程序。
演示
在这里查看最新的演示。
官方托管版本
近期会发布 Chatbot UI 的官方托管版本。
官方桌面应用程序
近期会发布 Chatbot UI 的官方桌面应用程序。只需单击下载并开始聊天 - 无需设置。
旧版本代码
Chatbot UI 最近更新至 2.0 版本。
1.0 的代码可以在legacy
分支上找到。
更新
在本地 Chatbot UI 仓库根目录的终端中,运行:
npm run update
本地运行
请按照以下步骤操作,让您自己的 Chatbot UI 实例在本地运行。
您可以在此处观看完整的视频教程。
1. 克隆仓库
git clone https://github.com/mckaywrigley/chatbot-ui.git
2.安装依赖
在本地 Chatbot UI 仓库的根目录中打开终端并运行:
npm install
3.安装Supabase并本地运行
为什么用 Supabase?
以前,我们使用本地浏览器存储来存储数据。然而,由于以下几个原因,这不是一个好的解决方案:
- 安全问题
- 存储空间有限
- 限制多模式用例
我们现在使用 Supabase,因为它易于使用,它是开源的,它是 Postgres,并且它有一个用于托管实例的免费版本。
未来我们将支持其他提供商,为您提供更多选择。
1.安装Docker
您需要安装 Docker 才能在本地运行 Supabase。您可以在这里免费下载。
2.安装Supabase CLI
MacOS/Linux
brew install supabase/tap/supabase
Window
scoop bucket add supabase https://github.com/supabase/scoop-bucket.git scoop install supabase
3.启动Supabase
在本地 Chatbot UI 仓库根目录的终端中,运行:
supabase start
4.填写密钥
1.环境变量
在本地 Chatbot UI 仓库根目录的终端中,运行:
cp .env.local.example .env.local
通过运行下面命令获取所需的值:
supabase status
注意:把supabase status
的API URL
赋值给NEXT_PUBLIC_SUPABASE_URL
现在转到您的.env.local
文件并填写值。
如果设置了环境变量,它将禁用用户设置中的输入。
2. SQL设置
在第一个迁移文件supabase/migrations/20240108234540_setup.sql
中,您需要将2个值替换为上面获得的值:
project_url
(第 53 行):http://supabase_kong_chatbotui:8000
(默认)如果您不更改config.toml
文件中的project_id
,则可以保持不变service_role_key
(第 54 行):通过运行supabase status
得到
这可以防止存储文件未被正确删除的问题。
5.安装Ollama(对于本地模型可选)
请按照此处的说明进行操作。
6.本地运行应用程序
在本地 Chatbot UI 仓库根目录的终端中,运行:
npm run chat
您的 Chatbot UI 本地实例现在应该在http://localhost:3000上运行。
您可以在http://localhost:54323/project/default/editor查看后端 GUI 。
托管
请按照以下步骤操作,让您自己的 Chatbot UI 实例在云中运行。
视频教程即将推出。
1. 和本地运行步骤相同的
重复上面“本地运行”中的步骤 1-4。
您需要为本地实例和托管实例分别提供独立的仓库。
在 GitHub 上为您托管的 Chatbot UI 实例创建一个新仓库,并将代码推送上去。
2. 使用 Supabase 设置后端
1.创建一个新项目
转到Supabase并创建一个新项目。
2. 获取项目价值
进入项目大盘后,单击最左下角的“项目设置”图标选项卡。
在这里您将获得以下环境变量的值:
Project Ref
:在“常规设置”中找到,即“引用 ID”Project ID
:在项目大盘的 URL 中找到(例如:https://supabase.com/dashboard/project/<YOUR_PROJECT_ID>/settings/general)
仍在“设置”中,单击左侧的“API”文本选项卡。
在这里您将获得以下环境变量的值:
Project URL
:在“API 设置”中找到,即“项目 URL”Anon key
:在“项目 API 密钥”中找到,即“anon public”Service role key
:在“项目 API 密钥”中找到,即“service_role”(提醒:将其视为密码!)
3.配置鉴权
接下来,单击最左侧的“身份验证”图标选项卡。
在文本选项卡中,单击“提供商”并确保启用“电子邮件”。
我们建议为您自己的个人实例关闭“确认电子邮件”。
4. 连接到托管数据库
打开托管的 Chatbot UI 实例的仓库。
在第一个迁移文件中,supabase/migrations/20240108234540_setup.sql
您需要将 2 个值替换为上面获得的值:
project_url
(第 53 行):使用上面的Project URL
service_role_key
(第 54 行):使用上面的Service role key
现在,在本地 Chatbot UI 仓库的根目录中打开一个终端。我们将在这里执行一些命令。
通过运行以下命令登录 Supabase:
supabase login
接下来,通过运行以下命令以及上面获得的“项目引用”和“项目 ID”来链接您的项目:
supabase link --project-ref <project-id>
您的项目现在应该已链接。
最后,通过运行以下命令将数据库推送到 Supabase:
supabase db push
您的托管数据库现在应该已设置完毕!
3. 使用 Vercel 设置前端
转到Vercel并创建一个新项目。
在设置页面中,导入 Chatbot UI 托管实例的 GitHub 仓库。
在环境变量中,从上面获得的值中添加以下内容:
NEXT_PUBLIC_SUPABASE_URL
NEXT_PUBLIC_SUPABASE_ANON_KEY
SUPABASE_SERVICE_ROLE_KEY
NEXT_PUBLIC_OLLAMA_URL
(仅在使用本地 Ollama 模型时需要;默认值:http://localhost:11434
)
您还可以添加 API 密钥作为环境变量。
OPENAI_API_KEY
AZURE_OPENAI_API_KEY
AZURE_OPENAI_ENDPOINT
AZURE_GPT_45_VISION_NAME
有关环境变量的完整列表,请参阅“.env.local.example”文件。如果为 API 密钥设置了环境变量,则会禁用用户设置中的输入。
单击“部署”并等待前端部署。
部署后,您应该能够通过 Vercel 提供的 URL 使用托管的 Chatbot UI 实例。
来自: