主要观点:近期在做“面向 AI 的编程”,总结相关技巧,因未来技巧可能失去价值,此篇文章可提供帮助;程序员追求确定性,有“纯函数”和“不纯函数”,不纯函数在工程上有诸多问题;现要面向 LLM 编程,自然语言沟通虽好但需约定规范,建议用英文写 Prompt 以提高效果和降低成本,还需补全用户输入,防止 Prompt 注入,可通过圈定用户输入和使用 boundary prompt 来干预,同时介绍提升 LLM 能力的“咒语”,如精心准备 Prompt 等。
关键信息:
- 纯函数输出固定,不纯函数因有副作用而输出不固定,如引入数据库值的函数。
- 用 JSON 格式规范 LLM 输出,校验输出是否有效及包含所需信息。
- 大部分可用数据集为英语,OpenAI LLM 按 token 计费,汉字占用 token 多,建议用英文写 Prompt。
- 补全用户输入可改善 LLM 对用户的理解,如读取用户环境等信息。
- Prompt 注入类似 SQL 注入,用户可构造输入突破限制,可通过圈定用户输入和使用 boundary prompt 来防止。
- 提升 LLM 能力可通过精心准备 Prompt,如添加背景故事等。
重要细节: - 以 Go 语言代码示例展示纯函数和不纯函数的区别。
- 给出具体的 Prompt 示例,如翻译 Prompt 及防止注入的各种 Prompt 写法。
- 提及 Yann LeCun 出题让 GPT-4 答错,添加特定语句后 GPT-4 能得出正确答案。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。