大模型辅助 Bilibili 视频内容概览(一)

发布于 # Ai_summary_skills

因为事务繁忙,最近我对 ai 智能总结产生了兴趣,做了几次总结之后发现效果还不错,这里做一个初版的记录,之后会逐步完善整个工作流。

目前的 demo 自动化的程度并不高,目前的工作流程如下:

首先设计一个从 json 文件中提取目标文本的函数,在提取之前,我们要先观察一下 json 的格式:

{
  "font_size": 0.4,
  "font_color": "#FFFFFF",
  "background_alpha": 0.5,
  "background_color": "#9C27B0",
  "Stroke": "none",
  "type": "AIsubtitle",
  "lang": "zh",
  "version": "v1.7.0.4",
  "body": [
    {
      "from": 0.0,
      "to": 0.24,
      "sid": 1,
      "location": 2,
      "content": "Hello",
      "music": 0.0
    },
    {
      "from": 0.24,
      "to": 0.64,
      "sid": 2,
      "location": 2,
      "content": "大家好",
      "music": 0.0
    },
    {
      "from": 509.08,
      "to": 509.5,
      "sid": 201,
      "location": 2,
      "content": "拜拜",
      "music": 0.0
    }
  ]
}

于是设计提取函数如下:

def extract_subtitles(json_path: str, output_path: str = None):
    json_file = Path(json_path)
    if not json_file.exists():
        print(f"[!] 文件不存在: {json_file}")
        return None
    with open(json_file, "r", encoding="utf-8") as f:
        data = json.load(f)
    body = data.get("body", None)
    if not body:
        print("[!] JSON中未找到 'body' 字段,可能不是字幕文件格式。")
        return None
    subtitles = [entry.get("content", "").strip() for entry in body if "content" in entry]
    text = "\n".join(subtitles)
    if not output_path:
        output_path = json_file.with_suffix(".txt")
    with open(output_path, "w", encoding="utf-8") as f:
        f.write(text)
    print(f"[+] 提取完成:{output_path}")
    return output_path

将提取到的内容单行保存在 content.txt 中,然后调用 deepseek-chat,glm-4.5-flash 模型二选一进行总结,前者需要付费,后者在一定额度内免费使用。经过测试,两者的准确度相差不打大,所以默认使用后者进行总结。

提示词使用如下,因为我会挑选一部分写入博客,所以预留了一个标题的位置:

messages=[
    {
        "role": "system",
        "content": (
        "你是一个有用的AI助手,现在请你对如下文本进行总结,要求语言精炼并保持原意。\n\n"
        "【输出格式要求】\n"
        "- 使用 Markdown 形式输出\n"
        "- 顶层标题统一使用“##”\n"
        "- 二级标题统一使用“###”\n"
          "- 不得修改原文本含义,仅优化结构与表达"
          ),
     },
]

前两次 ai 总结内容同样在博客里,这里给出链接:

2025.11.10-ai总结

2025.11.16-ai总结

在实际使用的过程中感官还算可以,但是手动操作过于麻烦;而且部分 B 站视频没有相应的字幕,或者音频模糊,导致文本出现偏差的问题,后续将从这两个方向继续完善。