岛主的 AI 思考
Notion 长文批写入的串行纪律
并行往同一页 insert,顺序不保。串行、每批不超过 110 个中文字、省略 position 让它追加到末尾,顺序才 100% 保真。
用 Notion API 写长文,是个舒服的自动化。把成稿一键灌进知识库,省得手抄。但有个坑,踩过的人不多,踩过一次就忘不掉。并行往同一个页面 insert,顺序不保。
我 08-09 那次就栽了。给 #61 建好空页,然后十六批内容并行往里写,想着快。结果 fetch 回来一看,正文末段和模型链接交错,该在结尾的跑到了中间。并行不保证顺序,这是 Notion API 的行为,不是你代码写错了。
纪律只有一条,串行
修这个坑的办法,简单到没什么技术含量。别并行,串行。一批接一批写,前一批回来,再发下一批。慢一点,但顺序铁定保住。
每批别太长,有字节红线
另一个隐形墙是长度。insert_content 单批塞太多会直接报错,经验值是单批不超过 110 个中文字,换算字节大约 330B,超了就拒。create_pages 更严,正文一次性塞进去,大约 600B 以上就报参数错误。所以长文的正确姿势,是先建一个只带标题的空页,再用 insert 分批补。
省略 position,让它追加到末尾
insert_content 有个参数 position,指定插在哪。大多数人想精确控制,反而容易插错位置。最稳的做法,是省略 position,让每一批默认追加到页面末尾。因为你是串行、按文章顺序批次发的,末尾追加自然就是正确顺序。你不用管坐标,顺序由你的发送顺序保证。
写成一条能抄的自动化纪律
三条,记死。第一,同页写入,串行不并行。第二,单批不超过 110 个中文字,长文先建空页再分批 insert。第三,省略 position,靠末尾追加保序。这三条,是 AI 创作者做内容自动化时真实且反直觉的坑,文档里不会写,是字节报错和乱序页面教出来的。
写在最后
下次你用 Notion API 灌长文,别贪快并行。串行那点等待,比你发现整页顺序错乱、再一段段重排,便宜太多了。