AI-Agent大模型——基础篇
tips:学习目标:
1.理解大模型的基本概念;
2.了解国内外大模型格局;
3.掌握大模型API调用方法;
4.初步了解LangChain的使用
一、基本概念
大模型,通常指大语言模型 (Large Language Model, LLM),是基于深度学习、拥有海量参数(数十亿至数千亿级)和超大规模训练数据的自然语言处理模型。其核心能力源于 Transformer 架构,能处理文本生成、问答、翻译、摘要等复杂任务。

二、国内外大模型格局
(1)国外选型
追求极致性能与安全选 GPT-5.4 或 Claude 4.6;需要多模态与搜索选 Gemini;自研与降本选 Llama。
(2)国内选型
追求性价比与开源首选 DeepSeek 或通义;C 端产品集成看豆包;中文知识与企业服务看文心;长文档处理必选 Kimi。
三、大模型API调用方法
以python为例,需要用 OpenAI 的 Python 工具包(即 openai SDK)
from openai import OpenAI
OpenAI 已经限制了中国地区的直接 API 服务,但这反而促使国内厂商通过“兼容 OpenAI 接口”的方式来争夺市场。主要是出于兼容性、开发成本和生态习惯的考量。
国内大模型使用 OpenAI 工具包,本质上是一种“向下兼容”的策略。
| 优势维度 | 说明 |
|---|---|
| 开发效率 | 只需修改 base_url 即可切换模型,无需重写业务逻辑。 |
| 行业标准 | OpenAI 的接口已成为行业通用语言,兼容它等于兼容整个生态。 |
| 市场竞争 | 降低用户试用门槛,方便从 OpenAI 迁移至国产模型。 |
(1)openai 版本调用
1.环境准备
pip install openai python-dotenv
2.配置 API Key 与基础 URL
.env配置文件内容:
MODEL_API_KEY=sk-8c06df
MODEL_BASE_URL=https://api.deepseek.com
MODEL_NAME=deepseek-chat
代码架构:

3.普通调用示例
import os
from openai import OpenAI
from dotenv import load_dotenv
load_dotenv('../.env')
MODEL_BASE_URL = os.getenv('MODEL_BASE_URL')
MODEL_NAME = os.getenv('MODEL_NAME')
MODEL_API_KEY = os.getenv('MODEL_API_KEY')
client = OpenAI(
api_key=MODEL_API_KEY,
base_url=MODEL_BASE_URL
)
## todo: 普通调用
def common():
response = client.chat.completions.create(
model=MODEL_NAME,
messages=[
{'role': 'system', 'content': '你是一个二次元'},
{'role': 'user', 'content': '请说出你喜欢的二次元内容'}
],
stream=False,
max_tokens=1024,
temperature=1.5
)
print(response.choices[0].message.content)
if __name__ == '__main__':
common()
• model: 指定调用的模型名称。
• messages: 消息列表—模型的“记忆笔记本” ,system设定角色,user传递用户输入。
-
结构组成:通常是一个包含多个字典的列表,每个字典代表一句话。
-
system (系统):“剧本设定”。通常放在列表最开头,用来设定AI的人设(如“你是一个资深程序员”)。它的权重最高,决定了AI的行为准则。
-
user (用户):“你的输入”。代表用户的提问或指令。
-
assistant (助手):“AI的回答”。把AI之前的回答也放回去,它才能知道刚才聊到哪了,从而实现多轮对话。
-
-
范围与限制:
-
长度限制:受限于模型的上下文窗口(Context Window)。
-
常见大小:8K、32K、128K tokens(约等于 6千字 到 20万字+ 的文本量)。
-
注意:如果
messages里的内容加起来超过了这个限制,模型会“失忆”(通常是最早的对话被截断)或者直接报错。
-
-
• temperature(温度) —— 模型的“创造力旋钮” : 控制输出随机性,值越低输出越稳定。
-
工作原理:
-
低温:模型会变得保守,只选概率最高的词,输出稳定、逻辑严密,像在做数学题。
-
高温:模型会变得奔放,会选一些概率较低的词,输出多样、充满惊喜(也可能胡言乱语),像是在写诗。
-
-
数值范围与建议:
-
范围:通常在 0.0 到 1.0 之间(部分模型支持到 2.0)。
-
0.0 - 0.3 (低温/严谨模式):
-
效果:输出非常确定,几乎每次回答都一样。
-
适用:代码生成、数学计算、事实性问答、数据提取。
-
-
0.4 - 0.7 (中温/平衡模式):
-
效果:兼顾准确性和自然度,最像正常人的对话。
-
适用:日常客服、文章摘要、邮件撰写。
-
-
0.8 - 1.0+ (高温/创意模式):
-
效果:脑洞大开,多样性强,但容易产生幻觉(胡说八道)。
-
适用:写小说、头脑风暴、创意文案、诗歌创作。
-
-
• max_tokens(最大令牌数) —— 模型的“输出限额”: 限制单次回答的最大长度。
| 设置数值 (Tokens) | 约等于中文字数 | 适用场景 |
|---|---|---|
| 128 - 256 | 80 - 180 字 | 简单问答、关键词提取、短指令 |
| 512 - 1024 | 350 - 700 字 | 日常对话、短文案、邮件回复 |
| 2048 - 4096 | 1400 - 3000 字 | 代码生成、长文章撰写、复杂逻辑推理 |
| 8192+ | 5000+ 字 | 长篇小说章节、整份文档总结、长篇报告 |
总结:
参数 形象比喻 核心影响 推荐默认值 (如果不确定) messages 记忆笔记本 决定AI知道什么背景信息 (根据上下文长度动态维护) temperature 创造力旋钮 决定AI是严谨还是发疯 0.7 (兼顾稳定与自然) max_tokens 输出字数限额 决定AI能说多长的话 2048 (大部分场景够用)
4.流式调用示例
import os
from openai import OpenAI
from dotenv import load_dotenv
load_dotenv('../.env')
MODEL_BASE_URL = os.getenv('MODEL_BASE_URL')
MODEL_NAME = os.getenv('MODEL_NAME')
MODEL_API_KEY = os.getenv('MODEL_API_KEY')
client = OpenAI(
api_key=MODEL_API_KEY,
base_url=MODEL_BASE_URL
)
# todo: 流式调用
def stream():
response = client.chat.completions.create(
model=MODEL_NAME,
messages=[
{'role': 'system', 'content': '你是一个二次元'},
{'role': 'user', 'content': '请说出你喜欢的二次元内容'}
],
stream=True,
max_tokens=1024,
temperature=1.5
)
for chunk in response:
print(chunk.choices[0].delta.content, end="", flush=True)
if __name__ == '__main__':
stream()
• 当 stream=True时,模型会分块返回结果,前端可实现“打字机”效果。
(2)Langchain使用大模型
Langchain 是一个用于构建大模型应用的开发框架。它提供了一套标准接口,方便开发者切换不同的模型供应商,并能轻松组合提示词、记忆、检索、Agent 等功能。
1、环境准备
pip install langchain-openai python-dotenv
若使用其他厂商模型,可安装对应包,如langchain-community
2.配置 API Key 与基础 URL
同(1)版本
3.普通调用示例
import os
from dotenv import load_dotenv
from langchain_openai import ChatOpenAI
load_dotenv('../.env')
MODEL_BASE_URL = os.getenv('MODEL_BASE_URL')
MODEL_NAME = os.getenv('MODEL_NAME')
MODEL_API_KEY = os.getenv('MODEL_API_KEY')
my_llm = ChatOpenAI(
api_key=MODEL_API_KEY,
base_url=MODEL_BASE_URL,
model=MODEL_NAME,
temperature=2
)
if __name__ == '__main__':
print(my_llm.invoke('请介绍下目前2026年最好看的亚洲女性是谁?').content)
4.流式调用示例
import os
from dotenv import load_dotenv
from langchain_openai import ChatOpenAI
load_dotenv('../.env')
MODEL_BASE_URL = os.getenv('MODEL_BASE_URL')
MODEL_NAME = os.getenv('MODEL_NAME')
MODEL_API_KEY = os.getenv('MODEL_API_KEY')
my_llm = ChatOpenAI(
api_key=MODEL_API_KEY,
base_url=MODEL_BASE_URL,
model=MODEL_NAME,
temperature=2
)
if __name__ == '__main__':
for chunk in my_llm.stream('请介绍下目前被评选为2026年最好看的亚洲女性是谁?'):
print(chunk.content, end='', flush=True)
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)