# 前言
TiDB Serverless 去年就有和 Vercel 的集成了,同时还有一个 bookstore template 方便大家体验。但个人感觉 bookstore 不够炫酷,借 2023 TiDB hackthon 的机会,我搞了个 mask chatbot,你可以在 mask chatbot 上选定角色,基于此生成 prompt 来更好的使用 ChatGPT。
Mask chatbot 是基于一个模版修改而来。我将他的底层替换为了 TiDB Serverless,并添加加了一些新的能力。
准备工作
确保你准备好了:
- TiDB Serverless 账号
- Vercel 账号
- Github 账号
- Github OAuth App: 点击 创建,Authorization callback URL 可以先任意填写。下文会介绍。
步骤
- 在 mask-chabot 仓库点击 deploy 按钮,将会跳转到一个配置页面
- 创建 repo:在配置页面先输入你的 repo 名字,点击创建
- 添加 TiDB serverless integration 集成:按照指创建或选择你的 TiDB Serverless 集群即可。
-
输入以下环境变量:
- OPENAI_API_KEY: open ai 的 api key(怎么创建 open ai 账号就不在本文范围了)
- AUTH_SECRET: 使用该命令生成一个即可 `openssl rand -base64 32`
- AUTH_GITHUB_ID: 进入 Github->settings->developer settings->OAuth Apps 找到之前创建的 app,点击进入复制其 Client ID 即可。
- AUTH_GITHUB_SECRET:在上一步 OAuth App 中点击 create a new client secret 然后复制即可。
- 点击 deploy 等待创建完成。
- 创建完后,你就会进入 vercel 该项目的主页了。这时将你的 OAuth app 中的 Authorization callback URL 修改为https://${你的domain}/api/auth/callback/github。
使用
上面六步就部署完一个独属于你的 chatbot 了。你也可以分享给别人,上面做的你可能觉得复杂的 Github OAuth app 都是为了鉴权登陆,基于此,每个人之间就是隔离的了。
- 随意选择一个角色让 AI 进行扮演:Chatbot 会以一个预设的 prompt 开场,帮助你更好解决问题。
- 可以自定义 prompt:prompt 按用户隔离存储在 TiDB Serverless 中
- 可以分享你的聊天:聊天记录按用户隔离存储在 TiDB Serverless 中
总结
这是个人的 hackthon 项目,得奖可能是没啥希望了,毕竟还有更多优秀的作品。不过本文主要是想分享出来,个人感觉还挺好用的。而且可以给大家介绍如何丝滑的使用 TiDB Serverless vercel integration,几分钟内就构建一个比 bookstore 更酷一些的东西。