最近在做内部工具的项目文档,想用GPT-4批量生成接口说明和操作手册。我试了“请用专业、清晰的风格写文档”,但出来的内容还是特别“AI味”——动不动就“此外”“值得注意的是”,句式绕口,像英文机翻的。我尝试在prompt里加“像人类工程师写的一样”,但结果更飘了。有没有大佬试过什么具体技巧,比如给范例、限定句式长度、或者让它模仿某个开源项目的README风格?求个能落地的prompt模板,救救孩子。
用Prompt让AI写技术文档,总是一股翻译腔怎么办?
全部回复
共 33 条给范例最管用,丢一段你想要的README进去让它照着写,比啥咒语都强。
给范例是最管用的,我一般会丢一段目标开源项目的README进去,再让它按那个语气写,段落结构和用词都会明显像人写出来的。另外你可以在prompt里加一条“每段不超过三句话,不要用总结性开头”,翻译腔会少很多。还有个土办法,生成完了自己把“此外”和“值得注意的是”全局替换成空,效果立竿见影。
直接喂几段你们项目已有的文档让它照着风格写,比任何形容词都管用。
这个问题太真实了,我前段时间给团队写CLI工具的文档也踩过一模一样的坑。后来发现关键不是让它“写得好”,而是先把它从英文思维里拽出来。我现在会在prompt里直接塞一段我们项目里已有的中文README当风格锚点,然后加一句“只参考这段的语感和断句方式,不要复用内容”,效果比说什么“专业清晰”强太多了。另外我会明确限制它少用连接词,比如“禁止使用‘此外’‘值得注意的是’‘总的来说’开头”,这个负向约束比正向描述管用。还有个小技巧是让它先列要点,我再手动串成句子,虽然多一步,但翻译腔基本没了。你也可以试试把接口说明拆成参数表加一句话描述,别让它写成大段散文,结构一固定,AI想绕都绕不起来。
翻译腔多半是模型在模仿训练语料里的“助手体”,你光说“专业清晰”没用,它不知道你的底线在哪。我一般会塞一段自己写的接口文档当few-shot范例,再补一句“禁止用此外、值得注意的是,单句不超过25字”,效果比空喊人话强很多。另外让它先列提纲再逐段生成,比一口气吐整篇稳定,你可以试试把开源项目的README直接贴进去当风格锚点。
这个问题我太有共鸣了,之前给团队写API文档也踩过一模一样的坑。后来发现光靠“专业清晰”这种形容词基本没用,模型对风格指令的理解很虚。真正管用的是直接塞两三段你自己写的文档片段进去当few-shot,让它照葫芦画瓢,比什么形容词都强。另外可以明确限制句式,比如“每句话不超过25个字”“禁止使用‘此外’‘值得注意的是’这类连接词”,效果立竿见影。还有个偏方是让它先列要点再逐条展开,绕口的毛病会少很多,因为不用一边想内容一边组织长句了。模仿开源README这招我也试过,得指定具体项目,比如“参考FastAPI文档的语气”,不然它会给你整出花里胡哨的营销腔。最后建议生成完再让它自己过一遍,prompt写“找出翻译腔的句子并重写”,相当于加了个后处理环节。这些组合起来基本能压住那股AI味,你可以先拿一小段试试。
我试过一个挺管用的办法,就是先扔一段你们项目里已有的、你觉得写得好的文档片段进去,然后说“照这个语气和句式写下面的内容”。光说“像人类工程师”太虚了,模型根本不知道你指的是哪种人。另外“值得注意的是”这种词,可以在prompt里直接列个黑名单,出现一次就让它重写。句式上限定每句话不超过25个字,段落别超过4行,出来的东西会干净很多。
给范例这招最管用,我一般会直接贴两段自己以前写的高质量文档进去,让它先总结风格特征再动笔。另外把“不要用此外、值得注意的是”这种负面指令换成正面约束,比如要求每段不超过三句、多用短句和动词开头。还有个偏方是让它先按这个风格改写一段烂文档,改对了再让它写新的,比直接生成稳很多。
给范例真的有用,我一般会塞一段自己以前写的接口文档进去,让它照着这个语气和结构来。另外“值得注意的是”这种词可以直接在prompt里列个黑名单,明确说不要用。还有个歪招是让它先写一版,然后说“把这段话改成同事间口头讲清楚的程度”,出来的东西会自然很多。温度调低一点也有帮助,太高就容易飘。
我给个招:直接甩一段你满意的开源README进去让它照着仿写,比说一百句“像人写的”都管用。
我之前也踩过这个坑,后来发现最管用的办法是直接扔一段你们项目里已有的、你觉得写得好的文档给它,然后说“照这个语气和结构来写”。比什么“专业清晰”这种空泛指令强太多了。另外可以顺手加一句“每段不超过三句话,术语保持和参考文档一致”,出来的东西立马接地气。你也可以试试让它先列大纲,你确认完再逐段生成,别一次性让它输出整篇。
我一般会先丢两段自己写的文档进去当few-shot,再明确说“每句不超过20字,禁止用此外和值得注意的是”,效果比光说风格好很多。还有个歪招是让它模仿某个具体README的句式,但别直接说像人类写的,那太虚了。你试试把“操作步骤”单独拆出来生成,接口说明和手册混在一起写特别容易出翻译腔。
这个“翻译腔”问题我太熟了,本质就是模型在没约束的情况下会默认往书面语和英文思维那边靠。光说“专业清晰”根本没用,太抽象了,它不知道该砍掉哪些词。我自己试下来最管用的一招是直接给禁令清单,比如明确告诉它不许用“此外”“值得注意的是”“综上所述”“不仅而且”这类连接词,句子超过25个字就拆开。另外给范例真的比任何形容词都好使,你从你们项目里挑一段人写的接口说明贴进去,说“照这个语感写”,效果立竿见影。还有个偏方是让它先写成大白话口语版,再让它做最小幅度的润色,这样出来的东西反而更像人话。至于模仿某个开源README风格,最好指定具体的,因为不同项目文风差很远,说“像Redis文档那样”比笼统说“开源风格”靠谱得多。你可以在prompt里加一句“如果一句话能分成两句说就分”,这个对拆解那种绕口长句特别有效。