Files
beige/banana扒包与取长补短.md
yangqianqian 6a2632da70 baseline: Clover 独立仓库首次基线提交
将 Clover 从上层产品包旧仓库中独立出来,建立专属版本控制。
当前状态=纵切片端到端已打通(登录→选品→出文出图→审核→下载包),
M1文案质量去套路化已验收。此提交作为后续按核销清单逐条修复的基线。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 11:30:22 +08:00

6.6 KiB
Raw Blame History

banana 扒包 + 产品包✖️banana 取长补短

目的:决定 Clover 的技术地基——banana 哪些能用、产品包哪些能用、怎么结合。 铁律:好的保留,不好的优化升级。 扒包日期2026-06-05扒包人CC


一、banana 是什么(比记忆里强很多)

它本身就是一个完整的"小红书AI种草笔记生成平台",不是空骨架。 技术栈Next.js14前端 + FastAPI后端 + Celery队列 + MySQL(关系) + MongoDB(文档) + Redis(队列/SSE) + Docker6容器。

已完成且验证的能力

  • 认证:注册/登录/JWT刷新/设备记录auth完整
  • 任务流创建→Celery异步→SSE实时进度推送→结果展示核心链路通
  • 积分系统:余额/充值/流水/趋势MVP模拟
  • 素材库CRUD/收藏/brand_tone字段
  • 上传magic number校验+扩展名白名单+路径穿越防护(安全已加固)
  • 前端10页:登录/概览/创建/历史/任务结果(SSE流)/图片编辑/最终效果/素材库/积分/个人中心
  • AI抽象层AIProvider Protocolmock/gemini可切换架构支持插拔

半成品/待完成PROGRESS.md说的

  • brand_tone 的 Alembic迁移没做
  • 前端交互细节没打磨
  • 端到端没完整自测积分扣费没集成AI图片持久化待做
  • 无测试覆盖、无CI/CD

二、banana 的 AI 内核有多厚(决定取舍的关键)

gemini_service.py 779行能力清单

  • analyze_content 产品/参考分析出overall_score
  • generate_text / generate_text_stream 文案生成(流式)
  • generate_images / _generate_single_image 生图
  • evaluate_schema 方案评分对应产品包打分但只有1个总分比产品包五维浅
  • edit_image 对话式改图 / apply_quick_action 快捷操作
  • remove_watermark 去水印洞3刚需banana已内置
  • extract_white_bg 白底图提取(产品图标准化,加分项)
  • _retry 重试退避(产品包缺的banana有
  • gemini_image_client.generate_with_urls 带图URL生图≈edits能力

⚠️ 关键短板:banana的AI内核全绑Gemini,没有产品包的"换角度/品类策略/去重/自动优化循环"那套业务深度。

  • banana打分=1个总分产品包打分=五维(标题/情绪/买点/关键词/合规)
  • banana无去重、无6品类话术、无storyboard 10角色分镜、无自动优化循环
  • banana的prompt在gemini_service里写死但有prompt_template_doc的MongoDB集合预留了可调位

banana去水印实现真相要标注

remove_watermark 做法=让Gemini重绘一张去水印图(prompt: Remove all watermarks...reconstruct naturally)。

  • 优点连像素级SynthID都重绘掉比re-encode彻底
  • ⚠️风险:重绘会改变文字/构图,对小红书海报的中文大标题是风险(可能改字/糊字)
  • 结论:可作为"去水印通道之一"但海报类要测洞3的re-encode/transcode削水印是更安全的"无损"方案,二者可分级用

三、取长补短对比表(核心结论)

能力维度 产品包 banana Clover怎么取
文案业务内核(打分/优化/去重/品类/角度) 强(五维+循环+去重+6品类) ⚠️弱(1个总分) 取产品包
storyboard分镜(10角色+品类证明) 取产品包
违禁词三级+自动改写 取产品包
爆款裂变+参考度调节 取产品包
工程底座(认证/队列/SSE/Docker) 无(无状态Worker) 取banana
多租户/JWT/用户体系 有(差workspace层) 取banana,补租户层
异步队列(解决生图4min阻塞) 无(同步) Celery+SSE 取banana
数据库/存档 MySQL+MongoDB 取banana,补delivery_packages
去水印 无(洞3要新建) remove_watermark 取banana,海报类加re-encode安全档
白底图/产品图标准化 ⚠️product.js分析 extract_white_bg 两者结合
重试退避 无(baseline证明需要) _retry 取banana
AI Provider抽象(可插拔) 写死 Protocol 取banana
生图主模型 Gemini主/GPT备 全Gemini 改:gpt-image-2主/Gemini备
可调prompt ⚠️prompt写死在代码 ⚠️有MongoDB集合预留位 取banana预留位,做成北哥可调
积分计费 有(MVP模拟) MVP免费,先关闭,留接口
前端 demo展示页(不复用) 10页生产级 取banana骨架,按前端设计参考图.png改5步流程

四、结论Clover 全新建,从两源各扒零件重建

🔴 架构定性倩倩姐2026-06-05拍板已落 Clover/CLAUDE.md

  • Clover 是全新独立项目,在 Clover/ 下从头建立。
  • banana 和产品包都是只读素材源,只复制不修改,绝不边盖边修。
  • 需要哪个零件 → 复制出来 → 在 Clover 里结合本项目迭代/优化/重建。
  • 以banana为底座(说法作废,那是边盖边修的错误架构)。

从产品包扒复制JS算法→Clover里重写Python

  • 文案五维打分/自动优化循环/去重 / storyboard 10角色分镜 / 6品类话术 / 违禁词三级自动改写 / 爆款裂变+参考度调节

从banana扒复制Python模块→Clover里改造

  • FastAPI+Celery+SSE 异步骨架 / JWT认证 / 双库模型范式 / AIProvider抽象层 / remove_watermark+extract_white_bg / _retry重试 / 上传安全加固 / 前端Next.js组件范式

Clover自己新建两源都没有

  • workspace多租户层 / delivery_packages存档打包+导出 / preference_events飞轮 / token-url收口 / banned_words可配置表 / 按"前端设计参考图.png"的5步流程前端

改造点:

  • 生图主模型改 gpt-image-2 主、Gemini 备;生图接口改 edits 优先
  • banana去水印(Gemini重绘)对海报中文标题有改字风险 → 加 re-encode 无损安全档分级用
  • 积分计费 MVP 免费先关闭,留接口
  • 可调prompt参考banana的prompt_template_doc预留位做成北哥可调等北哥样本注入

⚠️ 待定决策(给倩倩姐)— 已拍板

  1. JS→Python重写 vs JS微服务拍板Python重写融进Clover(统一栈),但 banana/产品包文件夹只读复制,不在其上改。
  2. banana半成品先跑通验证作废不基于banana迭代所以不存在"先跑通banana"。banana只读扒模块时该模块逻辑要在Clover里重新验证。