目录
- [1. 引言](#1. 引言)
- [2. 人工智能核心概念](#2. 人工智能核心概念)
- [2.1 什么是人工智能](#2.1 什么是人工智能)
- [2.2 机器学习](#2.2 机器学习)
- [2.3 深度学习](#2.3 深度学习)
- [2.4 神经网络与参数](#2.4 神经网络与参数)
- [2.5 关键术语:Token、Embedding、上下文](#2.5 关键术语:Token、Embedding、上下文)
- [3. 人工智能发展史](#3. 人工智能发展史)
- [3.1 萌芽与第一次浪潮(1950s---1970s)](#3.1 萌芽与第一次浪潮(1950s—1970s))
- [3.2 第二次浪潮:专家系统(1980s)](#3.2 第二次浪潮:专家系统(1980s))
- [3.3 机器学习的崛起(1990s---2000s)](#3.3 机器学习的崛起(1990s—2000s))
- [3.4 深度学习革命(2012---2017)](#3.4 深度学习革命(2012—2017))
- [3.5 大模型时代(2018---至今)](#3.5 大模型时代(2018—至今))
- [4. 什么是大模型 SDK](#4. 什么是大模型 SDK)
- [4.1 SDK 的定义与作用](#4.1 SDK 的定义与作用)
- [4.2 主流大模型 SDK 概览](#4.2 主流大模型 SDK 概览)
- [4.3 OpenAI 兼容模式:事实上的标准](#4.3 OpenAI 兼容模式:事实上的标准)
- [5. 大模型 SDK 接入实战](#5. 大模型 SDK 接入实战)
- [5.1 环境准备](#5.1 环境准备)
- [5.2 基础对话调用](#5.2 基础对话调用)
- [5.3 流式输出](#5.3 流式输出)
- [5.4 多轮对话管理](#5.4 多轮对话管理)
- [5.5 Function Calling(工具调用)](#5.5 Function Calling(工具调用))
- [5.6 最佳实践建议](#5.6 最佳实践建议)
- [6. 总结](#6. 总结)
1. 引言
过去几年,「大模型」从一个学术概念迅速演变为每个开发者都能触手可及的基础设施。从 ChatGPT 到各类开源模型,大模型能力的爆发正在重塑软件开发的范式:我们不再需要为每一个具体任务从头训练模型,而是通过 SDK(Software Development Kit) 把大模型的能力接入自己的应用。
但是,很多开发者在接入 SDK 时会遇到困惑:什么是 Token?什么是 Embedding?为什么同样的提示词,结果差异这么大?要真正用好大模型 SDK,仅仅会调 API 是不够的,还需要理解背后的人工智能核心概念与技术演进脉络。
本文从人工智能的基本概念出发,梳理大模型的发展史,再深入讲解大模型 SDK 的接入实践,帮助你建立起从理论到落地的完整认知。
2. 人工智能核心概念
2.1 什么是人工智能
人工智能(Artificial Intelligence,AI)是指让机器模拟人类智能行为的技术,包括学习、推理、规划、感知、语言理解等能力。按照能力范围,通常分为:
- 弱人工智能(Weak AI):专注于特定任务,如语音识别、图像分类、下棋。当前绝大多数 AI 都属于此类。
- 强人工智能(Strong AI / AGI):具备与人类相当的通用智能,能在任意领域进行学习和推理,目前仍是远期目标。
2.2 机器学习
机器学习(Machine Learning,ML)是人工智能的核心子领域,核心理念是让机器从数据中学习规律,而不是依赖人工编写的规则。
传统的编程范式是「输入数据 + 规则 = 输出结果」;而机器学习是「输入数据 + 期望结果 = 学习规则」。根据学习方式的不同,机器学习可分为:
- 监督学习:输入数据带有标注(如「这张图是猫」),学习输入到输出的映射。
- 无监督学习:数据无标注,机器自行发现数据中的结构和模式。
- 强化学习:智能体通过与环境交互、根据奖励信号学习最优策略。
2.3 深度学习
深度学习(Deep Learning,DL)是机器学习的一个分支,其核心是多层神经网络。通过堆叠多个隐藏层,深度学习模型能够自动提取从低级到高级的特征,在图像、语音、自然语言等领域取得了突破性进展。
关键里程碑包括卷积神经网络(CNN,擅长图像)、循环神经网络(RNN,擅长序列数据),以及 2017 年提出的 Transformer 架构------它几乎成为了后来所有大语言模型的基础。
2.4 神经网络与参数
神经网络由大量相互连接的「神经元」组成,每个连接都有一个可调整的权重,这些权重就是模型的参数(Parameters)。模型的参数数量从早期的几百万增长到如今大模型的数千亿甚至上万亿,参数规模的增长带来了能力的质变,这也是「大模型」得名的原因。
2.5 关键术语:Token、Embedding、上下文
理解大模型 SDK,必须掌握几个高频术语:
- Token:模型处理文本的最小单元。一个 Token 可以是一个单词、半个单词,或者一个汉字。通常 1 个英文单词约等于 1~2 个 Token,1 个汉字约等于 1~2 个 Token。SDK 的计费、上下文长度限制都以 Token 为单位。
- Embedding(嵌入):把文本、图片等非结构化数据转换为固定长度的向量表示。语义相近的内容,其向量在空间中的距离也更近,这被广泛用于语义搜索、推荐和知识库检索。
- 上下文窗口(Context Window):模型一次能够处理的最大 Token 数量,决定了模型能「看到」多少历史信息。超长文本需要截断、摘要或使用向量检索等方式处理。
3. 人工智能发展史
3.1 萌芽与第一次浪潮(1950s---1970s)
1950 年,图灵提出「图灵测试」,为人工智能设定了判别标准。1956 年达特茅斯会议正式提出「人工智能」这一术语。这一时期的 AI 主要基于符号逻辑和规则推理,代表人物如麦卡锡、明斯基、纽厄尔和西蒙。由于计算机算力与数据的限制,很多设想难以落地,70 年代进入第一个「寒冬」。
3.2 第二次浪潮:专家系统(1980s)
80 年代,专家系统兴起。这类系统把人类专家的知识编码成「if-then」规则,应用于医疗诊断、地质勘探等领域。虽然取得了一定商业成功,但规则系统的维护成本高、扩展性差,随着硬件成本下降和预期落空,AI 在 90 年代再次陷入低谷。
3.3 机器学习的崛起(1990s---2000s)
90 年代起,统计学习和机器学习逐步成为主流。支持向量机(SVM)、随机森林、贝叶斯网络等方法在分类、回归等任务上表现优秀。1997 年,IBM 的「深蓝」战胜国际象棋世界冠军卡斯帕罗夫,引发全球关注。
3.4 深度学习革命(2012---2017)
2012 年,AlexNet 在 ImageNet 图像识别竞赛中以巨大优势夺冠,标志着深度学习时代的开启。此后:
- 2014 年,生成对抗网络(GAN)被提出,图像生成能力大幅提升。
- 2016 年,AlphaGo 战胜围棋世界冠军李世石,展示了深度强化学习的威力。
- 2017 年,Google 提出 Transformer 架构,奠定了大语言模型的技术基础。
3.5 大模型时代(2018---至今)
Transformer 的出现让「预训练 + 微调」范式成为可能,模型规模开始急剧膨胀:
| 年份 | 模型 | 参数规模 | 意义 |
|---|---|---|---|
| 2018 | BERT(Google) | 约 1.1 亿~3.4 亿 | 双向 Transformer,自然语言理解标杆 |
| 2018 | GPT-1(OpenAI) | 约 1.2 亿 | 生成式预训练模型的开端 |
| 2019 | GPT-2 | 约 15 亿 | 展示规模化带来的文本生成能力 |
| 2020 | GPT-3 | 约 1750 亿 | Few-shot 学习能力引起轰动 |
| 2022 | ChatGPT | 未公开 | 对话式 AI 引爆全球 |
| 2023 | GPT-4 / Llama 2 / 文心一言等 | 更大规模 | 多模态、开源生态繁荣 |
| 2024---至今 | o 系列、多模态大模型、Agent | --- | 推理增强、多模态、智能体 |
这一时期的显著趋势是:模型能力越来越强,接入门槛越来越低------开发者不再需要自研训练,而是通过云端 API 和 SDK 直接调用大模型能力。
4. 什么是大模型 SDK
4.1 SDK 的定义与作用
SDK(Software Development Kit,软件开发工具包)是一组用于帮助开发者快速接入特定服务的库、工具和文档的集合。大模型 SDK 的价值在于:
- 封装底层细节:屏蔽 HTTP 请求、鉴权、序列化等底层实现。
- 提供类型安全接口:支持流式输出、异步调用、重试机制等高级特性。
- 统一多模型差异:屏蔽不同厂商 API 的差异,提供一致的调用体验。
- 降低接入成本:一般只需几行代码即可完成模型调用。
4.2 主流大模型 SDK 概览
当前主流的大模型接入方式包括:
- OpenAI SDK:官方 Python / TypeScript SDK,支持 ChatGPT、Embedding、Function Calling 等能力。
- Anthropic SDK:Claude 系列模型的官方 SDK。
- LangChain / LlamaIndex:更高层的应用框架,提供链式调用、RAG、Agent 等高级抽象。
- 国产平台 SDK:如百度千帆、阿里通义、腾讯混元、字节豆包等,均提供官方 SDK 和 OpenAI 兼容接口。
- 统一网关 SDK:如 One API、LiteLLM 等,通过兼容 OpenAI 接口格式统一接入多个模型。
4.3 OpenAI 兼容模式:事实上的标准
由于 OpenAI API 设计简洁、生态成熟,大量模型厂商选择提供 OpenAI 兼容接口 ,即请求格式、响应格式与 OpenAI API 保持一致,只需修改 base_url 和 api_key 即可切换模型。这种兼容性极大地降低了开发者的迁移成本。
5. 大模型 SDK 接入实战
5.1 环境准备
以 Python 为例,首先安装 OpenAI SDK:
bash
pip install openai
5.2 基础对话调用
下面是一个最小化的对话调用示例(以 OpenAI 兼容接口为例):
python
from openai import OpenAI
client = OpenAI(
api_key="your-api-key",
base_url="https://api.example.com/v1", # 可替换为任意兼容接口
)
response = client.chat.completions.create(
model="your-model-name",
messages=[
{"role": "system", "content": "你是一个乐于助人的技术助手。"},
{"role": "user", "content": "请用一句话解释什么是大模型。"},
],
temperature=0.7,
max_tokens=200,
)
print(response.choices[0].message.content)
5.3 流式输出
对于需要实时反馈的场景(如聊天界面),应使用流式(Streaming)模式:
python
stream = client.chat.completions.create(
model="your-model-name",
messages=[
{"role": "user", "content": "写一首关于秋天的短诗。"}
],
stream=True,
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
5.4 多轮对话管理
大模型是无状态的,每次请求都需要携带完整的历史对话。SDK 中使用 messages 数组管理多轮对话:
python
messages = [
{"role": "system", "content": "你是一个严谨的代码审查助手。"},
]
while True:
user_input = input("用户:")
if user_input.lower() == "exit":
break
messages.append({"role": "user", "content": user_input})
response = client.chat.completions.create(
model="your-model-name",
messages=messages,
)
assistant_reply = response.choices[0].message.content
print(f"助手:{assistant_reply}")
messages.append({"role": "assistant", "content": assistant_reply})
5.5 Function Calling(工具调用)
Function Calling 允许模型根据用户意图「调用」外部函数,是实现 Agent 的关键能力:
python
tools = [
{
"type": "function",
"function": {
"name": "get_weather",
"description": "查询指定城市的天气",
"parameters": {
"type": "object",
"properties": {
"city": {"type": "string", "description": "城市名称"}
},
"required": ["city"],
},
},
}
]
response = client.chat.completions.create(
model="your-model-name",
messages=[
{"role": "user", "content": "北京今天天气怎么样?"}
],
tools=tools,
tool_choice="auto",
)
tool_call = response.choices[0].message.tool_calls[0]
print(tool_call.function.name) # get_weather
print(tool_call.function.arguments) # {"city": "北京"}
拿到函数名和参数后,由你的应用执行真实的业务逻辑,再把结果回传给模型即可。
5.6 最佳实践建议
- 合理设置 temperature :创意写作可适当调高(0.81.0),代码生成、事实问答应调低(00.3)。
- 控制上下文长度:避免在每次请求中携带无关历史,必要时使用摘要或向量检索压缩上下文。
- 做好错误处理与重试:大模型 API 可能因限流、超时等原因失败,应实现指数退避重试。
- 遵守安全规范:对用户输入和模型输出做内容审核,避免敏感信息泄露。
6. 总结
回顾人工智能的发展史,从符号推理到专家系统,再到机器学习和深度学习,直至今天的大模型时代,技术演进的核心脉络始终是:让机器更好地理解数据、理解语言,并更自然地为人类服务。
大模型 SDK 的出现,让开发者从「如何训练一个模型」转向「如何更好地使用一个模型」。掌握 Token、Embedding、上下文窗口等核心概念,理解 Transformer 与预训练范式,再配合成熟的 SDK 工具,你就能快速把大模型能力融入自己的产品中。
未来,随着多模态、推理增强和智能体(Agent)技术的成熟,大模型 SDK 的能力边界还将持续扩展。对于开发者而言,现在正是深入理解并掌握这项技术的最佳时机。