1. 大模型API格式的演进背景
2023年ChatGPT的爆发式增长彻底改变了人工智能行业的游戏规则。作为开发者,我们突然面临一个全新的技术生态——大模型API。这就像2007年iPhone发布后移动开发者的处境,只不过这次变革来得更迅猛。最初OpenAI推出的Chat Completions API迅速成为行业事实标准,但随着Anthropic、Google等巨头的入场,API格式开始出现明显的分化。
这种分化背后反映的是各家厂商对对话交互本质的不同理解。OpenAI早期将system prompt混在messages数组中的设计,源于对"对话即序列"的朴素认知。而Anthropic从一开始就将system指令独立出来,体现了对"对话=指令+交互"的更深刻理解。这种理念差异最终导致了API设计上的根本分歧。
值得注意的是,国内大模型平台几乎都选择兼容OpenAI格式,这既降低了开发者的学习成本,也反映了技术生态中的路径依赖现象。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. OpenAI Chat Completions API深度解析
2.1 基础请求结构剖析
OpenAI在2023年3月发布的Chat Completions API定义了一个经典的请求格式:
json复制{
"model": "gpt-4",
"messages": [
{"role": "system", "content": "你是一个法语翻译专家"},
{"role": "user", "content": "Bonjour"}
],
"temperature": 0.7,
"max_tokens": 100
}
这个设计的精妙之处在于:
- messages数组:完整保留了对话上下文,包括系统指令、用户输入和模型回复
- role字段:明确区分对话参与者(system/user/assistant)
- model参数:支持动态切换不同能力的模型
2.2 Java实现最佳实践
在实际Java开发中,建议使用结构化DTO而非原始字符串拼接:
java复制public class ChatMessage {
private String role;
p
