你是否曾遇到过这样的情况:让Gemini生成一段配置示例,但每次输出的格式都大相径庭——有时多出一行空白,有时漏掉某个必填字段,甚至冷不丁冒出一句“这里解释一下”的说明文字。整个过程就像在开盲盒,结果完全不可控。

要想让每次输出都保持结构一致、格式可控、字段完整,最关键的一步就是把示例直接嵌入提示词中。Gemini不具备读心能力,它只会严格遵循你写下的内容。不提供示例,就等于没有给模型提供校准的标尺。
先确认示例必须嵌入提示词中
示例应紧贴在任务指令之后、约束条件之前,中间使用##分隔。这种分隔方式在Gemini Nano和Gemini Pro上均能稳定识别,不要指望模型能自行脑补你想要的格式样式。
选取真实且可复现的配置样例
方法一:复制一段你已经上线、并通过验收的配置片段。
例如,你需要生成Kubernetes ConfigMap YAML,就去生产环境中复制一段经过CI/CD流水线验证过的ConfigMap文本,要求字段完整、缩进规范、注释清晰。千万不要临时编造一个“看起来差不多”的版本——Gemini会依据你给出的近似样本,继续生成质量更差的近似内容。
方法二:使用官方文档中的最小可行配置。
例如生成Dockerfile时,直接引用Docker官方文档中由FROM + RUN + CMD三行组成的最简合法Dockerfile。它短小精悍、无歧义且语法确定,Gemini能准确锁定结构边界。
关键点:示例必须包含你要求的所有字段名称(如config_version、timeout_ms、retry_policy),即使字段值使用占位符也可以。否则Gemini默认这些字段可以省略,输出时就会自行删减。
明确标注示例的三个特征
第一步:在示例前添加一句引导语,说明示例的性质。
参考以下范例:
第二步:指出该示例中你希望复刻的三项硬性特征——①所有配置项顶格书写,不缩进、不换行;②每个键名后紧跟英文冒号加单个空格再加字符串值,值必须用双引号包裹;③最后一项后不加逗号,全文无注释行。
第三步:给出你的实际任务指令,且与示例保持同类形式。
请严格按照上述格式,生成一份用于支付网关对接的config.yaml,需包含api_url、merchant_id、sign_type、connect_timeout、read_timeout五个字段,其中sign_type仅允许取值"RSA2"或"HMAC-SHA256"。
避免示例污染的两个操作
删掉示例中所有与当前任务无关的字段——例如你只需生成数据库连接配置,示例中却混入日志级别、监控端口等信息,Gemini很可能误判这些也为必填项,然后一股脑全部输出。
禁用“类似”“参考风格”等模糊动词。必须使用“严格按以下格式生成”,而不是“可参考以下示例的风格”。请注意,Gemini对“风格”的理解非常薄弱,“格式”才是它能稳定抓取的唯一信号。
