前言
人工智能的发展轨迹似乎正在印证一个有趣的历史规律:颠覆性技术往往以超出最初预期的方式迅速演进。回顾历史,电力的普及、互联网的崛起,乃至智能手机的诞生,无一不是以远超人们想象的速度改变了社会的方方面面。
随着 2022 年底 ChatGPT 的问世,AI 大模型如同一颗投入平静湖面的重磅炸弹,瞬间激起千层波澜。当时,人们对这一全新的语言模型充满好奇与惊叹,但鲜少有人能准确预见其将带来的深远变革。转眼间,短短两年过去,大模型已经悄然融入我们工作和生活的方方面面。而这些变化,则绝大多数发生在过去的一年当中。
那么,站在 2025 年的新起点,让我们共同回顾过去一年学术界与工业界在模型侧和应用侧所取得的突破性进展。
从 OpenAI 一方独霸到群雄逐鹿
2024 年是大模型厂商竞争白热化的一年。Menlo Ventures 的调研数据显示,OpenAI 的先发优势正逐渐减弱,其市场占有率较 2023 年出现显著下滑。具体而言,OpenAI 的企业市场份额从 50% 下降至 34%。这部分流失的市场份额主要被 Anthropic 和谷歌瓜分,显示出市场竞争格局的显著变化。
2023 年 3 月,OpenAI 发布了 GPT-4 模型,其在起草诉讼书、通过标准化考试以及根据手绘草图建立工作网站等方面的能力令人惊叹,一骑绝尘。然而,时间来到了 2024 年,5 月份 OpenAI 发布了原生的多模态模型 GPT-4o,它可以接受文本、音频和图像任意组合的输入,并生成这些格式的相应输出。
2024 年 9 月 13 日,OpenAI 正式发布了 o1 模型,这是一款颇具颠覆性和创新性的模型。o1 最引人注目的特点是其独特的思考机制,类似于人类的深度思考过程。在响应用户请求时,模型会进行长时间的内部推理,不仅可以尝试多种解决方案,还能够在思考过程中主动发现并纠正潜在的错误。这种近似于人类大脑思考模式的方法,使得 o1 在数学、物理、化学和编程等专业领域表现出卓越的能力。
到了 12 月 20 日,OpenAI 推出了最新的推理模型 o3 及其轻量版本 o3-mini。相较于 o1,这一代模型在编程、数学和科学问答等方面取得了显著的进步。尤其值得称道的是,o3 成功突破了 ARC-AGI 基准测试,标志着人工智能在适应新任务和学习未知场景的能力上实现了里程碑式的飞跃。
不过值得注意的是,尽管从 4o 到 o1 再到 o3,OpenAI 的模型在技术上持续精进,许多用户觉得,如今这些渐进式的改进似乎难以再现 ChatGPT 最初问世时的那种震撼惊喜。
与此同时,OpenAI 的'孪生兄弟'Anthropic 也在 2024 年发布了多款震惊世界的大模型。之所以称为孪生兄弟,主要是由于 Anthropic 的多位重量级人物均来自于 OpenAI,包括 GPT-3 首席工程师 Tom Brown、OpenAI 安全与政策副总裁 Daniela Amodei,以及近期加入的 ChatGPT 后期训练负责人 John Schulman 和前 OpenAI 安全主管 Jan Leike。所以大家一定要持续关注 Anthropic 发布的模型、论文以及相关技术报告。
2024 年 3 月,Anthropic 推出了备受瞩目的 Claude 3 系列大模型,其中 Claude 3 Opus 迅速脱颖而出,成为业界公认的新一代性能标杆。紧随其后,6 月发布的 Claude 3.5 Sonnet 更是将模型性能推向了前所未有的新高度。值得注意的是,即便在 10 月进行了重大性能升级,该模型仍然保持了原有的版本号,这一现象在业内被非正式地称为"Claude 3.6"。如果大家对 AI 编程有所了解,三大神器(cursor、windsurf、cline)均使用 Claude 3.5 Sonnet 模型作为其核心模型。充分体现了 Claude 3.5 Sonnet 在代码生成和理解方面的卓越能力。
调用 claude-3.5-sonnet 的示例代码如下:
from openai import OpenAI
client = OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key="<OPENROUTER_API_KEY>",
)
completion = client.chat.completions.create(
extra_headers={
"HTTP-Referer": "<YOUR_SITE_URL>", # Optional. Site URL for rankings on openrouter.ai.
"X-Title": "<YOUR_SITE_NAME>", # Optional. Site title for rankings on openrouter.ai.
},
model="anthropic/claude-3.5-sonnet",
messages=[{
: ,
: [
{: , : },
{: , : {: }}
]
}]
)
(completion.choices[].message.content)


