当前位置: 首页 > news >正文

DeepSeek API keys本地调用 [python]

首先需要安装python
再安装pycharm

打开pycharm终端
在这里插入图片描述

第一步是安装三个包,通过 pip install langchain 来安装LangChain,通过 pip install openai 来安装OpenAI,还需要通过 pip install langchain-openai 以便在 LangChain 中使用 OpenAI 模型

安装后可以直接开发
首先需要在deepseek官网申请密钥https://platform.deepseek.com/api_keys
在这里插入图片描述
在这里插入图片描述

首次调用API
from openai import OpenAI

client = OpenAI(api_key="<DeepSeek API Key>", 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)

优化一下可以进行一对一对话

from openai import OpenAI

# 初始化 OpenAI 客户端
client = OpenAI(api_key=<你的密钥地址:str类型>, base_url="https://api.deepseek.com")

# 初始化对话消息列表
messages = [
    {"role": "assistant", "content": "你是一个AI专家"}
]

while True:
    # 获取用户输入
    user_input = input("你: ")
    if user_input.lower() == 'quit':
        break
    elif user_input.lower().startswith('set_system '):
        # 提取新的系统角色内容
        new_system_content = user_input[11:]
        # 找到并更新系统消息
        for message in messages:
            if message["role"] == "system":
                message["content"] = new_system_content
                break
        print(f"系统角色已更新为: {new_system_content}")
        continue

    # 将用户输入添加到消息列表
    messages.append({"role": "user", "content": user_input})

    # 调用模型获取回复
    try:
        response = client.chat.completions.create(
            model="deepseek-chat",
            messages=messages,
            max_tokens=1024,
            temperature=0.7,
            stream=True,
        )

        # 获取模型回复内容

        for s in response:
            content = s.choices[0].delta.content
            if content is not None:
                print(content, end="")
                assistant_reply = content
        print()
        # 将模型回复添加到消息列表
        messages.append({"role": "assistant", "content": assistant_reply})
    except Exception as e:
        print(f"发生错误: {e}")

相关文章:

  • 【AI知识】在 PyTorch 中设计和实现一个完整的模型训练和优化流程
  • C语言 数据结构【动态顺序表】详解
  • 表格标题竖直
  • IP地址结构体与字符串转换函数详解
  • 基于RT-thread使用STM32F407驱动LCD屏幕
  • 【HCIA-晴天老师】15-VLAN的Hybrid配置笔记
  • Camera2 API拍照失败问题实录:从错误码到格式转换的排坑之旅
  • Python实现生产者消费者模型-多进程与多线程处理
  • 基于Redis分布锁+事务补偿解决数据不一致性问题
  • 大数据E10:基于Spark和Scala编程解决一些基本的数据处理和统计分析,去重、排序等
  • 论文阅读:2023 EMNLP SeqXGPT: Sentence-level AI-generated text detection
  • 盛铂科技国产SLMF315超低相位噪声频率综合器介绍
  • SpringBoot有几种获取Request对象的方法
  • 龙虎榜——20250321
  • 第五章 起航18 管理会议信息同步
  • 计算机操作系统(三) 操作系统的特性、运行环境与核心功能(附带图谱更好对比理解))
  • 游戏引擎学习第173天
  • JAVA————十五万字汇总
  • QPrintDialog弹出慢的问题
  • 图表的黄金比例
  • 西藏日喀则市拉孜县发生5.5级地震,震感明显部分人被晃醒
  • 中山大学人类学系原系主任冯家骏逝世,享年95岁
  • 习近平会见塞尔维亚总统武契奇
  • 公示!17个新职业、42个新工种亮相
  • 李公明︱一周书记:浪漫主义为什么……仍然重要?
  • 戴维·珀杜宣誓就任美国驻华大使