数据整理

持续积累的实践记录。

数据整理

弈 CO:围棋赛事信息与对局分析小程序

我为什么做弈 CO

业余围棋比赛的信息通常散落在不同地方:赛事主办方在公众号发布规程,QQ群里流转报名和对阵消息,比赛现场又会出现 Excel、截图或照片形式的对阵表。信息很多,但彼此之间没有连接。

弈 CO 的目标不是再做一个赛事公告栏,而是把这些分散的信息整理成一份可以持续累积的赛事档案。参赛者可以查询比赛规程、下一轮对阵、积分排名、棋手战绩和升段信息,系统也可以在比赛进行中基于最新数据回答问题。

产品做什么

赛事信息归档

从公众号文章、赛事规程和报名公告中提取比赛名称、时间、地点、组别、赛制、报名条件、计分方式和升段规则,形成结构化比赛档案。

对阵与成绩整理

导入 Excel、Markdown 表格或现场图片中的对阵信息,统一记录轮次、台号、黑白方、选手、单位、积分和比赛结果。比赛结束后,这些数据继续用于积分、排名和历史查询。

棋手历史记录

把单场比赛中的棋手、对手、轮次、成绩和排名沉淀下来,逐渐形成棋手的历史对阵和参赛记录。

实时分析与赛事问答

用户可以询问“下一轮对谁”“升段需要几分”“这个组目前谁领先”等问题。回答优先来自赛事数据库和规程资料,避免模型凭空猜测。

Agent 在弈 CO 中的作用

Agent 不是页面上的装饰性聊天框,而是负责把不规整的赛事资料转成系统能使用的数据,并辅助用户查询已经存在的事实。

当前整理出的 7 个 Agent 场景包括:

  1. 赛事对话助手:根据比赛、规程、积分榜、对阵表和棋手记录回答问题。
  2. 对阵表解析:从 Excel 或 Markdown 表格中提取轮次、台号、选手和积分。
  3. 升段名单解析:从官方公告中提取棋手、原段位、晋升段位和备注。
  4. 图片 OCR:把现场拍摄的对阵表转换为可继续处理的 Markdown 表格。
  5. 规程要点提取:把长篇规程整理为时间、组别、赛制、计分和升段标准等字段。
  6. 比赛信息导入:从章程网页或公众号文章生成待审核的比赛档案。
  7. 对话历史压缩:保留比赛名、棋手、组别、名次等关键事实,控制上下文成本。

详细提示词、结构化输出和防止模型编造的工程处理,见文章《一个围棋小程序里的七个 Agent》。

数据链路

公众号 / QQ 群 / Excel / 图片
            ↓
      抓取、上传、OCR
            ↓
        Agent 结构化提取
            ↓
       字段校验与人工确认
            ↓
     赛事 / 对阵 / 棋手数据
            ↓
    小程序查询、问答与实时分析

Agent 负责理解和整理,最终发布仍需要字段校验和人工确认,避免把模糊公告直接当成正式比赛数据。

小程序围棋Agent数据整理

→