Commit Graph

  • cab2aaaf6d chore: remove build/ from tracking main yumoqing 2026-07-28 11:05:41 +08:00
  • 0a8c946f31 fix: get_customer_currency_stats missing return statement yumoqing 2026-07-28 11:05:30 +08:00
  • 990c35a953 fix: sect_currency urldata crash, switch to render_urldata method yumoqing 2026-07-27 11:59:32 +08:00
  • 8ae3c1154e fix: i18n msg.txt format to key: value per line, add en/jp/ko yumoqing 2026-07-27 11:17:55 +08:00
  • 14fce229c5 Revert "fix: i18n JSON files not included in wheel package" yumoqing 2026-07-27 11:15:31 +08:00
  • cb42f110c1 fix: i18n JSON files not included in wheel package yumoqing 2026-07-27 11:07:14 +08:00
  • 60059b304e feat: i18n补全 + 币种分布改为收入/成本/毛利图表 yumoqing 2026-07-25 10:47:44 +08:00
  • 72c522b5c9 fix: 客户视图模型排行改sect_top_models,币种费用去jinja2_macro yumoqing 2026-07-24 15:43:18 +08:00
  • a50935f669 feat: 币种分布按角色拆分(分销商成本收入/客户费用/管理员分布) yumoqing 2026-07-24 15:36:18 +08:00
  • 18e7dd5afd ui: 去除供应商性价比组件,修正双逗号JSON错误 yumoqing 2026-07-24 15:29:09 +08:00
  • 824b3ae7ab fix: 客户视图JSON尾逗号错误(供应商性价比后逗号移入admin块) yumoqing 2026-07-24 15:10:19 +08:00
  • b131eec10e fix: j2_is_distributor未注册时兜底false防客户黑屏 yumoqing 2026-07-24 14:55:37 +08:00
  • b3d2ff010c i18n: stat_success_rate/stat_fail_calls改用otext yumoqing 2026-07-24 14:33:53 +08:00
  • a44060f185 i18n: 实时卡片+index.ui标签改用otext/i18n,补全4语言翻译 yumoqing 2026-07-24 14:04:03 +08:00
  • 1af03bf195 fix: 删除多余i18n_getmsgs.dspy+注册 yumoqing 2026-07-24 13:50:54 +08:00
  • 88eb783940 fix: i18n目录移到sage_datamart/i18n(模块级),更正i18n_getmsgs路径 yumoqing 2026-07-24 13:50:46 +08:00
  • 03645f1128 feat: i18n多语言支持(zh/en/jp/ko)+i18n_getmsgs端点 yumoqing 2026-07-24 13:49:55 +08:00
  • 25cfa19a48 feat: 分销商财务仪表盘(收入/成本/毛利×币种,今天/本月/本年/累计) yumoqing 2026-07-24 13:08:31 +08:00
  • 59072ef035 feat: 客户视图(隐藏用户区+org过滤图表+API Key排行端点) yumoqing 2026-07-23 16:53:51 +08:00
  • 85afc1f023 feat: 客户视图隐藏用户区域,管理员才显示完整面板 yumoqing 2026-07-23 16:08:45 +08:00
  • 21ad2403a0 fix: api_provider_roi JOIN organization.orgname + ChartScatter nameField改为provider_name yumoqing 2026-07-23 11:54:58 +08:00
  • 698dc940b4 fix: ChartPie加pie_options/ChartScatter改xField/yField/sizeField yumoqing 2026-07-23 11:21:32 +08:00
  • dbcf33ff8c fix: get_realtime_stats用int(r.xxx or 0)替代hasattr,处理SQL返回NULL yumoqing 2026-07-23 11:17:55 +08:00
  • 135b394b2a fix: rt_card_amount简化为amt|float,去掉if/else避免jinja2运算歧义 yumoqing 2026-07-23 11:07:43 +08:00
  • 94147b24cc fix: sect_*.ui去entire_url改用绝对路径(子页面entire_url不可用) yumoqing 2026-07-23 10:45:47 +08:00
  • 41db2df9c9 fix: 使用bricks原生ChartBar/ChartPie/ChartScatter替代WebWidget+Jinja2 yumoqing 2026-07-22 18:54:12 +08:00
  • a31d0d3bbb fix: 图表改用原生CSS进度条(VBox+bgcolor),去掉不存在的WebWidget yumoqing 2026-07-22 18:50:46 +08:00
  • 12db192320 fix: api_model_perf/api_provider_roi params_kw=None时.get()→AttributeError,改用(params_kw or {}) yumoqing 2026-07-22 18:39:55 +08:00
  • e86ff06b98 fix: organization列名 name→orgname 对照model定义 yumoqing 2026-07-22 18:08:06 +08:00
  • bdffa5c81b fix: 模型延迟统一用COALESCE(ttft,ttot)覆盖异步模型 yumoqing 2026-07-22 18:01:06 +08:00
  • 85913f8332 fix: 模型性能排行按model归并(GROUP BY),消除同模型多条记录 yumoqing 2026-07-22 17:56:18 +08:00
  • 3b9391b582 fix: WebWidget script用{%set%}+json.dumps包裹,修复JSON转义错误 yumoqing 2026-07-22 17:54:49 +08:00
  • 8da46acbce fix: 供应商排行JOIN organization.name获取orgname yumoqing 2026-07-22 17:42:23 +08:00
  • aeb5950cd0 fix: 供应商排行JOIN表名 llmprovider→modelprovider yumoqing 2026-07-22 17:28:28 +08:00
  • 47278c16ec ui: 实时卡片缩小字体+分组(今天调用/用户)两行展示 yumoqing 2026-07-22 17:24:16 +08:00
  • dbe45ed489 feat: 6个监控组件图表化(环形图+柱状图+气泡图+美化列表) yumoqing 2026-07-22 17:18:07 +08:00
  • ef83842af2 fix: 用户排行JOIN users.username,供应商排行JOIN llmprovider.name yumoqing 2026-07-22 16:53:01 +08:00
  • a229abfb81 fix: load_path.py Sage路径 ~/repos/sage→~/sage 适配生产环境 yumoqing 2026-07-22 16:09:35 +08:00
  • 7db361425b feat: 6个监控组件改用RefreshWidget+Jinja2服务端渲染,初始即加载+60s刷新 yumoqing 2026-07-22 14:56:20 +08:00
  • 482c0fac8b fix: _get_realtime_snapshot加请求级缓存,一次页面渲染只查一次DB yumoqing 2026-07-22 13:39:37 +08:00
  • 305395ca99 fix: 4个DSPY统一用env.api_xxx()调用,消除namespace注入不稳定 yumoqing 2026-07-22 13:33:42 +08:00
  • ef5644498e feat: 实时卡片统一用get_realtime_stats一次查llmusage,消除数据矛盾 yumoqing 2026-07-22 13:29:02 +08:00
  • b129fc2ef2 fix: 平台管理员(userorgid=0)不过滤机构,看全部数据 yumoqing 2026-07-22 12:05:58 +08:00
  • ac40a08021 debug: 所有try/except加exception日志,可追踪API失败的真正原因 yumoqing 2026-07-22 11:49:24 +08:00
  • 1ca9af7a28 fix: 仪表盘查询去掉call_date=today限制,显示全量历史数据 yumoqing 2026-07-22 11:33:59 +08:00
  • 3439ce0a2c fix: dm_model_perf_daily.catelogid 10→32 + GROUP BY userorgid加表前缀 + 独立聚合脚本aggregate_all.py yumoqing 2026-07-22 10:48:00 +08:00
  • 72eeba1c2a fix: GROUP BY currency加表前缀dm_model_call_fact消除ambiguous警告 yumoqing 2026-07-21 18:30:34 +08:00
  • 6fb1b8cf44 fix: DSPY格式统一为Python脚本+json.dumps,消除JSON格式导致的NoneType异常 yumoqing 2026-07-21 18:16:23 +08:00
  • 0a35be5101 fix: 补全所有j2_*和api_model_perf/api_provider_roi的try/except,彻底消除None返回 yumoqing 2026-07-21 18:15:03 +08:00
  • e0399c4178 fix: 所有API函数加try/except防止get_sor_context异常返回None yumoqing 2026-07-21 18:05:11 +08:00
  • abc457d547 fix: 去掉get_sor_context包装,sor已传入直接用 yumoqing 2026-07-21 17:54:48 +08:00
  • 33447fbbe5 fix: _get_exchange_rates/_load_usage_log_bills env取sor.env,无则ServerEnv()兜底 yumoqing 2026-07-21 17:52:18 +08:00
  • 5030e0640c fix: _get_exchange_rates/_load_usage_log_bills直接用传入sor,去掉get_sor_context(None)导致的NoneType错误 yumoqing 2026-07-21 17:45:12 +08:00
  • ed0107347e fix: dm_model_call_fact.catelogid长度10→32 (digital_human等超长catelogid) yumoqing 2026-07-21 17:25:19 +08:00
  • 237c09262f fix: init_data.py补全缺失字段+userorgid为None兜底(空串),支持重复执行 yumoqing 2026-07-21 15:05:02 +08:00
  • 52acdbbfab fix: LIMIT语法错误 - str(limit)导致LIMIT '5',改为int yumoqing 2026-07-21 14:30:38 +08:00
  • 993c293b56 fix: users表列名修正 userorgid→orgid yumoqing 2026-07-21 14:06:05 +08:00
  • 05584d8871 feat: 实时数据Dashboard+客户/分销商角色视图 yumoqing 2026-07-21 12:03:28 +08:00
  • 43a115a14d ETL: 金额取product_usage_log.sell_price实际计费金额,币种取purchase_currency,多币种分别统计并并账到CNY yumoqing 2026-07-20 16:10:17 +08:00
  • 4d8e93dc87 完整修复币种逻辑: - dm_model_call_fact 增加 amount_cny 字段(CNY折算金额) - ETL sync_call_fact 同步时计算并写入 amount_cny - dm_model_perf_daily/dm_provider_cost_daily 唯一键加入 currency(按币种分组) - ETL 聚合函数按 currency 分组,保留原币种维度 - Dashboard 查询统一使用 amount_cny 进行跨币种比较 - 汇率查询从 accounting 模块获取(修正库名) - 新增币种分布统计接口和UI展示 yumoqing 2026-07-20 15:44:36 +08:00
  • e84fc8882b refactor: remove DDL from ETL/init, use llm_api_map for catelogid yumoqing 2026-07-20 14:11:06 +08:00
  • c78f3be577 cleanup: remove obsolete sage_datamart/init_data.py (moved to scripts/init_data.py) yumoqing 2026-07-20 13:46:03 +08:00
  • 2f9a890128 refactor: move init_data to standalone script (not cron endpoint) yumoqing 2026-07-20 13:44:09 +08:00
  • 7f5c1ed372 feat: add init_data script to import historical data from llmusage + llmusage_history into data mart yumoqing 2026-07-20 13:08:04 +08:00
  • ac97245aa3 fix: dm_model_call_fact created_at use timestamp instead of datetime with invalid NOW() default yumoqing 2026-07-20 13:01:40 +08:00
  • eccd6e8f04 feat: add models/ with 3 data mart table definitions (dm_model_call_fact, dm_model_perf_daily, dm_provider_cost_daily) yumoqing 2026-07-20 12:58:17 +08:00
  • 4f23e07bcd fix: cron dspy移除import + load_path.py添加cron权限(any) + stat_total_users yumoqing 2026-07-20 10:55:05 +08:00
  • 8a97ea4a86 refactor: rename sage_datamark → sage_datamart + add ETL cron + stat UIs yumoqing 2026-07-20 10:49:15 +08:00
  • 0f3c7f23f4 fix: add import json to model_perf.dspy and provider_roi.dspy yumoqing 2026-07-17 18:12:56 +08:00
  • 64750630e1 docs: updated API list with dashboard_for_sage replacements yumoqing 2026-07-17 18:11:49 +08:00
  • 054b0dd8e2 feat: unified dashboard — all dashboard_for_sage metrics from data mart, 6 stat cards, perf+ops yumoqing 2026-07-17 18:11:19 +08:00
  • 92572bcf6b docs: correct org hierarchy from supplychain, not organization.parentid yumoqing 2026-07-17 18:06:14 +08:00
  • 565c44d130 docs: README with data sources, frequency, business logic, API docs yumoqing 2026-07-17 17:23:58 +08:00
  • 32e9dc5cb8 Merge branch 'main' of git.opencomputing.cn:yumoqing/sage_datamark yumoqing 2026-07-17 17:20:25 +08:00
  • 8aafb31ef4 rename: data_mart → sage_datamark yumoqing 2026-07-17 17:20:13 +08:00
  • 7b85f024ee Initial commit yumoqing 2026-07-17 17:20:04 +08:00
  • 4d24094048 feat: data_mart module — model perf monitoring + provider ROI dashboard yumoqing 2026-07-17 16:56:52 +08:00