适合所有人的开源 AI 聊天应用程序。
在此处查看最新演示。
请稍后再回来查看聊天机器人UI的官方托管版本。
请稍后再回来查看用于聊天机器人 UI 的官方桌面应用程序。只需点击下载并开始聊天 - 无需设置。
如果你觉得聊天机器人 UI 有用,请考虑赞助我来支持我的开源工作:)
聊天机器人 UI 最近更新到 2.0 版本。
1.0 的代码可以在分支上找到。
legacy
按照以下步骤在本地运行你自己的聊天机器人 UI 实例。
你可以在此处观看完整的视频教程。
git clone https://github.com/mckaywrigley/chatbot-ui.git
在本地聊天机器人UI存储库的根目录中打开终端,然后运行:
npm install
以前,我们使用本地浏览器存储来存储数据。但是,由于以下几个原因,这不是一个好的解决方案:
我们现在使用 Supabase,因为它易于使用,它是开源的,它是 Postgres,并且它有一个托管实例的免费套餐。
我们将来支持其他提供商,为你提供更多选择。
你需要安装 Docker 才能在本地运行 Supabase。你可以在这里免费下载。
MacOS/Linux操作系统
brew install supabase/tap/supabase
窗
scoop bucket add supabase https://github.com/supabase/scoop-bucket.git
scoop install supabase
在本地聊天机器人 UI 存储库根目录下的终端中,运行:
supabase start
在本地聊天机器人 UI 存储库根目录下的终端中,运行:
cp .env.local.example .env.local
通过运行以下命令获取所需的值:
supabase status
注意:使用 from for
API URL
supabase status
NEXT_PUBLIC_SUPABASE_URL
现在转到你的文件并填写值。
.env.local
如果设置了环境变量,它将禁用用户设置中的输入。
在第一个迁移文件中,你需要将 2 个值替换为上面的值:
supabase/migrations/20240108234540_setup.sql
project_url(第 53 行):(默认)如果你不更改文件中的
http://supabase_kong_chatbotui:8000
project_id
config.toml
service_role_key(第 54 行):你从运行中得到了这个值
supabase status
这样可以防止存储文件未被正确删除的问题。
请按照此处的说明进行操作。
在本地聊天机器人 UI 存储库根目录下的终端中,运行:
npm run chat
你的聊天机器人 UI 的本地实例现在应该以 http://localhost:3000 的速度运行。
你可以在 http://localhost:54323/project/default/editor 查看后端 GUI。
按照以下步骤在云中运行你自己的聊天机器人 UI 实例。
视频教程即将推出。
重复上面“本地快速入门”中的步骤 1-4。
你需要为本地实例和托管实例提供单独的存储库。
在 GitHub 上为你的托管聊天机器人 UI 实例创建一个新存储库,并将代码推送到其中。
转到 Supabase 并创建一个新项目。
进入项目 dashboard 后,单击左下角的“项目设置”图标选项卡。
在这里,你将获得以下环境变量的值:
Project Ref:在“常规设置”中找到“参考ID”
Project ID:在项目 dashboard 的 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”(提醒:将其视为密码!
接下来,单击最左侧的“身份验证”图标选项卡。
在文本选项卡中,单击“提供商”并确保启用“电子邮件”。
我们建议你为自己的个人实例关闭“确认电子邮件”。
打开托管的聊天机器人 UI 实例的存储库。
在第一个迁移文件中,你需要将 2 个值替换为上面的值:
supabase/migrations/20240108234540_setup.sql
project_url(第 53 行):使用上面的值
Project URL
service_role_key(第 54 行):使用上面的值
Service role key
现在,在本地聊天机器人 UI 存储库的根目录中打开一个终端。我们将在这里执行一些命令。
通过运行以下命令登录Supabase:
supabase login
接下来,通过运行以下命令来链接你的项目,其中包含上面获取的“项目引用”和“项目 ID”:
supabase link --project-ref <project-id>
你的项目现在应该已链接。
最后,通过运行以下命令将数据库推送到 Supabase:
supabase db push
你的托管数据库现在应该已经设置好了!
转到 Vercel 并创建一个新项目。
在设置页面中,导入托管的聊天机器人 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
NEXT_PUBLIC_AZURE_OPENAI_ENDPOINT
NEXT_PUBLIC_AZURE_GPT_45_VISION_ID
有关环境变量的完整列表,请参阅“.env.local.example”文件。如果为 API 密钥设置了环境变量,它将禁用用户设置中的输入。
单击“部署”并等待前端部署。
部署后,你应该能够通过 Vercel 为你提供的 URL 使用托管的聊天机器人 UI 实例。
我们正在制定一份贡献指南。
在 Twitter/X 上向 Mckay 发送消息