华为云Flexus+DeepSeek征文 | 基于华为云ModelArts Studio打造AingDesk AI聊天助手
华为云Flexus+DeepSeek征文 | 基于华为云ModelArts Studio打造AingDesk AI聊天助手
- 引言
- 一、ModelArts Studio平台介绍
- 华为云ModelArts Studio简介
- ModelArts Studio主要特点
- 二、安装AingDesk应用
- AingDesk应用介绍
- 下载地址
- 安装AingDesk工具
- 三、开通DeepSeek-R1-0528商用服务
- 访问ModelArts Studio控制台
- DeepSeek-R1-0528 介绍
- 开通DeepSeek-R1-0528服务
- 生成API Key
- 复制及保存OpenAI SDK信息
- 四、AingDesk配置工作
- 添加模型供应商
- 模型选择
- 对话测试
- 五、使用体验
- 六、实践总结
引言
一、ModelArts Studio平台介绍
华为云ModelArts Studio简介
华为云ModelArts Studio
是基于ModelArts构建的一站式大模型即服务平台(MaaS),深度整合昇腾算力资源与全链路开发工具,为开发者提供从数据准备、模型训练微调、提示词工程到应用部署的全流程解决方案。平台不仅预置主流开源大模型,还具备海量数据智能预处理、自动化标注、分布式训练及模型自动生成能力,全面覆盖AI模型全生命周期管理。无论是深耕算法的工程师、AI领域初学者,还是寻求智能化转型的企业,都能依托ModelArts Studio的高效开发能力,快速实现AI应用的高质量落地与规模化部署。
华为云ModelArts Studio平台地址
:https://www.huaweicloud.com/product/modelarts/studio.html
ModelArts Studio主要特点
-
✅ 模型全、免配置、免调优、性能优
业界 SOTA 大模型覆盖度高达 99%,内置最优超参配置,结合昇腾算子优化与显存管理,显著提升训练与推理性能。 -
✅ 开箱即用,一站式模型开发服务
提供模型调优、压缩、部署、评测等全栈工具,功能覆盖大模型全生命周期,用户无需搭建即可直接使用。 -
✅ 资源一站式按需开通,建设周期短
计算资源可分钟级获取,支持按需计费、弹性扩缩容,并具备断点续训与故障快速恢复能力。 -
✅ 多服务组合竞争力,一站式应用能力集成
支持 MCP Server、LangChain、RAG、Agent、Guard、九问等组件即插即用,灵活构建复杂 AI 应用场景。 -
✅ 兼容性强,适配主流框架与自定义需求
全面支持 TensorFlow、PyTorch、MindSpore 等主流 AI 框架,同时支持用户自研算法框架接入。
二、安装AingDesk应用
AingDesk应用介绍
🌟 AingDesk 简介
AingDesk
是一款简单易用、功能丰富的 AI 助手工具,支持知识库管理、模型 API 接入、联网搜索、智能体创建、在线分享等能力,适用于个人开发者与企业用户快速构建本地化 AI 应用。
🔍 核心功能与特点
功能 | 描述 |
---|---|
一键部署本地AI模型及主流模型API | 支持本地私有模型和主流平台模型的快速接入与部署。 |
本地知识库管理 | 可上传文档建立专属知识库,实现个性化问答与检索。 |
智能体创建 | 提供灵活配置界面,轻松打造具备特定角色和行为的AI智能体。 |
在线分享功能 | 支持将对话场景一键分享给他人使用,便于协作与展示。 |
联网搜索支持 | 实时接入互联网信息,提升回答的时效性与准确性。 |
服务器端部署支持 | 支持私有化部署,保障数据安全与系统稳定性。 |
单次多模型同时对话(即将上线) | 即将支持多个AI模型在同一对话中协同工作,提升对比分析能力。 |
下载地址
- AingDesk下载地址:https://github.com/aingdesk/AingDesk/releases/tag/v1.2.4
安装AingDesk工具
下载AingDesk安装包后,在本地Windows上直接安装即可。
三、开通DeepSeek-R1-0528商用服务
访问ModelArts Studio控制台
我们登录华为云官网后,在ModelArts Studio介绍页中(官网地址:https://www.huaweicloud.com/product/modelarts/studio.html),我们点击“ModelArts Studio控制台”后,即可进入ModelArts Studio控制台页面。
DeepSeek-R1-0528 介绍
DeepSeek-R1-0528 是 DeepSeek 最新推出的大语言模型版本,专为提升复杂代码生成与数学推理能力而设计。该模型在训练数据和算法架构上进行了深度优化,显著提升了以下方面的能力:
- 逻辑推理准确性
- 程序生成效率
- 数学问题求解能力
适用于如自动化编程、科研辅助、金融建模、数据分析等对精度与性能要求极高的高端应用场景,是开发者与研究人员的理想选择。
☁️ 华为云 ModelArts Studio(MaaS 平台)正式接入 DeepSeek-R1-0528
华为云 ModelArts Studio 是一站式 AI 开发平台,现已全面接入 DeepSeek-R1-0528,进一步丰富了其 MaaS(Model as a Service)服务能力。
基于 昇腾云的强大算力底座,用户可实现:
✅ 一键部署调用
✅ 低成本灵活扩展
✅ 高效应对复杂AI任务
此次合作不仅显著增强了平台在代码生成与数学推理方面的表现,也大幅降低了使用门槛与成本,助力开发者与企业快速构建智能化应用,推动 AI 技术落地。
📌 立即体验 DeepSeek-R1-0528,开启智能开发新篇章!
开通DeepSeek-R1-0528服务
在ModelArts Studio控制台首页的左侧菜单栏中,我们选择模型推理——在线推理,选择商务服务DeepSeek-R1-0528,点击“开通服务”。
备注:
服务类型 | 描述 | 注意事项 |
---|---|---|
免费服务 | 适合用于体验模型,受严格的速率限制。 | 平台可能会不定时调整其适用模型、免费额度、有效期等内容。 |
- 单个模型提供200万token推理额度。 | 额度消耗完后可选择开通商用级别的推理API服务或部署为付费服务使用。 | |
商用服务 | 提供商用级别的推理API服务。 | 开通后可获取付费API服务(仅限贵阳一)。 |
- 用户可以前往费用中心查看模型服务的优惠折扣发放和使用情况。 | 可以前往“我的服务”部署为个人服务后付费使用。 |
点击“开通服务”后,我们勾选同意协议,确认“
立即开通
”。
生成API Key
进入API Key管理页面。可以选择“创建API Key”,注意保存此API Key,建议保存在本地以便后续使用。
复制及保存OpenAI SDK信息
我们可以查看DeepSeek-R1-0528的使用说明,只需要点击“调用说明”选项。
调用说明如下所示,我们将DeepSeek-R1-0528服务的OpenAI SDK相关文件复制,保存在本地文本文件或本地笔记中。
四、AingDesk配置工作
添加模型供应商
在AingDesk的左下角中,我们点击【第三方模型API】,进入模型配置页面。
在第三方API配置界面中,点击【添加模型服务商】,进行其添加界面。
可参考以下配置填写:
- 供应商名称:华为云
- 接口地址:https://api.modelarts-maas.com/v1
- 密钥: 填写API Key
在刚才的自定义的模型服务商华为云中,可以看到已经自动为我们拉取华为云ModelArts Studio提供的模型名称列表,包括
deepseek-r1-250528
等。
模型选择
在AingDesk对话设置中,在上方的模型选择中,我们直接选择刚才添加的模型
deepseek-r1-250528
。
对话测试
在第一轮对话测试中,当我们询问对方的身份时,DeepSeek-R1-250528 模型给出了非常准确的回答。
在第二轮对话测试中,我们询问了《简·爱》的主要内容,AingDesk AI聊天助手给出了完整且准确的回答,充分展现了其出色的语义理解和知识整合能力。这也体现了华为云ModelArts Studio上部署的DeepSeek-R1-250528模型在实际应用中的强大性能与商用价值。
在第三轮对话中,我们向 AingDesk 提出请求:“请为我们生成一个漂亮美观的生日祝福 HTML 静态网页。”AingDesk 快速生成了一个界面美观、结构清晰且具有良好可读性的 HTML 静态网页,整体质量表现非常出色。
<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>温馨生日祝福</title><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css"><style>* {margin: 0;padding: 0;box-sizing: border-box;}body {font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;background: linear-gradient(135deg, #ff9a9e 0%, #fad0c4 100%);height: 100vh;overflow: hidden;display: flex;justify-content: center;align-items: center;color: #5a3e36;}.container {background: rgba(255, 255, 255, 0.85);border-radius: 20px;box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);padding: 40px;max-width: 800px;width: 90%;text-align: center;position: relative;overflow: hidden;backdrop-filter: blur(10px);border: 1px solid rgba(255, 255, 255, 0.3);z-index: 10;}.birthday-title {font-size: 3.5rem;margin-bottom: 20px;color: #e74c3c;text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);letter-spacing: 2px;animation: pulse 2s infinite;}.message {font-size: 1.25rem;line-height: 1.8;margin-bottom: 30px;color: #5a3e36;}.cake-container {position: relative;height: 200px;margin: 30px 0;}.cake {position: absolute;bottom: 0;left: 50%;transform: translateX(-50%);width: 200px;height: 100px;background: linear-gradient(to right, #e6b980 0%, #eacda3 100%);border-radius: 10px 10px 0 0;z-index: 5;}.cake:before {content: '';position: absolute;top: -10px;left: 0;width: 100%;height: 20px;background: linear-gradient(to right, #f8b500 0%, #fceabb 100%);border-radius: 10px 10px 0 0;}.candle {position: absolute;bottom: 100px;width: 10px;height: 40px;background: #fff;z-index: 10;border-radius: 5px 5px 0 0;}.candle:nth-child(1) { left: 45%; }.candle:nth-child(2) { left: 50%; }.candle:nth-child(3) { left: 55%; }.flame {position: absolute;top: -15px;left: 50%;transform: translateX(-50%);width: 12px;height: 20px;background: #ffde7d;border-radius: 50% 50% 20% 20%;box-shadow: 0 0 15px #ffde7d, 0 0 30px #ff9a3c;animation: flicker 1.5s infinite alternate;}.wishes {font-style: italic;font-size: 1.4rem;margin-top: 30px;color: #e74c3c;font-weight: 600;}.balloon {position: absolute;width: 60px;height: 70px;border-radius: 50%;bottom: -100px;z-index: 1;}.balloon:before {content: '';position: absolute;bottom: -20px;left: 50%;transform: translateX(-50%);width: 2px;height: 30px;background: rgba(255, 255, 255, 0.6);}.balloon:nth-child(1) { left: 10%; background: radial-gradient(circle at 30% 30%, #ff9a9e, #e74c3c);animation: float 15s linear infinite;animation-delay: 0s;}.balloon:nth-child(2) { left: 20%; background: radial-gradient(circle at 30% 30%, #a6c1ee, #3498db);animation: float 18s linear infinite;animation-delay: 2s;}.balloon:nth-child(3) { left: 30%; background: radial-gradient(circle at 30% 30%, #c2e59c, #64b3f4);animation: float 14s linear infinite;animation-delay: 1s;}.balloon:nth-child(4) { left: 70%; background: radial-gradient(circle at 30% 30%, #ffecd2, #fcb69f);animation: float 16s linear infinite;animation-delay: 4s;}.balloon:nth-child(5) { left: 80%; background: radial-gradient(circle at 30% 30%, #d4fc79, #96e6a1);animation: float 17s linear infinite;animation-delay: 3s;}.balloon:nth-child(6) { left: 90%; background: radial-gradient(circle at 30% 30%, #fbc2eb, #a6c1ee);animation: float 12s linear infinite;animation-delay: 5s;}.confetti {position: absolute;width: 10px;height: 10px;background: #f1c40f;border-radius: 50%;top: -20px;animation: confetti-fall 5s linear infinite;}.btn {background: linear-gradient(to right, #ff9a9e, #fad0c4);border: none;padding: 15px 40px;font-size: 1.2rem;border-radius: 50px;cursor: pointer;color: white;font-weight: 600;margin-top: 20px;box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);transition: all 0.3s ease;z-index: 20;position: relative;}.btn:hover {transform: translateY(-5px);box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);}.signature {margin-top: 30px;font-size: 1.1rem;color: #7f8c8d;font-style: italic;}@keyframes float {0% { transform: translateY(0) rotate(0deg);bottom: -100px;}100% { transform: translateY(-120vh) rotate(360deg); bottom: 100vh;}}@keyframes flicker {0%, 100% { height: 20px; box-shadow: 0 0 15px #ffde7d, 0 0 30px #ff9a3c;}50% { height: 24px; box-shadow: 0 0 20px #ffde7d, 0 0 40px #ff6b6b;}}@keyframes pulse {0% { transform: scale(1); }50% { transform: scale(1.05); }100% { transform: scale(1); }}@keyframes confetti-fall {0% { transform: translateY(0) rotate(0deg); opacity: 1;}100% { transform: translateY(100vh) rotate(720deg); opacity: 0;}}@media (max-width: 768px) {.birthday-title {font-size: 2.5rem;}.message {font-size: 1.1rem;}.cake-container {height: 150px;}.cake {width: 150px;}}</style>
</head>
<body><!-- 气球装饰 --><div class="balloon"></div><div class="balloon"></div><div class="balloon"></div><div class="balloon"></div><div class="balloon"></div><div class="balloon"></div><!-- 主要内容容器 --><div class="container"><h1 class="birthday-title"><i class="fas fa-birthday-cake"></i> 生日快乐! <i class="fas fa-birthday-cake"></i></h1><p class="message">在这特别的日子里,愿所有的快乐、所有的幸福、所有的温馨、所有的好运都围绕在你的身边!愿你的每一天都如今天般灿烂美好,愿你的梦想都能实现,愿你的生活充满欢笑和惊喜。</p><div class="cake-container"><div class="cake"><div class="candle"><div class="flame"></div></div><div class="candle"><div class="flame"></div></div><div class="candle"><div class="flame"></div></div></div></div><p class="wishes"><i class="fas fa-heart"></i> 愿你拥有一个难忘的生日! <i class="fas fa-heart"></i></p><button class="btn" id="confettiBtn"><i class="fas fa-gift"></i> 释放庆祝彩花</button><p class="signature">—— 来自所有关心你的人</p></div><script>// 创建彩花效果document.getElementById('confettiBtn').addEventListener('click', function() {const colors = ['#f1c40f', '#e74c3c', '#3498db', '#2ecc71', '#9b59b6', '#1abc9c'];const container = document.querySelector('.container');for (let i = 0; i < 100; i++) {const confetti = document.createElement('div');confetti.className = 'confetti';confetti.style.left = Math.random() * 100 + '%';confetti.style.animationDelay = Math.random() * 5 + 's';confetti.style.backgroundColor = colors[Math.floor(Math.random() * colors.length)];confetti.style.width = Math.random() * 15 + 5 + 'px';confetti.style.height = confetti.style.width;container.appendChild(confetti);// 移除彩花元素以优化性能setTimeout(() => {confetti.remove();}, 5000);}// 添加按钮效果this.innerHTML = '<i class="fas fa-gift"></i> 彩花飞舞中...';this.disabled = true;setTimeout(() => {this.innerHTML = '<i class="fas fa-gift"></i> 再次释放彩花';this.disabled = false;}, 2000);});// 添加更多彩花背景效果setInterval(() => {const confetti = document.createElement('div');confetti.className = 'confetti';confetti.style.left = Math.random() * 100 + '%';confetti.style.animationDuration = Math.random() * 3 + 5 + 's';confetti.style.backgroundColor = ['#f1c40f', '#e74c3c', '#3498db', '#2ecc71', '#9b59b6', '#1abc9c'][Math.floor(Math.random() * 6)];confetti.style.width = Math.random() * 10 + 5 + 'px';confetti.style.height = confetti.style.width;document.body.appendChild(confetti);// 移除彩花元素以优化性能setTimeout(() => {confetti.remove();}, 6000);}, 200);</script>
</body>
</html>
五、使用体验
在基于华为云 ModelArts Studio 平台部署并使用 AingDesk AI 聊天助手 的过程中,我深刻感受到其强大的集成能力与出色的交互体验。整个部署流程简洁高效,平台提供了完善的模型管理、API 配置和在线调试功能,即使是初次接触AI开发的用户也能快速上手。借助 DeepSeek 提供的高质量语言模型 DeepSeek-R1-250528,AingDesk 展现出了极高的对话理解能力和多轮交互稳定性,在知识问答、代码生成、网页设计等多个场景下都表现优异。无论是本地测试还是对外服务,系统响应迅速,输出内容准确且富有逻辑性,真正实现了“开箱即用”的智能助手体验。通过此次实践,我对华为云 ModelArts Studio 在 AI 工程化落地方面的强大支撑能力有了更深入的认识,也为 AingDesk 在未来更多应用场景中的拓展充满信心。
六、实践总结
🎯 总结:强强联合,让 AI 开发更简单高效!
在本次基于 华为云 ModelArts Studio 打造 AingDesk AI 聊天助手 的实践中,我们深刻感受到华为云在 AI 领域的强大支撑能力。从模型部署到接口调用,再到服务上线,整个流程高效流畅,真正实现了“开箱即用”的智能开发体验。结合 Flexus 弹性云服务器 和 DeepSeek 高质量大模型,AI 应用落地从未如此轻松。
⚡ ModelArts Studio:一站式 AI 工程化平台典范
华为云 ModelArts Studio 凭借其一站式的开发体验、可视化的操作界面与强大的资源调度能力,成为我们构建 AI 助手的理想选择。无论是本地模型部署、API 接口封装,还是多模型协同测试,ModelArts Studio 都展现了卓越的稳定性与灵活性,极大降低了 AI 开发门槛。
- ✅ 模型一键部署
- 🔧 接口快速调试
- 📊 服务实时监控
- 🌐 多环境灵活切换
🌟 华为云 + DeepSeek = AI 未来的最佳拍档
通过本次项目,我们不仅验证了 AingDesk AI 聊天助手 在问答、代码生成、网页设计等多个场景下的实用价值,也更加坚定了对 华为云平台 和 DeepSeek 模型能力的信心。两者强强联合,为企业和个人开发者提供了从想法到落地的完整解决方案。
🚀 如果你也想打造属于自己的 AI 应用,不妨从 华为云 ModelArts Studio 开始,开启你的智能开发之旅!