海域重启礼包码汇总 海域重启最新可用兑换码分享
2026-07-21
2026-07-22 0
开源标书工具链,告别排版噩梦,专注内容创作。脚本自动处理全角半角、格式排版,让标书制作效率翻倍。核心内容:1. 标书排版痛点:耗时易错,工具链一键解决2. 两大核心脚本:自动排版与标点纠错,规避废标风险3. 支持多模板切换,实现内容与格式分离管理

昨天那篇《从零教Agent做标书,我是怎么搭出这条流水线的|AI实战》发出来后,有很多人问我:能不能直接把整个工具包发来,让我的agent直接用?(PS:公众号目前已经整理了七套资料包,后台回复关键词直接领取)
能。不但能,我还把它打包成了一个完整的工具包,开源了。
做标书的人都知道,最折磨人的不是写内容,是排版。
你花三天写完的技术方案,最后一天全耗在Word里调格式——首行缩进差一个空格,表格行距不对,页边距两边不一致,编号突然跳了一级。更恶心的是,改完第一章,第二章的格式又乱了。
我之前也是这么过来的。直到有一天我算了一笔账:一份标书100多页,排版至少耗4-6小时。一年做十几份,光排版就烧掉我上百小时。
这上百小时,完全可以写在脚本里让它自动跑。
于是我花了一个月,把过去两年踩过的所有坑都塞进了两个Python脚本:
• bid_engine.py — Markdown → Word,自动排版+质检+暗标模式+格式模板切换+下划线占位符保留
• bolin_format.py — 全角半角扫描+修复,废标杀手终结者
900+行代码,覆盖了标书排版95%的场景。
招标方机器筛选,看到中文正文里有英文逗号 `,`?直接判废。
AI写出来的东西尤其容易犯这个错——它的训练数据中英文混杂,输出的标点符号完全随机。你肉眼根本看不出来,直到被废标才发现。
这个脚本做的事:
python bolin_format.py 你的标书.md --scan
它会扫描整个文件,告诉你:第37行有一个英文逗号,第89行有一个英文句号,第102行中英文括号混用。
扫描完想一键修复?
python bolin_format.py 你的标书.md --fix
所有英文标点自动替换成全角。零人工干预。
很多人习惯用Word直接写标书——但Word的排版稳定性很差,改两版格式就全飘了。
正确做法是内容和排版分离:内容写在Markdown里,排版交给脚本。改内容就改Markdown,重新跑脚本就生成新Word。版本清清楚楚,格式永不错乱。
python bid_engine.py 你的标书.md -o 输出.docx
一行命令。生成的Word自动套用配置文件里的格式:字体、字号、行距、页边距全部可自定义。
内置3套模板,一行切换:
# 政府采购标准模板(宋体+1.5倍行距)python bid_engine.py 标书.md --template government -o 输出.docx# 企业投标模板(仿宋+黑体标题+固定28磅行距)python bid_engine.py 标书.md --template enterprise -o 输出.docx# 工程类模板(黑体标题+宋体正文)python bid_engine.py 标书.md --template engineering -o 输出.docx
你的招标文件要求用仿宋?改模板就行。要求用黑体?换模板就行。不用手动调任何东西。
暗标项目,你的标书里不能出现任何公司名、Logo、地址。
以前我的做法是全文搜索Ctrl+F一个一个找——每次都有漏网之鱼。
现在一行命令搞定:
python bid_engine.py 你的标书.md --暗标 -o 输出.docx
脚本会自动把所有公司名、地址等关键词替换成"投标人"。跑完再跑一遍质检,确认零残留。
占位符没填完、禁用词混进去了、报价算错了——这些问题靠人眼看,迟早会漏。
脚本内置的质检模块会自动检查:
• 占位符扫描:搜"请填写""XXX""TODO"
• 禁用词扫描:"保证中标""100%成功率"等绝对化用语
• 章节完整性:必须提交的章节有没有漏
• 格式合规:字体、缩进、行距是否达标
python bid_engine.py 输出.docx --check
几秒钟跑完,有问题直接标出来。
招标文件里经常有这种格式:
致:_________(招标人)项目名称:_________
你让AI帮你填内容,它直接把下划线吃掉了,变成"致:上海交通大学"——括号里的"招标人"也没了。格式不对,废标。
这个工具包新增了下划线保留功能:
from scripts.bid_engine import preserve_underlinestext = "致:_________(招标人)"result = preserve_underlines(text, {"致:": "致:上海交通大学"})# 结果:致:上海交通大学(招标人)# 下划线被替换,括号说明保留填内容的同时,保留下划线和括号里的说明文字。格式不再被吞。
我用这个工具链跑了十几个真实项目,数据如下:
| 指标 | 以前纯手工 | 现在用脚本 |
|---|---|---|
| 排版耗时 | 4-6小时/份 | 5-10分钟/份 |
| 全角半角错误 | 每次都有 | 0 |
| 废标风险 | 高(漏检多) | 极低(自动全检) |
| 格式一致性 | 每份都得调 | 一份模板无限复用 |
最爽的是:改完内容重新跑一遍脚本,30秒出新Word,格式100%一致。
pip install python-docx markdown pyyaml
git clone https://gitee.com/fenglinhuoshanmen/bid-toolkit.gitcd bid-toolkit
# Markdown → Word(自动修复全角半角)python scripts/bid_engine.py 你的标书.md -o 输出.docx# 仅扫描全角半角问题python scripts/bolin_format.py 你的标书.md --scan# 一键修复全角半角python scripts/bolin_format.py 你的标书.md --fix# 暗标模式(去公司标识)python scripts/bid_engine.py 你的标书.md --暗标 -o 输出.docx# 生成后自动质检python scripts/bid_engine.py 输出.docx --check# 使用政府采购模板python scripts/bid_engine.py 标书.md --template government -o 输出.docx# 使用自定义配置python scripts/bid_engine.py 标书.md --config my_config.yaml -o 输出.docx
如果你要集成到自己的Agent流水线里,直接import:
from scripts.bolin_format import md_to_docx, fix_punctuation# Markdown → Wordmd_to_docx("# 服务方案nn这里是内容...", "标书.docx")# 全角半角修复fixed = fix_punctuation("费用由甲方承担,乙方负责执行.") # → "费用由甲方承担,乙方负责执行。"# 保留下划线格式from scripts.bid_engine import preserve_underlinestext = "致:_________(招标人)"text = preserve_underlines(text, {"致:": "致:上海交通大学"})# → "致:上海交通大学(招标人)"说清楚边界,省得你踩坑:
• 不帮你写标书内容— 内容还是得你自己或Agent来写,这个工具只管排版和质检
• 不处理复杂图片嵌入 — 图片位置和大小还需要在Word里手动微调
• 不替代最终人工审核 — 脚本能查格式问题,但内容逻辑对不对还得你把关
它的定位很明确:排版和质检的自动化工具,不是标书代写工具。
说白了,这套东西我自己用了几个月,确实省了很多时间。但投标圈子不大,大家都在踩类似的坑——全角半角、暗标漏标、格式不统一——与其每个人重新踩一遍,不如开源出来大家一起维护。
目前功能覆盖了我遇到的95%场景。剩下5%(比如特殊行业的特殊格式要求),欢迎提PR。
开源地址:https://gitee.com/fenglinhuoshanmen/bid-toolkit
1. 批量质检模式 — 一次扫描整个项目目录,出一份完整质检报告
2. 招标文件解析器 — 自动从PDF招标文件里提取格式要求,直接喂给脚本
3. Word模板引擎 — 支持从招标方给的Word模板出发,自动填充内容
4. Agent集成SDK — 让任何AI Agent都能直接调用这套工具链
如果你也在做标书相关的东西,欢迎来聊。
---
本文素材:作者团队两年标书自动化实战经验。工具包MIT协议,免费使用。
开源地址:https://gitee.com/fenglinhuoshanmen/bid-toolkit
---
投稿:硅基聊斋
栏目:专项攻略
作者:佛跳墙
登录查看剩余 70% 内容