DeepSeek 从入门到接入:常见问题、API 调用与本地部署命令整理
DeepSeek 常见问题汇总|附完整命令
DeepSeek 作为近几年关注度很高的大模型产品,凭借较强的推理能力、相对友好的使用成本以及开放生态,吸引了大量开发者、企业用户和普通用户。很多人在第一次接触 DeepSeek 时,常常会遇到一系列问题:DeepSeek 是什么?如何注册和使用?API 怎么调用?能不能本地部署?为什么响应慢?如何接入到自己的应用中?如何通过命令行快速测试?
本文将以「常见问题汇总」的形式,系统整理 DeepSeek 的使用方式、API 调用方法、本地运行思路、开发接入示例以及常见报错解决方案,并附上较完整的命令示例,方便你直接复制使用。
一、DeepSeek 是什么?
DeepSeek 是一个人工智能大语言模型品牌,提供面向对话、代码、推理、文本生成等场景的大模型能力。对于普通用户来说,它可以用来聊天、写作、总结、翻译、编程辅助、学习答疑等;对于开发者来说,它可以通过 API 接入到网站、App、企业系统、智能客服、知识库、自动化工具等业务中。
DeepSeek 受到关注的原因主要包括:
-
推理能力较强
在数学、逻辑、代码分析、复杂问题拆解等场景中表现突出。 -
成本相对友好
对于需要大量调用 API 的开发者或企业,成本是非常重要的因素。 -
开发接入方便
DeepSeek API 的调用方式与常见 OpenAI 风格接口较为接近,迁移成本低。 -
生态活跃
很多开源工具、AI 客户端、IDE 插件、知识库系统都逐渐支持 DeepSeek。
二、DeepSeek 适合哪些场景?
DeepSeek 可以用于很多常见 AI 场景,例如:
- 文案生成:文章、标题、短视频脚本、营销文案;
- 学习辅助:解释概念、生成题目、整理笔记;
- 编程助手:代码生成、代码解释、错误排查、单元测试;
- 数据处理:表格分析、SQL 生成、报告总结;
- 企业客服:FAQ 自动回复、工单辅助、智能问答;
- 知识库问答:结合 RAG 实现企业资料问答;
- 自动化工作流:与脚本、API、机器人结合完成任务;
- 推理任务:数学题、逻辑题、复杂规划问题。
需要注意的是,大模型虽然强大,但不代表所有回答都一定正确。对于法律、医疗、金融、投资等高风险领域,仍然需要人工复核。
三、DeepSeek 如何使用?
一般来说,DeepSeek 有三种主要使用方式:
-
网页登录使用
适合普通用户,打开官网或相关平台后直接对话。 -
API 调用使用
适合开发者,将 DeepSeek 集成到自己的应用中。 -
本地部署或本地调用开源模型
适合有一定硬件条件和技术能力的用户,通常用于离线测试、隐私保护或定制化场景。
如果你只是想体验 DeepSeek 的能力,网页登录最简单;如果你想做应用开发,则建议使用 API;如果你关注隐私、离线运行或本地推理,可以考虑通过 Ollama、LM Studio、vLLM 等工具运行相关开源模型或蒸馏模型。
四、DeepSeek API 如何申请?
通常流程如下:
- 进入 DeepSeek 官方开放平台;
- 注册并登录账号;
- 进入 API Keys 页面;
- 创建新的 API Key;
- 将 API Key 保存到本地环境变量;
- 使用 curl、Python、Node.js 等方式调用接口。
为了安全起见,不建议把 API Key 直接写死在代码里,更不要上传到 GitHub、Gitee 等公开代码仓库。推荐使用环境变量或配置文件管理。
五、如何配置 DeepSeek API Key?
macOS / Linux 配置方式
export DEEPSEEK_API_KEY="你的_API_Key"
如果希望长期生效,可以写入 shell 配置文件。
如果你使用的是 zsh:
echo 'export DEEPSEEK_API_KEY="你的_API_Key"' >> ~/.zshrc
source ~/.zshrc
如果你使用的是 bash:
echo 'export DEEPSEEK_API_KEY="你的_API_Key"' >> ~/.bashrc
source ~/.bashrc
检查是否配置成功:
echo $DEEPSEEK_API_KEY
Windows PowerShell 配置方式
临时设置:
$env:DEEPSEEK_API_KEY="你的_API_Key"
查看变量:
echo $env:DEEPSEEK_API_KEY
永久设置:
setx DEEPSEEK_API_KEY "你的_API_Key"
设置完成后,建议重新打开一个 PowerShell 窗口再使用。
六、如何用 curl 调用 DeepSeek API?
下面是一个基础的 curl 调用示例。
curl https://api.deepseek.com/chat/completions \
-H "Authorization: Bearer $DEEPSEEK_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-chat",
"messages": [
{
"role": "system",
"content": "你是一个专业、严谨、友好的中文助手。"
},
{
"role": "user",
"content": "请用通俗语言解释什么是大语言模型。"
}
],
"temperature": 0.7,
"stream": false
}'
如果你想使用流式输出,可以将 stream 设置为 true:
curl https://api.deepseek.com/chat/completions \
-H "Authorization: Bearer $DEEPSEEK_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-chat",
"messages": [
{
"role": "user",
"content": "请写一篇关于人工智能应用趋势的短文。"
}
],
"stream": true
}'
七、如何用 Python 调用 DeepSeek?
DeepSeek API 与 OpenAI 风格接口较为接近,因此可以使用 OpenAI SDK 进行调用。
1. 安装依赖
pip install openai
如果你使用的是 Python 3,并且系统中同时存在多个 Python 版本,可以使用:
python3 -m pip install openai
2. Python 基础调用示例
from openai import OpenAI
import os
client = OpenAI(
api_key=os.getenv("DEEPSEEK_API_KEY"),
base_url="https://api.deepseek.com"
)
response = client.chat.completions.create(
model="deepseek-chat",
messages=[
{"role": "system", "content": "你是一个专业的中文写作助手。"},
{"role": "user", "content": "请写一段关于春天的优美文字。"}
],
temperature=0.7
)
print(response.choices[0].message.content)
运行命令:
python main.py
3. Python 流式输出示例
from openai import OpenAI
import os
client = OpenAI(
api_key=os.getenv("DEEPSEEK_API_KEY"),
base_url="https://api.deepseek.com"
)
stream = client.chat.completions.create(
model="deepseek-chat",
messages=[
{"role": "user", "content": "请分点说明如何学习 Python。"}
],
stream=True
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
运行:
python stream_demo.py
八、如何用 Node.js 调用 DeepSeek?
1. 初始化项目
mkdir deepseek-demo
cd deepseek-demo
npm init -y
2. 安装依赖
npm install openai
3. 创建调用文件
创建 index.js:
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.DEEPSEEK_API_KEY,
baseURL: "https://api.deepseek.com"
});
async function main() {
const completion = await client.chat.completions.create({
model: "deepseek-chat",
messages: [
{
role: "system",
content: "你是一个专业的中文技术助手。"
},
{
role: "user",
content: "请解释 API、SDK 和 Webhook 的区别。"
}
],
temperature: 0.7
});
console.log(completion.choices[0].message.content);
}
main();
由于这里使用 ES Module,需要在 package.json 中加入:
{
"type": "module"
}
运行:
node index.js
九、DeepSeek 常见模型如何选择?
不同平台展示的模型名称可能有所不同,常见可理解为以下几类:
| 模型类型 | 适合场景 |
|---|---|
| 通用对话模型 | 日常问答、写作、总结、翻译 |
| 代码模型 | 代码生成、代码解释、Bug 排查 |
| 推理模型 | 数学、逻辑、复杂问题拆解 |
| 蒸馏模型 | 本地运行、低成本推理、实验测试 |
如果只是日常对话和应用开发,可以优先选择通用对话模型,例如 deepseek-chat。如果你需要复杂推理、数学、算法或严谨分析,可以考虑推理能力更强的模型。实际使用中,建议根据任务类型、速度、成本和准确率进行测试,而不是只看参数规模。
十、DeepSeek 和 ChatGPT 有什么区别?
DeepSeek 和 ChatGPT 都属于大语言模型应用,但它们在模型路线、产品生态、价格策略、使用体验等方面可能存在差异。
简单来说:
- 如果你重视成熟生态、插件集成、多模态能力,可能会关注 ChatGPT;
- 如果你重视中文场景、推理能力、API 成本,DeepSeek 是一个值得测试的选择;
- 如果你做企业应用,最好通过真实业务数据进行横向测试,而不是只看公开榜单。
对于开发者来说,更重要的是接口稳定性、响应速度、上下文长度、并发限制、价格和输出质量。不同任务下模型表现会有差异,建议用自己的数据集做评估。
十一、DeepSeek 可以本地部署吗?
这要看你所说的「DeepSeek」具体指什么。如果是官方在线 API 服务,就不需要本地部署;如果是开源模型或蒸馏模型,可以通过 Ollama、vLLM、Transformers、LM Studio 等方式在本地运行。
对于普通用户来说,最简单的是使用 Ollama。
十二、如何用 Ollama 本地运行 DeepSeek 相关模型?
1. 安装 Ollama
macOS 可以使用:
brew install ollama
Linux 可以使用官方安装脚本:
curl -fsSL https://ollama.com/install.sh | sh
Windows 用户可以前往 Ollama 官网下载安装包。
2. 启动 Ollama 服务
ollama serve
如果已经自动启动,可以跳过这一步。
3. 拉取模型
例如拉取 DeepSeek R1 相关蒸馏模型:
ollama pull deepseek-r1:7b
也可以根据你的机器性能选择更小或更大的版本,例如:
ollama pull deepseek-r1:1.5b
ollama pull deepseek-r1:8b
ollama pull deepseek-r1:14b
具体可用模型名称以 Ollama 模型库为准。
4. 运行模型
ollama run deepseek-r1:7b
然后即可在命令行中输入问题,例如:
请解释一下什么是递归,并给出 Python 示例。
5. 查看本地模型列表
ollama list
6. 删除模型
ollama rm deepseek-r1:7b
十三、如何通过 Ollama API 调用本地模型?
Ollama 默认服务地址通常是:
http://localhost:11434
使用 curl 调用:
curl http://localhost:11434/api/generate \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-r1:7b",
"prompt": "请用简单语言解释什么是向量数据库。",
"stream": false
}'
如果使用聊天接口:
curl http://localhost:11434/api/chat \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-r1:7b",
"messages": [
{
"role": "user",
"content": "请给我一个学习 Linux 命令的计划。"
}
],
"stream": false
}'
十四、DeepSeek 响应慢怎么办?
DeepSeek 响应慢可能有多种原因:
-
网络不稳定
API 调用依赖网络,如果网络延迟高,会影响响应速度。 -
请求内容过长
Prompt 很长、上下文很多,会增加模型处理时间。 -
模型本身较大
推理模型通常比普通对话模型更慢。 -
高峰期拥堵
用户量较大时,服务可能变慢。 -
本地硬件不足
本地运行大模型时,如果显存、内存不足,会非常慢。
优化建议:
- 减少无关上下文;
- 使用更简洁的 Prompt;
- 根据任务选择合适模型;
- 对非实时任务使用异步处理;
- 对重复问题使用缓存;
- 本地部署时选择合适参数规模的模型;
- 如果使用 API,开启流式输出改善用户体验。
十五、DeepSeek API 报错如何排查?
1. API Key 错误
常见表现:401 Unauthorized
解决方法:
echo $DEEPSEEK_API_KEY
确认环境变量存在,并检查 API Key 是否复制完整。
2. 请求地址错误
请确认 base URL 是否正确,例如:
https://api.deepseek.com
curl 请求通常类似:
curl https://api.deepseek.com/chat/completions
3. JSON 格式错误
常见表现:请求失败、返回参数错误。
可以使用 jq 检查 JSON:
echo '{"model":"deepseek-chat"}' | jq
如果没有安装 jq:
macOS:
brew install jq
Ubuntu / Debian:
sudo apt update
sudo apt install jq -y
4. 模型名称错误
如果模型名称写错,可能返回模型不存在或请求失败。请确认你调用的模型名称与平台文档一致,例如:
"model": "deepseek-chat"
5. 余额不足或限额不足
如果账户余额不足、免费额度用完或触发速率限制,也可能导致请求失败。此时需要检查控制台中的额度、账单、调用限制。
十六、如何写出更好的 Prompt?
DeepSeek 的输出质量很大程度取决于 Prompt。一个好的 Prompt 通常包含以下要素:
-
明确角色
例如:你是一个资深 Java 后端工程师。 -
明确任务
例如:请帮我优化下面的 SQL 查询。 -
提供上下文
例如:数据库是 MySQL 8.0,表数据量约 500 万。 -
限定输出格式
例如:请用 Markdown 表格输出。 -
给出约束条件
例如:不要修改业务逻辑,只优化性能。
示例:
你是一个资深 MySQL DBA。
请分析下面这条 SQL 的性能问题,并给出优化方案。
要求:
1. 使用 Markdown 格式;
2. 先说明可能的问题;
3. 再给出优化后的 SQL;
4. 最后说明索引建议。
SQL 如下:
SELECT * FROM orders WHERE user_id = 1001 ORDER BY created_at DESC LIMIT 20;
十七、DeepSeek 能否接入知识库?
可以。常见做法是使用 RAG,也就是检索增强生成。大致流程如下:
- 将企业文档切分成小段;
- 使用 Embedding 模型生成向量;
- 存入向量数据库;
- 用户提问时先检索相关内容;
- 将检索结果和问题一起发送给 DeepSeek;
- DeepSeek 根据资料生成回答。
常见技术栈包括:
- 向量数据库:Milvus、Qdrant、Weaviate、pgvector;
- 文档处理:LangChain、LlamaIndex;
- 后端服务:FastAPI、Node.js、Spring Boot;
- 前端界面:Vue、React、Next.js。
如果企业内部文档很多,直接把全部内容塞进 Prompt 并不现实,RAG 是更可控、更经济的方案。
十八、DeepSeek 可以用于商业项目吗?
通常来说,是否可以商用需要看你使用的具体服务条款、模型许可证以及平台规定。如果你通过官方 API 使用,需要遵守官方 API 服务协议;如果你使用开源模型或蒸馏模型,需要查看对应模型的开源许可证。
在商业项目中,建议重点关注:
- 数据隐私;
- 版权风险;
- 输出内容审核;
- API 稳定性;
- 成本控制;
- 日志与审计;
- 合规要求。
尤其是涉及用户隐私、企业机密、医疗金融等敏感数据时,要做好脱敏和权限控制。
十九、如何控制 DeepSeek API 成本?
可以从以下几个方面入手:
-
减少无效上下文
不要每次都传过长历史消息。 -
设置合理的最大输出长度
避免模型输出过长内容。 -
使用缓存
高频重复问题可以缓存结果。 -
按任务选择模型
简单任务不一定需要使用复杂推理模型。 -
拆分任务
对复杂任务进行阶段处理,减少重复调用。 -
监控调用量
定期查看 API 使用情况和账单。
在代码中,也可以限制输出长度,例如:
response = client.chat.completions.create(
model="deepseek-chat",
messages=[
{"role": "user", "content": "请总结这段文字。"}
],
max_tokens=500
)
二十、DeepSeek 在编程中怎么用?
DeepSeek 可以帮助开发者完成很多工作:
- 解释报错信息;
- 生成函数;
- 编写 SQL;
- 优化代码;
- 生成单元测试;
- 重构旧代码;
- 解释框架原理;
- 生成接口文档。
例如你可以这样提问:
你是一个资深 Python 工程师。
请帮我检查下面代码的问题,并给出修改后的版本。
要求:
1. 指出错误原因;
2. 给出修复代码;
3. 说明如何测试。
如果要让模型更准确,最好提供完整上下文,包括语言版本、框架版本、错误日志、期望结果和当前代码。
二十一、如何把 DeepSeek 接入命令行工具?
你可以写一个简单 Python 脚本,把 DeepSeek 包装成命令行助手。
创建文件 ask.py:
from openai import OpenAI
import os
import sys
client = OpenAI(
api_key=os.getenv("DEEPSEEK_API_KEY"),
base_url="https://api.deepseek.com"
)
question = " ".join(sys.argv[1:])
if not question:
print("用法:python ask.py 你的问题")
sys.exit(1)
response = client.chat.completions.create(
model="deepseek-chat",
messages=[
{"role": "system", "content": "你是一个简洁、高效的命令行 AI 助手。"},
{"role": "user", "content": question}
],
temperature=0.3
)
print(response.choices[0].message.content)
运行:
python ask.py 请解释 ls -la 命令的含义
也可以设置别名:
alias ask='python /你的路径/ask.py'
然后直接使用:
ask 如何查看 Linux 端口占用
二十二、常用 Linux 命令辅助示例
让 DeepSeek 解释命令:
python ask.py "请解释 grep -rn \"error\" ./logs 的含义"
让 DeepSeek 生成命令:
python ask.py "请给出查找当前目录下大于100MB文件的 Linux 命令"
可能得到类似命令:
find . -type f -size +100M -print
查看端口占用:
lsof -i :8080
或:
netstat -tunlp | grep 8080
杀掉指定进程:
kill -9 PID
注意:涉及删除文件、格式化磁盘、强制杀进程等高风险命令时,不要盲目执行,务必先理解含义。
二十三、DeepSeek 使用中的安全建议
-
不要上传敏感信息
包括身份证号、银行卡号、密码、公司机密、未公开合同等。 -
不要完全依赖模型结论
重要决策必须人工复核。 -
不要执行不理解的命令
尤其是包含rm -rf、sudo、chmod 777等命令。 -
做好 API Key 管理
不要硬编码,不要公开上传。 -
设置访问权限和日志审计
企业应用中尤其重要。 -
对输出内容做审核
防止错误、违规或不适当内容直接展示给用户。
二十四、DeepSeek 常见问题快速答疑
1. DeepSeek 是免费的吗?
部分产品或平台可能提供免费额度,但 API 大规模调用通常需要计费。具体费用以官方平台为准。
2. DeepSeek 可以写代码吗?
可以。它可以生成代码、解释代码、排查错误,也可以辅助写测试和文档。但生成代码需要人工检查。
3. DeepSeek 支持中文吗?
支持,而且中文问答、写作、总结等场景表现较好。
4. DeepSeek 能联网搜索吗?
这取决于你使用的平台或产品形态。模型本身不一定具备实时联网能力,API 调用时如果需要最新信息,通常要结合搜索接口或 RAG 系统。
5. DeepSeek 可以处理文件吗?
如果平台支持文件上传,可以直接处理;如果通过 API 开发,需要自己先读取文件内容,再发送给模型。长文档建议结合切分、摘要或 RAG。
6. DeepSeek 输出不准确怎么办?
可以补充上下文、明确约束、降低 temperature、要求引用依据,或者对关键结果进行人工复核。
7. DeepSeek 本地运行需要什么配置?
取决于模型大小。小模型普通电脑也可能运行,大模型通常需要更高内存和显存。使用 Ollama 时可根据机器性能选择 1.5B、7B、8B、14B 等不同规模模型。
8. DeepSeek 可以替代程序员吗?
不能简单替代。它更适合作为编程助手,提高效率,但需求理解、系统设计、工程质量、上线运维、业务判断仍需要专业人员负责。
二十五、总结
DeepSeek 是一个非常值得关注的大模型工具,无论是普通用户进行写作、学习和办公,还是开发者构建智能应用,都可以从中获得较高价值。对于初学者,建议先从网页端体验;对于开发者,建议掌握 API 调用方式,并熟悉 curl、Python、Node.js 等基础接入方法;对于有隐私或离线需求的用户,可以尝试 Ollama 等本地运行方案。
在实际使用中,最重要的不是盲目追求某个模型,而是根据自己的任务选择合适的调用方式:简单问题用通用模型,复杂逻辑用推理模型,企业知识问答结合 RAG,重复问题使用缓存,敏感数据做好脱敏和权限控制。
最后再次提醒:DeepSeek 可以显著提升效率,但它不是绝对正确的答案机器。高质量的 Prompt、合理的系统设计、必要的人工审核,才是让 AI 真正落地的关键。