sage_datamart/models/dm_model_call_fact.json
yumoqing eccd6e8f04 feat: add models/ with 3 data mart table definitions (dm_model_call_fact, dm_model_perf_daily, dm_provider_cost_daily)
- dm_model_call_fact: LLM调用明细事实表 (23 fields)
- dm_model_perf_daily: 模型性能日汇总表 (25 fields)
- dm_provider_cost_daily: 供应商成本日汇总表 (11 fields)
- build.sh: generate DDL from models/*.json via json2ddl
- .gitignore: exclude generated mysql.ddl.sql
2026-07-20 12:58:17 +08:00

221 lines
5.2 KiB
JSON

{
"summary": [
{
"name": "dm_model_call_fact",
"title": "LLM调用明细事实表",
"primary": ["id"],
"catelog": "fact"
}
],
"fields": [
{
"name": "id",
"title": "主键ID",
"type": "str",
"length": 32,
"nullable": "no"
},
{
"name": "luid",
"title": "LLM使用记录ID",
"type": "str",
"length": 32,
"nullable": "no"
},
{
"name": "llmid",
"title": "LLM模型ID",
"type": "str",
"length": 32,
"nullable": "no"
},
{
"name": "model",
"title": "模型名称",
"type": "str",
"length": 100
},
{
"name": "catelogid",
"title": "目录ID",
"type": "str",
"length": 10
},
{
"name": "userid",
"title": "用户ID",
"type": "str",
"length": 32,
"nullable": "no"
},
{
"name": "userorgid",
"title": "用户机构ID",
"type": "str",
"length": 32,
"nullable": "no"
},
{
"name": "ownerid",
"title": "所有者ID",
"type": "str",
"length": 32
},
{
"name": "providerid",
"title": "供应商ID",
"type": "str",
"length": 32
},
{
"name": "call_date",
"title": "调用日期",
"type": "date",
"nullable": "no"
},
{
"name": "call_hour",
"title": "调用小时",
"type": "int",
"nullable": "no"
},
{
"name": "call_time",
"title": "调用时间",
"type": "datetime",
"nullable": "no"
},
{
"name": "ttft_ms",
"title": "首Token响应时间(毫秒)",
"type": "int"
},
{
"name": "ttot_ms",
"title": "总响应时间(毫秒)",
"type": "int"
},
{
"name": "prompt_tokens",
"title": "提示Token数",
"type": "int",
"default": "0"
},
{
"name": "completion_tokens",
"title": "完成Token数",
"type": "int",
"default": "0"
},
{
"name": "status",
"title": "状态",
"type": "str",
"length": 20
},
{
"name": "fail_reason",
"title": "失败原因",
"type": "str",
"length": 200
},
{
"name": "amount",
"title": "金额",
"type": "double",
"length": 10,
"dec": 4,
"default": "0"
},
{
"name": "currency",
"title": "货币",
"type": "str",
"length": 5,
"default": "CNY"
},
{
"name": "distributor_orgid",
"title": "分销商机构ID",
"type": "str",
"length": 32
},
{
"name": "sale_userid",
"title": "销售用户ID",
"type": "str",
"length": 32
},
{
"name": "created_at",
"title": "创建时间",
"type": "datetime",
"default": "NOW()"
}
],
"indexes": [
{
"name": "idx_call_date",
"idxtype": "index",
"idxfields": ["call_date"]
},
{
"name": "idx_llmid",
"idxtype": "index",
"idxfields": ["llmid"]
},
{
"name": "idx_userorgid",
"idxtype": "index",
"idxfields": ["userorgid"]
},
{
"name": "idx_ownerid",
"idxtype": "index",
"idxfields": ["ownerid"]
},
{
"name": "idx_status",
"idxtype": "index",
"idxfields": ["status"]
},
{
"name": "idx_model",
"idxtype": "index",
"idxfields": ["model"]
}
],
"codes": [
{
"field": "llmid",
"table": "llm",
"valuefield": "id",
"textfield": "model"
},
{
"field": "userid",
"table": "users",
"valuefield": "id",
"textfield": "username"
},
{
"field": "userorgid",
"table": "organization",
"valuefield": "id",
"textfield": "orgname"
},
{
"field": "ownerid",
"table": "organization",
"valuefield": "id",
"textfield": "orgname"
},
{
"field": "providerid",
"table": "llmprovider",
"valuefield": "id",
"textfield": "name"
}
]
}