- 8张llm_前缀表(手写幂等DDL): vendor/account/model/api_profile/org_policy/org_quota/user_quota/usage - gateway.py 门禁链: 限流→限额→策略选模型(主备容错)→账号×端点轮转(偏好过滤+余额加权+冷却避让)→预授权-结算 - api_key AES单层加密(非RC4,盐不对称不可解); 限流Redis分钟窗口(db4) fail-open - 双维度记账: 一次调用同行记cost(账号侧)+charge(组织池侧); 充值=recharge行 - CRUD+index.ui 8卡片导航+总览; appcodes字典5组; 设计规范+30测试用例 - 策略即开关: 机构无策略→__LEGACY__走旧llm表(向后兼容零改动)
114 lines
2.6 KiB
JSON
114 lines
2.6 KiB
JSON
{
|
|
"summary": [
|
|
{
|
|
"name": "llm_account",
|
|
"title": "供应商账号(钱包)",
|
|
"primary": [
|
|
"id"
|
|
],
|
|
"catelog": "entity"
|
|
}
|
|
],
|
|
"fields": [
|
|
{
|
|
"name": "id",
|
|
"title": "主键ID",
|
|
"type": "str",
|
|
"length": 32,
|
|
"nullable": "no"
|
|
},
|
|
{
|
|
"name": "vendor_id",
|
|
"title": "供应商ID",
|
|
"type": "str",
|
|
"length": 32,
|
|
"nullable": "no"
|
|
},
|
|
{
|
|
"name": "name",
|
|
"title": "账号名称",
|
|
"type": "str",
|
|
"length": 100,
|
|
"nullable": "no"
|
|
},
|
|
{
|
|
"name": "api_key",
|
|
"title": "API密钥(加密)",
|
|
"type": "str",
|
|
"length": 500
|
|
},
|
|
{
|
|
"name": "endpoint_ids",
|
|
"title": "选用端点索引(JSON)",
|
|
"type": "text"
|
|
},
|
|
{
|
|
"name": "balance",
|
|
"title": "余额",
|
|
"type": "float",
|
|
"length": 14,
|
|
"dec": 4,
|
|
"default": "0"
|
|
},
|
|
{
|
|
"name": "total_recharge",
|
|
"title": "累计充值",
|
|
"type": "float",
|
|
"length": 14,
|
|
"dec": 4,
|
|
"default": "0"
|
|
},
|
|
{
|
|
"name": "status",
|
|
"title": "状态",
|
|
"type": "str",
|
|
"length": 20,
|
|
"nullable": "no",
|
|
"default": "'active'"
|
|
},
|
|
{
|
|
"name": "org_id",
|
|
"title": "所属机构",
|
|
"type": "str",
|
|
"length": 32,
|
|
"nullable": "no",
|
|
"default": "'0'"
|
|
},
|
|
{
|
|
"name": "created_at",
|
|
"title": "创建时间",
|
|
"type": "timestamp",
|
|
"nullable": "no"
|
|
},
|
|
{
|
|
"name": "updated_at",
|
|
"title": "更新时间",
|
|
"type": "timestamp"
|
|
}
|
|
],
|
|
"indexes": [
|
|
{
|
|
"name": "idx_llm_account_vendor",
|
|
"idxtype": "index",
|
|
"idxfields": [
|
|
"vendor_id"
|
|
]
|
|
}
|
|
],
|
|
"codes": [
|
|
{
|
|
"field": "vendor_id",
|
|
"table": "llm_vendor",
|
|
"valuefield": "id",
|
|
"textfield": "name"
|
|
},
|
|
{
|
|
"field": "status",
|
|
"table": "appcodes_kv",
|
|
"valuefield": "k",
|
|
"textfield": "v",
|
|
"cond": "parentid='llm_status'"
|
|
}
|
|
]
|
|
}
|