聊天 AI

ChatbotUI:适合所有人的开源人工智能聊天应用程序

简洁的聊天机器人UI来了。

2024年1月26日
chatbot-ui
分享

适合所有人的开源人工智能聊天应用程序。

演示

在这里查看最新的演示。

官方托管版本

近期会发布 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 statusAPI 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 实例。

来自:

更多文章

7000+star!找工作是强需求。

2024年1月26日 · 简历
rustdesk-0
RustDesk是一款可以平替TeamViewer的开源软件,旨在提供安全便捷的自建方案。
2024年1月25日 · 远程桌面
photomaker-1
又一份图像生成图像的作品。
2024年1月25日 · 图像生成 AI
ferret
Apple出品的端到端多模态大模型。
2024年1月24日 · LLM MLLM 多模态