这是币安交易所数据分析AI助手 Gabriel 的 API
https://github.com/xxxijustwei/gabriel-web
CREATE TABLE "task_config" (
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
"symbol" text NOT NULL,
"interval" text NOT NULL,
"limit" integer NOT NULL,
"created_at" timestamp DEFAULT now() NOT NULL,
"updated_at" timestamp DEFAULT now() NOT NULL
);
CREATE TYPE "public"."report_category" AS ENUM('task', 'chat');--> statement-breakpoint
CREATE TABLE "analysis_report" (
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
"category" "report_category" DEFAULT 'task' NOT NULL,
"symbol" text NOT NULL,
"interval" text NOT NULL,
"limit" integer NOT NULL,
"data" json NOT NULL,
"content" text NOT NULL,
"created_at" timestamp DEFAULT now() NOT NULL
);
-
克隆仓库:
git clone https://github.com/xxxijustwei/gabriel-api.git cd gabriel-api
-
安装依赖:
bun install
-
创建
.env
文件XAI_API_KEY="" # XAI API Key BINANCE_API_KEY="" # Binance API Key BINANCE_API_SECRET="" # Binance API Secret DATABASE_URL="" # PostgreSQL connection string CRON_SECRET="" # Cron secret
-
启动开发服务器:
bun run start:dev
-
打开浏览器并访问
http://localhost:8080
-
安装 Vercel CLI
bun install -g vercel
-
登录 Vercel
vercel login
-
部署到 Vercel
vercel --prod
-
在 Vercel 仪表盘中设置环境变量
XAI_API_KEY="" # XAI API Key BINANCE_API_KEY="" # Binance API Key BINANCE_API_SECRET="" # Binance API Secret DATABASE_URL="" # PostgreSQL connection string CRON_SECRET="" # Cron secret
-
启用 Fluid Compute
-
设置 Function Region 保证 Binance API 和 Grok API 在可用区域
-
重新部署项目
vercel --prod
这是一个加密货币资金流向分析任务
- 从DB中获取任务配置 (symbol, interval, limit)
- 调用
analyzeFundingFlow
函数进行交易所数据处理 - 拉取最新一次的任务分析结果,如果存在,则将最新一次的分析结果作为上下文,与当前分析数据一起,生成新的分析结果
- 使用 grok-3-fast 模型生成分析文本
- 将分析文本存储到DB中
Usage & Pricing for Cron Jobs(Hobby Plan 最多每天触发一次): https://vercel.com/docs/cron-jobs/usage-and-pricing
-
在
vercel.json
中配置 Corn Job: 默认配置包含一个每天00:00(UTC)运行的任务,改任务会调用/api/task
接口:Cron Job 配置文档: https://vercel.com/docs/cron-jobs/manage-cron-jobs
{ "crons": [ { "path": "/api/task", "schedule": "0 0 * * *" } ] }
-
安全
Corn Job 端点
/api/task
受CRON_SECRET
环境变量保护。确保您在 Vercel 环境设置中设置了此变量。