了解云原生 JuiceFS 如何赋能量化对冲基金以增强 AI 训练并在云端实现弹性吞吐。
![](https://www.isolves.com/d/file/p/2023/05-23/88726727373da1112b13c8bd42d662c2.jpg)
这不是编程或 ChatGPT API 集成教程,这些是使用 ChatGPT API 时需要牢记的一些关键思想和要点。
大型语言模型为您的软件产品提供前所未有的功能。作为开发人员,学习这项技术并将其集成到我们的项目中至关重要。像 OpenAI 这样的平台提供了与这些模型交互的 API,我们可以利用它来增强我们的软件。
最近,我完成了一门引人入胜的课程,“面向开发人员的 ChatGPT 提示工程”。我学习了一些令人难以置信的技术来充分利用 OpenAI 的 ChatGPT API,我很乐意在这篇文章中与您分享这些见解。
准则
与 ChatGPT 交互时,清晰度至关重要。以下是一些有用的策略:
- 单独的指令和输入文本:这使您可以使用各种输入来测试您的指令。例如,如果您要求 ChatGPT 总结一篇文章,请将“总结以下文章:”指令与文章文本本身分开。
- 使用定界符:它们有助于指定指令和输入之间的界限,减少提示注入的可能性。冒号或换行符可以作为简单但有效的分隔符。
- 请求结构化输出:如果您需要以编程方式解析 ChatGPT 的响应,请要求它以特定方式构建其输出。例如,您可能会要求“将以下文本中的关键点列为要点:”。
- 检查输入条件:为减少模型产生不相关或不准确响应(称为“幻觉”的现象)的机会,请指定输入必须满足的任何条件。例如,“如果文本包含日期,请提供该日期是星期几。”
- Few-Shots Prompting:如果可能,提供一些所需输入输出模式的示例可以指导模型产生类似的结果。
迭代提示开发
使用 ChatGPT 制作完美的提示确实是一个迭代过程,它需要对目标有敏锐的理解,并且愿意尝试和学习。
让我们将其分解为可操作的步骤:
- 定义目标:快速制作的第一步是清楚地了解所需的输出。问问自己,您希望 ChatGPT 生成什么?例如,如果您的目标是从文本中提取关键点,那么您的目标就是列出输入文本中的主要思想。
- 编写初始提示:根据您的目标,编写初始提示。提示是给 ChatGPT 的命令或问题,以指导其响应。对于上述目标,初始提示可以是“在以下文本中列出主要思想:”。
- 测试提示:现在,是时候测试提示了。通过模型运行它,看看你得到什么样的输出。符合你的目标吗?如果没有,是时候迭代了。
- 分析输出:分析模型的输出。响应的哪些方面符合您的目标,哪些部分偏离目标?这将为您提供有关如何调整提示的线索。
- 优化提示:根据您的分析,调整您的提示。例如,如果模型没有完全按照您的预期捕捉主要思想,您可以将提示细化为更具体,例如“将以下文本总结为要点:”。
- 重复该过程:继续测试、分析和完善您的提示,直到它始终如一地生成所需的输出。请记住,这是一个迭代过程。可能需要几轮改进才能使其恰到好处。
- 概括提示:一旦你有一个适用于特定案例的提示,请尝试将其概括为其他类似案例。这意味着使用各种输入文本测试提示以确保它适用于广泛的场景。
总结
摘要是 ChatGPT API 的一个强大用例,但了解如何有效使用它至关重要。以下是一些准则:
- 定义目的:如果要以特定方式使用摘要,请确保在说明中明确说明。
- 保持专注:如果需要,让模型专注于输入的特定部分。例如,如果您只对商业报告的财务方面感兴趣,您可能会问,“总结以下报告中的财务信息:”。
- 提取而不是总结:在某些情况下,提取关键信息而不是总结可能更有用。例如,您可以提示“列出以下文本中提到的所有人的姓名:”。
推理
ChatGPT 还可以从文本中推断出见解,执行情感分析、分类、分类和标记等任务。以下是您可以利用此功能的一些方法:
- 多任务:您可以要求模型在同一指令中执行多个任务,并以特定格式生成输出。例如,“分析以下评论的情绪并将其分类为正面、负面或中性:”。
- 测试多个示例:在一组输入上运行良好的提示可能在其他输入上表现不佳。为确保您的指令在广泛的输入范围内都能正常工作,请使用各种示例对其进行测试。
- 包含您自己的标签:如果您有一组预定义的类别,您可以将它们包含在指令中,并要求模型为给定的输入选择最相关的类别。例如,“将以下文本归入以下类别之一:技术、环境、政治或文化:”。
转型
ChatGPT 还能够执行各种文本转换,包括语言翻译和格式转换。
- 语言识别和翻译:您可以要求模型识别输入文本的语言,或将其翻译成另一种语言。例如,“将以下西班牙语文本翻译成英语:”。
- 语气转换:您可以将输入文本转换为不同的语气,例如正式、随意或对话。例如,“用随意的语气重写以下正式文本:”。
- 格式转换:该模型可以将文本从一种格式转换为另一种格式,例如从 JSON 到 html 或从 CSV 到 JSON。例如,“将以下 JSON 数据转换为 HTML 表格格式:”。
- 校对:您可以要求模型校对文本,对语法、标点符号和拼写进行更正。例如,“校对并更正以下文本中的任何错误:”。
扩展
ChatGPT 还可以将简短的输入文本扩展为更长、更详细的文章,例如博客文章、文章或电子邮件回复。这里有一些要考虑的事情:
- 提供上下文:如果在特定上下文中使用输出,请确保在提示中提供该上下文。例如,“写回复以下邮件,对发件人的建议表示感谢并同意实施:”。
- 披露 AI 参与:如果将输出传达给用户,建议披露它是 AI 生成的以保持透明度。
- 调整温度:温度参数控制模型的创造力。较低的温度(接近 0)使模型的输出更具确定性,而较高的温度(接近 1)允许更具创造性的响应。
开发聊天机器人
您可以使用 ChatGPT 创建具有特定行为的聊天机器人:
- 设置角色:使用“系统”角色来构建对话。此消息告诉模型它应该如何响应“用户”消息。例如,“你是一个乐于助人的助手,总是提供详细的答复:”。
- 提供用户上下文:在初始用户消息中包括用户的姓名、详细信息和任何其他相关上下文。例如,“用户是一名初级程序员,寻求有关 Python/ target=_blank class=infotextkey>Python 语法错误的帮助:”。
- 请记住该模型的局限性:ChatGPT 模型无法记住之前的交互,因此您每次发出请求时都必须提供之前的消息。例如,如果用户在之前的消息中问了一个问题,如果它与正在进行的对话相关,则在下一个请求中包含该消息。
- 控制热度:对于旨在呈现给用户的输出,您可以使用更高的热度来获得更不可预测的响应。对于打算以编程方式解析的输出,使用较低的热度以获得更可靠的结果。
了解这些提示工程概念可以显着改善您与 ChatGPT API 的交互,使您的应用程序更加有效和用户友好。