小鱼开发
|
c6a40331d4
|
chore(release): bump version to 1.9.1 and apply pending changes
|
2026-06-16 15:17:30 +08:00 |
|
小鱼开发
|
755ecc9abe
|
refactor(config): 统一配置体系,禁用热重载,清理兼容层
- 删除 .gitlab-ci.yml
- 删除 runtime_config.py 兼容层
- Pydantic Settings + YAML 三层配置分离
- 统一 PlatformConfigLoader 加载器
- docker-compose 移除重复 environment 覆盖
- volcengine base_url 从 YAML 读取
- 微信支付/SMS 空值启动时拦截
- 日志仅输出控制台,不写文件
- 更新 model_router 注释
|
2026-05-07 18:42:47 +08:00 |
|
小鱼开发
|
43f13cf394
|
fix(provider): VolcengineProvider 自动从 Settings 读取 API Key / Base URL
- VolcengineProvider 无参调用时 api_key 为 None,导致 scheduler/main.py 中
volcengine_ark adapter 注册失败,脚本生成报'未注册的平台: volcengine_ark'
- 参照 ViduProvider 做法,__init__ 中自动兜底读取 get_settings()
- 补充 Settings.VOLCENGINE_BASE_URL 字段(.env 中已有但 Pydantic 未定义)
- 顺手清理 volcengine_provider.py 中的 unused import / variable
|
2026-05-05 21:42:39 +08:00 |
|
小鱼开发
|
6c1aef276b
|
refactor: 删除所有流式生成代码
项目已明确不做 SSE/流式输出,清理后端所有流式相关代码:
- 删除 Provider 层 generate_stream、generate_stream_with_progress
- 删除 ModelRouter 层 _try_generate_stream、generate_stream_with_progress
- 删除 LLMGateway chat_stream
- 删除 Adapter 层 CHAT_STREAM 常量/分支
- 删除 platform-config.yaml chat_stream 方法配置
- 同步清理 base.py 抽象接口和未使用的导入
|
2026-05-04 20:27:19 +08:00 |
|
小鱼开发
|
af9e8f5d9b
|
refactor: reasoning_effort 从 extra_body 改为直接传递
与官方 curl 示例对齐:reasoning_effort 作为顶层参数直接传递,
不再通过 extra_body 透传。统一三个方法(generate、generate_stream、
generate_stream_with_progress)的传参方式。
|
2026-05-04 20:14:20 +08:00 |
|
小鱼开发
|
0e5bef64b8
|
fix: 移除 response_format=json_object,改为依赖 prompt 约束
回退上一条推断式修复(模型名匹配没有官方依据)。
改为在 script_service 调用层直接移除该参数:
- system prompt 已明确要求'只输出纯 JSON'
- safe_parse_ai_json_response 已做容错解析和 markdown 清洗
- 不依赖特定模型对 response_format 的支持
|
2026-05-04 20:05:38 +08:00 |
|
小鱼开发
|
f10d78f63e
|
fix: 豆包模型不支持 response_format=json_object,添加兼容性判断
doubao-seed-2-0-pro 等豆包系列模型不支持 OpenAI 风格的
response_format.type=json_object 参数,会导致 400 错误。
改为仅对非豆包模型(如 DeepSeek、GPT)传递该参数。
|
2026-05-04 20:03:38 +08:00 |
|
小鱼开发
|
431c54c258
|
refactor: 前端脚本生成改为异步任务轮询,精简LLM模型,删除图片生成代码
- 前端:ScriptCreation SSE 流式改为 createTask + pollTask 轮询
- 后端:LLM 仅保留 doubao-seed-2-0-pro,删除降级链及相关模型
- 后端:删除所有图片生成代码(ImageParams/ImageTaskParams/generate_image)
- 更新 platform-config.yaml、model_router、volcengine_provider、tasks 等
|
2026-05-04 19:58:32 +08:00 |
|
小鱼开发
|
e58159fc42
|
refactor: 第三方平台架构改造(Adapter Protocol + Gateway)
Phase 1: 异常体系统一
- 新增 PlatformError / PlatformErrorType 标准定义
- 改造所有 Provider 异常抛出为 PlatformError
- 注册全局 PlatformError exception handler
Phase 2: Adapter Protocol
- 新增 app/ai/adapters/base.py(PlatformAdapter + SyncCapable + TaskCapable + CallbackCapable)
- 新增 app/ai/adapters/constants.py(Method 常量)
- 新增 PlatformConfigLoader(config/platform-config.yaml)
Phase 3: HTTP Client 统一
- ViduProvider 从 aiohttp 迁移到 httpx(注入方式)
- VolcengineCaptionService 改为注入 http_client
- lifespan 统一管理所有 Client 创建和关闭
Phase 4: Gateway 骨架 + Adapter 实现
- 新增 ViduAdapter / VolcengineArkAdapter / VolcengineCaptionAdapter
- 新增 PlatformGateway(call_sync / submit_task / query_task / handle_webhook)
- 新增 LLMGateway(带 Fallback 降级链)
- lifespan 注册所有 Adapter 和 Gateway
Phase 6: 清理与验证
- 从 Settings 移除 VIDU_BASE_URL / VOLCENGINE_BASE_URL
- Provider 改为从 PlatformConfigLoader 读取 base_url
- 清理 volcengine_caption_service 全局单例
- config_loader 默认路径改为 platform-config.yaml
- Scheduler 注入共享 HTTP client
- vidu.py 回调路由使用 Adapter 验签和解析
- ruff 全量通过,应用启动测试通过
|
2026-05-04 16:07:16 +08:00 |
|
小鱼开发
|
feddeed950
|
refactor(script): remove sync endpoint, add thread-pool & timeout
- Remove unused POST /script/generate sync endpoint and frontend generate()
- Move JSON parsing/validation to asyncio.to_thread() to avoid event-loop blocking
- Add 60s asyncio.timeout() around entire script generation pipeline
- Migrate volcengine_provider to unified AsyncArk client
|
2026-04-30 23:51:30 +08:00 |
|
小鱼开发
|
43609de2f1
|
chore: 移除脚本生成流程的临时性能日志
- script_service: 删除流式生成各阶段的 info/debug 日志
- model_router: 删除首 chunk 延迟、provider 信息日志
- volcengine_provider: 删除 SDK request、首 chunk 耗时、流结束统计日志
- 保留: 初始化日志、降级/错误日志、API 层异常日志
- 为后续统一结构化日志规划做准备
|
2026-04-26 20:59:52 +08:00 |
|
小鱼开发
|
7c23cb3afb
|
feat: 启用 JSON Mode 约束脚本生成输出
- script_service: 调用 model_router 时传入 response_format="json_object"
- volcengine_provider: generate 和 generate_stream_with_progress 支持 response_format 参数
- 强制模型输出合法 JSON,减少 Markdown 代码块包裹和说明文字导致的解析失败
|
2026-04-26 20:41:05 +08:00 |
|
小鱼开发
|
0138e7b01f
|
refactor: generate_stream_with_progress 从 httpx 原始请求改为 AsyncOpenAI SDK
- 使用 self.async_client.chat.completions.create() 替代 httpx 原始 SSE
- 添加 stream_options={"include_usage": True} 获取 Token 用量
- 修复 usage 在最后一个 chunk(choices=[])时被跳过的问题
- 代码从 56 行减少到 36 行,更简洁可维护
|
2026-04-26 20:33:16 +08:00 |
|
小鱼开发
|
d0057ecc2c
|
feat: 脚本生成流式优化 - Ark SDK 迁移至 httpx SSE + reasoning_effort 关闭思考过程
- volcengine_provider: Ark SDK 同步迭代器 → AsyncOpenAI → httpx 原始 SSE
- generate_stream_with_progress 使用 httpx 直接请求,消除 80s+ 缓冲
- 新增 generate_stream (AsyncOpenAI) 作为备用方案
- enable_thinking 替换为 reasoning_effort,支持思考程度控制
- ai_models.yaml: 默认 LLM 改为 doubao-seed-2-0-pro,添加 reasoning_effort: minimal
- model_router: 透传 reasoning_effort 参数
- script_service: 4 阶段 SSE 精简 (start→analyzing→generating→complete)
- script.py: SSE 直连端点 /script/generate/stream
- 前端 ScriptCreation: 直连 SSE 端点,弃用调度器轮询模式
|
2026-04-26 20:17:12 +08:00 |
|
小鱼开发
|
74983ce5ec
|
feat: init meijiaka-zj project from ai-meijiaka template
|
2026-04-20 16:39:57 +08:00 |
|