# Please install OpenAI SDK first: `pip3 install openai`
import os
from dotenv import load_dotenv
from openai import OpenAI
# 这一行代码,可以加载当前路径下的.env文件(文件名不能改)
load_dotenv()
def dm01_deepseek():
# 创建OpenAI的对象,使用OpenAI的方式调用大模型(DeepSeek)
client = OpenAI(
api_key='sk-eeaf7fdfe21b4d39bfb9567fdbcd433b',
base_url="https://api.deepseek.com")
# 是以OpenAI的客户端调用(请求)DeepSeek的大模型
# role:角色,在大模型中,常见的有三种角色(system、user、assistant)
# system:系统角色,也就是告诉大模型,你是一个什么身份(定位)
# user:普通用户角色,也就是用户输入的普通提示词
# assistant:助手角色,也就是大模型返回的内容
response = client.chat.completions.create(
model="deepseek-v4-flash",
messages=[
{"role": "system", "content": "You are a helpful assistant"},
{"role": "user", "content": "Hello"},
],
stream=False,
reasoning_effort="high",
extra_body={"thinking": {"type": "enabled"}}
)
print(response.choices[0].message.content)
# 使用dotenv库的方式来管理.env文件,更安全
# pip install python-dotenv==1.2.1
# 注意:文件名必须是.env,不能改!!!
def dm02_deepseek():
client = OpenAI(
api_key=os.getenv("API_KEY"),
base_url=os.getenv("BASE_URL"))
response = client.chat.completions.create(
model=os.getenv("MODEL_NAME"),
messages=[
{"role": "system", "content": "You are a helpful assistant"},
{"role": "user", "content": "Hello"},
],
stream=False)
print(response.choices[0].message.content)
# 使用DeepSeek完成新闻文本分类
def dm03_deepseek():
# 创建客户端
client = OpenAI(api_key=os.getenv("API_KEY"), base_url=os.getenv("BASE_URL"))
# 定义变量,用来保存提示词
system_prompt = """
你是一个新闻短文本分类专家,现在需要文本进行分类,一共有十个类别,分别是:
finance
realty
stocks
education
science
society
politics
sports
game
entertainment
你必须把输入的文本划分为其中某一个类别,最终只需要输出对应的类别即可,不要输出其他内容。
"""
user_prompt = """
请对如下文本进行分类。
文本:《赛猪》激情只等你的加入!
"""
result = client.chat.completions.create(model=os.getenv("MODEL_NAME"),
messages=[{'role': 'system', 'content': system_prompt},
{'role': 'user', 'content': user_prompt}])
print(result.choices[0].message.content)
if __name__ == '__main__':
# dm01_deepseek()
# dm02_deepseek()
dm03_deepseek()