Commit Graph
4 Commits
Author SHA1 Message Date
chaos 85ea33eb4e fix: 解决 compact 命令断连问题 - 请求体超限413清晰错误 + /v2/compact分批压缩端点
根因: APIG请求体限制~1.25MB, 超限后JSON截断导致'model id缺失'400错误→客户端断连

修复:
1. 请求体超限校验: 返回413 + content_too_large清晰错误(而非上游的'model id缺失')
2. /v2/compact端点: 超长对话自动分批发送压缩,每批<800KB,最后合并总结
3. 动态超时: 根据请求体大小自动调整(60s→180s→300s)
4. 修复响应头转发: 剥离Content-Encoding避免客户端解压失败
5. 禁用flask-compress(与Waitress SSE兼容问题)
2026-07-08 14:06:21 +08:00
chaos a2a96282de feat: 启用响应压缩(gzip/brotli/zstd) + 优化SSE流式chunk_size
- 添加 flask-compress 中间件,长文本响应自动压缩(压缩率70-80%)
- 压缩阈值设为256字节,小响应不压缩
- SSE流式 chunk_size 从 4096 提升到 16384,减少分片开销
- 压缩白名单包含 text/event-stream,SSE也支持压缩
- 解决长文本响应体积过大导致超时/内存溢出的问题
2026-07-08 13:21:32 +08:00
chaos fab2a25bcc feat: 上游错误日志 + ModelArts错误→OpenAI格式转换
- 非200响应记录WARNING日志(含响应体前500字节)
- 华为云ModelArts错误格式(error_code/error_msg)转为OpenAI标准格式
- 解决客户端'压缩上下文'报错时错误格式不兼容问题
- 根因: prompt超196608 tokens触发ModelArts.81001
2026-07-02 17:23:34 +08:00
chaos e9c635dbd0 feat: 网关全面优化 - SSE流式转发/连接池/Token优先级/持久化
- 移除JWT格式过滤(token.count('.')>=2),改为len>200
- HUAWEI_TOKEN环境变量设为最高优先级
- Token持久化到/etc/huawei-gateway.env,重启自动恢复
- SSE流式转发(stream=True + iter_content)
- requests.Session连接池(20连接, 3次重试)
- Waitress线程数16→32
- 过滤hop-by-hop头(Connection/Keep-Alive/Upgrade)
- pip安装增加waitress依赖
- 新增独立huawei_gateway.py文件
2026-07-02 16:23:22 +08:00