创建 AI 应用
在完成《5 分钟启动全栈应用》的基础上,如果你要开发 AI 应用,一般还需要实现以下功能:
- 接入 AI 服务商
- 设置 Token 计费方案(包括订阅制和一次性购买制)
- 用户付费后增加 Token
- 用户使用后扣减 Token
- 展示 Token 使用情况
别担心,NuxtBase 已经为你准备好了这些功能,你只需要按照以下步骤进行配置即可:
1. 创建 AI 相关数据表
在 Supabase SQL 编辑器中执行 sql/ai.sql
中的 SQL 语句,这将创建以下三个表:
nuxtbase_user_subscription_token
: 订阅制用户的 token 记录表nuxtbase_user_onetime_token
: 一次性付费用户的 token 记录表nuxtbase_user_token_history
: 用户 token 使用历史记录表
2. 设置注册赠送 Token(可选)
如果你希望为新注册用户赠送免费的 Token,可以在 SQL 编辑器中执行 sql/register-trigger.sql
创建触发器
这样,每当新用户注册时,系统会自动向 nuxtbase_ai_token
表中插入一条记录,赠送相应数量的 Token(当前 sql 中是 1000token,你可以根据自己的需求调整)。
3. 配置 AI 服务
3.1 环境变量配置
在 .env
文件中添加以下配置:
# AI 服务配置
OPENAI_API_KEY=你的AI服务商API密钥
OPENAI_BASE_URL=你的AI服务商API地址
3.2 配置 Token 计费方案
在 /config/products/index.ts
中设置不同订阅计划对应的 Token 数量:
{
// ..。付费产品其他配置
token_limit: 1000, // 每月1000token
}
4. 示例功能
NuxtBase 提供了一个简单的基于 DeepSeek 的 API 给文案添加 emoji 的功能,你可以访问https://demo.nuxtbase.com
来体验(需登录)。
并且你可以访问https://demo.nuxtbase.site/dashboard/ai/tokens
来查看你的 Token 使用情况,如下图: