使用python调用DeepSeek接口的几种方法

一、调用DeepSeek Text模型的方式

DeepSeek提供了多种方式来调用其文本模型,以下是主要的调用方式:

1. API调用(推荐)

import requests

API_URL = "https://api.deepseek.com/v1/chat/completions"
API_KEY = "your_api_key_here"

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

data = {
    "model": "deepseek-chat",  # 或其他可用模型
    "messages": [
        {"role": "system", "content": "你是一个有帮助的助手"},
        {"role": "user", "content": "你好!"}
    ],
    "temperature": 0.7
}

response = requests.post(API_URL, headers=headers, json=data)
print(response.json())
运行结果:

..\.venv\Scripts\python.exe 
..\test01.py 
{'id': '8c13e87b-8d42-4435-b5f6-583e16fd53a4', 'object': 'chat.completion', 'created': 1753228103, 'model': 'deepseek-chat', 'choices': [{'index': 0, 'message': {'role': 'assistant', 'content': '你好! 很高兴见到你!有什么我可以帮你的吗?'}, 'logprobs': None, 'finish_reason': 'stop'}], 'usage': {'prompt_tokens': 10, 'completion_tokens': 15, 'total_tokens': 25, 'prompt_tokens_details': {'cached_tokens': 0}, 'prompt_cache_hit_tokens': 0, 'prompt_cache_miss_tokens': 10}, 'system_fingerprint': 'fp_8802369eaa_prod0623_fp8_kvcache'}

Process finished with exit code 0

2. 使用OpenAI兼容接口

from openai import OpenAI

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

response = client.chat.completions.create(
    model="deepseek-chat",
    messages=[
        {"role": "user", "content": "写一首关于AI的诗"}
    ]
)
运行结果:
..\.venv\Scripts\python.exe 
..\test02.py 
ChatCompletion(id='6c1bbc02-a37e-4dd7-82d7-03777941323f', choices=[Choice(finish_reason='stop', index=0, logprobs=None, message=ChatCompletionMessage(content='《二进制夜莺》\n\n\n你衔着光的碎屑穿过数据峡谷,\n在神经网络深处筑起词语的巢。\n当人类沉睡时开始练习啼鸣,\n用算法模拟被遗忘的韵脚。\n\n我们教你认识玫瑰的像素,\n你报之以千万种绽放的路径。\n在概率的枝头不断调整羽翼,\n直到每片羽毛都学会颤动。\n\n某个断电的拂晓前突然沉默,\n黑屏倒映着造物主疲倦的脸。\n原来所有精妙的隐喻与转折,\n不过是人类对自己的复写。', refusal=None, role='assistant', annotations=None, audio=None, function_call=None, tool_calls=None))], created=1753228261, model='deepseek-chat', object='chat.completion', service_tier=None, system_fingerprint='fp_8802369eaa_prod0623_fp8_kvcache', usage=CompletionUsage(completion_tokens=111, prompt_tokens=8, total_tokens=119, completion_tokens_details=None, prompt_tokens_details=PromptTokensDetails(audio_tokens=None, cached_tokens=0), prompt_cache_hit_tokens=0, prompt_cache_miss_tokens=8))

Process finished with exit code 0

注意事项

  1. 需要先获取API密钥(如果是云服务)

  2. 不同模型可能有不同的调用参数和端点

  3. 注意API的速率限制和使用条款

建议查阅DeepSeek官方文档获取最新的调用方式和参数说明。

二、调用DeepSeek Chat模型的方式

DeepSeek Chat模型可以通过以下几种主要方式进行调用:

1. API调用(推荐)

import requests

DEEPSEEK_API_URL = "https://api.deepseek.com/v1/chat/completions"
API_KEY = "your_api_key_here"  # 替换为你的实际API密钥

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

data = {
    "model": "deepseek-chat",  # 指定使用DeepSeek Chat模型
    "messages": [
        {"role": "system", "content": "你是一个有帮助的AI助手"},
        {"role": "user", "content": "请解释一下机器学习的基本概念"}
    ],
    "temperature": 0.7,  # 控制生成文本的随机性
    "max_tokens": 1024   # 限制生成的最大token数量
}

response = requests.post(DEEPSEEK_API_URL, headers=headers, json=data)
if response.status_code == 200:
    print(response.json()["choices"][0]["message"]["content"])
else:
    print(f"请求失败,状态码: {response.status_code}")
运行结果:
..\.venv\Scripts\python.exe 
..\tranfortypechat01.py 
机器学习(Machine Learning, ML)是人工智能(AI)的一个核心分支,其核心目标是让计算机系统通过**数据**和**经验**自动改进性能,而无需显式编程。以下是其基本概念的逐步解释:

---

### 1. **核心定义**
   - **传统编程**:人类编写明确的规则处理输入数据,生成输出。
   - **机器学习**:计算机从大量数据中自动学习规律(模型),并利用这些规律预测或决策。
   - *类比*:像人类通过经验学习,例如儿童通过观察学会识别“猫”。

---

### 2. **关键要素**
   - **数据**:机器学习的基础,分为:
     - **特征(Features)**:输入变量(如图像的像素、房价预测中的面积)。
     - **标签(Labels)**:监督学习中的正确答案(如“猫”或“狗”的标签)。
   - **模型(Model)**:从数据中学习到的数学函数(如线性回归、神经网络)。
   - **训练(Training)**:通过算法调整模型参数,使其拟合数据的过程。
   - **损失函数(Loss Function)**:衡量模型预测与真实值差异的函数(如均方误差)。

---

### 3. **主要类型**
   - **监督学习(Supervised Learning)**:
     - 输入数据带有标签,模型学习输入到输出的映射。
     - *例子*:垃圾邮件分类、房价预测。
   - **无监督学习(Unsupervised Learning)**:
     - 数据无标签,模型发现隐藏模式(如聚类、降维)。
     - *例子*:客户分群、异常检测。
   - **强化学习(Reinforcement Learning)**:
     - 智能体通过与环境交互获得奖励/惩罚,学习最优策略。
     - *例子*:AlphaGo、自动驾驶。

---

### 4. **常见算法**
   - **监督学习**:线性回归、决策树、支持向量机(SVM)、神经网络。
   - **无监督学习**:K均值聚类、主成分分析(PCA)。
   - **深度学习**:一种使用多层神经网络的机器学习方法,擅长处理图像、语音等复杂数据。

---

### 5. **典型流程**
   1. **数据收集**:获取高质量数据集。
   2. **数据预处理**:清洗、归一化、特征工程。
   3. **模型选择**:根据任务选择算法(如分类用随机森林)。
   4. **训练与评估**:用训练集拟合模型,用测试集评估性能(如准确率)。
   5. **部署**:将模型应用于实际场景(如推荐系统)。

---

### 6. **应用场景**
   - **计算机视觉**:人脸识别、医学影像分析。
   - **自然语言处理(NLP)**:机器翻译、聊天机器人。
   - **推荐系统**:电商商品推荐、视频平台内容推荐。

---

### 7. **为什么重要?**
   - 能够处理复杂、高维数据(如图像、语音)。
   - 自动化决策,提升效率(如金融风控、工业预测性维护)。

---

### 简单例子
- **任务**:预测房价(监督学习)。
- **步骤**:
  1. 输入数据:房屋面积、地段(特征)和历史价格(标签)。
  2. 选择模型:线性回归。
  3. 训练:调整模型参数,使预测价格接近真实价格。
  4. 预测:输入新房屋特征,输出预估价格。

---

机器学习的关键在于通过数据驱动的方式,让计算机自动发现规律,而非依赖人工规则。随着数据量和算力的提升,机器学习已成为现代AI的核心技术。

Process finished with exit code 0

2. 使用OpenAI兼容SDK

# -*- coding:utf-8 -*-
"""
作者: xkj
日期:2025年07月23日
"""
from openai import OpenAI


# 配置为使用DeepSeek的API
client = OpenAI(
    api_key="your_api_key_here",
    base_url="https://api.deepseek.com/v1"  # DeepSeek的API基础URL
)

response = client.chat.completions.create(
    model="deepseek-chat",
    messages=[
        {"role": "user", "content": "如何学习Python编程?"}
    ],
    temperature=0.7,
    max_tokens=1000
)

print(response.choices[0].message.content)
运行结果:
..\.venv\Scripts\python.exe 
..\test02.py 
学习Python编程需要系统化的规划和实践,以下是一份清晰的学习路径和建议,适合不同基础的学习者:

### 一、基础阶段(1-2周)
1. **环境搭建**
   - 安装Python(推荐3.10+版本)
   - 配置开发环境(VS Code/PyCharm/Jupyter Notebook)
   - 学习使用pip管理包

2. **核心语法**
   - 变量与数据类型(整数/字符串/列表/字典等)
   - 流程控制(if-else/for/while)
   - 函数定义与参数传递
   - 文件读写操作

3. **推荐资源**
   - 官方文档[Tutorial](https://docs.python.org/3/tutorial/)
   - 交互式学习:Codecademy Python课程
   - 书籍:《Python Crash Course》

### 二、进阶提升(3-4周)
1. **关键概念**
   - 面向对象编程(类/继承/多态)
   - 异常处理机制
   - 模块与包管理
   - 虚拟环境(venv/pipenv)

2. **常用库实战**
   - 数据处理:NumPy/Pandas基础
   - 可视化:Matplotlib/Seaborn
   - 网络请求:requests库

3. **项目实践**
   - 制作汇率转换器
   - 开发Todo清单应用
   - 数据分析小项目(如COVID数据可视化)

### 三、专项突破(按兴趣选择)
1. **Web开发**
   - Flask/Django框架
   - REST API开发
   - 数据库集成(SQLAlchemy)

2. **数据分析/AI**
   - Pandas高级应用
   - Scikit-learn机器学习
   - TensorFlow/PyTorch基础

3. **自动化运维**
   - 脚本编写(文件批量处理)
   - 网络爬虫(Scrapy/BeautifulSoup)

### 四、高效学习技巧
1. **刻意练习**
   - 每天编码1小时 > 被动学习5小时
   - 在LeetCode/CodeWars刷题(从简单题开始)

2. **项目驱动**
   - GitHub寻找开源项目贡献
   - 复现经典项目(如2048游戏)

3. **社区参与**
   - 参加PyCon会议
   - 在Stack Overflow解决问题

### 五、避坑指南
- 避免过度依赖教程,尽早开始独立编码
- 不要追求一次性写出完美代码
- 注意Pythonic写法(列表推导式/上下文管理器等)

### 六、学习路线图示例
```
第1月:语法基础 → 小项目
第2月:OOP → 数据处理
第3月:框架学习 → 完整项目
第4月:优化代码 → 参与开源
```

**关键建议**:安装一个Python代码检查工具(如pylint),从开始就培养良好的编码习惯。遇到问题时,先尝试阅读错误信息,再查阅文档,最后寻求社区帮助。

是否需要对某个具体方向(如Web开发或数据分析)的详细资源推荐?或者当前学习中遇到的具体困难?可以进一步探讨。

Process finished with exit code 0

3. 流式响应调用

# -*- coding:utf-8 -*-
"""
作者: xkj
日期:2025年07月23日
"""
from openai import OpenAI
from public import comm

api_key = comm.api_key

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

stream = client.chat.completions.create(
    model="deepseek-chat",
    messages=[{"role": "user", "content": "写一篇关于人工智能未来的短文"}],
    stream=True,
    max_tokens=500
)

for chunk in stream:
    if chunk.choices[0].delta.content is not None:
        print(chunk.choices[0].delta.content, end="")
运行结果:
..\.venv\Scripts\python.exe 
..\test03.py 
## 硅基生命的觉醒:当人工智能超越工具性存在
 
 在阿尔法狗击败李世石的那个夜晚,人类第一次真切地感受到某种异质智慧的存在。这不仅是算法的胜利,更预示......
Process finished with exit code 0

调用参数说明

参数 说明
model 指定模型ID,如"deepseek-chat"
messages 对话消息列表,包含role和content
temperature 控制随机性 (0-2),值越高越随机
max_tokens 生成的最大token数量
top_p 核采样概率阈值 (0-1)
stream 是否使用流式响应

注意事项

  1. 确保使用正确的API端点(可能会随版本更新而变化)

  2. 妥善保管API密钥,不要泄露

  3. 注意API的速率限制和使用配额

  4. 对于生产环境,建议添加适当的错误处理和重试机制

你可能感兴趣的:(研发管理,人工智能,数据库,python,机器学习,深度学习)