【JAVA】阿里云百炼平台对接DeepSeek-V3大模型使用详解
1、DeepSeek简介
DeepSeek的火热让全世界见证了一场国产AI大模型走向巅峰的盛宴。DeepSeek的横空出世一方面让AI大模型的格局得到重塑,另一方面,对于普通人来说,也有机会零距离的体验到更懂国人的AI大模型。从很多使用过后的小伙伴们的反馈来看,DeepSeek的回答更有作为”人”的人性且有温度的回答,另一方面,很多团以开始尝试本地部署DeepSeek模型,不过考虑到部署依颊的硬件环境资源开销巨大,所以许多云厂商陆续入场,提供低成本、甚至接近零成本的接入方式,方便开发者或应用对接者快速使用,比如腾讯元宝、阿里云百炼平台等。
本文以阿里云百炼平台为例,分享如何基于阿里云百炼平台快速接入和使用DeepSeek模型。
2、阿里百炼
阿里百炼调用模型服务平台接口的流程包括以下几步:
-
注册并登录模型服务平台
官网地址:https://www.aliyun.com/product/bailian -
申请调用模型API的Key:
当您调用大模型时,需要获取API Key作为调用时的鉴权凭证。
-
查看接口文档
-
调用API。(调用方式SDK或者HTTP的方式)
3、JAVA调用
3.1 JAR包引用
<dependency><groupId>com.squareup.okhttp3</groupId><artifactId>okhttp</artifactId><version>4.9.3</version></dependency>
3.2 代码
import com.google.gson.Gson;
import com.google.gson.JsonObject;
import okhttp3.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit;public class AliDs {private static final Logger LOGGER = LoggerFactory.getLogger(AliDs.class);// OpenAI API 密钥private static final String API_KEY = "sk-*****";// OpenAI API 基础 URLprivate static final String BASE_URL = "https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions";// 模型名称private static final String MODEL = "deepseek-v3";// 温度参数private static final double TEMPERATURE = 0.30;private static OkHttpClient client = new OkHttpClient.Builder().connectTimeout(240, TimeUnit.SECONDS) // 连接超时时间.readTimeout(240, TimeUnit.SECONDS) // 读取超时时间.writeTimeout(240, TimeUnit.SECONDS) // 写入超时时间.build();public static void main(String[] args) {long startTime = System.currentTimeMillis();JsonObject result = doTask();LOGGER.info(result.toString());long endTime = System.currentTimeMillis();long time = (endTime - startTime) / 1000;LOGGER.info("运行时间:" + time + "秒");}public static JsonObject doTask() {try {// 构建消息列表List<JsonObject> messages = new ArrayList<>();JsonObject userMessage = new JsonObject();userMessage.addProperty("role","user");userMessage.addProperty("content", "你是谁?");messages.add(userMessage);// 调用 chat-completionString completionResponse = chatCompletion(client, messages);System.out.println(completionResponse);JsonObject jsonObject = new Gson().fromJson(completionResponse, JsonObject.class);return jsonObject;} catch (Exception e){e.printStackTrace();return null;}}// 调用 chat-completion 接口private static String chatCompletion(OkHttpClient client, List<JsonObject> messages) {JsonObject requestBody = new JsonObject();requestBody.addProperty("model", MODEL);requestBody.add("messages", new Gson().toJsonTree(messages));JsonObject responseFormat = new JsonObject();responseFormat.addProperty("type", "json_object");requestBody.add("response_format", responseFormat);requestBody.addProperty("temperature", TEMPERATURE);
// requestBody.addProperty("stream", false);Request request = new Request.Builder().url(BASE_URL).addHeader("Authorization", "Bearer " + API_KEY).addHeader("Content-Type", "application/json").post(RequestBody.create(requestBody.toString(), MediaType.parse("application/json"))).build();try (Response response = client.newCall(request).execute()) {if (!response.isSuccessful()) {throw new IOException("Unexpected code " + response);}String responseBody = response.body().string();return responseBody;} catch (IOException e) {e.printStackTrace();return null;}}}
3.3 输出结果
{"output": {"choices": [{"finish_reason": "stop","message": {"role": "assistant","content": "你好!我是DeepSeek-R1,一个由深度求索公司开发的人工智能助手,我擅长通过思考来帮您解答复杂的数学,代码和逻辑推理等理工类问题。如需最新模型体验,请前往深度求索的官方网站查询。","reasoning_content": "好的,用户问“你是谁?”,我需要回答这个问题。首先,我要回想一下之前设置的自我介绍内容,确保一致性。用户可能是刚开始使用,或者想确认我的身份和功能。\n\n我需要明确说明我是DeepSeek-R1,由深度求索公司开发的人工智能助手。要强调我的目的是帮助用户解决问题,提供信息,同时保持友好和专业的语气。\n\n同时,用户可能有更深层的需求,比如确认我的能力范围,或者想知道我与其他AI的不同。所以可以适当提到我的功能,比如回答问题、提供建议等,但不需要太详细,保持简洁。\n\n还要注意避免使用技术术语,保持回答自然易懂。最后,保持开放式的结尾,鼓励用户继续提问,促进进一步的交流。"}}]},"usage": {"total_tokens": 226,"output_tokens": 206,"input_tokens": 20},"request_id": "9fb73af5-940e-9107-a4b6-74c9e541eb3f" }
相关文章:
【JAVA】阿里云百炼平台对接DeepSeek-V3大模型使用详解
1、DeepSeek简介 DeepSeek的火热让全世界见证了一场国产AI大模型走向巅峰的盛宴。DeepSeek的横空出世一方面让AI大模型的格局得到重塑,另一方面,对于普通人来说,也有机会零距离的体验到更懂国人的AI大模型。从很多使用过后的小伙伴们的反馈来…...
springboot项目部署脚本
Springboot部署脚本 该脚本可用于jenkins自动执行,具有以下功能 适配所有以内嵌tomcat容器springboot项目jar包可根据参数选择环境,基于profiles可自动识别并关闭已存在进程第一个参数是指定jar包所在绝对路径(该路径下必须有且仅有一个.jar文件) 第二…...
黑马Java面试教程_P5_微服务
系列博客目录 文章目录 系列博客目录1.引言2.Spring Cloud2.1 Spring Cloud 5大组件有哪些?面试文稿 2.2 服务注册和发现是什么意思?Spring Cloud 如何实现服务注册发现?面试文稿 2.3 我看你之前也用过nacos、你能说下nacos与eureka的区别?面试文稿 2.4 你们项目负载均衡如…...
使用Fuse-DFS挂载文件存储 HDFS-后端存储ceph
1. 编译环境准备 yum install cmake3 ln -s /usr/bin/cmake3 /usr/bin/cmake yum install gcc-c安装挂载依赖 yum -y install fuse fuse-devel fuse-libs执行以下命令,载入FUSE模块 modprobe fuse2. 下载源码包 hadoop-3.3.4-src.tar.gz解压后执行以下命令 打开…...
生成式AI项目的生命周期
总结自视频(吴恩达大模型入门课):9_13_generative-ai-project-lifecycle_哔哩哔哩_bilibili 生成周期如下图,包含四部分:任务范围(Scope),选择大模型(Select)…...
SOC-ATF 安全启动BL1流程分析(1)
一、ATF 源码下载链接 1. ARM Trusted Firmware (ATF) 官方 GitHub 仓库 GitHub 地址: https://github.com/ARM-software/arm-trusted-firmware 这是 ATF 的官方源码仓库,包含最新的代码、文档和示例。 下载方式: 使用 Git 克隆仓库: git…...
游戏引擎学习第127天
仓库:https://gitee.com/mrxiao_com/2d_game_3 为本周设定阶段 我们目前的渲染器已经实现了令人惊讶的优化,经过过去两周的优化工作后,渲染器在1920x1080分辨率下稳定地运行在60帧每秒。这个结果是意料之外的,因为我们没有预计会达到这样的…...
Grafana使用日志7--开启Sigv4
背景 在Grafana中,有些data source是需要开启sigv4认证的,例如OpenSearch,这个配置项默认是关闭的,这里我们介绍一下怎么开启 步骤 传统方式 如果我们想在Grafana中开启sigv4认证,我们需要在grafana.ini中修改一个…...
UWB人员定位:精准、高效、安全的智能管理解决方案
在现代企业管理、工业生产、安全监测等领域,UWB(超宽带)人员定位系统正逐步成为高精度定位技术的首选。相较于传统的GPS、Wi-Fi、蓝牙等定位方式,UWB具备厘米级高精度、低延迟、高安全性、抗干扰强等突出优势,能够实现…...
二、QT和驱动模块实现智能家居----2、编译支持QT的系统
因为我们的Linux内核文件不支持QT系统(当然如果你的支持,完全跳过这篇文章),所以我们要从网上下载很多软件包,这里直接用百问网的软件包,非常方便。 一:Ubuntu 配置 1 设置交叉编译工具链 以…...
Windows上使用go-ios实现iOS17自动化
前言 在Windows上运行iOS的自动化,tidevice对于iOS17以上并不支持,原因是iOS 17 引入新通信协议 RemoteXPCQUIC,改变了 XCUITest 的启动方式。 一、go-ios的安装 1、安装命令:npm i go-ios 2、安装完成后输入命令which io…...
越南SD-WAN跨境组网专线助力制造业访问国内 OA、ERP系统难题
近年来,随着全球制造业格局的不断调整,越来越多的制造业企业选择将工厂建立在越南。越南凭借其相对低廉的劳动力成本、优惠的政策以及优越的地理位置,吸引了大量的外资制造业企业入驻。然而,这些在越南设厂的企业却面临着一个棘手…...
【广度优先搜索】图像渲染 岛屿数量
文章目录 733. 图像渲染解题思路:BFS200. 岛屿数量解题思路:广度优先遍历 733. 图像渲染 733. 图像渲染 有一幅以 m x n 的二维整数数组表示的图画 image ,其中 image[i][j] 表示该图画的像素值大小。 你也被给予三个整数 sr , sc 和…...
Rust学习总结之-枚举
枚举是一个很多语言都有的功能,不过不同语言中其功能各不相同但是要表达的意思是一致的,枚举就是对于一个事物可以穷举出所有可能得值。比如说人的性别就可以用枚举,男人和女人两种。下面我们来学习Rust中的枚举。 一:枚举定义 …...
Linux下用route命令修改默认网关,不用重启网络
在Linux系统中,可以使用route命令来修改默认网关,而不需要重启网络。 下面是使用route命令修改默认网关的步骤: 打开终端窗口,以root用户或拥有sudo权限的用户身份登录。 使用以下命令查看当前的路由表信息: route…...
Datawhale 数学建模导论二 笔记5 多模数据与智能模型
主要涉及到的知识点有: 数字图像处理与计算机视觉 计算语言学与自然语言处理 数字信号处理与智能感知 10.1 数字图像处理与计算机视觉 视觉信息是我们第一种非常规的数据模式,在Python当中可以使用opencv处理数字图像,并提取出视觉特征用…...
【练习】【贪心】力扣1005. K 次取反后最大化的数组和
题目 1005 K 次取反后最大化的数组和 给你一个整数数组 nums 和一个整数 k ,按以下方法修改该数组: 选择某个下标 i 并将 nums[i] 替换为 -nums[i] 。 重复这个过程恰好 k 次。可以多次选择同一个下标 i 。 以这种方式修改数组后,返回数组 可…...
python学习七
作用域: 在编程语言中定义变量的可见性和生命周期的规则集合。它决定了在程序中的哪些位置可以访问或引用某个变量 1.全局作用域: 全局作用域是指在整个程序中都可见的变量。在函数外 部定义的变量通常具有全局作用域,在任何地方都可以访问和…...
安全运营的“黄金4小时“:如何突破告警疲劳困局
在当今复杂多变的网络安全环境中,安全团队面临着前所未有的挑战。尤其是面对高级持续性威胁(APT)时,最初的“黄金4小时”成为决定成败的关键窗口。在这段时间内,快速而准确地响应可以极大地降低损失,然而&a…...
本地部署Embedding模型API服务的实战教程
大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于大模型算法的研究与应用。曾担任百度千帆大模型比赛、BPAA算法大赛评委,编写微软OpenAI考试认证指导手册。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。授权多项发明专利。对机器学…...
SciencePlots——绘制论文中的图片
文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了:一行…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
java 实现excel文件转pdf | 无水印 | 无限制
文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...
剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...
Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...
如何配置一个sql server使得其它用户可以通过excel odbc获取数据
要让其他用户通过 Excel 使用 ODBC 连接到 SQL Server 获取数据,你需要完成以下配置步骤: ✅ 一、在 SQL Server 端配置(服务器设置) 1. 启用 TCP/IP 协议 打开 “SQL Server 配置管理器”。导航到:SQL Server 网络配…...
算法刷题-回溯
今天给大家分享的还是一道关于dfs回溯的问题,对于这类问题大家还是要多刷和总结,总体难度还是偏大。 对于回溯问题有几个关键点: 1.首先对于这类回溯可以节点可以随机选择的问题,要做mian函数中循环调用dfs(i&#x…...
Vue 实例的数据对象详解
Vue 实例的数据对象详解 在 Vue 中,数据对象是响应式系统的核心,也是组件状态的载体。理解数据对象的原理和使用方式是成为 Vue 专家的关键一步。我将从多个维度深入剖析 Vue 实例的数据对象。 一、数据对象的定义方式 1. Options API 中的定义 在 Options API 中,使用 …...
IP选择注意事项
IP选择注意事项 MTP、FTP、EFUSE、EMEMORY选择时,需要考虑以下参数,然后确定后选择IP。 容量工作电压范围温度范围擦除、烧写速度/耗时读取所有bit的时间待机功耗擦写、烧写功耗面积所需要的mask layer...
