GPT-5 与 ChatGPT 新功能详解
OpenAI GPT-5 模型能力解析与 ChatGPT 最新功能实战指南。
OpenAI 的 GPT 系列一直是大模型领域的标杆。2025 年,GPT-5 和 ChatGPT 带来了革命性的更新。本文将详细介绍其核心能力与使用技巧。
GPT-5 模型概览
模型规格对比
| 特性 | GPT-4 Turbo | GPT-5 | o1 |
|---|---|---|---|
| 上下文长度 | 128K | 256K | 200K |
| 知识截止 | 2024.04 | 2025.01 | 2024.10 |
| 多模态 | 文本+图片 | 文本+图片+视频 | 文本 |
| 推理能力 | 强 | 更强 | 最强 |
| 响应速度 | 快 | 中等 | 慢 |
定价 (2025.01)
GPT-5:
输入: $15 / 百万 tokens
输出: $60 / 百万 tokens
GPT-4o:
输入: $5 / 百万 tokens
输出: $15 / 百万 tokens
o1-preview:
输入: $15 / 百万 tokens
输出: $60 / 百万 tokens
API 使用指南
基础调用
from openai import OpenAI
client = OpenAI()
# GPT-5 基础调用
response = client.chat.completions.create(
model="gpt-5",
messages=[
{"role": "system", "content": "你是一位专业的技术顾问"},
{"role": "user", "content": "解释微服务架构的优缺点"}
],
temperature=0.7,
max_tokens=2000
)
print(response.choices[0].message.content)
流式输出
# 流式响应
stream = client.chat.completions.create(
model="gpt-5",
messages=[{"role": "user", "content": "写一个快速排序算法"}],
stream=True
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")
Vision 图片理解
import base64
def encode_image(path):
with open(path, "rb") as f:
return base64.b64encode(f.read()).decode()
response = client.chat.completions.create(
model="gpt-5",
messages=[
{
"role": "user",
"content": [
{"type": "text", "text": "这张图片展示了什么?"},
{
"type": "image_url",
"image_url": {
"url": f"data:image/jpeg;base64,{encode_image('photo.jpg')}"
}
}
]
}
]
)
o1 推理模型
核心特点
o1 系列是专为复杂推理设计的模型,采用”思考后回答”机制:
# o1 适合复杂推理任务
response = client.chat.completions.create(
model="o1-preview",
messages=[
{
"role": "user",
"content": """
一个农夫需要将狼、羊和白菜运过河。
船一次只能载农夫和一样物品。
如果农夫不在:
- 狼会吃羊
- 羊会吃白菜
请给出最优解决方案,并证明这是最少的过河次数。
"""
}
]
)
# o1 会展示详细的推理过程
print(response.choices[0].message.content)
o1 vs GPT-5 选择
| 任务类型 | 推荐模型 | 原因 |
|---|---|---|
| 数学证明 | o1 | 需要深度推理 |
| 代码调试 | o1 | 需要逻辑分析 |
| 日常对话 | GPT-5 | 响应更快 |
| 创意写作 | GPT-5 | 更自然流畅 |
| 多模态 | GPT-5 | o1 不支持图片 |
ChatGPT 新功能
1. Memory 记忆功能
ChatGPT 现在可以跨对话记住用户偏好:
# API 中使用用户上下文
response = client.chat.completions.create(
model="gpt-5",
messages=[
{"role": "user", "content": "帮我写代码"}
],
user="user_12345", # 用户标识,用于记忆
metadata={
"preferences": {
"language": "python",
"style": "functional",
"comments": "detailed"
}
}
)
2. Custom GPTs 自定义 GPT
创建专属的 AI 助手:
# GPTs 配置示例
gpt_config = {
"name": "代码审查大师",
"description": "专业的代码审查助手",
"instructions": """
你是一位资深的代码审查专家,请:
1. 仔细检查代码质量
2. 指出潜在的安全问题
3. 建议性能优化方案
4. 保持友好专业的语气
""",
"tools": ["code_interpreter", "web_browser"],
"knowledge_files": ["coding_standards.pdf"]
}
3. Canvas 协作画布
ChatGPT Canvas 支持实时协作编辑:
┌─────────────────────────────────────────────────────┐
│ ChatGPT Canvas │
├─────────────────┬───────────────────────────────────┤
│ │ │
│ 对话区域 │ 编辑画布 │
│ │ │
│ 用户: 帮我写 │ ```python │
│ 一个 API │ from fastapi import FastAPI │
│ │ │
│ ChatGPT: 好的 │ app = FastAPI() │
│ 我来创建... │ │
│ │ @app.get("/users") │
│ [编辑建议] │ async def get_users(): │
│ [添加注释] │ return {"users": []} │
│ │ ``` │
│ │ │
└─────────────────┴───────────────────────────────────┘
4. 实时语音对话
GPT-5 支持实时语音交互:
# 语音对话 API
from openai import OpenAI
client = OpenAI()
# 语音转文字
audio_file = open("speech.mp3", "rb")
transcript = client.audio.transcriptions.create(
model="whisper-1",
file=audio_file
)
# 文字转语音
speech = client.audio.speech.create(
model="tts-1-hd",
voice="nova",
input="你好,我是 AI 助手,有什么可以帮你的?"
)
speech.stream_to_file("response.mp3")
Function Calling 工具调用
定义工具
tools = [
{
"type": "function",
"function": {
"name": "search_products",
"description": "搜索商品信息",
"parameters": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "搜索关键词"
},
"category": {
"type": "string",
"enum": ["electronics", "clothing", "food"]
},
"max_price": {
"type": "number",
"description": "最高价格"
}
},
"required": ["query"]
}
}
},
{
"type": "function",
"function": {
"name": "create_order",
"description": "创建订单",
"parameters": {
"type": "object",
"properties": {
"product_id": {"type": "string"},
"quantity": {"type": "integer"}
},
"required": ["product_id", "quantity"]
}
}
}
]
处理工具调用
import json
def handle_tool_calls(response):
messages = [{"role": "user", "content": "帮我找一款 500 元以下的蓝牙耳机"}]
response = client.chat.completions.create(
model="gpt-5",
messages=messages,
tools=tools,
tool_choice="auto"
)
message = response.choices[0].message
if message.tool_calls:
for tool_call in message.tool_calls:
func_name = tool_call.function.name
func_args = json.loads(tool_call.function.arguments)
# 执行实际函数
if func_name == "search_products":
result = search_products(**func_args)
# 将结果返回给模型
messages.append(message)
messages.append({
"role": "tool",
"tool_call_id": tool_call.id,
"content": json.dumps(result)
})
# 获取最终回复
final_response = client.chat.completions.create(
model="gpt-5",
messages=messages
)
return final_response.choices[0].message.content
实战案例:智能客服系统
class SmartCustomerService:
def __init__(self):
self.client = OpenAI()
self.system_prompt = """你是一位专业的客服代表。
请遵循以下原则:
1. 礼貌热情,使用"您"称呼客户
2. 准确理解客户需求
3. 提供具体可行的解决方案
4. 无法解决时及时转人工"""
self.tools = [
{
"type": "function",
"function": {
"name": "query_order",
"description": "查询订单状态",
"parameters": {
"type": "object",
"properties": {
"order_id": {"type": "string"}
},
"required": ["order_id"]
}
}
},
{
"type": "function",
"function": {
"name": "create_ticket",
"description": "创建工单转人工",
"parameters": {
"type": "object",
"properties": {
"issue_type": {"type": "string"},
"description": {"type": "string"}
},
"required": ["issue_type", "description"]
}
}
}
]
def chat(self, user_message: str, conversation_history: list) -> str:
messages = [{"role": "system", "content": self.system_prompt}]
messages.extend(conversation_history)
messages.append({"role": "user", "content": user_message})
response = self.client.chat.completions.create(
model="gpt-5",
messages=messages,
tools=self.tools,
temperature=0.7
)
return self._process_response(response, messages)
# 使用示例
service = SmartCustomerService()
history = []
response = service.chat("我的订单 ORD123456 什么时候能到?", history)
总结
GPT-5 和 ChatGPT 2025 带来的核心升级:
- 更强的推理能力: o1 系列专攻复杂逻辑
- 更长的上下文: 256K tokens 支持更大文档
- 更好的多模态: 视频理解能力
- 更智能的交互: Memory、Canvas 等新功能
- 更丰富的工具: Function Calling 2.0
选型建议:
- 日常任务用 GPT-4o(性价比高)
- 复杂推理用 o1(准确性高)
- 旗舰需求用 GPT-5(能力最全)
下一篇将介绍 Google 的 Gemini 2.0 与其 AI 生态系统。