让 Agent 处理一批文件并生成汇总报告,可以先把单份文件的读取、解析和摘录拆成独立任务,再按资源条件限制同时运行的数量。跨文件去重、比较和最终汇总依赖前面的结果,应在必要结果齐备后执行。判断能否并发,要看任务是否独立、会不会改同一份数据,以及后续是否需要等待它。
这里的并发,是让多个文件任务在同一时间段内推进,具体怎样执行取决于运行环境。ZGI 是可自托管的智能体运行时(Agent Runtime),可以组织文件输入、模型调用和工作流,并查看运行状态、步骤及结构化输出。安排批量文件任务时,可以沿着这条链路明确每项工作需要什么、完成后交出什么。

先拆依赖,再决定哪些一起跑
一份会议记录的解析通常不需要等待另一份记录。只要文件标识、处理规则和输出格式已经确定,就可以分别开展。共同的分类口径应提前给出,否则不同文件可能被分到含义接近、名称不同的类别,汇总时还要重新整理。
跨文件判断需要另一种顺序。统计同一事项出现了多少次,需要收齐相关摘录并确定去重规则;比较方案差异,需要拿到双方资料。若某份文件尚未处理,汇总步骤就应保留等待或缺口状态,不能拿先完成的几份直接代表整批。
写入位置也影响任务是否独立。每项任务可以保存自己的中间结果,再由汇总步骤统一生成报告。多个任务同时改同一个文件、覆盖同一条记录时,需要执行层协调写入;把输出分开保存,能让来源和结果更容易对应。
任务开始前保留一份输入清单,给文件分配稳定标识,并记录本次使用的版本或时间范围。结果中同时带回文件标识、处理状态和产物位置。即使文件完成顺序不同,也能按标识关联,避免把先返回的内容放进错误的位置。
限制同时运行数量,给汇总留一道检查
并发上限不能只按文件总数设置。模型调用限额、接口速率、内存和文件大小都会影响可同时运行的任务数。可以先用较小的一批文件验证,再观察等待、限流和资源占用;增加并发后如果等待和失败变多,就应重新收窄范围。
尚未开始的文件可以留在待处理队列里,有任务释放名额后再进入。完成状态要按步骤定义:文件解析结束,只能释放解析阶段占用的名额;如果后面还有模型提取,仍需遵守模型调用的上限。这样才能区分到底是哪一层在等待。
单项状态至少要分清待处理、运行中、成功、失败和按规则跳过。文件无法解析,应标记失败并保留原因;明确不在范围内的文件,才按约定跳过。两种情况都会影响报告的覆盖说明,不能都被归入"没有内容"。
在 ZGI 中组织这类流程时,可以分别查看文件处理、模型整理和报告生成步骤的输入与结果。并发控制和汇总条件要落实到实际执行组件,并通过试运行验证。检查时应确认并发限制在哪一层生效,跨文件依赖是否满足,单项结果是否带有可核对的来源。
汇总前,用输入清单核对每份文件是否都有对应状态,并检查成功项的产物能否读取、格式是否可合并。只有满足预定覆盖条件,才生成最终稿。允许部分交付时,需要明确列出已处理范围和缺失项,让读者知道哪些结论仍受缺口影响。
试运行可以混合放入处理较快的文件、较慢的文件和无法解析的文件,观察完成顺序变化后结果是否仍能对应。还要检查必要输入未完成时,汇总是否保持等待;单项失败时,其他任务的状态是否保留。先验证这些关系,再扩大批量规模,才能让并发安排服务于一份可核对的报告。
GitHub:https://github.com/zgiai/zgi