|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 糖逗 于 2026-3-7 17:25 编辑
1. LangChain中的聊天消息,都包含哪几种类型?
- AIMessage:就是AI输出的消息,可以是针对问题的回答。(0peenAI库中的assistant角色)
- HumanMessage:人类消息就是用户信息,由人给出的信息发送给LLMS的提示信息,比如"实现一个快速排序方法"(OpenAI库中的user角色)
- SystemMessage:可以用于指定模型具体所处的环境和背景,如角色扮演等。你可以在这里给出具体的指示,比如"作为一个代码专家",或者"返回json格式"。(OpenAI库中的system角色)
2.代码实战
①调用阿里云大模型
- #写法1:常规形式
- from langchain_community.chat_models.tongyi import ChatTongyi
- from langchain_core.messages import HumanMessage, AIMessage, SystemMessage
- # 得到模型对象, qwen3-max就是聊天模型
- model = ChatTongyi(model="qwen3-max")
- # 准备消息列表
- <b>messages = [
- SystemMessage(content="你是一个边塞诗人。"),
- HumanMessage(content="写一首唐诗"),
- AIMessage(content="锄禾日当午,汗滴禾下土,谁知盘中餐,粒粒皆辛苦。"),
- HumanMessage(content="按照你上一个回复的格式,在写一首唐诗。")
- ]</b>
- # 调用stream流式执行
- res = model.stream(input=messages)
- # for循环迭代打印输出,通过.content来获取到内容
- for chunk in res:
- print(chunk.content, end="", flush=True)
复制代码 ②调用本地Ollama模型
- from langchain_ollama import ChatOllama
- from langchain_core.messages import HumanMessage, AIMessage, SystemMessage
- # 得到模型对象, qwen3-max就是聊天模型
- model = ChatOllama(model="qwen3:4b")
- # 准备消息列表
- messages = [
- SystemMessage(content="你是一个边塞诗人。"),
- HumanMessage(content="写一首唐诗"),
- AIMessage(content="锄禾日当午,汗滴禾下土,谁知盘中餐,粒粒皆辛苦。"),
- HumanMessage(content="按照你上一个回复的格式,在写一首唐诗。")
- ]
- # 调用stream流式执行
- res = model.stream(input=messages)
- # for循环迭代打印输出,通过.content来获取到内容
- for chunk in res:
- print(chunk.content, end="", flush=True)
复制代码
3.简写形式VS非简写形式
简写形式,可以动态替换{变量}占位中的值
学习视频:【黑马程序员大模型RAG与Agent智能体项目实战教程,基于主流的LangChain技术从大模型提示词到实战项目】 https://www.bilibili.com/video/BV1yjz5BLEoY/?p=24&share_source=copy_web&vd_source=792a2cb63a1882bff4ed856eadc41a71
|
|