Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
freem
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
DeepSeek R1
(section)
Add languages
Page
Discussion
English
Read
Edit
Edit source
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
Edit source
View history
General
What links here
Related changes
Special pages
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== 基本使用方法 == 一旦模型安装就绪,我们就可以通过命令行或API来与 DeepSeek R1 互动。本节将展示几个关键操作示例,帮助您了解如何发送提问以及调整模型输出。 <nowiki>**</nowiki>1. 命令行交互:**使用 Ollama 安装模型后,可直接在终端中运行对话命令。例如,我们以已下载好的 7B 参数模型为例,在终端输入: <code>ollama run deepseek-r1:7b</code> 稍等片刻,您会进入一个交互式对话模式(类似REPL环境),可以直接输入您的问题并按下回车,模型就会生成回答。您也可以将问题通过参数直接传给命令运行一次性推理,例如: <code>ollama run deepseek-r1:7b -p "5的阶乘是多少?请一步步计算。"</code> 其中 <code>-p</code> 用于指定用户提示(prompt)。运行该命令后,DeepSeek R1 将分析问题并给出带有推理步骤的答案。例如: <nowiki>**</nowiki>用户:**5的阶乘是多少?请一步步计算。 <nowiki>**</nowiki>DeepSeek R1:**5 的阶乘是指 1×2×3×4×5 的连乘积。我们逐步计算:首先 1×2 = 2;然后 2×3 = 6;接着 6×4 = 24;最后 24×5 = 120。所以 5! = '''120'''。 上述对话展示了模型的链式推理能力:即便是简单的算术问题,R1 也会按照请求给出逐步的解释过程。对于更复杂的问题(如数学证明、代码调试),R1 往往会先输出一系列思考步骤,最后得到答案。这种'''思维链输出'''是 DeepSeek R1 的一大特色,可帮助用户理解模型的解题思路。 <nowiki>*</nowiki>提示:*如果每次重启电脑后要重新与模型对话,只需再次执行 <code>ollama run deepseek-r1:版本号</code> 即可,无需重复下载模型 (必看:DeepSeek-R1本地部署!超详细教程~ - 雨梦山人 - 博客园)。确保在命令行模式下与模型交互,而不是直接点击 Ollama 的图标(点击图标只会启动服务,并不会弹出对话窗口) (必看:DeepSeek-R1本地部署!超详细教程~ - 雨梦山人 - 博客园)。 <nowiki>**</nowiki>2. 主要参数说明:**与其他大语言模型类似,DeepSeek R1 在推理时也有一些可调参数: * **温度(temperature):**控制输出的随机性。高温度会产生更发散、多样的回答,适合创造性任务;低温度则使输出更严谨、一致。默认温度通常为 1。如需严格推理(减少随机器),可将温度降到 0.2-0.5;反之创意场景可提高到1.2以上。通过 Ollama,您可以使用如 <code>--temperature 0.5</code> 参数来调整。 * **最大输出长度:**由于 R1 支持超长思维链,它可能给出很长的回答。您可以设置最大token数以防止输出过长,例如 <code>--max-token 1024</code> 来限制回答长度。另外,如果希望它思考充分,可以适当提高该值(前提是您的显存足够支撑长输出)。 * **系统提示(system prompt):**您可以在对话开始时提供一个系统角色指令,定义 AI 的行为。例如要求它严格一步步推理、不跳步等。这对控制 R1 的回答风格很有用。在 Ollama 中,system 提示可在启动对话前通过配置文件或命令选项设定。 * **多轮对话:**DeepSeek R1 同样支持上下文记忆,可以进行多轮对话。使用 Ollama 交互模式时,直接连续对话即可,模型会将之前对话作为上下文(直到达到其128k上下文长度上限)。若使用API,需要在每次请求中包含 <code>messages</code> 列表来传递上下文。 一般来说,小白用户在初始阶段无需过多调参,只要提供清晰的问题即可。但了解这些参数的作用,有助于您在需要时优化模型输出。例如,当R1生成的步骤过多、冗长时,可以降低温度或在提示中明确要求“简明回答”;当R1回答不确定、摇摆时,可以降低温度或要求其“给出最终确定答案”。 <nowiki>**</nowiki>3. 调用云端 API:**除了本地运行,您也可以使用 DeepSeek 官方提供的 API 服务。其接口设计与 OpenAI 的 ChatGPT API 基本兼容,这意味着您可以用类似的方式调用它 (首次调用 API | DeepSeek API Docs)。首先在 DeepSeek 平台申请一个 API Key,然后参考以下示例代码(Python): <code>import openai # 设置API Key和接口地址 openai.api_key = "你的DeepSeek API Key" openai.api_base = "<nowiki>https://api.deepseek.com/v1</nowiki>" # 调用 DeepSeek-R1 (deepseek-reasoner) 模型 response = openai.ChatCompletion.create( model="deepseek-reasoner", messages=[{"role": "user", "content": "你好,请解释月食形成的原理。"}], temperature=0.7 ) print(response["choices"][0]["message"]["content"])</code> 这里我们使用了 OpenAI 提供的官方 Python SDK,只是将 <code>api_base</code> 改为 DeepSeek 的地址,并将模型名指定为 <code>"deepseek-reasoner"</code> (首次调用 API | DeepSeek API Docs)(DeepSeek-R1 的API代号)。这样一来,OpenAI SDK 实际上会把请求发送到 DeepSeek 的服务器,并返回 R1 的回答。您也可以使用 cURL、Node.js 等任意方式调用,只需遵循 OpenAI API的协议格式即可 (首次调用 API | DeepSeek API Docs) (首次调用 API | DeepSeek API Docs)。值得注意的是,DeepSeek 官方还提供了不同版本模型的接口,例如 <code>"deepseek-chat"</code> 指代之前的通用模型 V3。如果要使用最新的 R1 推理能力,一定要设置模型参数为 <code>deepseek-reasoner</code>。 <nowiki>**</nowiki>4. 输入输出示例:**为了更直观地了解 DeepSeek R1 的表现,我们这里给出一个示例对话场景: * '''用户提问:'''“假如火车以每小时80公里的速度行驶,两地相距400公里,需要多久才能到达?请给出计算过程。” * '''模型回答:'''“首先,我们有距离 400 公里,速度 80 公里/小时。利用公式:时间 = 距离 / 速度。将400除以80,得到5。所以火车需要大约 '''5 小时''' 到达。计算过程:400 ÷ 80 = 5 小时。” 在这个问题中,模型清晰地展示了计算步骤和结果。可以看到,DeepSeek R1 会按照问题要求列出推理过程,再给出结论。这对小白用户来说非常友好:一方面拿到了答案,另一方面也学习了计算思路。 通过上述基础示例,您应该对如何使用 DeepSeek R1 有了初步了解。无论是在本地命令行里提问,还是通过API编程调用,R1 都能根据您的指令进行深入推理并产出答案。在熟悉基本使用之后,接下来您可以尝试一些'''进阶操作''',例如对模型进行微调以适应特殊任务,或将其与其他工具集成来扩展功能。
Summary:
Please note that all contributions to freem are considered to be released under the Creative Commons Attribution-ShareAlike 4.0 (see
Freem:Copyrights
for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource.
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)