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

【AI测试必学】DeepSeek API 快速入门:获取 API Key 与调用 API 步骤详解

DeepSeek API 快速入门:获取 API Key 与调用 API 步骤详解

    • 一、获取 API Key
    • 二、调用 DeepSeek API
      • 方法 1:使用 OpenAI Python SDK 调用 DeepSeek API
      • 方法 2:使用 requests 库直接发送 HTTP 请求
      • 方法 3:使用 curl 命令
    • 相关链接

一、获取 API Key

  1. 访问 DeepSeek 官方平台:https://platform.deepseek.com/sign_in
    在这里插入图片描述

  2. 注册并登录账号,进入左侧导航栏的 API Keys 页面,点击 创建 API Key
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

生成的 API Key 只会显示一次,请妥善保存。

二、调用 DeepSeek API

方法 1:使用 OpenAI Python SDK 调用 DeepSeek API

DeepSeek API 使用与 OpenAI 兼容的格式,可以通过修改配置使用 OpenAI SDK。

安装 openai 库:

pip install openai

配置参数说明:

  • api_key:需要将 your_api_key_here 替换为你 DeepSeek API 的实际 API 密钥。
  • base_url: https://api.deepseek.com 或 https://api.deepseek.com/v1。
  • model: deepseek-chat(DeepSeek-V3)或 deepseek-reasoner(DeepSeek-R1)。

示例代码(Python):

from openai import OpenAI

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

response = client.chat.completions.create(
    model="deepseek-chat",
    messages=[
        {
            "role": "user",
            "content": "你好"
        }
    ],
    stream=False
)

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

执行结果如下:
在这里插入图片描述

方法 2:使用 requests 库直接发送 HTTP 请求

import requests
import json

api_key = "your_api_key_here"
base_url = "https://api.deepseek.com/v1/chat/completions"  # 注意这里使用了/v1/chat/completions 端点

headers = {
    "Content-Type": "application/json",
    "Authorization": f"Bearer {api_key}"
}

data = {
    "model": "deepseek-chat",
    "messages": [{"role": "user", "content": "你好,DeepSeek!"}],
    "stream": True #启用流式响应
}

try:
    response = requests.post(base_url, headers=headers, data=json.dumps(data), stream=True)
    response.raise_for_status()  # 检查HTTP错误

    # 处理流式响应
    for line in response.iter_lines(decode_unicode=True):
        if line:
            if line.startswith("data: "):
                json_data = line[6:].strip()
                if json_data == "[DONE]":
                    break
                try:
                    data = json.loads(json_data)
                    # 从数据中提取内容
                    if 'choices' in data and len(data['choices']) > 0:
                        content = data['choices'][0].get('delta', {}).get('content', '')
                        print(content, end="", flush=True)
                    # 处理一些其他的message类型
                    elif 'error' in data:
                        print(f"Error from API: {data['error']}")
                        break #遇到错误也停止

                except json.JSONDecodeError as e:
                    print(f"JSON 解码错误:{e}, 数据: {json_data}")
                    continue #解码错误,跳过此行

except requests.exceptions.RequestException as e:
    print(f"请求错误:{e}")
except Exception as e:
    print(f"发生错误:{e}")

执行结果如下:
在这里插入图片描述

方法 3:使用 curl 命令

curl https://api.deepseek.com/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "deepseek-chat",
    "messages": [{"role": "user", "content": "你好,DeepSeek!"}],
    "stream": true
  }'

执行结果如下:
在这里插入图片描述

相关链接

  • DeepSeek 开放平台: https://platform.deepseek.com/
  • DeepSeek API 官方文档: https://api-docs.deepseek.com/zh-cn/
  • OpenAI Python SDK: https://github.com/openai/openai-python

http://www.kler.cn/a/592891.html

相关文章:

  • 麒麟服务器操作系统Go环境部署手册
  • 织梦DedeCMS后台发布文章增加“顶”和“踩”默认随机值,并可后台修改
  • Spring Boot 整合 Elasticsearch 实践:从入门到上手
  • 有效防止SSL证书被劫持的策略
  • 路灯安全用电解决方案
  • 力士乐XM42系统Profinet与安川机器人Ethernet/IP通讯转换配置
  • 从零实现B站视频下载器:Python自动化实战教程
  • [力扣]1631. 最小体力消耗路径(bool类型dfs+二分答案/记忆化剪枝/并查集Kruskal思想)
  • 如何用Python和Selenium实现表单的自动填充与提交?
  • [代码规范]1_良好的命名规范能减轻工作负担
  • RabbitMQ相关的面试题
  • STM32 —— MCU、MPU、ARM、FPGA、DSP
  • O(1) 时间插入、删除和获取随机元素——面试经典150题(力扣)
  • OpenHarmony 框架层电池相关重要类解析
  • 【论文阅读】MMedPO: 用临床感知多模态偏好优化调整医学视觉语言模型
  • Vitis 2024.1 无法正常编译custom ip的bug(因为Makefile里的wildcard)
  • 【计算机网络】TCP粘包、拆包的机制
  • ChatGPT与深度学习:探索人工智能的核心技术
  • 虚幻基础:ue自定义类
  • 【css酷炫效果】纯CSS实现大风车旋转效果