1.消息的类型
*SystemMessage:设定Al行为规则或背景信息。比如设定AI的初始状态、行为模式或对话的总体目标。比如"作为一个代码专家",或者"返回json格式"。通常作为输入消息序列中的第一个传递。
*HumanMessage:表示来自用户输入。比如"实现一个快速排序方法"
*AIMessage:存储AI回复的内容。这可以是文本,也可以是调用工具的请求
ChatMessage:可以自定义角色的通用消息类型
FunctionMessage/ToolMessage:函数调用/工具消息,用于函数调用结果的消息类型
2.代码示例
python
import os
from langchain_core.messages import SystemMessage, HumanMessage
from langchain_openai import ChatOpenAI
from dotenv import load_dotenv
# 加载env环境变量
load_dotenv()
# 1.获取对话模型
chat_model = ChatOpenAI(
# 1.设置模型名称
model="deepseek-chat",
# 2.模型接口地址
base_url= os.getenv('OPENAI_BASE_URL'),
# 3.模型调用key
api_key=os.getenv('OPENAI_API_KEY'),
)
# 2.设置Message信息
# SystemMessage 设定Al行为规则或背景信息,比如"作为一个代码专家",或者"返回json格式"。
system_message = SystemMessage(content="你是一个程序员专家")
# HumanMessage:表示来自用户输入。比如"实现一个快速排序方法"
human_message = HumanMessage(content="帮我写一份Python教学计划")
# 添加到message数组
messages = [system_message, human_message]
# 3.调用模型
res = chat_model.invoke(messages)
# 4.打印结果及类型(返回类型为:AIMessage这可以是文本,也可以是调用工具的请求)
print(res.content)
print(type(res))