likunlong
|
6ce52befe2
|
feat: 根据是否有附件和是否自动,自动选择模型并且获取服务;
|
2025-08-27 10:47:19 +08:00 |
|
likunlong
|
330bdc3761
|
feat: 数据库chat_model添加优先级字段;
|
2025-08-27 10:47:19 +08:00 |
|
likunlong
|
4f7ad59e46
|
feat: 添加自动获取高优先级模型和服务的逻辑;
|
2025-08-27 10:47:19 +08:00 |
|
l90215
|
b696fde881
|
feat: 合并代码 删除不需要的文件
|
2025-08-27 10:47:19 +08:00 |
|
fy53888
|
00f9a1a55b
|
修改字典下拉带查找功能
|
2025-08-27 10:47:19 +08:00 |
|
fy53888
|
a1c7b86e72
|
备分一下2
|
2025-08-27 10:47:19 +08:00 |
|
fy53888
|
62676a54fb
|
备分一下2
|
2025-08-27 10:47:19 +08:00 |
|
fy53888
|
e51425a951
|
备分一下
|
2025-08-27 10:47:17 +08:00 |
|
fy53888
|
268be2d9ec
|
更新后端生成類型 Integer出錯的問
|
2025-08-27 10:47:09 +08:00 |
|
fy53888
|
f448a18e44
|
更新后端生成類型 Integer出錯的問題
|
2025-08-27 10:47:07 +08:00 |
|
lixiang
|
22e59fe5a1
|
向量库sql查询去除匹配分值字段
|
2025-08-27 10:47:01 +08:00 |
|
violateer
|
0780e3b8c9
|
fix: 修改krole_group_ids字段名
|
2025-08-27 10:47:01 +08:00 |
|
violateer
|
0cdba56a07
|
feature: 添加开启知识库角色,用户可见个人知识库及角色分配知识库
|
2025-08-27 10:47:01 +08:00 |
|
l90215
|
ebc13c06af
|
feat: 更新只是库角色默认不开启
|
2025-08-27 10:47:00 +08:00 |
|
l90215
|
416f011c73
|
feat: fix代码生成类型问题
|
2025-08-27 10:47:00 +08:00 |
|
likunlong
|
bfeb389171
|
feat: 获取模型接口支持返回模型能力;模型表增加模型能力字段;
|
2025-08-27 10:47:00 +08:00 |
|
violateer
|
caf7f14781
|
feature: 新增生成前端文件模板接口
|
2025-08-27 10:46:51 +08:00 |
|
l90215
|
a6eb98daab
|
feat: fix代码生成类型问题
|
2025-08-27 10:46:37 +08:00 |
|
l90215
|
4834b615a6
|
feat: fix代码生成类型问题
|
2025-08-27 10:46:37 +08:00 |
|
l90215
|
42aabeed96
|
feat: 添加空格
|
2025-08-27 10:46:37 +08:00 |
|
Administrator
|
affdc5e3a6
|
问题概述
1.保存消息和计费逻辑存在耦合
2.修改计费逻辑:
按次计费被阈值限制:旧逻辑把 TIMES 分支放在 totalTokens ≥ 100 的大分支里,导致没到100 token时不扣费,违背“每次调用就扣费”的语义。
token累计不当:TIMES 分支只扣费不处理累计,同时在 totalTokens < 100 时不会进入任何TIMES逻辑,累计会无意义增长。
粒度不稳定:TOKEN 计费一旦达阈值就把 total 全扣完并清零,不利于对账与用户体验。
打印方式:使用 System.out.println,不利于生产追踪。
改动要点
1.新增独立方法
saveMessage(ChatRequest): 只落库。
publishBillingEvent(ChatRequest): 只发布异步计费事件。
保留组合方法 saveMessageAndPublishEvent(ChatRequest) 以便需要一行调用时使用。
调用处已改为“先保存,再发布事件”
SseServiceImpl: 先 saveMessage,再 publishBillingEvent。
SSEEventSourceListener: 同上。
DifyServiceImpl: 同上。
2.计费模式分流:
TIMES:每次调用直接扣费,不累计。
TOKEN:按阈值(100)批量扣费,保留余数,账单颗粒稳定。
保留余数:total = prev + delta;billable = floor(total/threshold)threshold;remainder = total % threshold。
日志替换:统一使用 log.debug。
结构更清晰、可维护。
所有金额计算统一用 BigDecimal,保留两位小数,RoundingMode.HALF_UP
按次计费:每次直接扣费(BigDecimal),边界转 Double
按 token 计费:按阈值批量结算,保留余数;费用=单价(BigDecimal)×可结算token数
1. 消息分类存储
用户消息:role="user", deductCost=null, totalTokens=本次token数, remark="用户消息"
系统账单:role="system", deductCost=实际扣费, totalTokens=计费token数, remark="TIMES_BILLING/TOKEN_BILLING"
2. 数据流程
用户发送消息 → 预检查余额 → 保存用户消息 → 发布计费事件 → 异步扣费 → 保存账单记录
|
2025-08-14 14:00:48 +08:00 |
|
Administrator
|
5a2e08f87d
|
问题概述
1.保存消息和计费逻辑存在耦合
2.修改计费逻辑:
按次计费被阈值限制:旧逻辑把 TIMES 分支放在 totalTokens ≥ 100 的大分支里,导致没到100 token时不扣费,违背“每次调用就扣费”的语义。
token累计不当:TIMES 分支只扣费不处理累计,同时在 totalTokens < 100 时不会进入任何TIMES逻辑,累计会无意义增长。
粒度不稳定:TOKEN 计费一旦达阈值就把 total 全扣完并清零,不利于对账与用户体验。
打印方式:使用 System.out.println,不利于生产追踪。
3.建议数据库不要存扣除金额和累计消耗token,消息表里不需要存“累计到目前为止多少”,否则每条消息都变成快照,既冗余又易不一致
改动要点
1.新增独立方法
saveMessage(ChatRequest): 只落库。
publishBillingEvent(ChatRequest): 只发布异步计费事件。
保留组合方法 saveMessageAndPublishEvent(ChatRequest) 以便需要一行调用时使用。
调用处已改为“先保存,再发布事件”
SseServiceImpl: 先 saveMessage,再 publishBillingEvent。
SSEEventSourceListener: 同上。
DifyServiceImpl: 同上。
2.计费模式分流:
TIMES:每次调用直接扣费,不累计。
TOKEN:按阈值(100)批量扣费,保留余数,账单颗粒稳定。
保留余数:total = prev + delta;billable = floor(total/threshold)threshold;remainder = total % threshold。
日志替换:统一使用 log.debug。
结构更清晰、可维护。
所有金额计算统一用 BigDecimal,保留两位小数,RoundingMode.HALF_UP
按次计费:每次直接扣费(BigDecimal),边界转 Double
按 token 计费:按阈值批量结算,保留余数;费用=单价(BigDecimal)×可结算token数
|
2025-08-08 13:39:37 +08:00 |
|
evo
|
210a9d9b14
|
Merge pull request #159 from MuSan-Li/feature_20250807_fix_code_generator
feat: 代码生成模板优化
|
2025-08-07 09:03:08 +08:00 |
|
l90215
|
66518925c1
|
feat: 代码生成模板优化
|
2025-08-07 09:02:16 +08:00 |
|
evo
|
19d3f018b8
|
Merge pull request #158 from MuSan-Li/feature_20250805_fix_data_model_del
feat: 优化删除数据模型也删除模型字段sql条件
|
2025-08-05 22:11:00 +08:00 |
|
l90215
|
450ec6db44
|
feat: 优化删除数据模型也删除模型字段sql条件
|
2025-08-05 22:06:05 +08:00 |
|
evo
|
0bb897de1f
|
Merge pull request #157 from MuSan-Li/feature_20250805_fix_data_model_del
feat: 优化删除数据模型也删除模型字段&添加mapper文件注解
|
2025-08-05 19:51:28 +08:00 |
|
l90215
|
ab9ff52200
|
feat: 优化删除数据模型也删除模型字段&添加mapper文件注解
|
2025-08-05 19:50:29 +08:00 |
|
evo
|
d94bcf250e
|
Merge pull request #156 from MuSan-Li/feature_20250804_fix_bug
feat: 优化空指针bug&格式化代码&初始化用户知识库角色配置
|
2025-08-04 20:54:27 +08:00 |
|
l90215
|
10708b7625
|
feat: 优化空指针bug&格式化代码&初始化用户知识库角色配置
|
2025-08-04 20:50:49 +08:00 |
|
ageerle
|
5e032a68d5
|
Merge pull request #154 from violateer/feature/knowledge-role
添加删除知识库角色组时关联删除数据
|
2025-08-03 09:59:50 +08:00 |
|
violateer
|
bd41ff0f28
|
添加删除知识库角色组时关联删除数据
|
2025-08-02 22:29:02 +08:00 |
|
evo
|
3ffba456f4
|
Merge pull request #153 from MuSan-Li/feature_20250802_fix_k_sql
feat: 调整知识库角色sql
|
2025-08-02 21:25:52 +08:00 |
|
l90215
|
993346534e
|
feat: 调整知识库角色sql
|
2025-08-02 21:25:16 +08:00 |
|
evo
|
38169ba90d
|
修复查询字段名称
feat: 修复一些逻辑问题
|
2025-08-02 19:39:23 +08:00 |
|
l90215
|
b003e1b3bb
|
feat: 修复查询字段名称
|
2025-08-02 19:38:50 +08:00 |
|
l90215
|
f36dda74a1
|
feat: 修复一些逻辑问题
|
2025-08-02 19:37:07 +08:00 |
|
evo
|
c609095c69
|
Merge pull request #151 from MuSan-Li/feature_20250801_fix_menu_sql
feat: 调整菜单结构sql
|
2025-08-02 18:37:47 +08:00 |
|
l90215
|
93e34b3f03
|
feat: 调整菜单结构sql
|
2025-08-02 18:36:50 +08:00 |
|
ageerle
|
cc4ca69640
|
Merge pull request #143 from violateer/feature/knowledge-role
添加知识库权限控制功能
|
2025-08-02 15:56:42 +08:00 |
|
ageerle
|
85930f4b12
|
Merge pull request #132 from HHANG52/main
feat(chat): 修复仅非管理员设置根据用户 ID查询聊天记录
|
2025-08-02 15:56:31 +08:00 |
|
ageerle
|
3c19a2b7a4
|
Merge pull request #142 from keke-cxn/main
修复:请求地址'/system/role/authUser/selectAll',发生未知异常:cn.dev33.satoken.exce…
|
2025-08-02 15:56:16 +08:00 |
|
keke
|
21c390c4d6
|
修复:1.在使用dify的时候,发送1+1=?模型返回2,但是第二次问他为什么等于2的时候,模型无法获取上下文信息,经过排查,发现缺少conversationId,session表需要添加conversationId字段
2.在使用dify的时候message表中并没有存储模型返回的消息,并且扣除费用、
|
2025-08-02 13:18:30 +08:00 |
|
ageerle
|
cdef9e1c89
|
feat: 增加演示模式
|
2025-07-31 14:58:29 +08:00 |
|
evo
|
3c60f43daa
|
Merge pull request #147 from MuSan-Li/feature_20250721_generate_code
feat: 调整生成代码结构
|
2025-07-30 09:31:04 +08:00 |
|
l90215
|
a24fa7a2b4
|
feat: 调整生成代码结构
|
2025-07-30 09:24:31 +08:00 |
|
ageerle
|
21f8462ebb
|
Merge pull request #146 from MuSan-Li/feature_20250721_generate_code
feat: 调整生成代码结构
|
2025-07-30 09:10:32 +08:00 |
|
l90215
|
897222c41c
|
feat: 调整生成代码结构
|
2025-07-29 23:34:39 +08:00 |
|
ageerle
|
227670df9d
|
Merge pull request #145 from MuSan-Li/feature_20250721_generate_code
feat: 提交替换代码生成sql
|
2025-07-29 09:43:29 +08:00 |
|
l90215
|
6b2cf1a3c3
|
feat: 提交替换代码生成sql
|
2025-07-28 17:47:12 +08:00 |
|