系统设置详细配置

管理员指南

系统设置详细配置

Root 专属的系统高级配置选项

本文档展开系统设置各 Tab 的高级字段,涵盖支付、限流、倍率、聊天、绘图、看板、模型、运营等运营参数。与 [系统设置](/docs/guide/admin/system-settings) 同属 Root 专属页面(`/console/setting`),通过 `GET /api/settings` 读取、`PUT /api/setting` 保存。Web 控制台详细 Tab 与参考设计一致,正在对接中。

支付设置

配置平台支持的支付方式和支付参数。入口:/console/setting → 支付设置 Tab。

easyapi.com/console/setting?tab=payment

通用设置

服务器地址 更新服务器地址http://localhost:5173影响支付回调与展示 URL,修改后请同步更新易支付后台通知地址

支付设置

支付地址//yourdomain.com
易支付商户 ID0001
易支付商户密钥••••••••••••••••
回调地址//yourdomain.com
充值价格(元/美金)7.30
最低充值美元数量1

充值分组倍率

{
  "default": 1,
  "vip": 1,
  "svip": 1
}

充值方式设置

[
  { "name": "支付宝", "color": "rgba(22, 119, 255, 0.15)", "type": "alipay" },
  { "name": "微信", "color": "rgba(7, 193, 96, 0.15)", "type": "wxpay" }
]
保存支付设置

支付设置示意:服务器地址、易支付参数、分组倍率与自定义充值方式 JSON

什么是易支付

易支付是聚合支付宝、微信等渠道的第三方收银台。用户充值时通过 `POST /api/user/pay` 获取表单字段,浏览器 POST 至易支付网关完成付款,异步回调更新额度。

易支付配置

填写支付地址、商户 ID/密钥与回调地址;保存后可在钱包页验证 `GET /api/user/recharge/info` 是否返回 pay_methods。

Stripe 配置

在支付设置 Tab 配置 Stripe Secret Key、Webhook Secret 等;用户充值走 `POST /api/user/stripe/pay` 跳转 Checkout。

其他支付方式

支持 Creem 等渠道(取决于 option 开关);各渠道最低充值与回调路径以接口返回为准。

充值方式设置

通过 JSON 自定义前端展示的充值方式按钮(name、color、type),映射到易支付 type 参数。

字段说明

见下方「易支付参数」与「服务器地址」表格;修改密钥后需重新测试一笔小额充值。

充值金额配置

配置固定档位(如 10/50/100 USD)或允许自定义金额;与 MinTopUp、Price 共同约束用户输入。

自定义充值金额选项

开启后钱包页展示任意金额输入框;关闭则仅展示预设档位。

充值优惠

可按分组配置充值赠送比例(TopUpGroupRatio),如 vip 分组充值 100 美元到账 110 美元等价值额度。

易支付参数

配置项字段说明
服务器地址ServerAddress站点对外访问根 URL,影响支付回调与跳转链接生成
支付地址PayAddress易支付网关地址,如 https://pay.example.com
易支付商户 IDEPayId易支付平台分配的商户编号
易支付商户密钥EPayKey签名密钥,请妥善保管
回调地址PayCallbackAddress异步通知 URL,通常为 {ServerAddress}/api/user/epay/notify
充值价格(元/美金)Price人民币兑美元汇率,用于易支付 CNY 展示换算
最低充值美元数量MinTopUp用户单次充值下限(美元)

限流设置

在系统设置「速率限制设置」Tab 配置全站与分组 QPM/QPD;超限请求返回 HTTP 429。Web 控制台正在对接中。

全局限流

在「速率限制设置」Tab 配置全站 QPM/QPD 上限,超限返回 429。适用于保护网关整体容量。

按用户分组限流

为不同 group 设置独立阈值,优先级高于全局限流;未配置的分组沿用全局值。

分组限流配置示例

JSON 示例:`{"default":{"qpm":60},"vip":{"qpm":300}}`。模型级限流可在同 Tab 按 model 名称细化。

倍率设置

倍率体系决定额度消耗速度,与用户 定价 页展示一致。在「倍率设置」Tab 可同步上游倍率或手动调整 model_ratio。

倍率体系概述

EasyAPI 通过 model_ratio、completion_ratio、group_ratio、cache_ratio 等组合计算额度消耗;模型元数据与 option 表共同生效。

额度与倍率的关系

用户额度(quota)为统一货币单位;不同模型/分组通过倍率折算为等价值 Token 或次数消耗。

额度计算公式

按量:消耗 ≈ (prompt_tokens × model_ratio + completion_tokens × model_ratio × completion_ratio) × group_ratio × 基准单价;按次:消耗 = model_price × group_ratio。

按量计费(Token)

quota_type = 0;输入与补全 Token 分别计倍率,详见定价文档。

按次计费(固定价格)

quota_type = 1;每次调用扣 model_price,与 Token 数无关。

音频模型(特殊处理)

部分音频模型按时长或字符计费,model_ratio 含义以模型管理配置为准。

预扣费与后扣费机制

预扣费在请求前冻结估算额度,完成后按实际 Token 多退少补;后扣费在响应结束后一次性扣减。

计费类型对照

类型标识说明
Per-tokenquota_type = 0Billed by token usage. Input price ≈ model_ratio × 2 (USD baseline) / 1M tokens; completion = input × completion_ratio. Cache read price appears when cache_ratio is set.
Per-callquota_type = 1Fixed charge per request, shown as ¥x.xxxx / call (or your site currency). Completion column shows —.

模型倍率设置

控制各模型输入侧基准倍率(model_ratio)。展示价(美元侧)≈ model_ratio × 2 / 1M Tokens,详见 模型管理

常见模型倍率示例

模型model_ratio说明
gpt-4o2.5旗舰多模态,输入倍率较高
gpt-4o-mini0.15轻量模型,适合高频调用
gpt-3.5-turbo0.5经典对话模型
claude-3-5-sonnet1.5按上游定价折算
deepseek-chat0.07高性价比开源系

设置方法

  1. 在「模型管理」编辑单模型,填写 model_ratio、completion_ratio 或 model_price,保存后调用 `PUT /api/model/` 生效。
  2. 在「倍率设置 → 模型倍率」Tab 批量编辑 JSON(ModelRatio),适合一次调整多个模型。
  3. 通过「上游倍率同步」从已配置渠道拉取最新倍率,再人工微调后保存。
  4. 重置为默认值可调用 `POST /api/setting/rest_model_ratio`(Root 专属)。

补全倍率设置

默认补全倍率

字段说明
CompletionRatio全局默认补全倍率(option 表),未单独配置 completion_ratio 的模型继承此值,通常为 1
completion_ratio模型级补全倍率,覆盖全局默认;补全 Token 单价 = 输入单价 × completion_ratio

分组倍率设置

分组倍率(group_ratio)决定同一模型在不同令牌分组下的计费折扣,与 分组管理 中的 ratio 字段一致。

分组倍率配置

{
  "default": 1,
  "vip": 0.8,
  "svip": 0.6,
  "test": 0
}

通过 GET|POST|PUT|DELETE /api/prefill_group/ 维护;保存后 GET /api/pricinggroup_ratio 字段同步更新。

分组倍率优先级

  • API 调用时优先取令牌分组(token.group)对应的 group_ratio。
  • 若令牌分组为 auto,则按系统策略解析实际分组后再取倍率。
  • 用户分组(user.group)影响可用模型列表与默认定价展示,计费倍率以令牌分组为准。
  • 未在 group_ratio 中声明的分组默认倍率为 1。

可视化倍率设置

「倍率设置」Tab 提供表格化编辑,支持搜索、排序与批量保存,无需手写 JSON。Web 控制台正在对接中。

easyapi.com/console/setting?tab=ratio
模型model_ratiocompletion_ratiomodel_price
gpt-4o2.53
gpt-4o-mini0.151.5
midjourney0.1
保存倍率设置

可视化倍率表格示意:内联编辑 model_ratio / completion_ratio / model_price

字段说明
模型名称与渠道/定价接口中的 model 字段一致
模型倍率model_ratio表格内联编辑,保存写入 option 或 model 表
补全倍率completion_ratio可留空继承全局 CompletionRatio
固定价格model_price按次模型填写,与 model_ratio 互斥展示

未设置倍率模型

当渠道同步或手动添加带来尚未配置 model_ratio 的模型时,行为由 option accept_unset_model_ratio_model 控制:

  • 关闭(默认):拒绝调用并在日志中提示「模型倍率未设置」,避免误计费。
  • 开启:允许调用,按默认倍率 1 或上游返回值计费;适合快速接入新模型后再统一调价。

建议生产环境保持关闭,在「模型管理」或倍率同步完成配置后再开放。

上游倍率同步

从已对接的上游渠道拉取最新 model_ratio,减少手工维护成本。

  1. 调用 GET /api/ratio_sync/channels 查看支持同步的渠道列表
  2. 选择渠道后调用 POST /api/ratio_sync/fetch 拉取倍率
  3. 在可视化表格或 JSON 中核对差异,确认后保存
  4. 必要时使用 POST /api/setting/rest_model_ratio 恢复默认倍率

常见问题

如何为新模型设置倍率?

在「模型管理 → 添加模型」或编辑已有模型时填写 model_ratio;按次模型填 model_price 并将 quota_type 设为 1。保存后可在模型广场验证展示价格。若渠道同步带来新模型名称,也可先执行上游倍率同步再微调。

分组倍率如何生效?

用户创建令牌时选择分组;调用 API 时网关读取 token.group,在 group_ratio JSON 中查找对应倍数,乘以模型自身倍率后扣减额度。vip 分组倍率 0.8 表示相同 Token 消耗仅为 default 的 80%。

补全倍率的作用是什么?

输出 Token 往往比输入更贵。completion_ratio 表示「每 1 个补全 Token 相对 1 个输入 Token 的价格倍数」。例如 model_ratio=1、completion_ratio=3 时,100 prompt + 50 completion 的相对权重为 100×1 + 50×1×3 = 250。

如何批量设置相似模型的倍率?

在倍率设置 Tab 使用可视化表格或 ModelRatio JSON 批量编辑;也可在模型管理中按供应商筛选后逐条调整。对同一系列模型可先同步上游倍率,再统一乘以折扣系数写入 JSON。

配额计算实例

以下示例展示权重计算过程;最终 quota 数值还取决于站点基准单价与展示币种,精确扣费以 使用记录 为准。

示例 1:GPT-4 标准用户对话

default 分组,gpt-4o,model_ratio=2.5,completion_ratio=3,一次对话 prompt=1000、completion=500 Token。

  • 输入权重 = 1000 × 2.5 = 2500
  • 补全权重 = 500 × 2.5 × 3 = 3750
  • 合计权重 = 6250(再 × group_ratio 1 × 基准单价得到 quota)

结果:按量扣费;具体美元/额度数值取决于站点 quota 基准,可在使用日志查看精确扣减。

示例 2:GPT-3.5 VIP 用户对话

vip 分组 group_ratio=0.8,gpt-3.5-turbo,model_ratio=0.5,completion_ratio=1.5,prompt=2000、completion=800。

  • 输入权重 = 2000 × 0.5 = 1000
  • 补全权重 = 800 × 0.5 × 1.5 = 600
  • 小计 = 1600 × group_ratio 0.8 = 1280

结果:VIP 分组 8 折;相同 Token 数比 default 分组少扣 20% 额度。

示例 3:按次计费模型(如 Midjourney)

quota_type=1,model_price=0.1(美元等价值),group_ratio=1,每次 imagine 调用 1 次。

  • 每次调用固定扣 model_price × group_ratio
  • 与 prompt/completion Token 数无关

结果:单次扣 0.1 美元等价值额度;vip 分组 0.8 倍时单次扣 0.08。

聊天设置

配置站点内置聊天/操练场及第三方聊天客户端一键导入。对应系统设置「聊天设置」Tab。

聊天应用配置

控制操练场、聊天页默认模型与可见性;保存后影响 `/console/playground` 与演示聊天入口。

配置项字段说明
聊天链接ChatLink外部聊天页 URL;留空则使用站内操练场
默认聊天模型DefaultChatModel操练场/聊天页首次加载时的默认 model 名称
展示 API 信息ChatApiInfoEnabled在聊天页展示 API 基址与配置提示
实名校验ChatRealNameCheckEnabled开启后未实名用户不可使用聊天功能

聊天集成变量

一键导入 URL 模板中可使用以下占位符,由前端在打开第三方应用时替换为当前用户令牌与站点 API 地址:

  • {apiKey} / {token}:当前选中的 EasyAPI 令牌(sk- 开头)
  • {baseUrl} / {openAIUrl}:站点 API 基址(NUXT_PUBLIC_API_BASE_URL)
  • {openAIBaseUrl}:{baseUrl}/v1,供 OpenAI SDK 兼容客户端使用
  • {siteName}:站点名称,用于部分客户端显示标题

聊天应用集成

在令牌管理页「聊天应用集成」区域,支持一键导入至 ChatGPT Next Web、Lobe Chat、OpenCat 等客户端。各应用参数拼接规则见用户指南「聊天应用集成」。

  • 导入前需先在令牌页创建并选中目标令牌
  • 导入链接在新标签页打开,不会泄露完整 Key 到当前页 URL 历史(部分客户端仍会在 hash 中短暂出现)
  • 手动对接时使用 Authorization: Bearer {apiKey} 与 {openAIBaseUrl}

完整步骤见 聊天应用集成 用户指南。

绘图设置

Midjourney 等绘图类异步任务的网关参数与计费策略。对应「绘图设置」Tab,任务进度见用户「任务中心」。

Midjourney 配置

控制 MJ 代理行为、通知与账号过滤;需先在「渠道管理」配置 Midjourney 类型渠道。

配置项字段说明
MJ 通知MjNotifyEnabled任务完成/失败时向用户发送通知(取决于通知渠道配置)
账号过滤MjAccountFilterEnabled按 Discord 账号过滤或隔离 MJ 任务
动作校验MjActionCheckSuccessEnabled对 upscale/variation 等动作回调做成功校验
绘图代理地址MjProxyUrl可选;覆盖默认 MJ 代理网关

绘图计费

Midjourney 等绘图模型通常按次计费(quota_type=1),在模型管理中设置 model_price;分组倍率 group_ratio 同样生效。

  • imagine / upscale / variation 等动作各计一次或按模型配置扣费
  • 任务提交后先预扣额度,失败任务按网关策略退还
  • 用户可在 `/console/tasks` 查看 mj_id、进度与扣费记录
  • 详见用户指南「任务中心」与「定价」中的按次计费说明

相关文档: 任务中心定价

数据看板设置

控制台仪表盘 `/console/dashboard` 的统计范围、图表与导出选项。对应「仪表盘设置」Tab。

看板配置 - 基础设置

控制仪表盘默认时间范围、是否展示额度/请求量等核心指标卡片。

配置项字段说明
启用数据看板DashboardEnabled关闭后普通用户不可访问统计页(管理员仍可查看)
默认统计天数DashboardDefaultDays打开看板时的默认区间,如 7 / 30 天
展示额度消耗DashboardQuotaEnabled是否在概览卡片展示 quota 消耗
展示请求次数DashboardRequestEnabled是否展示 API 请求量统计

看板配置 - 图表设置

配置折线图/柱状图的数据粒度与展示项,便于运营分析高峰时段与模型分布。

配置项字段说明
模型分布图DashboardModelChartEnabled按 model 维度展示调用占比
渠道分布图DashboardChannelChartEnabled按 channel 维度展示流量(管理员可见)
统计粒度DashboardStatGranularityhour / day;影响图表 X 轴刻度

看板配置 - 高级选项

面向 Root/管理员的扩展能力:原始日志导出、跨用户汇总等。

  • 数据导出:支持按时间范围导出 CSV(具体字段以控制台为准)
  • 管理员视图:可查看全站汇总;普通用户仅看本人数据
  • 缓存刷新:修改看板选项后建议清除 CDN/浏览器缓存以立即生效

模型设置

模型列表展示、调用行为与同步策略。与「模型管理」配合使用,对应「模型相关设置」Tab。

模型显示设置

影响模型广场 `/models` 与控制台下拉列表的展示内容。

配置项字段说明
隐藏未启用模型HideDisabledModels不在公开列表展示 status=0 的模型
展示模型描述ShowModelDescription在模型卡片/表格中显示 description 字段
默认定价分组DefaultPriceGroup模型广场默认选中的分组筛选
额度显示类型QuotaDisplayTypeUSD / CNY / TOKEN,与通用设置联动

模型行为设置

全局影响 API 网关路由、重试与未配置倍率模型的处理方式。

配置项字段说明
失败重试次数RetryTimes上游错误时的自动重试上限
模型请求超时ModelRequestTimeout单次上游请求超时(秒)
接受未设置倍率模型AcceptUnsetModelRatioModel见本文「未设置倍率模型」章节
流式超时StreamTimeoutSSE 流式连接最大空闲时间

模型同步设置

从渠道自动发现模型名称并写入模型表;可与倍率同步配合使用。

  • 在「渠道管理」启用渠道后,可在模型设置中触发「从渠道同步模型列表」
  • 同步仅更新模型名称与元数据,倍率需单独配置或通过 `POST /api/ratio_sync/fetch` 拉取
  • 模型映射(model_mapping)在渠道级配置,不在本 Tab 重复维护

渠道与模型列表维护见 渠道管理模型管理

运营设置

注册、充值、兑换码等面向终端用户的运营开关。部分字段与「支付设置」「通用设置」重叠,以最后保存的 option 为准。

基础运营配置

控制新用户注册、初始额度与站点运营模式。

配置项字段说明
允许注册RegisterEnabled关闭后首页隐藏注册入口
邮箱验证EmailVerificationEnabled注册或改邮箱需验证邮件
新用户初始额度QuotaForNewUser注册成功后赠送的 quota
演示站点模式DemoSiteEnabled限制部分写操作,适合对外演示
自用模式SelfUseModeEnabled关闭公开注册或外部分发

充值配置

与支付 Tab 联动,控制钱包页 `/console/wallet` 充值能力。

配置项字段说明
充值链接TopUpLink外部充值页 URL;留空使用站内钱包
最低充值MinTopUp单次充值下限(美元)
固定充值档位TopUpAmountOptionsJSON 数组,如 [10, 20, 50, 100]
允许自定义金额CustomTopUpEnabled是否展示任意金额输入框

兑换码配置

控制用户自助兑换与管理端批量发码能力。

配置项字段说明
启用兑换码RedemptionEnabled关闭后用户无法在 `/console/wallet` 兑换
兑换码前缀RedemptionCodePrefix批量生成时的可选前缀
单用户兑换上限RedemptionLimitPerUser0 表示不限制
  • 管理端批量生成见「兑换码管理」文档(管理 API:`/api/redeem_codes`)
  • 用户兑换入口:`/console/wallet`,接口 `POST /api/user/redeem`

管理端操作见 兑换码管理

其他设置

首页内容、公告、杂项功能开关。对应「其他设置」Tab 与部分「通用设置」字段。

首页配置

营销首页与落地页内容,公开接口只读返回。

配置项字段说明
首页内容HomePageContentMarkdown/HTML 片段;`GET /api/home_page_content` 返回
启用自定义首页IndexPageEnabled使用 HomePageContent 替代默认首页布局
公告Notice站点顶部滚动公告文本
关于页About关于页 Markdown;亦可通过 `GET /api/about` 获取

其他功能配置

OAuth、通知、页脚等杂项;详细 OAuth 提供商见「自定义 OAuth」文档(若已启用)。

配置项字段说明
文档地址DocumentationLink顶栏「文档」跳转 URL
页脚 HTMLFooter全站页脚自定义内容
Turnstile 站点密钥TurnstileSiteKeyCloudflare Turnstile 人机验证
数据导出间隔DataExportInterval用户数据自助导出冷却时间(分钟)

相关说明