Commit Graph

  • aad779b14e fix(sync): load_product_category_product SQL缺少providerid字段 — 产品同步providerid永远为空 main yumoqing 2026-08-05 13:42:30 +08:00
  • 31c8fde336 fix(balance): replace GETDEL with GET+DEL in Lua scripts for Redis 6.0 compat yumoqing 2026-08-05 12:05:30 +08:00
  • e3f61f446d feat(balance): extend atomic balance reserve to async+sync+product paths yumoqing 2026-08-04 18:35:53 +08:00
  • 89e6d7cb25 fix(publish): call sync_llm_product outside transaction block (stale read before commit) yumoqing 2026-08-04 13:26:29 +08:00
  • 0c4bc661eb fix(publish): auto-sync llm to product on publish via env.sync_llm_product yumoqing 2026-08-04 12:36:04 +08:00
  • b97a14d41d bugfix yumoqing 2026-08-03 14:58:52 +08:00
  • 7fd2c5622d bugfix yumoqing 2026-08-03 14:36:03 +08:00
  • 02178cd06e bugfix yumoqing 2026-08-03 14:34:17 +08:00
  • dff5a681a0 bugfix yumoqing 2026-08-03 13:55:56 +08:00
  • e5d27bc6bd fix: retry write_llmusage with *1,*2 on duplicate; gen() catch+refund but yield error not raise yumoqing 2026-07-31 16:48:40 +08:00
  • 670325e8eb fix: move refund to uapi_request except, remove gen() try/except that re-raised causing 500 yumoqing 2026-07-31 16:39:43 +08:00
  • 9da343b2e1 fix: use uuid4 instead of getID() in DSPY to avoid nanoid collision under concurrency yumoqing 2026-07-31 16:30:49 +08:00
  • 8c77f552a8 fix: remove stray tab causing IndentationError in chat/completions/index.dspy yumoqing 2026-07-31 15:51:24 +08:00
  • 4955e29f7d fix: re-export reserve/finalize/refund_balance from balance.py in utils.py (init.py imports them from .utils) yumoqing 2026-07-31 15:48:43 +08:00
  • a02cd09459 fix: Redis connection error now returns no_redis fallback instead of 429 yumoqing 2026-07-31 15:42:51 +08:00
  • 6351ee9b56 feat: Redis atomic balance reservation — prevent concurrent overspend yumoqing 2026-07-31 14:57:17 +08:00
  • 514b674f04 fix(model_plaza): enable flexbox on parent VBox for DimensionFilter height yumoqing 2026-07-31 11:38:10 +08:00
  • a76a46d8bc fix: card col_cwidth/cwidth 25->20 for narrower DimensionFilter display area yumoqing 2026-07-30 18:28:01 +08:00
  • 703886c09e fix(model_plaza): add DimensionFilter param name mapping for catelogid/providerid yumoqing 2026-07-30 16:49:24 +08:00
  • c058a2c8ba refactor(model_plaza): rewrite with DimensionFilter widget, add category/provider DSPY endpoints yumoqing 2026-07-30 16:13:40 +08:00
  • c63fb329f4 fix: unescaped double quote in SearchBar script breaks JSON (url:" -> url:') yumoqing 2026-07-30 11:25:40 +08:00
  • 4db32670e9 fix: getWidgetById from bricks.app root, clear_widgets+widgetBuild for nav yumoqing 2026-07-30 11:20:19 +08:00
  • 8d8f9b58a5 fix: use urlwidget actiontype (not script) for internal navigation yumoqing 2026-07-30 11:17:21 +08:00
  • 1623c891ab fix: use bricks.getWidgetById(sage_main_content) instead of location.href yumoqing 2026-07-30 11:11:33 +08:00
  • 21bf30d2a6 fix: add finally block to write_llmusage — recover from GeneratorExit on client disconnect yumoqing 2026-07-30 10:49:06 +08:00
  • 06e14af6ab test: load_test.py upgraded — 4min×3(50/100/200) + HTTP status + host CPU/MEM monitoring yumoqing 2026-07-29 18:33:14 +08:00
  • 9c363bc617 fix: VBox flex:1 wrapper for card scroll, robust search keyword extraction yumoqing 2026-07-29 18:15:23 +08:00
  • 1a2aa0c0bb fix: RefreshWidget period_seconds:0 infinite loop -> urlwidget yumoqing 2026-07-29 17:26:58 +08:00
  • 4f0a8a4c2e fix: cwidth:25 cheight:16 card-body-scroll — match old working layout yumoqing 2026-07-29 17:11:40 +08:00
  • 7aa1efc6d8 revert: back to server-side Jinja2 rendering, Tabular AJAX had 401 session issues yumoqing 2026-07-29 16:04:07 +08:00
  • 15b4ad38fb fix: {total,data} -> {total,rows} — DataViewer reads d.rows not d.data yumoqing 2026-07-29 15:29:38 +08:00
  • 960edc2581 fix: DSPY cate.llms->cate['llms'], return {total,data} for DataViewer yumoqing 2026-07-29 15:23:33 +08:00
  • 659af09a89 feat: Tabular seamless infinite scroll instead of page buttons yumoqing 2026-07-29 15:13:13 +08:00
  • 10280f60f1 fix: trailing comma when no pagination block rendered yumoqing 2026-07-29 15:00:38 +08:00
  • e9dc4208e0 chore: remove .swp, update gitignore yumoqing 2026-07-29 14:59:28 +08:00
  • 063c0a46bb fix: use relative URL for location.href to stay in workspace yumoqing 2026-07-29 14:59:17 +08:00
  • 31119554d4 fix: location.href for all nav, no mixed JS/server state, card width:100% yumoqing 2026-07-29 14:33:09 +08:00
  • a1a6a583e3 fix: buttons update RefreshWidget directly, VScrollPanel root, cwidth 22 yumoqing 2026-07-29 13:53:23 +08:00
  • 8a3d30c0c6 fix: pricing as string, fixed cwidth 25, pagination (20/page) yumoqing 2026-07-29 13:37:58 +08:00
  • 7148656f99 fix: dedupe providers, SearchBar input, urlwidget internal nav yumoqing 2026-07-29 13:22:53 +08:00
  • cb53b9aeeb fix: -@ target -> window.location.assign, Input -> KeyinText yumoqing 2026-07-29 12:31:40 +08:00
  • 32000e8757 ui: plaza card layout — fixed VBox, title 2ch, filler scroll with desc+price yumoqing 2026-07-29 12:00:04 +08:00
  • 0cb307407c bugfix yumoqing 2026-07-29 11:50:00 +08:00
  • bc23679c1b bugfix yumoqing 2026-07-29 11:43:26 +08:00
  • 78dd2b0788 fix: cate.llms -> cate['llms'] — get_llms_by_catelog_to_customer returns plain dict not DictObject yumoqing 2026-07-29 11:15:36 +08:00
  • 1c25542e72 feat: cockpit-style model plaza with search, category tabs, provider sidebar yumoqing 2026-07-28 17:55:17 +08:00
  • 68dd92a353 sort: add a.name as final sort column in model listing queries yumoqing 2026-07-28 16:23:41 +08:00
  • a2937d3cff fix: strip line number corruption from 12 media DSPY files yumoqing 2026-07-27 10:22:34 +08:00
  • a4aa40faf5 fix: llm上线检查定价数据显示实际内容而非记录数 yumoqing 2026-07-24 23:44:00 +08:00
  • 287e6c5a40 fix: 修复6个v1 DSPY缓存替换造成的缩进错误 yumoqing 2026-07-24 16:56:50 +08:00
  • 2d49ff9968 feat: 上线检查计费测试显示完整价格字段明细 yumoqing 2026-07-24 16:48:45 +08:00
  • e246f91e77 fix: asyncinference KeyError status→.get(status) yumoqing 2026-07-24 14:34:16 +08:00
  • c099af6bc7 chore: 删除load_test.py yumoqing 2026-07-24 11:01:48 +08:00
  • ad5d8c00c5 perf: 18个v1 DSPY全改用llmid缓存,去3表JOIN+DB连接 yumoqing 2026-07-24 11:01:40 +08:00
  • ef1e228f19 perf: llmid缓存(启动预热+内存查),v1/chat/completions去3表JOIN yumoqing 2026-07-23 18:26:52 +08:00
  • 5e48622e2a bugfix yumoqing 2026-07-21 14:44:27 +08:00
  • cf5d48d96c bugfix yumoqing 2026-07-21 14:43:15 +08:00
  • 7f6501b700 bugfix yumoqing 2026-07-21 11:11:48 +08:00
  • 00741bbf4f bugfix yumoqing 2026-07-21 11:11:02 +08:00
  • 6aa2f76c1e fix: list_llms按catelogid排序-改SQL ORDER BY替代sort参数,修复同catelog被拆分成多组 yumoqing 2026-07-21 10:52:05 +08:00
  • 112c86e80b bugfix yumoqing 2026-07-20 19:34:24 +08:00
  • 7b792c03d4 bugfix yumoqing 2026-07-20 19:32:48 +08:00
  • 3ff16da646 bugfix yumoqing 2026-07-20 19:20:57 +08:00
  • ee68fbefa7 bugfix yumoqing 2026-07-20 19:19:47 +08:00
  • 84c03a7878 bugfix yumoqing 2026-07-20 19:18:17 +08:00
  • 933085b7f3 bugfix yumoqing 2026-07-20 19:13:35 +08:00
  • 142dcbb02e bugfix yumoqing 2026-07-20 11:29:06 +08:00
  • 5ea0291af7 feat: 添加 kimi-k3 模型的 llm 和 llm_api_map 配置 yumoqing 2026-07-20 11:19:02 +08:00
  • e0855b6415 refactor: 将 kimi-k3 多模态内容构建改为纯 Jinja2 模板 yumoqing 2026-07-20 10:48:22 +08:00
  • ce17c48022 feat: build_kimi_content 迁入 llimage/utils.py,自含 webpath→base64 转换 yumoqing 2026-07-17 18:12:17 +08:00
  • c8b7d0cd07 refactor: kimi_t2t data 模板 — build_kimi_content 一行搞定多模态 yumoqing 2026-07-17 17:58:09 +08:00
  • f1930af597 feat: kimi_t2t 支持多模态 — 图片/视频通过 webpath_to_base64 转 data URI yumoqing 2026-07-17 17:52:07 +08:00
  • afced72c3c fix: kimi uapi 补全 uapiio 定义,移除所有占位符 yumoqing 2026-07-17 17:42:07 +08:00
  • 20833b8e90 feat: Kimi K3 API 接入 — 对话补全+文件管理 6 个 uapi yumoqing 2026-07-17 17:35:18 +08:00
  • 3d47867bd3 revert(llmage): undo unauthorized model_plaza modification yumoqing 2026-07-17 16:35:24 +08:00
  • d82a8b554f feat(llmage): add pricing query tab to model plaza yumoqing 2026-07-17 16:10:24 +08:00
  • 929dd017f9 fix(llmage): model_pricing returns widget tree, simplified UI yumoqing 2026-07-17 16:09:12 +08:00
  • 233b5db481 feat(llmage): model pricing query page — select model, display pricing table yumoqing 2026-07-17 16:08:08 +08:00
  • 6ab53eca2b fix: llm_create.dspy 补充 ownerid 自动注入(logined_userorgid 对自定义端点不生效) yumoqing 2026-07-14 18:22:11 +08:00
  • 3a2da1e636 fix: retry accounting button - add credentials:include to fetch call yumoqing 2026-07-14 14:18:02 +08:00
  • 83e1fa8ba3 feat: load_product_category_product返回providerid yumoqing 2026-07-13 14:53:46 +08:00
  • e5f55fc3f3 fix: model codes table supplychain.suppliers -> suppliers to avoid get_code.dspy SQL error yumoqing 2026-07-10 10:55:00 +08:00
  • f0d3550b63 fix: use get_sor_context(rbac) to query suppliers in sage db yumoqing 2026-07-10 09:26:21 +08:00
  • 3ae70d2c92 fix: providerid 下拉从 suppliers 表而非 organization 获取 yumoqing 2026-07-10 09:21:32 +08:00
  • 6186d15fee refactor: providerid codes → supplychain.suppliers yumoqing 2026-07-09 13:39:09 +08:00
  • 802ab896d8 fix: correct tab/space indentation — tabs for sync/async/llmclient, spaces for product_interface yumoqing 2026-07-09 11:43:53 +08:00
  • 064df40b4a fix: tab/space indentation in tenantid lines yumoqing 2026-07-09 11:42:22 +08:00
  • fd65b5a59e feat: write tenantid to llmusage from API request params yumoqing 2026-07-09 11:38:43 +08:00
  • 8f63d20f57 docs: 删除冗余status模型,标注异步状态通过/v1/tasks查询 yumoqing 2026-07-08 15:22:11 +08:00
  • a61e60deff cleanup: 删除冗余status端点(realesrgan/synth),统一走query_apiname yumoqing 2026-07-08 15:20:39 +08:00
  • 6c030b0a01 cleanup: 移除media端点中的空if transno块 yumoqing 2026-07-08 13:49:36 +08:00
  • b8de8db76f fix: 14个media端点移除冗余uuid生成,统一走inference+getID() yumoqing 2026-07-08 13:42:38 +08:00
  • fe82251e2e feat: /v1/media/{apiname} 14端点(KTV GPU服务) yumoqing 2026-07-07 21:28:05 +08:00
  • 8556564455 chore: remove llm_metrics and user_llm_policy from git tracking yumoqing 2026-07-07 18:02:57 +08:00
  • 43e8b40774 feat: multi-currency billing — llmusage currency fields + real-time exchange yumoqing 2026-07-07 15:43:03 +08:00
  • cf16d60893 refactor: drop cost from llmusage, add tenantid, clean references yumoqing 2026-07-07 12:23:51 +08:00
  • 6759a84ea1 fix: int(params_kw._is_mobile or 0) 防止NoneType yumoqing 2026-07-06 16:59:21 +08:00
  • 0c5fdadd89 docs: KTV定价改为按量计费 yumoqing 2026-07-06 16:10:35 +08:00
  • fd95eadfe6 fix: v1/pricing端点也加model过滤,避免同ppid下串模型价格 yumoqing 2026-07-06 15:57:25 +08:00
  • c0097b7735 fix: Filler→VBox定价区,同show_llms_cards yumoqing 2026-07-06 15:46:25 +08:00