work hard work smart

专注于AI+Java后端开发。 不断总结,举一反三。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

LangChain 接入大模型

Posted on 2026-10-03 19:53  work hard work smart  阅读(3)  评论(0)    收藏  举报

一、使用OpenAI方式接入

1、使用OpenAI

# Please install OpenAI SDK first: `pip install openai`
import os

from dotenv import load_dotenv
from openai import OpenAI

load_dotenv(encoding='utf-8')


client = OpenAI(
    api_key=os.getenv("deepseek-api"),
    base_url="https://api.deepseek.com"
)

response = client.chat.completions.create(
    model="deepseek-chat",
    messages=[
        {"role": "system", "content": "You are a helpful assistant"},
        {"role": "user", "content": "Hello,你是谁"},
    ],
    stream=False
)

print(response.choices[0].message.content)

  

2、ChatOpenAI

from dotenv import load_dotenv
from langchain_openai import ChatOpenAI
import os

load_dotenv(encoding='utf-8')

chatLLM = ChatOpenAI(
    api_key=os.getenv("aliQwen-api"),
    base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
    model="qwen-plus",  # 此处以qwen-plus为例,您可按需更换模型名称。模型列表:https://help.aliyun.com/zh/model-studio/getting-started/models
    # other params...
)

messages = [
    {"role": "system", "content": "You are a helpful assistant."},
    {"role": "user", "content": "你是谁?"}]

response = chatLLM.invoke(messages)

print(response.content)

  

3、init_chat_mode

# 1.导入依赖
import os

from dotenv import load_dotenv
from langchain.chat_models import init_chat_model

load_dotenv(encoding='utf-8')


# 2.实例化模型
model = init_chat_model(
    model="deepseek-chat",
    api_key=os.getenv("deepseek-api"),
    base_url="https://api.deepseek.com"
)

# 3.调用模型
print(model.invoke("你是谁").content)

  

二、接入DeepSeek

import os

from dotenv import load_dotenv
from langchain_deepseek import ChatDeepSeek

load_dotenv(encoding='utf-8')


# 初始化 deepseek
# 给学生们看看ChatDeepSeek类的源码,解释为什么不写调用地址,chat_modesl.py源码第176行
model = ChatDeepSeek(
    model="deepseek-chat",
    temperature=0,
    max_tokens=None,
    timeout=None,
    max_retries=2,
    api_key=os.getenv("deepseek-api"),
)

# 打印结果
print(model.invoke("什么是LangChain?100字以内回答,简洁"))

  

三、接入千问

#pip install langchain-community
#pip install dashscope

import os

from dotenv import load_dotenv
from langchain_community.chat_models.tongyi import ChatTongyi
from langchain_core.messages import HumanMessage

load_dotenv(encoding='utf-8')


chatLLM = ChatTongyi(
    model="qwen-plus",
    api_key=os.getenv("aliQwen-api"),
    streaming=True,
    model_provider="openai"
    # other params...
)
# 打印结果
print(chatLLM.invoke("你是谁"))

print("*" * 60)

res = chatLLM.stream([HumanMessage(content="你好,你是谁")], streaming=True)
for r in res:
    print("chat resp:", r.content)