DeepSeek 爆火,你认为 DeepSeek 会成为2025年开发者必备的神器吗?
对于话题中提出的问题:DeepSeek 爆火,你认为 DeepSeek 会成为2025年开发者必备的神器吗?我的回答是肯定的,并且我已经在用已经具备DeepSeek-R1 模型选择的通义灵码插件了,并且用的体验感很好。简单来说,就是基于DeepSeek-R1 模型的通义灵码代码助手,用起来简直不要太爽...
零门槛、即刻拥有 DeepSeek-R1 满血版
DeepSeek 作为热门的推理模型,能在少量标注数据下显著提升推理能力,尤其擅长数学、代码和自然语言等复杂任务,并且接入通义灵码之后可以大大提高AI代码辅助的能力。这么强大的模型,又赶上阿里云官方推出的四种方案零门槛、即刻拥有 DeepSeek-R1 满血版 的部署操作方案,那必须亲自上手体验才能真的感受到大模型带来的魅力。
基于百炼调用 DeepSeek-R1 满血版 API
这里我主要讲述一下 基于百炼模型服务进行 DeepSeek 开源模型部署调用的方案。这个方案属于四个方案中操作难度最小,使用最方便的部署方案,并且有百万token 免费用,特别适合新手小白,或者说喜欢 DeepSeek 的技术爱好者,或者是企业测试阶段使用,详细的操作跟着我来逐步操作吧。
方案架构
本方案用户通过Chatbox 可视化界面客户端发起调用,客户端调用百炼大模型服务中对应的DeepSeek模型返回生成的回答,方案架构清晰简单
开通服务
对于首次使用阿里云百炼的阿里云账号来说,需要先开通百炼模型服务,登录 阿里云百炼大模型服务平台,进行开通。开通服务后,鼠标悬停于页面右上角的图标上,在下拉菜单中单击【API-KEY】点击【创建我的API-KEY】,并选择 归属业务空间、描述信息,点击【确定】创建完成我的API-KEY之后,点击列表右侧操作列的【查看】按钮,查看并复制创建的API-KEY 后面备用
模型广场
在 阿里云百炼大模型服务平台 ,选择左侧菜单【模型广场】-【DeepSeek】可以看到当前百炼大模型接入的DeepSeek 支持8个模型可供调用,我们选择 DeepSeek-R1模型,点击【查看详情】进入Deepseek-R1 模型详情页面,可以看到关于 Deepseek-R1模型的模型介绍、计费详情、免费额度、模型限流等信息点击顶部tab,切换【模型介绍】为【API示例】,可以获取模型服务的调用地址: https://dashscope.aliyuncs.com/compatible-mode/v1,模型名称:deepseek-r1复制后备用
Chatbox客户端调用
在使用Chatbox 客户端调用之前,首先需要下载安装 Chatbox, 访问 Chatbox 下载地址下载并安装客户端,安装完成之后,点击客户端【设置】按钮,进行如下设置保存完成后,在Chatbox 输入问题【9.9和9.10 谁大】这时会展示一个 deepseek-r1 对当前问题的一个思考过程,就是输出思维链 的内容等待问题推理结束之后给出具体的比较大小的步骤分析,并且输出问题分析后的答案,以及本次问题分析消耗的 tokens,以及选择的模型当然除了可以使用DeepSeek-R1 模型外,还可以使用其他7种模型,具体的操作可以参考我的博文:https://developer.aliyun.com/article/1652705关于部署体验和建议,在我的博文中也有详细的介绍,这里就不再重复赘述了。
DeepSeek 会成为2025年开发者必备的神器吗?
在话题开头,我已经对这个问题进行了肯定的答复,那么在这里,我还是会说,DeepSeek 必须会成为2025年开发者必备的神器。这不是一个预言,而是一个已经成真的事实。我们开发者常用的AI代码助手通义灵码,现在已经接入了DeepSeek-R1 和DeepSeek-V3 模型,在通义灵码的模型切换地方可以看到并且基于通义灵码的deepseek-r1 模型生成的代码基本可以直接使用,比如我要用通义灵码来为我写 Java 代码调用 deepseek-r1 模型的代码,在通义灵码中输入如下内容
curl -X POST https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions -H 'Authorization: Bearer $DASHSCOPE_API_KEY' -H 'Content-Type: application/json' -d '{ 'model': 'deepseek-r1', 'messages': [ { 'role': 'user', 'content': '9.9和9.11谁大' } ] }' 生成Java 调用示例
在此问题的基础上继续提问
类名用 DeepSeekR1Demo ,jsonobject 用fastjson 的jar包
可以看到,模型 deepseek-r1 展现了基于上下文的思考,分析了上面生成内容,同时融合当前提出的新需求并且也按照要求更换了 maven 依赖最终通过通义灵码新建的类 DeepSeekR1Demo,导入 fastjson jar 包依赖,引入jar包依赖后的示例代码如下
package org.example;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;
public class DeepSeekR1Demo {
public static void main(String[] args) {
try {
String apiKey = 'DASHSCOPE_API_KEY';
URL url = new URL('https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions');
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod('POST');
conn.setRequestProperty('Authorization', apiKey);
conn.setRequestProperty('Content-Type', 'application/json');
conn.setDoOutput(true);
// 使用FastJSON构建请求体
JSONObject payload = new JSONObject();
payload.put('model', 'deepseek-r1');
JSONArray messages = new JSONArray();
JSONObject message = new JSONObject();
message.put('role', 'user');
message.put('content', '9.9和9.11谁大');
messages.add(message);
payload.put('messages', messages);
// 发送请求
try (OutputStream os = conn.getOutputStream()) {
os.write(payload.toJSONString().getBytes('utf-8'));
}
// 处理响应
int code = conn.getResponseCode();
if (code == HttpURLConnection.HTTP_OK) {
try (BufferedReader br = new BufferedReader(
new InputStreamReader(conn.getInputStream(), 'utf-8'))) {
StringBuilder response = new StringBuilder();
String line;
while ((line = br.readLine()) != null) {
response.append(line);
}
JSONObject result = JSONObject.parseObject(response.toString());
System.out.println('API Response: ' + result.toJSONString());
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
将代码中的 DASHSCOPE_API_KEY 替换为我们生成的API-KEY之后发起调用,可以看到完美的返回了调用返回参数返回结果原始内容如下
{
'created': 1739790675,
'usage': {
'completion_tokens': 618,
'prompt_tokens': 12,
'total_tokens': 630
},
'model': 'deepseek-r1',
'id': 'chatcmpl-71b131ee-220f-9255-89ad-d9fd3beea6c2',
'choices': [
{
'finish_reason': 'stop',
'index': 0,
'message': {
'role': 'assistant',
'content': '**9.9比9.11大**。以下是具体分析:\n\n1. **数值对齐**:将两数统一为相同小数位数,9.9写作**9.90**,9.11保持**9.11**。\n2. **逐位比较**:\n - 整数部分均为9,相等。\n - 小数部分第一位:9(9.90)> 1(9.11),因此无需比较后续位数。\n3. **结论**:9.90 > 9.11,即**9.9 > 9.11**。\n\n**注意**:若在版本号等特殊语境中(如软件更新),9.11可能代表更高版本,但纯数值比较仍以9.9更大。',
'reasoning_content': '嗯,用户问的是9.9和9.11哪个大。这个问题看起来挺简单的,但可能用户有某种特定的考虑,或者他们可能对小数点后的位数理解有误。首先,我需要确认这两个数的数值到底是多少。\n\n先看第一个数,9.9,这显然就是九又十分之九,也就是9.90。第二个数是9.11,这里可能需要注意,用户是不是写错了,比如本来想写9.11还是9.1和1之类的,但按照给出的数字,应该是9.11,即九又百分之十一,也就是9.11。\n\n接下来比较这两个数的大小。一般来说,比较小数的时候,先比较整数部分,如果整数部分相同,再依次比较小数部分的每一位。这里的整数部分都是9,所以要看小数部分。\n\n9.9的小数部分是0.90,而9.11的小数部分是0.11。这时候可能会有一个误区,有人可能会直接比较小数点后的数字,比如认为9.9是9和9,而9.11是9和11,所以误以为9.11更大,因为11比9大。但其实小数点的位数不同,需要统一位数来比较。\n\n正确的做法是把它们写成相同的小数位数。例如,把9.9写成9.90,这样和9.11的位数就对齐了。这时候比较0.90和0.11,显然0.90大于0.11,因此9.90大于9.11,即9.9大于9.11。\n\n不过也有可能用户是在不同的上下文中使用这些数字,比如版本号或者其他非数值比较的情况。例如,软件版本中9.11可能代表的是第九版的第11次更新,而9.9则是第九版的第9次更新,这时候9.11会比9.9新。但如果是纯数学上的数值比较,那还是9.9更大。\n\n需要进一步确认用户的问题是否在数学数值比较,还是其他语境下的比较。如果用户没有特别说明,应该默认是数值比较,所以结论是9.9大于9.11。不过为了确保正确,最好再检查一下是否有其他可能的解释,比如书写错误或者不同的进位制,但通常来说应该没有问题。'
}
}
],
'object': 'chat.completion'
}
到这里,是不是就可以看到 DeepSeek 爆火,DeepSeek 已然成为了2025年开发者的必备神器。
赞8
踩0