Promo_Web 营销内容生成平台搭建

· Promo_Web

今日进展

  1. 搭建 Promo_Web 营销内容生成平台,继承 Basic_Web 脚手架
  2. 实现 LLM 驱动的营销文案生成引擎:多 LLM 提供商路由选择
  3. 实现人设管理:定义营销人设(品牌调性、语气风格、目标受众)
  4. 实现多渠道分发:配置不同渠道的内容适配规则

关键代码/伪代码

LLM 生成引擎

# GenerationEngine: LLM 驱动的营销文案生成

CLASS GenerationEngine:
    ASYNC DEF generate(self, campaign, persona, channel):
        # 1. 构建 prompt: 人设 + 产品信息 + 渠道适配
        prompt = self._build_prompt(
            product=campaign.product,
            persona=persona,        # 品牌调性、语气风格
            channel=channel,        # 渠道适配规则
            skill=campaign.skill,   # 营销技能模板
        )
        # 2. 路由到最优 LLM 提供商
        provider = self.llm_router.select(
            model_preference=campaign.model,
            cost_limit=campaign.budget,
        )
        # 3. 流式生成
        ASYNC FOR chunk IN provider.stream(prompt):
            YIELD chunk

    FUNCTION _build_prompt(self, product, persona, channel, skill):
        # 人设注入: "你是一个{{persona.style}}的营销文案专家..."
        # 产品信息: "产品名: {{product.name}}, 卖点: {{product.selling_points}}"
        # 渠道适配: "发布在{{channel.name}},字数限制{{channel.max_length}}"
        RETURN rendered_template

LLM 路由器

# LLMRouter: 多提供商智能路由

CLASS LLMRouter:
    PROVIDERS = {
        "doubao": DoubaoProvider,      # 豆包 (便宜)
        "volcengine": VolcEngineProvider, # 火山引擎 (快)
        "openai": OpenAIProvider,       # OpenAI (贵但好)
    }

    FUNCTION select(self, model_preference=None, cost_limit=None):
        # 优先级: 用户指定 > 成本限制 > 默认
        IF model_preference AND model_preference IN self.PROVIDERS:
            RETURN self.PROVIDERS[model_preference]()
        IF cost_limit AND cost_limit < CHEAP_THRESHOLD:
            RETURN self.PROVIDERS["doubao"]()  # 便宜
        RETURN self.PROVIDERS["volcengine"]()   # 默认

遇到的问题

  • LLM 生成的营销文案质量不稳定:同样 prompt 有时很好有时很水,需要加 few-shot 示例稳定输出
  • 人设定义的粒度问题:太粗(只有风格描述)效果差,太细(每个字段都定义)维护成本高,最终选了 5 个核心维度

明日计划

  • 实现营销技能模板:产品推广、活动促销、品牌故事等
  • 接入 SkillStore 获取营销类技能