LangChain 1.0 核心用法速查:创建模型、创建 Agent、调用

一、创建模型(init_chat_model)

通用格式

python

python 复制代码
from langchain.chat_models import init_chat_model

model = init_chat_model(
    model="模型名",
    model_provider="供应商",
    base_url="API端点",
    api_key="密钥"
)

参数说明

参数 是否必填 说明
model 必填 模型名称,如 "deepseek-chat"
model_provider 视情况 供应商名称,官方支持的供应商可自动推断
base_url 视情况 API 端点地址,官方供应商可自动配置
api_key 视情况 密钥,官方供应商可从环境变量自动读取

官方供应商(可省略 base_url 和 api_key)

python

python 复制代码
# 模型名以 deepseek 开头,自动推断为 deepseek 供应商
model = init_chat_model("deepseek:deepseek-chat")

第三方兼容平台(必须手动指定)

以阿里云百炼为例:

python

python 复制代码
import os

model = init_chat_model(
    model="deepseek-v4-pro",
    model_provider="openai",   # 百炼兼容 OpenAI 格式
    base_url="https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1",
    api_key=os.getenv("DASHSCOPE_API_KEY")
)

二、创建 Agent(create_agent)

通用格式

python

python 复制代码
from langchain.agents import create_agent

agent = create_agent(
    model=model,
    tools=[],
    system_prompt="系统提示词"
)

参数说明

参数 是否必填 说明
model 必填 传入已初始化好的模型对象,不是裸字符串
tools 可选 Agent 可调用的工具列表
system_prompt 可选 系统提示词,设定 Agent 角色和行为
middleware 可选 中间件,用于扩展 Agent 逻辑
response_format 可选 结构化输出格式
checkpointer 可选 持久化组件,用于保存对话历史

关键点

create_agent 没有 base_url 和 api_key 参数。所有连接信息都在上一步创建模型时配置好。


三、调用 Agent(invoke)

通用格式

python

python 复制代码
response = agent.invoke({
    "messages": [
        {"role": "user", "content": "你的问题"}
    ]
})

输入参数说明

第一个参数是一个字典 ,包含 messages 键。messages 的值是一个消息列表,每条消息至少包含:

字段 说明
role 角色,如 "user"、"assistant"、"system"
content 消息内容,可以是字符串或多模态列表

也可以传入 LangChain 消息对象

python

python 复制代码
from langchain_core.messages import HumanMessage

response = agent.invoke({
    "messages": [HumanMessage(content="你的问题")]
})

流式调用

python

python 复制代码
for token, metadata in agent.stream(
    {"messages": [{"role": "user", "content": "你的问题"}]},
    stream_mode="messages"
):
    if token.content:
        print(token.content, end="", flush=True)

四、完整示例

python

python 复制代码
import os
from langchain.chat_models import init_chat_model
from langchain.agents import create_agent

# 1. 创建模型
model = init_chat_model(
    model="deepseek-v4-pro",
    model_provider="openai",
    base_url="https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1",
    api_key=os.getenv("DASHSCOPE_API_KEY")
)

# 2. 创建 Agent
agent = create_agent(
    model=model,
    tools=[],
    system_prompt="你是一个 helpful assistant"
)

# 3. 调用 Agent
response = agent.invoke({
    "messages": [{"role": "user", "content": "你好"}]
})

print(response)
相关推荐
2401_891409262 小时前
量化数据13:港股分钟K线、Level2逐笔Tick、十档盘口和港股通历史数据的批量提取
数据库
w-w0w-w9 小时前
SQL注入
网络·数据库·sql
tianyuanwo9 小时前
NetBox 数据库详解:当“关系型数据库”被装进一个网络运维的领域模型里
运维·数据库·netbox
一条泥憨鱼9 小时前
【计算机网络】短连接、长连接与连接池:从 TCP 握手到池化复用的完整链路
网络·数据库·网络协议·tcp/ip·计算机网络
IvorySQL9 小时前
深入 PostgreSQL WAL:从崩溃恢复到逻辑复制
数据库·postgresql
幽灵诶10 小时前
Mysql(基于测试的学习)
数据库·mysql
砚底藏山河10 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
在努力的前端小白11 小时前
基于FastAPI+LangChain+LangGraph+Agent+多模态的AI Agent 有渔渔具网站
人工智能·langchain·vue·fastapi
宇宙无敌暴龙战士66611 小时前
MySQL 8 库表操作学习笔记:SQL 基础、库表管理、约束与用户授权全流程
数据库·sql·mysql·学习笔记·后端开发
猿究院_夏燊11 小时前
MySQL 的四种隔离级别
java·数据库·mysql