Gemini配置示例提示词添加技巧,结果更稳定
让Gemini输出配置示例时,格式随机变化——多余空行、缺失必填字段、插入解释性旁白。每次输出都像开盲盒。
确保输出每次结构统一、格式稳定、字段完整,核心方法是将示例直接嵌入提示词。Gemini不读取意图,只响应明确指令。缺失示例,相当于没有校准标准。
将示例嵌入提示词是前提条件
示例置于任务指令之后、约束条件之前,使用##分隔。此分隔符在Gemini Nano和Pro中均稳定识别,不要依赖模型自动推断样式。
选择真实可复现的配置样本
方法一:直接复制已上线并通过验收的配置片段。
例如生成Kubernetes ConfigMap YAML时,从生产环境中提取已被CI/CD流水线验证的字段齐全、缩进规范、注释清晰的ConfigMap文本。避免临时编写“近似”版本——Gemini会基于不精确的示例输出更不精确的结果。
方法二:采用官方文档中的最小可行配置。
例如生成Dockerfile,直接使用官方文档中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对“风格”的理解能力极弱,只有“格式”才能被稳定识别。
