使用langchain来调用AI大模型

使用langchain调用LLM

安装对应的依赖

  • langchain-openailangchain-deepseek二选一即可,取决于你需要调用的模型是什么
  • 如果使用deepseeklangchain支持的模型,安装对应的依赖包即可 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'
)

调用模型一般有两种方式 invokestream

  • invokestream两个方法的参数 可以是字符串 也可以是列表
  • 如果参数是字符串 则会被直接发送给模型
  • 如果参数是列表 则会被转换为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)

最终模型会输出结果。

相关推荐
静待雨落5 小时前
使用openai初次调用Ai
ai编程
ServBay7 小时前
Google I/O 2026 Antigravity 更新与 SDK
后端·ai编程·google io
IT乐手8 小时前
Hermes + Qwen 的配置方法
ai编程
鱼樱前端8 小时前
我做了一个不止有基础组件的 Vue 3 UI 库,还把 AI 组件也做进去了
前端·vue.js·ai编程
靠谱者也8 小时前
Agent Loop 越做越像 RPA:浏览器自动化里的五个反直觉
agent·ai编程
沸点小助手8 小时前
「技术er迷惑行为大赏 & 520不拘形式,自在过节」获奖名单公示|本周互动话题上新🎊
openai·ai编程·沸点
guyoung9 小时前
BoxAgnts介绍(1)——开箱即用(Out-Of-The-Box)
rust·agent·ai编程
Keano Reurink9 小时前
SEO数据管道:用Airflow搭建自动化工作流
运维·人工智能·爬虫·搜索引擎·自动化·ai编程·seo
水月沐风9 小时前
把文章发布到掘金,做成一个可复用的 juejin-skill
ai编程