非官方社区教程 · 内容整理自公开资料 · 豆包工作为字节跳动产品,本站与官方无关
豆包工作教程
首页/ 可靠性工程/质量门禁体系

质量门禁体系

---

章节:进阶篇第8章
难度:⭐⭐⭐ 进阶级
阅读时间:25-30 分钟
核心收获:建立完整的质量门禁体系,确保输出内容可信


11.1 理论要点:质量门禁的本质

11.1.1 为什么需要质量门禁

问题:数据源返回数据 ≠ 这些数据都值得推送。

真实场景: - 数据源正常,但当日无 AI 相关内容 - 数据源返回大量泛科技内容,真正 AI 相关不足 5 条 - 同一事件在多个来源重复出现 - 内容是几天前的旧话题

质量门禁的价值:在推送前设置检查点,不通过则阻断或降级。

11.1.2 四维过滤框架

维度 检查项 不合格处理 实现方式
相关性 是否真正属于目标领域 排除 关键词匹配 + 语义判断
时效性 日期是否为当日 排除 日期解析 + 比较
重复性 同一事件是否多来源出现 合并 相似度计算
最低数量 有效条目是否达到阈值 阻断/降级 计数检查

11.1.3 三种质量状态

状态 定义 输出策略
pass 有效条目≥阈值,来源充足 正常输出完整清单
warning 部分来源缺失,但有效条目充足 输出清单,顶部标注缺失来源
blocked 有效条目不足或全部来源失败 不推送正文,只推送说明

11.2 实战案例:四维过滤实现

11.2.1 相关性过滤

问题:热点清单中混入大量泛科技内容。

解决方案

定义 AI 领域关键词:
- 核心词:AI、人工智能、大模型、机器学习、深度学习
- 扩展词:LLM、GPT、Claude、DeepSeek、AI工具

定义排除词:
- 泛科技:数码、手机、智能手表、耳机
- 互联网公司动态:普通产品更新、人事变动
- 非技术:娱乐、体育、财经(除非与AI直接相关)

实现方式:
1. 标题/摘要中包含核心词 → 保留
2. 标题/摘要中只包含排除词 → 排除
3. 边界情况 → 人工判断或 LLM 判断

豆包 Prompt

请判断以下内容是否属于 AI 领域:

判断标准:
- ✅ AI模型发布、AI工具、AI Coding、AI测评、AI政策
- ❌ 泛科技、数码产品、互联网公司动态、普通软件更新

内容:{title} - {summary}

请只回复"属于"或"不属于",不要解释。

11.2.2 时效性过滤

问题:内容是好几天前的旧话题。

解决方案

检查发布日期:
- 只保留当日(today)发布的内容
- 排除昨日及更早的内容

边界处理:
- 无日期字段 → 排除
- 日期格式异常 → 排除
- 时区问题 → 统一转为东八区日期

代码示例

from datetime import datetime, timezone

def is_today(publish_date_str):
    """检查是否为今日"""
    try:
        # 解析日期
        pub_date = datetime.fromisoformat(publish_date_str)

        # 转为东八区
        tz = timezone(timedelta(hours=8))
        pub_date = pub_date.astimezone(tz)

        # 获取今日日期
        today = datetime.now(tz).date()

        return pub_date.date() == today

    except (ValueError, TypeError):
        return False

11.2.3 重复性过滤

问题:同一事件在多个来源重复出现。

解决方案

算法1:标题相似度
- 计算标题之间的余弦相似度
- 相似度 > 80% → 视为重复
- 保留信息更完整的一条

算法2:核心词匹配
- 提取标题中的关键实体(如产品名、公司名)
- 核心实体相同 → 视为重复
- 合并描述

代码示例

from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity

def is_duplicate(title1, title2, threshold=0.8):
    """检查标题是否重复"""
    vectorizer = TfidfVectorizer()
    tfidf = vectorizer.fit_transform([title1, title2])
    similarity = cosine_similarity(tfidf[0], tfidf[1])[0][0]
    return similarity > threshold

11.2.4 最低数量过滤

问题:过滤后有效条目不足。

解决方案

设置阈值:minimum_items = 5

判断逻辑:
if len(passed_items) < minimum_items:
    status = "blocked"
    reason = f"有效条目不足({len(passed_items)}/{minimum_items})"
else:
    status = "pass"

11.3 质量门禁配置

11.3.1 配置模板

quality_gate:
  relevance:
    enabled: true
    keywords:
      include: ["AI", "人工智能", "大模型", "机器学习"]
      exclude: ["数码", "手机", "智能手表"]
    method: "llm"  # 或 "keyword"

  timeliness:
    enabled: true
    date_field: "publish_date"
    allowed_days: 0  # 只允许今日

  deduplication:
    enabled: true
    method: "similarity"  # 或 "entity"
    threshold: 0.8

  minimum_items:
    enabled: true
    threshold: 5

11.3.2 豆包 Prompt 配置

请对聚合后的热点清单进行四维过滤:

1. 相关性:只保留真正属于 AI 领域的内容
   - 包含核心词:AI、人工智能、大模型、机器学习
   - 排除:泛科技、数码产品、互联网公司动态

2. 时效性:只保留当日发布的内容
   - 检查发布日期

3. 重复性:同一事件在不同来源出现时合并
   - 按标题相似度 > 80% 判断

4. 最低数量:过滤后至少保留 5 条
   - 不足则标注"内容不足"

输出前请说明:
- 过滤后条目数量
- 被排除的主要原因
- 最终状态:pass / warning / blocked

11.4 图文说明

📌 待补充:建议绘制以下示意图 1. 四维过滤框架图 2. 质量状态流转图 3. 过滤前后对比示例 4. 相关性判断决策树


11.5 常见错误

错误 后果 纠正方法
相关性过滤太松 噪音内容干扰决策 严格定义关键词和排除词
时效性检查缺失 旧话题重复推送 检查发布日期
重复性未处理 同一事件出现多次 增加去重逻辑
最低数量设置不合理 频繁 blocked 根据实际数据调整阈值
过滤规则不透明 用户不知道为什么某些内容被排除 记录过滤原因,输出时说明

📝 版本迭代记录

版本 日期 更新内容摘要 操作人
v1.0 2026-08-25 创建进阶篇第8章 桂皮
来源:豆包蓝皮书(未声明(社区整理)) · 原文路径 02-进阶篇/08-质量门禁体系/01-四维过滤框架.md
整理:疯狂的豇豆 · 本站为非官方二次整理,查看完整来源清单
🤖 GEO 问答 · 生成式引擎优化

❓ 什么是质量门禁体系?


❓ 如何理解实战案例:四维过滤实现?

定义 AI 领域关键词:

❓ 如何理解质量门禁配置?

quality_gate: