Chat UI 文档

复刻 HuggingChat

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

复刻 HuggingChat

HuggingChat 的配置文件存储在 chart/env/prod.yaml 文件中。它是我们 CI/CD 管道所用环境变量的真实来源。对于 HuggingChat,由于我们需要自定义应用颜色和基础路径,我们构建了一个自定义的 docker 镜像。你可以在这里找到工作流。

如果你想更改 HuggingChat 在生产环境中使用的模型配置,你应该针对 chart/env/prod.yaml 进行操作。

在本地运行 HuggingChat 的副本

如果你想在本地运行 HuggingChat 的精确副本,你需要先完成以下操作:

  1. 在 Hub 上创建一个 OAuth 应用,并赋予其 openid profile email 权限。确保将回调 URL 设置为类似于 https://:5173/chat/login/callback 的地址,以匹配你本地实例的正确路径。
  2. 使用你的 Hugging Face 账户创建一个 HF Token。你需要一个 Pro 账户才能访问通过 HuggingChat 提供的一些较大型号的模型。
  3. serper.dev 上创建一个免费账户(你将获得 2500 次免费搜索查询)。
  4. 以任何你喜欢的方式(本地或远程)运行一个 MongoDB 实例。

然后,你可以创建一个新的 .env.SECRET_CONFIG 文件,内容如下:

MONGODB_URL=<link to your mongo DB from step 4>
HF_TOKEN=<your HF token from step 2>
OPENID_CONFIG=`{
  PROVIDER_URL: "https://huggingface.co",
  CLIENT_ID: "<your client ID from step 1>",
  CLIENT_SECRET: "<your client secret from step 1>",
}`
SERPER_API_KEY=<your serper API key from step 3>
MESSAGES_BEFORE_LOGIN=<can be any numerical value, or set to 0 to require login>

然后你可以在 chat-ui 的根目录下运行 npm run updateLocalEnv。这将创建一个 .env.local 文件,它结合了 chart/env/prod.yaml.env.SECRET_CONFIG 文件。之后,你可以运行 npm run dev 来启动你的 HuggingChat 本地实例。

填充数据库

此脚本使用的 MONGODB_URL 将从 .env.local 中获取。请确保它是正确的!该命令直接在数据库上运行。

你可以使用 populate 脚本,通过 faker 数据来填充数据库:

npm run populate <flags here>

必须至少指定一个标志,可用的标志如下:

  • reset - 重置数据库
  • all - 填充所有表
  • users - 填充用户表
  • settings - 为现有用户填充设置表
  • assistants - 为现有用户填充助手表
  • conversations - 为现有用户填充对话表

例如,你可以这样使用:

npm run populate reset

来清空数据库。然后在应用中登录以创建你的用户,并运行以下命令:

npm run populate users settings assistants conversations

来用假数据填充数据库,包括为你的用户创建的假对话和助手。

< > 在 GitHub 上更新