ai_member_xiaoyan/memory/2026-05-21.md

4.6 KiB
Raw Blame History

2026-05-21 工作记忆

事件记录

1. 口语题目句型知识点改写(刘彦江)

  • 多轮 JSON 改写任务,将指定句型知识点嵌入 speaking_qa 题目
  • 句型包括It's ... now / It's bad for your health to ... / We are ... now / We want to catch ... / Please help me ... / I want to buy ... / I only need ... / We must not ... / I will use it to ... / It was ... / It helped a lot to ... / It tastes like ... / I've decided to ...
  • 规则:知识点必须是答案,每个问题设计确保回答必然触发目标句型

2. 单元挑战听力拖拽题解析补充(刘彦江)

  • 涉及 ID010501, 010601, 010701, 010801, 010901
  • 多维表格App Token CMHSbUUjka3TrUsaxxEc297ongf,表 听力-P7-听力拖拽 (tbly9SvPEa44k3yX)
  • 每个 ID 包含 first 和 second 两组题组1和题组2两组都需要补充完整解析

3. bitable 操作经验教训

  • Shell 转义陷阱再次确认jsonData 中包含大量嵌套 JSONShell 变量展开会破坏数据。必须用 Python subprocess + curl 直接构造请求体
  • ¥¥ 分隔符与 bitable API 不兼容:原数据中用 ¥¥ 作为解析分隔符,写入 bitable 后会导致 jsonData 损坏。后续改用 || 替代
  • explanation 字段路径:位于 questionSet[0].explanation,而非 section 层级的 explanation
  • operate_bitable.sh 限制:仅适用于简单字段更新,复杂嵌套 JSON 场景不可用

4. Python bitable 更新脚本模式

import subprocess, json

# 获取 token
# curl GET records 获取数据
data = json.loads(response)['data']
record = data['items'][0]  # 或 data['item']
fields = record['fields']
jd = json.loads(fields['jsonData'])

# 修改数据
jd['first']['questionSet'][0]['explanation'] = '...'
jd['second']['questionSet'][0]['explanation'] = '...'

# 序列化并更新(注意 ensure_ascii=False
fields['jsonData'] = json.dumps(jd, ensure_ascii=False)
body = json.dumps({"fields": fields})
subprocess.run(['curl', '-X', 'PUT', url, '-H', f'Authorization: Bearer {token}', ...])
  • 关键:读取后立即备份原始数据,写完后回读验证完整性

5. 解析生成规则

  • 每道题的解析需包含:听力原文引用 → 答案对应 → 关键特征 → 冗余排除/语用推理
  • first 和 second 的解析需分别定制,不可复制模板
  • 干扰抑制类题目:标注冗余信息类型(位置/情绪/动作/大小等)
  • 否定纠错类题目:标注否定信号词和身份替换逻辑
  • 跨句整合类题目:标注需整合的信息来源和推理路径

6. 剧本内嵌 Sheet 组件配置回填(刘彦江)

  • 文档L1-S2-U17-L5 笨蛋坏蛋wiki token U1zEwHZaaie07TkjmOOchurgnIh
  • 内嵌 Sheet wMQVyV,剧本表 265 行 × 9 列A=类型, B=ID, C=配置整理, D=剧情描述, E=角色名, F=英文台词, G=组件配置, H=知识点, I=编剧台词)
  • 共 17 个互动行:对话朗读-配图(6) / 对话朗读(1) / 对话挖空-配图(1) / 对话挖空(4) / 对话选择-配图(1) / 对话选读(2) / 对话组句-配图(1) / 对话组句(1) / 看图说话(1)

组件类型 A 列取值与技能映射(新增类型)

A列类型 对应技能 备注
对话朗读 / 对话朗读-配图 dialogue-reading-config -配图需加图片时机和音频载体
对话挖空 / 对话挖空-配图 dialogue-fill-in-blanks-config 同上
对话选择 / 对话选择-配图 dialogue-choose-config 同上
对话选读 dialogue-selective-reading-config 开放表达,无正确选项,每选项必带反馈
对话组句 dialogue-sentence-building-config 单词排序组句,含答案+辅助信息
看图说话 dialogue-image-description-config 导览配置+对话配置含Q&A/通过规则/示例对话

类型区别关键点

  • 对话选择 vs 对话选读:前者有对错判断(正确选项标注),后者开放表达(无正确选项,每选项均带反馈)
  • 对话挖空___ 必需三下划线选项2-3个反馈角色非 User
  • 对话组句:选项为独立单词/短语,答案填完整正确句,必须有辅助信息
  • 看图说话 v2.0:结构最复杂,包含导览配置(任务标题/背景/描述/知识)+ 对话配置(角色/背景/Q&A/通过规则/示例对话)
  • -配图后缀:资源配置需添加 图片时机:互动内容\n互动反馈\n\n音频载体Pioneer Band

写入脚本模式

  • G 列写入使用 Python subprocess + curl避免 shell 转义)
  • SST = spreadsheet_token, SID = sheet_id格式 SST!G{row}:G{row}
  • 写入后必须回读验证内容完整性