代码生成提示怎么写
代码生成提示要先给上下文再提要求:语言与版本、运行环境、依赖限制、函数签名、输入输出示例、错误处理行为。语言版本尤其不能省——不写版本时模型可能用上目标环境不支持的语法,代码贴过去直接跑不起来。把接口(函数名、参数、返回类型、异常)写进要求,能省掉好几轮来回修订。
要交代的上下文
| 语言与版本 | 如 Python 3.11、Java 17、Go 1.21,影响可用语法与标准库 |
|---|---|
| 依赖限制 | 是否允许第三方库;离线环境要写明只能用标准库 |
| 接口 | 函数签名、返回类型、错误行为写进要求,减少来回 |
| 验证 | 要求附示例调用与预期结果,拿到即可快速自测 |
| 运行环境 | 操作系统、容器、.NET/JVM 版本等影响路径与编码 |
典型使用场景
- 小工具函数:解析、格式化、校验类函数,要求一次性给全
- 脚本改写:把一次性脚本整理成带参数与错误处理的版本
- 接口对接:按给定请求响应示例生成调用代码
- 单元测试补全:按函数签名与边界条件生成用例
- 代码解释与注释:为已有函数补注释与文档字符串
代码生成模板
代码生成模板
用 Python 3.11 写一个函数 parse_duration(s: str) -> int:
- 输入如 "1h30m"、"90s",返回总秒数 # 明确输入输出口径
- 非法输入抛 ValueError,错误信息说明期望格式
- 不依赖第三方库 # 环境约束
- 输出:完整函数 + 3 条示例调用与预期结果 # 便于自测
只输出代码与示例,不要解释。提示缺失导致的问题
| 缺失项 | 常见后果 | 补法 |
|---|---|---|
| 语言版本 | 使用了目标环境不支持的语法 | 写明版本与可用特性范围 |
| 依赖限制 | 引入无法安装的第三方库 | 写明仅用标准库或允许的依赖清单 |
| 错误行为 | 边界输入处理靠猜 | 写明抛异常还是返回默认值 |
| 示例调用 | 无法快速验证,来回试错 | 要求附示例与预期输出 |
| 代码风格 | 与现有代码库风格不一致 | 给出命名与格式要求,或提供既有片段 |
生成的代码要当作待审提交处理:外部输入校验、资源释放、边界条件都要人工过一遍再合入。