使用langchain来调用AI大模型

使用langchain调用LLM

安装对应的依赖

  • langchain-openai、langchain-deepseek二选一即可,取决于你需要调用的模型是什么
  • 如果使用deepseek等langchain支持的模型,安装对应的依赖包即可 langchain-xxx
  • 如果是langchain不支持的模型,可以伪装成 openai下载langchain-openai包即可
plaintext 复制代码
  uv add langchain langchain-openai langchain-deepseek

使用langchain支持的模型

python 复制代码
import os
from dotenv import load_dotenv
from langchain.chat_models import init_chat_model

# 加载环境变量
load_dotenv()

model = init_chat_model(model="deepseek-chat")

使用langchain不支持的模型,比如阿里云百炼

python 复制代码
""" 
  创建langchain模型实例
  安装对应的依赖
  uv add langchain langchain-openai
"""

import os
from dotenv import load_dotenv
from langchain.chat_models import init_chat_model

# 加载环境变量
load_dotenv()

"""
  一般来说只需要 model  就可以创建一个模型实例
  但是有时候遇到langchain不支持的模型 需要指定其他参数,比如 api_key, base_url, model_provider=openai 等
"""
model = init_chat_model(
  model="qwen3-max", # 不支持 阿里云百炼 所以才伪装成openai模型  如果支持的模型  直接指定 model 就可以
  api_key=os.getenv("DASHSCOPE_API_KEY"),
  base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
  model_provider='openai'
)

调用模型一般有两种方式 invoke 和 stream

  • invoke和stream两个方法的参数 可以是字符串 也可以是列表
  • 如果参数是字符串 则会被直接发送给模型
  • 如果参数是列表 则会被转换为json字符串 发送给给模型
python 复制代码
[
  {"role": "system", "content": "你是一个ai助手,不说废话,回答用户的问题,保持回答的简洁"},
  {"role": "user", "content": "你好, 请介绍一下你自己"},
  {"role": "assistant", "content": "你好是一个ai助手,我会回答用户的问题"},
]

使用invoke调用模型,可以直接输出模型的结果

python 复制代码
""" 直接输出结果 """
result =model.invoke("你好, 请介绍一下你自己")
print(result.content)

使用stream调用模型,可以像打字机一样的效果输出模型的结果

python 复制代码
""" 流式输出结果 """
response= model.stream("你好, 请介绍一下你自己")

for chunk in response:
  print(chunk.content, end="", flush=True)

最终模型会输出结果。

相关推荐
ZzT4 分钟前
vibe coding 做小游戏·玩法重做篇:只留自走棋、去掉羁绊,用电脑自动对局调难度
ai编程·游戏开发
灵感__idea8 分钟前
Claude Code 实战:AI这么强了,为什么还在发明新概念?
aigc·ai编程·claude
Carson带你学Android13 分钟前
AI时代,你的 App 会被 Agent 这三种方式调用
android·ai编程
装不满的克莱因瓶23 分钟前
【SpringAI Alibaba】ReactAgent记忆管理MessageTrimmingHook与MessageDeletionHook
java·人工智能·ai·ai编程·springai·springaialibaba
西安小哥1 小时前
给 LLM 网关加一层熔断:主模型挂了 42 秒以后我做的事
ai编程
聪明的笨猪猪3 小时前
政务知识库AI架构选型:强合规约束下的架构决策与落地路径
经验分享·架构·ai编程·政务
唐老板3 小时前
最会审代码的 AI,也只挑得出三分之一
人工智能·ai编程
许雪里12 小时前
XXL-AI v1.5.0 发布|AI应用开发平台
agent·ai编程
天诰14 小时前
SA-K-11 检索会消失吗与四个未解问题
java·服务器·人工智能·python·机器学习·ai编程