如何有效使用-GPT-5
如何有效使用 GPT-5
在这篇文章中,我将深入探讨在使用 GPT-5 时你拥有的不同选项,并帮助你选择最佳设置以使其适用于你的使用场景。我会讨论你可以使用的不同输入模式,GPT-5 提供的可用功能,例如工具和文件上传,以及你可以为模型设置的参数。
这篇文章不是由 OpenAI 赞助的,它只是我使用 GPT-5 的经验总结,讨论了如何有效地使用该模型。

这张信息图突出了本文的主要内容。我将讨论 GPT-5 如何处理多模态输入以及如何有效地使用它。此外,我还会涵盖工具调用和推理努力/详尽程度设置。我还会讨论结构化输出及其何时有用,以及文件上传。图像由 ChatGPT 提供。
为什么你应该使用 GPT-5
GPT-5 是一个非常强大的模型,你可以用它来完成各种任务。例如,你可以用它来构建聊天机器人助手或从文档中提取重要元数据。然而,GPT-5 也有许多不同的选项和设置,其中许多你可以在 OpenAI 的 GPT-5 指南中了解更多。我会讨论如何导航所有这些选项,并最优地利用 GPT-5 来满足你的需求。
多模态能力
GPT-5 是一个多模态模型,这意味着你可以输入文本、图像和音频,模型将输出文本。你还可以在输入中混合不同的模态,例如,输入一个图像和一个询问图像的提示,然后接收一个响应。从 LLM(大型语言模型)输入文本当然是预期的,但能够输入图像和音频的能力非常强大。
正如我在之前的文章中讨论的那样,VLMs(视觉语言模型)因其能够直接理解图像的能力而极为强大,这通常比在图像上执行 OCR 然后理解提取的文本效果更好。同样的概念也适用于音频。例如,你可以直接发送音频片段,不仅分析片段中的单词,还可以分析音频片段的音调、说话速度等。多模态理解简单来说就是让你对分析的数据有更深入的理解。
工具
工具是另一个强大的功能。你可以在模型执行期间定义模型可以利用的工具,这使 GPT-5 成为一个代理。一个简单的工具示例是 get_weather() 函数:
def get_weather(city: str):
return "Sunny"
你可以将自定义工具及其描述和函数参数提供给模型:
tools = [
{
"type": "function",
"name": "get_weather",
"description": "Get today's weather.",
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "The city you want the weather for",
},
},
"required": ["city"],
},
},
]
在你的函数定义中确保详细和描述性的信息很重要,包括函数的描述和利用函数的参数。
你可以定义很多工具供你的模型使用,但重要的是要记住 AI 工具定义的核心原则:
-
工具描述详尽
-
工具不重叠
-
当模型使用函数时,使其明显。模糊性会使工具使用无效
参数
使用 GPT-5 时,你应该关注的三个主要参数是:
-
理解努力
-
繁琐度
-
结构化输出
我现在将描述不同的参数以及如何选择它们。
理解努力
理解努力是一个参数,你可以从中选择:
-
最小
-
低
-
中等
-
高
最小化理解努力实际上使 GPT-5 成为一个非推理模型,应该用于更简单的任务,在这些任务中你需要快速响应。例如,你可以在一个问答简单且用户期望快速响应的聊天应用中使用最小化理解努力。
你的任务越困难,你应该使用更多的推理,尽管你应该记住使用更多推理的成本和延迟。推理算作输出标记,在撰写本文时,GPT-5 的成本为每百万标记 10 美元。
我通常从最低的理解努力开始,对模型进行实验。如果我注意到模型难以给出高质量的响应,我会提高推理级别,首先从最小 -> 低。然后我继续测试模型并观察其表现。你应该努力使用最低的理解努力,同时保证可接受的质量。
你可以通过以下方式设置理解努力:
client = OpenAI()
request_params = {
"model" = "gpt-5",
"input" = messages,
"reasoning": {"effort": "medium"}, # can be: minimal, low, medium, high
}
client.responses.create(**request_params)
繁琐度
繁琐度是另一个重要的可配置参数,你可以选择:
-
低
-
中等
-
高
繁琐度决定了模型应该输出多少个输出标记(此处不包括思考标记)。默认为中等繁琐度,OpenAI 也表示这实际上是他们之前模型使用的设置。
假设你希望模型生成更长、更详细的响应,你应该将繁琐度设置为高。然而,我通常在低和中等繁琐度之间进行选择。
-
对于聊天应用,中等繁琐度是好的,因为一个非常简洁的模型可能会让用户觉得模型不太有帮助(许多用户更喜欢在响应中包含更多细节)。
-
然而,出于提取目的,你只想输出特定信息(例如,文档中的日期),我将繁琐度设置为低。这有助于确保模型只响应我想要的输出(日期),而不提供额外的推理和上下文。
你可以通过以下方式设置繁琐度级别:
client = OpenAI()
request_params = {
"model" = "gpt-5",
"input" = messages,
"text" = {"verbosity": "medium"}, # can be: low, medium, high
}
client.responses.create(**request_params)
结构化输出
结构化输出是一个强大的设置,你可以用它来确保 GPT-5 以 JSON 格式响应。这在你想要提取特定数据点而不是其他文本(如文档中的日期)时非常有用。这保证了模型会以有效的 JSON 对象响应,然后你可以解析它。我进行的所有元数据提取都使用结构化输出,因为它对于确保一致性非常有用。你可以通过在请求参数中添加“text”键来使用结构化输出,如下所示。
client = OpenAI()
request_params = {
"model" = "gpt-5",
"input" = messages,
"text" = {"format": {"type": "json_object"}},
}
client.responses.create(**request_params)
确保在提示中提到“JSON”;如果不提,使用结构化输出时你会得到错误。
文件上传
文件上传是 GPT-5 提供的另一个强大功能。我之前讨论了该模型的多模态能力。然而,在某些情况下,直接上传文档并让 OpenAI 解析文档是有用的。例如,如果你还没有对文档进行 OCR 或提取图像,你可以直接将文档上传到 OpenAI 并提问。根据经验,上传文件也很快,你通常会得到快速的响应,这主要取决于你请求的努力。
如果你需要从文档中快速获取响应,而又没有时间先使用 OCR,文件上传是一个你可以使用的强大功能。
GPT-5 的缺点
GPT-5 也有一些缺点。我在使用过程中注意到的主要缺点是,当你使用该模型时,OpenAI 不共享思考标记。你只能访问思考的摘要。
这在实时应用中非常受限,因为如果你想要使用更高的推理努力(中等或高),你无法在模型思考时从 GPT-5 向用户流式传输任何信息,这会导致糟糕的用户体验。那么,选择就是使用较低的推理努力,这会导致输出质量较低。其他前沿模型提供商,如 Anthropic 和 Gemini,都提供了思考标记。
关于 GPT-5 比其前辈缺乏创造力的讨论也很多,尽管这在我的工作中通常不是一个大问题,因为对于 GPT-5 的 API 使用来说,创造力通常不是必需的。
结论
在这篇文章中,我概述了 GPT-5 的不同参数和选项,以及如何最有效地利用该模型。如果使用得当,GPT-5 是一个非常强大的模型,尽管它自然也有一些缺点,在我看来最主要的缺点是 OpenAI 不共享推理标记。每当我在 LLM 应用上工作时,我总是推荐准备其他前沿模型提供商的备用模型。例如,可以将 GPT-5 作为主要模型,但如果它失败了,你可以退回到使用 Google 的 Gemini 2.5 Pro。
👉 我的免费资源
🚀 用 LLMs 提升你的工程能力(免费 3 天电子邮件课程)
👉 在社交平台上找到我:
📩 订阅我的通讯
🧑💻 联系我
✍️ Medium

浙公网安备 33010602011771号