调用DeepSeek官网的DeepSeek模型

模型初始化角度1:使用模型提供商库

在LangChain中初始化模型,主要可以通过直接使用特定的Model Class和使用统一的init_chat_model函数这两种方式来实现

这里先讲方式1,这种方式最直接,LangChain为一些大模型供应商提供了专门的Model类,导入对应的具体类(如ChatOpenAI,ChatAnthropic,ChatDeepSeek,ChatOllama,ChatHunyuan,ChatTongyi,ChatZhipuAI)并进行实例化。

通过专用API调用

注意:使用不同的模型可能传入的参数名称不同,可以参考对应源码

DeepSeek大模型

官网:https://www.deepseek.com

步骤一:安装必要的依赖

执行过前面的requirements.txt文件指令的情况下,这里就不需要安装了。

bash 复制代码
#切换python环境
conda activate langchain1.2
#安装ChatOpenAI依赖包
pip install langchain-openai
#安装ChatDeepSeek 依赖包
pip install langchain-deepseek
# 用于环境管理的包
pip install python-dotenv

说明:langchain-deepseek 是使用deepseek 大模型必要依赖。

注意: langchain-deepseek 依赖于 langchain-openai ,安装前者,pip会自动从pypi拉取元数据解析

依赖,后者也会被安装。所以我们把 langchain-openai 也放在此处。

bash 复制代码
# 调用线上的大模型

## 1. 调用具体模型厂商的API

### 1.1 调用DeepSeek官网的DeepSeek模型

调用大模型涉及到三个特别重要的参数
base_url、model_name、api_key

举例1:将参数信息存储在.env配置文件中
bash 复制代码
import os

from dotenv import load_dotenv
from langchain_deepseek import ChatDeepSeek

# 读取.env配置文件中的信息,相关的环境变量以.env文件中的优先
load_dotenv(override=True)

DEEPSEEK_API_KEY = os.getenv("DEEPSEEK_API_KEY")
DEEPSEEK_BASE_URL = os.getenv("DEEPSEEK_BASE_URL")


# 模型的初始化

llm_deepseek = ChatDeepSeek(
    model = "deepseek-flash",
    api_key = DEEPSEEK_API_KEY,
    api_base= DEEPSEEK_BASE_URL,
)

# 模型的调用
response = llm_deepseek.invoke("请用一句话介绍你自己")
print(response)

优化:

bash 复制代码
import os

from dotenv import load_dotenv
from langchain_deepseek import ChatDeepSeek

# 读取.env配置文件中的信息,相关的环境变量以.env文件中的优先
load_dotenv(override=True)

# DEEPSEEK_API_KEY = os.getenv("DEEPSEEK_API_KEY")
# DEEPSEEK_BASE_URL = os.getenv("DEEPSEEK_BASE_URL")


# 模型的初始化

llm_deepseek = ChatDeepSeek(
    model = "deepseek-flash",
    # api_key = DEEPSEEK_API_KEY,
    # api_base= DEEPSEEK_BASE_URL,
)

# 模型的调用
response = llm_deepseek.invoke("请用一句话介绍你自己")
print(response)

举例3:演示参数声明在代码中(不推荐)

bash 复制代码
import os

from dotenv import load_dotenv
from langchain_deepseek import ChatDeepSeek

# 模型的初始化

llm_deepseek = ChatDeepSeek(
    model = "deepseek-flash",
    api_key = "sk-99139adab305b432693787add5be1c3d61209",
    api_base= "https://api.deepseek.com",
)

# 模型的调用
response = llm_deepseek.invoke("帮我实现从0-100的python代码")
print(response)
相关推荐
wangchunyu1145 小时前
JAVA AQS与Lock实现原理(含CAS)
java·开发语言·word
爱喝水的鱼丶6 小时前
SAP-ABAP:ECC→S/4HANA ABAP 迁移升级指南——程序改造、语法兼容与性能优化 导语
运维·开发语言·性能优化·sap·abap·经验交流·开发交流
小灰灰搞电子6 小时前
Rust+Slint 实现FTP客户端调试助手源码分享
开发语言·后端·rust
外收内放6 小时前
面向对象高级(实战案例)
开发语言·python·学习
专业程序开发源7 小时前
springboot欧缇蔓月子中心管理系统82697-计算机课程设计、毕业设计
java·spring boot·后端·python·spring·django·课程设计
FPGA小迷弟7 小时前
用 Claude Code 重构遗留系统:从评估到落地的完整实践指南
c++·python·ai·plotly·django·ai编程·claude
卷无止境7 小时前
面向arm64桌面客户端开发全景:语言、框架与生态
后端·python
fanruitian7 小时前
python else用法
开发语言·python
FRing037 小时前
JavaScript入门到精通二十六(变量提升、函数剩余参数、展开运算符、ES6箭头函数)
开发语言·前端·javascript·es6·箭头函数
云深麋鹿7 小时前
C++ | 基于红黑树实现mymap与myset
开发语言·c++