-
本地上传文件到云主机,看说明是上传到云存储空间,上传文件后在云主机里看不到啊
-
一、 案例介绍鲲鹏和传统X86两者的指令集不同(X86是复杂指令集、鲲鹏使用精简指令集),一样的代码经过编译后,在不同的芯片架构下转换成的不同的机器码,从而不能交叉运行。为了帮助开发者解决将软件从X86平台迁移到鲲鹏平台过程中遇到的疑难问题,鲲鹏提供了DevKit迁移工具,帮助开发者更快更方便的实现跨平台软件的迁移。本次实验将完成鲲鹏DevKit代码迁移工具的使用,了解其基本功能和使用方法。本案例将指导开发者如何使用鲲鹏DevKit代码迁移工具,以smartdenovo软件包为待迁移案例展示C/C++软件的快速迁移过程,达到快速完成C&C++源码迁移的实验目的。如果希望更进一步了解DevKit代码迁移工具Porting Advisor,欢迎大家前往鲲鹏社区了解代码迁移工具的详细使用方法:https://www.hikunpeng.com/document/detail/zh/kunpengdevps/porting/qs/qs-pa-kunpengdevps.html二、 免费领取云主机如您还没有云主机,可点击链接,根据领取指南进行操作。如您已领取云主机,可直接开始实验。三、 实验流程说明:① 下载迁移源码;② 自动部署装有DevKit的鲲鹏服务器; ③ 安装鲲鹏代码迁移插件; ④ 登录DevKit工具;⑤ 执行源码扫描任务;⑥ 根据扫描报告修改源码。四、下载迁移源码smartdenovo是一款在github上开源的一款基于C语言开发的开源软件,基于X86平台进行开发,源码地址如下:cid:link_8。在实验的过程中,还需要avxToNeon的源代码,当应用程序从x86架构移植到鲲鹏架构时,由于Arm64指令名称和功能与x86不同,需要进一步开发指令。为了减少用户的移植工作量,在avxToNeon项目中,常用的AVX指令被封装为独立的模块, AVX指令被相关的NEON SIMD指令取代,而指令名称和功能保持不变。用户可以通过将相关头文件导入应用软件来调用相应的指令。avxToNeon的源码存放地址如下:cid:link_7。在云主机桌面创建smart-denovo文件夹,在该文件夹下打开终端命令窗口,克隆两个开源项目代码:将AvxToNeon复制到smartdenovo项目目录下,然后将smartdenovo打成zip压缩包,留作后面创建源码迁移任务。五、自动部署装有DevKit的鲲鹏服务器在云主机打开终端窗口,执行自动部署命令:hcd deploy --password 远端服务器密码 --time 3600# --password 待部署项目所在ECS的root用户密码(至少8个字符)# --time value 待部署资源的保留期(单位为秒,至少600秒,默认600秒)。当前实验预估需要1小时,可以配置time为1-2小时保留期。该命令会自动部署鲲鹏服务器并安装DevKit。首次部署会直接执行,旧资源未到期时重复部署,会提示是否删除前面创建的资源,可以删除旧资源再次部署。记录部署远端服务器公网IP、Devkit平台访问地址,如截图中对应的就是:124.71.195.85、https://124.71.195.85:8084。这里自动部署安装有DevKit工具的ECS服务器使用到的Terraform可以在部署后,到华为开发者空间,鲲鹏沙箱资源中进行下载,下载后您可以在华为云资源编排服务RFS通过该模板进行部署安装有DevKit工具的ECS服务器。六、安装鲲鹏代码迁移插件方式一:在线安装进入云主机,打开CodeArts IDE,点击左侧“扩展”搜索“Kunpeng Porting Advisor Plugin”点击安装该插件。方式二:本地安装前往鲲鹏社区官网下载插件Kunpeng Porting Advisor Plugin到云主机,下载地址为:CodeArts IDE插件市场。在云主机桌面,打开CodeArts IDE开发环境,单击右侧“扩展”按钮,点击从本地安装,选择下载好的插件安装。使用任一方式安装好插件后,在CodeArts IDE点击左上角“文件”,选择“设置”,在设置界面选择“应用程序”-“代理服务器”,将“Proxy Support”设置为“off”。七、登录DevKit工具在云主机进入CodeArts IDE,打开安装好的鲲鹏代码迁移插件,点击点击“…”中的“配置远端服务器”。填配置远端服务器成功后,点击“登录”,首次登录需要创建管理员密码。安装完成后选择“采用SSH连接时输入的IP地址xxx.xxx.xx.xx”然后点击立即登录。首次登录需要设置密码,设置密码后进行登录。八、执行源码扫描任务登录代码迁移工具成功后,在插件窗口新建源码迁移任务。 在新建源码迁移任务界面,上传步骤五打好的smartdenovo.zip压缩包,目标操作系统切换成CentOS 7.6,其他保持默认,点击“开始分析”。扫描完成完成后,点击CodeArts IDE下面“终端”登录到远端弹性云服务器(命令:ssh root@远端服务器公网IP),在远端服务器中执行以下命令,编译迁移前的代码,对比迁移效果。尝试编译未进行迁移修改的代码,查看是否可以编译成功。编译运行命令如下:cd /opt/portadv/portadmin/sourcecode/smartdenovo/make从执行结果中可以看到,编译过程报错,无法成功编译smartdenovo软件包。接下来根据扫描报告修改源码后再编译。九、根据扫描报告修改源码在扫描报告界面,可以在“需要迁移的源文件”下查看需要修改文件,点击“查看建议代码”后可跳转到源码页面,根据修改建议直接修改源码。从迁移报告中可以得知,有Makefile和ksw.c两个文件需要修改。首先点击ksw.c对应的“查看建议代码”按钮,修改ksw.c的源代码。1、修改源码文件ksw.c根据源码页面中的红色波浪线发现一共有两处修改点修改点一:点击“快速修复…”按钮后,在右下角的弹框中点击确认按钮,自动完成此处的代码适配。修改后,效果如下:修改点二:使用快速自动修改,修改效果如下图所示,增加了ARM的NEON指令库头文件。增加的头文件需要引入到工程中,点击CodeArts IDE下面菜单栏中“终端”,登录远端弹性云服务器(命令:ssh root@远端服务器公网IP),在远端服务器中执行以下命令将头文件目录复制一份到/opt/portadv/portadmin/sourcecode/smartdenovo的include目录里。cd /opt/portadv/portadmin/sourcecode/smartdenovomkdir includecp -r /opt/portadv/portadmin/sourcecode/smartdenovo/AvxToNeon /opt/portadv/portadmin/sourcecode/smartdenovo/include/AvxToNeon2、修改构建文件Makefile在“源码迁移建议”页面,查看Makefile文件的修改建议,悬浮在黄色波浪线的语句上,可以看到详细的迁移建议。根据建议,Makefile文件中需要给CFLAGS变量增加选项内容-march=armv8-a -fsigned-char,同时,还需要删除CFLAGS变量中的选项“-mpopcnt”和“-msse3”。 同时,由于增加了额外的Neon库头文件,Makefile文件中还需要给CFLAGS变量增加选项内容-I./include/AvxToNeon。同时由于CentOS7.6编译器GCC4.8.5默认采用C89标准编译,需执行使用C99标准编译,还需要给CFLAGS变量增加选项内容 -std=c99。修改效果如下:图片中5-7行代码修改为如下:CFLAGS=-I./include/AvxToNeon -g3 -W -Wall -O0 -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -march=armv8-a -fsigned-char -std=c99elseCFLAGS=-I./include/AvxToNeon -W -Wall -O4 -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -march=armv8-a -fsigned-char -std=c99此外,因smartdenovo的系统兼容性问题,在CodeArts IDE的系统中无法直接编译,还需要修改 smartdenovo/wtlay.h 文件。点击CodeArts IDE下面菜单栏中“终端”,登录远端弹性云服务器(命令:ssh root@远端服务器公网IP),在远端服务器中执行以下命令进行修改:cd /opt/portadv/portadmin/sourcecode/smartdenovo/vi wtlay.h回车后进入编辑界面,点击ESC按键后,输入:515,按回车后跳转到515行,按下键盘上的A按键,进入编辑模式,如下图所示。在该行前面添加“static”,修改完成后点击ESC按键,输入:wq!,点击回车。至此,所有源码迁移修改都已经完毕。点击CodeArts IDE下面菜单栏中“终端”,登录远端弹性云服务器(命令:ssh root@远端服务器公网IP),在远端服务器中执行以下命令进行编译,从输出中可以看到,编译成功完成,无报错信息展示:cd /opt/portadv/portadmin/sourcecode/smartdenovo/make迁移后可以在远端鲲鹏服务器上编译成功。点击CodeArts IDE下面菜单栏中“终端”,登录远端弹性云服务器(命令:ssh root@远端服务器公网IP),在远端服务器中编译生成的二进制文件有 wtmsa,wtcns,wtlay等。可以执行这些文件看看。./wtmsa到这里整个实验流程就已经结束了,通过上面的源码迁移动作我们拿到了可以在鲲鹏平台上运行的smartdenovo软件包。各位鲲鹏开发者也可以参考上面的软件迁移过程迁移一些其他的跨平台软件,同时探索迁移工具提供的软件包扫描、亲和分析等功能,更深入的掌握迁移工具的使用方法。除了上述学习内容,我们还提供了很多辅助学习资源(课程/实验/文档/文章),希望能帮助到您更好的使用鲲鹏DevKit迁移工具:鲲鹏代码迁移工具介绍(课程)学习路径 - 应用跨平台迁移(课程)
-
一、 案例介绍本实验是基于FunctionGraph和API Gateway的画图小程序,使用了API Gateway作为前端访问入口,通过API Gateway触发器将用户的请求转发到FunctionGraph中的画图小程序后端服务。通过无服务器架构和RESTful API实现了前后端分离,部署一个简单易用的在线画图工具。二、 免费领取云主机如您还没有云主机,可点击链接,根据领取指南进行操作。如您已领取云主机,可直接开始实验。三、 实验流程说明:① 下载画图应用;② 安装FunctionGraph插件;③ 创建函数; ④ 部署函数;⑤ 修改API;⑥ 访问画图应用。四、 下载压缩包下载画图应用源码压缩包到云主机,浏览器打开下载链接直接下载:cid:link_0五、安装FuctionGraph插件方式一:在线安装进入云主机,打开CodeArts IDE,点击左侧“扩展”搜索“CodeArts FunctionGraph”点击安装该插件。方式二:本地安装前往鲲鹏社区官网下载插件CodeArts FunctionGraph到云主机,下载地址为:CodeArts IDE插件市场。在云主机桌面,打开CodeArts IDE开发环境,单击右侧“扩展”按钮,点击从本地安装,选择下载好的插件安装。六、创建函数在插件中创建函数,选择HTTP函数。模板选择Hello World。函数名称可以设置为:draw。函数路径可以自由选择云主机上的文件夹。创建好函数之后,打开“工程”菜单可以看到刚创建的函数内容:七、修改函数将画图应用代码复制到刚创建的函数,可以直接采用拖拽的方式复制,同名的文件直接“替换”即可。八、部署函数打开FunctionGraph插件,点击“…”,选择“部署函数”,选择创建好的函数:draw 。部署区域选择“华北-北京四”。部署成功后,可以在FunctionGraph插件中查看到刚部署的函数:draw。九、修改API打开火狐浏览器,登录华为云控制台,进入FunctionGraph界面,可以看到通过插件部署的函数:draw。点击draw函数进入详情界面,点击“创建触发器”,触发器配置参考如下,“分组”没有的话可以点击“创建分组”进行创建API分组,点击确定创建。创建“分组”。点击触发器名字跳转到API总览界面。点击右上角“编辑”进入API编辑界面。在API编辑界面,只需要修改第2步“定义API请求”中的“请求Path”为:/excalidraw,其他不用修改,直接点击立即完成。然后再点击“发布API”。发布API界面中发布环境保持默认RELEASE,点击右下角发布即可。再回到draw函数详情界面,刷新可以看到触发器的“请求路径”已经修改成功。十、访问画图应用复制触发器“调用URL”浏览器访问画图应用。至此,基于FunctionGraph的画图应用开发部署已完成。
-
一、 案例介绍本实验基于FunctionGraph和ModelArts的智能头像动漫化处理应用。通过部署在FunctionGraph上的函数,用户可以上传自己的头像图片,通过调用ModelArts上的动漫头像制作应用,将头像图片转化为动漫风格的头像图片。二、 免费领取云主机如您还没有云主机,可点击链接,根据领取指南进行操作。如您已领取云主机,可直接开始实验。三、 实验流程安装FunctionGraph插件;创建函数;部署函数;函数配置委托;函数配置触发器;函数添加依赖包;订阅模型并部署;制作动漫头像。四、 安装FunctionGraph插件方式一:在线安装进入云主机,打开CodeArts IDE,点击左侧“扩展”搜索“CodeArts FunctionGraph”点击安装该插件。方式二:本地安装前往鲲鹏社区官网下载插件CodeArts FunctionGraph到云主机,下载地址为:CodeArts IDE插件市场。在云主机桌面,打开CodeArts IDE开发环境,单击右侧“扩展”按钮,点击从本地安装,选择下载好的插件安装。五、创建函数FunctionGraph插件安装后,如提示登录请登录后使用。打开插件,在插件窗口点击“…”选择“创建函数”,选择Http Function函数。选择Hello World。定义函数名:carton-generation。选择工程路径,选择后插件会在该路径下创建carton-generation工程。打开工程目录,创建新文件夹:templates。在templates中创建文件index.html。修改index.html代码如下:<!DOCTYPE html><html lang="en"><head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>FunctionGraph 动漫头像制作</title> <style> body { font-family: Arial, sans-serif; background: repeating-linear-gradient(45deg, #ddd 0 2px, transparent 2px 4px), repeating-linear-gradient(-45deg, #ddd 0 2px, transparent 2px 4px); text-align: center; } h1 { color: #333; } p.description { color: #666; } #upload-button { padding: 15px 30px; background-color: #007bff; color: white; border: none; border-radius: 5px; cursor: pointer; font-size: 20px; margin-top: 20px; } .image-container { display: flex; margin-top: 50px; justify-content: center; align-items: center; } .image-box { margin: 0 40px; padding: 0; width: 500px; height: 500px; display: flex; flex-direction: row; position: relative; letter-spacing: .3px; padding: 10px; border-radius: 10px; transition: background-color .3s ease-in-out; display: flex; justify-content: center; align-items: center; background-color: white; box-shadow: 0 0 10px rgba(0, 0, 0, 0.3); } #original-image-box, #preview-container { border: 2px dashed #6dcff6; border-radius: 10px; width: 480px; height: 480px; } .but-box { margin: 0px 30px; padding: 0; width: 500px; display: flex; justify-content: center; font-size: 30px; font-weight: 700; } .image-box img { height: 100%; max-width: 100%; } .error-message { color: red; margin-top: 10px; } .size-warning { font-size: 20px; color: orange; margin-top: 10px; } button { padding: 20px 40px; background-color: #4CAF50; color: white; border: none; border-radius: 5px; cursor: pointer; font-size: 20px; } h1 { font-size: 40px; } .triangle-arrow { width: 0; height: 0; border-top: 20px solid transparent; border-bottom: 20px solid transparent; border-left: 30px solid blue; } .loading-mask { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.1); display: none; justify-content: center; align-items: flex-end; z-index: 999; } .loading-text { font-size: 30px; color: red; } </style></head><body><h1>动漫风格头像制作案例:用户上传自拍照片,调用华为云上算力,一键生成动漫风格人物头像。</h1><input type="file" id="image-input" style="display: none;"><button id="upload-button">请上传照片</button><p class="size-warning">上传小于 6MB 的图片。</p><p class="error-message" id="size-error"></p><div class="image-container"> <div class="image-box"> <div id="original-image-box"> </div> </div> <div class="triangle-arrow"></div> <div class="image-box"> <div id="preview-container"> </div> </div></div><div class="image-container"> <div class="but-box"> 原图 </div> <div class="but-box"> 效果图 </div></div><div class="loading-mask" id="loading-mask"> <p class="loading-text">照片生成中...</p></div><script> const uploadButton = document.getElementById('upload-button'); const imageInput = document.getElementById('image-input'); const originalImageBox = document.getElementById('original-image-box'); const imagePreview = document.getElementById("preview-container"); const sizeError = document.getElementById('size-error'); const sizeWarning = document.querySelector('.size-warning'); const loadingMask = document.getElementById('loading-mask'); uploadButton.addEventListener('click', () => { imageInput.click(); }); imageInput.addEventListener('change', () => { const file = imageInput.files[0]; if (file) { if (file.size > 6 * 1024 * 1024) { sizeError.textContent = '图片大小不能超过 6MB。'; sizeWarning.textContent = ''; return; } const img = document.createElement('img'); img.src = URL.createObjectURL(file); originalImageBox.innerHTML = ''; originalImageBox.appendChild(img); if (!file) { console.log("!file ") return; } const formData = new FormData(); formData.append("image", file); loadingMask.style.display = 'flex'; fetch("/carton/upload", { method: "POST", body: formData, }) .then((response) => response.text()) .then((data) => { let parsedObject; try { parsedObject = JSON.parse(data); } catch (error) { console.error('JSON 解析错误:', error); parsedObject = null; // 或者其他默认值,根据你的需求设置 } const animeImgElement = document.createElement('img'); animeImgElement.src = "data:image/png;base64," + parsedObject.results[0]; imagePreview.innerHTML = ''; imagePreview.appendChild(animeImgElement); loadingMask.style.display = 'none'; }) .catch((error) => { loadingMask.style.display = 'none'; console.error(error); alert("处理失败"); }); } });</script></body></html>删除index.js,创建新文件app.py。修改app.py内容如下:(复制文档中python代码时,可能会导致格式错误,可以从下载的项目资料中获取app.py文件内容!)from flask import Flask, request, render_templateimport requestsimport osMODEL_ART_API = os.getenv('MODEL_ART_API')app = Flask(__name__)@app.route('/')def index(): return render_template('index.html')@app.route('/carton/upload', methods=['POST'])def upload_file(): if 'image' not in request.files: return 'No file uploaded.', 400 file = request.files['image'] if file.filename == '': return 'Filename is empty.', 400 resp = model_art_pic_carton(file) print(resp) return resp.json()def model_art_pic_carton(file): payload = {} files=[ ('images',(file.filename,file,'image/png'))] headers = { 'x-auth-token': get_token_from_fg_header() } response = requests.request("POST", MODEL_ART_API, headers=headers, data=payload, files=files,verify=False) return response# 从FunctionGraph平台发送的请求里获取鉴权token # 需要先配置委托 并且 在高级设置打开传入秘钥开关def get_token_from_fg_header(): return request.headers.get("X-Cff-Auth-Token")if __name__ == '__main__': app.run(debug=True,port=8000,host="0.0.0.0")修改bootstrap文件内容如下:/opt/function/runtime/python3.6/rtsp/python/bin/python3 $RUNTIME_CODE_ROOT/app.py六、部署函数回到插件页面,选择部署函数。选择新建的函数下的yml文件。部署环境选择“华北-北京四”。等待部署成功。点击“选择要展示的Region”,选择“华北-北京四”,可以看到该区域下刚部署好的函数:carton-generation。右键选择函数,点击浏览器打开,跳转到函数详情界面。七、函数配置委托打开创建委托页面地址:https://console.huaweicloud.com/iam/?agencyId=9525e901e4a44845bf64b4aec74d7be7®ion=cn-north-4&locale=zh-cn#/iam/agencies/create输入委托名称、委托类型选择“云服务”、云服务选择“函数工作流FunctionGraph”。配置权限,选择ModelArts FullAccess。回到浏览器函数详情界面,点击“设置”,选择“权限”,“函数配置委托”选择提前创建好的委托,点击“保存”。配置高级设置,点击“设置”,选择“高级设置”,启用“请求头传入秘钥”,点击“保存”。八、函数配置触发器配置高级设置,点击“设置”,选择“高级设置”,启用“请求头传入秘钥”,点击“保存”。九、函数添加依赖包返回“函数工作流”管理界面,选择“依赖包管理”,点击“创建依赖包”。填写“依赖包名称”,代码包上传方式为“从OBS上传文件”,将OBS链接粘贴到“OBS链接URL”中(OBS URL:cid:link_2 )运行时语言为“Python3.9”。十、订阅模型并部署AI应用在华为云控制台点击搜索框搜索“ModelArts”,点击“ModelArts”,选择“AI Gallery”。导航栏选择“模型”,搜索框输入“动漫”,选择“头像动漫化模型”。进入详情页,点击“部署”,选择“ModelArts”。选择ModelArts的云服务区域。跳转到订阅应用列表,如果页面提示需要创建委托,根据指引创建即可。委托创建成功后订阅应用列表,点击“部署”。点击右侧弹窗“部署”按钮,选择“在线服务”资源池选择“公共资源池”,AI应用及配置选择“订阅应用”,选择AI应用及版本,计算节点规格选择“[限时免费]CPU:1核4GB”,勾选“我已阅读并同意以上内容”,点击“下一步”。点击“提交”。确认服务处于运行中状态,复制API接口公网地址备用。回到函数页面,设置环境变量,键:MODEL_ART_API,值:刚刚复制的API接口公网地址。十一、制作动漫头像到这里函数和AI应用就已经部署好了,可以复制URL到浏览器打开web页面开始制作动漫头像。至此该实验已完成!
-
9月19日-21日,华为开发者空间将携手产学研专家在华为全联接大会2024举办系列主题演讲、专题论坛、圆桌,面向全球开发者发布产品最新升级功能及会员成长计划。也将在展区展览、Codelabs等活动中与广大开发者深入讨论华为开发者空间的应用场景、开发设计体验及未来发展趋势。除了线下活动外,华为开发者空间还为广大开发者们准备了线上体验活动,点击链接即可参与体验,参与互动赢开发者定制好礼,快快行动起来吧!cid:link_0
-
因参与楼层不满足开奖条件,本活动不开奖。-------------------------------------------------------------------参加“掌握Redis部署,轻松实现电商平台秒杀抢购!”项目在本活动帖下回帖,提出你的问题与建议有机会获得开发者定制礼品【体验项目】掌握Redis部署,轻松实现电商平台秒杀抢购!【体验简介】通过本案例,开发者将掌握在云主机中安装和配置Redis,了解如何在Java项目中使用Jedis对接Redis服务器实现缓存功能并且使用CodeArts IDE模拟运行电商秒杀抢购场景。【体验形式】1.登录注册华为云账号,领取云主机;2、使用云主机资源进行应用开发。【活动时间】2024年9月13-10月12日【参与方式】直接在此活动帖下方回帖,将体验完成的截图和您的问题/建议/感受一起回帖即可比如体验中遇到的问题,对产品的建议、对活动感受等等PS:不要少于30字哦~【获奖规则】可提前填写获奖信息收集表,后续如您中奖,我们会及时发货,谢谢。获奖信息收集表: cid:link_0【活动规则】1、本帖的回帖建议不少于30字,仅限于对“掌握Redis部署,轻松实现电商平台秒杀抢购!”体验项目,其他项目建议不参与此次活动,否则将视为无效内容。2、本次活动将根据实际参与情况发放奖励,包括但不限于用户百分之百中奖或奖项轮空的情况;实物奖品具体发放视出库情况而定; 3、活动预计于结束后七天内完成奖项公示,并于结束后15个工作日内完成邮寄。【温馨提示】1、请务必使用个人实名账号参与活动(IAM、企业账号等账号参与无效)。如一个实名认证对应多个账号,只有一个账号可领取奖励,若同一账号填写多个不同收件人或不同账号填写同一收件人,均不予发放奖励。2、所有获得奖品的获奖用户,请于获奖后3日内完成实名认证,否则视为放弃奖励。
-
开发者云主机 安装宝塔面板后无法正常连接 , 跟楼上楼主一样的问题
-
类别主题内容介绍链接领取指南云主机免费领取指南开发者空间云主机免费领取指南点击查看实操指导个人论坛工程自动化部署将个人论坛工程导入到云主机,在云主机中CodeatrSide打开工程,并在终端上部署到远程ECS主机,再修改工程重新打包工程并重新部署到远程ECS主机,用户可以通过公网ip查看部署的工程点击查看基于FunctionGraph的画图应用开发部署实验基于FunctionGraph和API Gateway的画图小程序,使用了API Gateway作为前端访问入口,通过API Gateway触发器将用户的请求转发到FunctionGraph中的画图小程序后端服务。通过无服务器架构和RESTful API实现了前后端分离,部署一个简单易用的在线画图工具。点击查看鲲鹏DevKit代码迁移工具快速完成C&C++源码迁移本次实验将完成鲲鹏DevKit代码迁移工具的使用,了解其基本功能和使用方法。本案例将指导开发者如何使用鲲鹏DevKit代码迁移工具,以smartdenovo软件包为待迁移案例展示C/C++软件的快速迁移过程,达到快速完成C&C++源码迁移的实验目的。点击查看基于Functiongraph的AI风格化编程实验基于FunctionGraph和ModelArts的智能头像动漫化处理应用。通过部署在FunctionGraph上的函数,用户可以上传自己的头像图片,通过调用ModelArts上的动漫头像制作应用,将头像图片转化为动漫风格的头像图片。点击查看掌握Redis部署,轻松实现电商平台秒杀抢购!指导开发者如何在云主机中安装和配置Redis,如何在Java项目中使用Jedis对接Redis服务器实现缓存功能并且使用CodeArts IDE模拟运行电商秒杀抢购场景。点击查看软件开发生产线CodeArts初体验:一站式体验代码云上托管、构建、检查与修复本案例将指导开发者在云主机上快速使用工具实现代码质量的维护和代码资源的管理,达到能让开发者第一时间进入代码产出阶段并可以持续输出归档和改善代码质量的目的。点击查看基于3大PaaS主流服务轻松实现文字转换语音开发者将在云主机中,基于CodeArts API设计语音合成接口,基于API Explorer调试接口,并利用CodeArts IDE实现数据流转换为音频。点击查看华为云之开发者空间云主机使用体验开发者空间全流程一站式指导点击查看华为云开发者云主机体验在开发者空间中快速体验YOLOV3目标检测算法点击查看基于云主机快速为Web项目添加AI助手本实验借助华为云CBS提供的可访问API,在项目代码中通过几行代码引入 AI 助手,用户就可以在网站上看到一个 AI 助手,实现与之对话。点击查看搭建可自动伸缩的Discuz!论坛网站本实践以搭建可自动伸缩的Discuz!论坛为例,介绍了如何使用弹性伸缩服务搭建一个可自动增加或减少弹性云服务器数量的Web服务。点击查看基于FunctionGraph实现Gif动图制作应用开发本实验基于 FunctionGraph的 GIF动图制作工具。使用 API Gateway作为前端访问入口,通过 API Gateway触发器将用户的请求转发到 FunctionGraph中的GIF动图制作后端服务。使用该工具,用户可以上传自定义视频,然后设置截取时长进行 GIF动图生成。点击查看基于Repo和流水线门禁的分支合并与部署通过本次实验,可以学会通过CodeArts流水线来自定义编排云上任务,实现流水线门禁的分支合并与部署。点击查看使用函数工作流部署画图工具Excalidraw本案例将指导开发者如何使用函数工作流15分钟部署Web版画图工具Excalidraw。点击查看云主机安装Docker并制作自定义镜像在ModelArts平台做模型训练本案例将指导开发者如何在云主机上安装Docker制作一个自定义模型镜像并在ModelArts平台使用这个镜像作模型训练。点击查看基于PyTorch的手写体识别本实验采用的MNIST数据库,是一个大型数据库的手写数字是通常用于训练各种图像处理系统。该数据库还广泛用于机器学习领域的培训和测试。MNIST数据集共有训练数据60000项、测试数据10000项。每张图像的大小为28*28(像素),每张图像都为灰度图像,位深度为8(灰度图像是0-255)。点击查看
-
请问一下大佬,GDE、ADC、iStudio三者是个什么关系?
-
华为开发者云主机 一直显示正在预装软件90% 进度不动了
-
案例简介开发者将在云主机中,基于CodeArts API设计语音合成接口,基于API Explorer调试接口,并利用CodeArts IDE实现数据流转换为音频。在此过程中,开发者可体验API设计、开发、调试等全生命周期,对华为云产品API体系及API开放能力有全面了解,并最终完成应用创建,全程实践约15分钟。配置开发者空间华为云为全球开发者打造专属开发者空间,汇聚了华为优质开发资源及工具,让每一位开发者拥有一台云主机。在华为开发者空间,每位开发者每年可享有数百小时的云主机使用时长,5GB的云存储空间和场景化沙箱资源,以及海量的技术赋能课程与专业开发者认证内容。点此领取:https://auth.huaweicloud.com/authui/login.html?service=https%3A%2F%2Fdeveloper.huaweicloud.com%2Fspace%2Flogin-forword.html%3FforwardUrl%3Dhttps%253A%252F%252Fdeveloper.huaweicloud.com%252Fspace%252Fhome%26module%3Dhuaweideveloper&locale=zh-cn#/login1.进入开发者空间,点击“云主机(beta体验)”2.点击“添加云主机”3.点击“立即进入”4.点击“下一步”5.配置云主机,名称、描述可根据需要填写,点击“下一步”6.点击“进入桌面”7.界面状态显示为“已就绪”,表明领取成功。点击 “打开桌面”,进入云主机内,预计等待1分钟通过CodeArts API设计语音合成接口3.1 进入CodeArts API官网,打开左边工具栏-Firefox网络浏览器,输入网页版体验地址并登录cid:link_43.2 创建项目3.2.1 登录后点击页面右上角的“创建项目”按钮3.2.2 在创建项目弹窗中输入项目名称:语音合成,并点击保存3.2.3 提示保存成功,点击API设计页签,进入到API设计页面3.3 设计接口3.3.1 点击页面上的“新建API接口”卡片3.3.2 显示新建标签页3.3.3 输入接口的URL:/tts3.3.4 输入接口名称:语音合成3.3.5 下拉滚动条到请求参数区域,点击请求体“Body”页签,选择“raw”,默认选择“JSON”格式。3.3.6 显示请求体的数据结构模板,默认根节点类型为“object”3.3.7 点击根节点最右侧的“+”操作3.3.8 页面上在根节点下新增一条参数(可以通过滚动条左右拖动)3.3.9 将参数名param2修改为text,描述param2修改为待合成的文本3.3.10 下拉页面,看到返回响应区域3.3.11 同样点击根节点最右侧的“+”操作(可以通过滚动条拖动到最右侧),在根节点下显示一条新的参数3.3.12 将参数名param2修改为result,将描述修改为合成结果3.3.13 点击右上角的保存按钮3.3.14 保存成功,设计完成通过API Explorer调试语音合成接口,生成5段数据流4.1 语音合成(API Explorer部分):链接:cid:link_24.1.1 生成语音格式为wav,采样率:8000,标准女音,语速0,音色0图1.1.1 wav标准女音4.1.2 生成语音格式为wav,采样率:16000,标准男声,语速0,音色0图1..12 wav标准男音4.1.3 生成语音格式为mp3,采样率:8000,标准女音,语速100,音色100图1.1.3 mp3标准女音4.1.4 生成语音格式为mp3,采样率:16000,标准男声,语速100,音色100图1.1.4 mp3标准男声4.1.5 生成语音格式为pcm,采样率:16000,标准男声,语速100,音色100图1.1.5 标准男声在开发者空间基于华为云自研CodeArts IDE,实现数据流转换为音频的功能5.1 实现数据流转换为音频5.1.1 将实验用Demo工程上传到CodeArts IDE打开右侧工具栏-Firefox网络浏览器,输入并访问Demo工程下载链接:https://sandbox-expriment-files.obs.cn-north-1.myhuaweicloud.com/2601/CodeArtsProject.zip对下载好的文件进行解压(目录:主文件夹/下载),右键提取到此处打开CodeArts IDE,左上角点击“工程”->“打开工程”,选择刚刚解压出来的文件夹,打开: 预计等待1分钟左右的时间,工程模型同步成功:5.1.2 在华为云控制台新增访问秘钥,配置AK/SK1)登录华为云控制台:https://console.huaweicloud.com/iam/?agencyId=599e2ee1492f48e9b69a0a682d435fb8®ion=cn-north-4&locale=zh-cn#/mine/accessKey选择“我的凭证”->“访问秘钥”->新增访问秘钥注:如果已经有AK/SK秘钥,不需要新增访问秘钥创建秘钥成功后点击“立即下载”,即可获得“credentials.csv”文件,里面可以查看到AK(Access Key Id)和SK(Secret Access Key)2)进入工程,src/main/resources下选择credentials.properties,将AK/SK配置上5.1.3 将API Explorer上调试成功的流数据文件配置到APIResponse.json中在2.1语音合成章节,我们在API Explorer完成接口的调试cid:link_2最终生成“SIS_RunTts_ResponseBody_xxxxxxxxxxxxx.json”文件,打开json文件,复制响应体内容(如果响应体内容没有超出限制,直接点击右侧的复制按钮即可)打开工程,进入src/main/resources中,选择APIResponse.json,将json文件的内容复制到APIResponse.json中。5.1.4 配置pom.xml:在pom.xml中如图所示,增加如下配置: <properties> <java.version>17</java.version> <maven.compiler.source>17</maven.compiler.source> <maven.compiler.target>17</maven.compiler.target> </properties>5.1.5 执行“should_return_audio_when_response_json”,生成mps格式音频文件:找到test目录下的测试类SisServiceTest.java,点击找到方法“should_return_audio_when_response_json()”,点击执行测试,最后可以看到目录下生成的音频文件。目录下生成“devkit.mps”文件,实验结束。备注:在使用过程中,遇到技术问题,可在论坛-开发者空间版块发帖提问。如需技术支持,可提交开发者工单。如有产品优化建议,欢迎来云声平台提交。【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的
-
一、案例介绍华为云CodeArts Check,基于华为在自动化源代码静态检查方面的技术积累与企业级应用经验,为用户提供代码风格、通用质量与代码安全风险等检查能力,并提供问题闭环处理、检查报告等功能,可一站式完成代码检查作业,将代码质量保证活动从原始的人工检视中解脱出来;提供先进的产品给研发,高效的服务给企业,好用的工具给学生,帮助用户写出Clean Code,为产品代码质量提供有力保障。通过本次实验,可以掌握在云主机上如何使用CodeArts IDE进行代码检查与修复,进而提高代码质量,以及如将CodeArts IDE中代码上传到CodeArts代码托管服务Repo中做云上托管,实现本地调用CodeArts流水线任务的执行。本案例将指导开发者在云主机上快速使用工具实现代码质量的维护和代码资源的管理,达到能让开发者第一时间进入代码产出阶段并可以持续输出归档和改善代码质量的目的。二、免费领取云主机如您还没有云主机,可点击链接,根据领取指南进行操作。如您已领取云主机,可直接开始实验。三、实验流程申请并登录华为云主机;在云主机的CodeArts IDE中接入用户代码;在CodeArts IDE中集成CodeArts Check插件进行本地代码检查与运维;通过CodeArts IDE将本地代码上传CodeArts Repo服务云上归档管理;CodeArts IDE集成CodeArts Pipeline插件实现本地调用华为云云上流水线任务。四、云主机CodeArts IDE导入代码1、登录云主机,双击打开CodeArts IDE。2、点击“新建工程”创建本地项目。3、初始化项目信息,确认后创建项目。4、初始化Java项目成功,即可新项目中进行代码编程。5、导入已有项目复制链接到浏览器打开,下载代码到本地,(如果有自己的代码可以下载自己的代码):https://gitcode.com/HuaweiCloudDeveloper/spring-cloud-huawei-samples/overview6、下载成功后解压zip包,然后在CodeArts IDE中打开工程,即可完成项目的导入。五、云主机CodeArts IDE上集成CodeArts Check1、点击CodeArts IDE 右上角的头像,登录华为云账号。2、在CodeArts IDE中安装CodeArts Check代码检查插件。3、CodeArts IDE 中单击鼠标右键,进行代码检查,查看结果。4、本地修改代码,根据代码检查结果提示对代码问题进行修复,并重新检查。六、CodeArts IDE本地代码上传华为云CodeArts1、申请软件开发生产线CodeArts云服务在云主机桌面,双击“软件开发生产线”,登录软件开发生产线CodeArts首页。点击“免费试用”按钮进行资源申请。登录华为云账号。登陆后申请体验版套餐来体验CodeArts。开通完毕后点击立即使用,即可跳转至CodeArts首页,完成CodeArts资源申请。登录CodeArts首页,创建一个项目。输入项目名称,确认。2、创建云上代码仓库点击“代码-代码托管”。点击“新建仓库”按钮创建仓库。选择“普通仓库”,下一步。输入代码仓库名称,确认,完成repo代码仓库资源的初始化。3、将本地代码上传到云仓库打开云主机上的CodeArts IDE,选择“克隆git仓库”。复制代码仓库地址。输入云仓库地址。获取仓库的用户名和密码。填写到Codearts IDE中。云仓库与本地CodeArts IDE连接完毕。将本地代码导入云仓库。提交代码到云上仓库repo服务中。4、创建云上代码检查任务点击“代码-代码检查”,新建代码检查任务。初始化基本信息,选择待检查的代码仓库分支。配置规则集,点击开始检查,进行代码检查。查看代码检查结果以及修复建议。5、创建云上编译构建任务点击“持续交付-编译构建”,新建一个编译构建任务。初始化基本信息,选择待编译构建的代码仓库分支。选择Maven构建模板,确认。配置构建信息,样例代码以basic服务为例,进入basic文件夹,确认pom文件在maven执行目录,点击“保存并执行”,确认代码仓库分支。编译构建成功。查看构建产物。七、CodeArts IDE本地管理CodeArts流水线1、在CodeArts IDE中安装CodeArts Pipeline代码检查插件。2、查寻项目下所有的流水线点击左侧的“DevSecOps”菜单栏,并切换自己项目所在的区域“北京四”,查询当前项目下的所有流水线。3、华为云上新建流水线登录华为云CodeArts,点击“持续交付-流水线”,点击“新建流水线”。填写基本信息,并按照提示将自己的云仓库进行授权给流水线。创建一个Maven模板。可以在这里把我们步骤2、3中的第4步创建代码检查任务和第5步创建构建任务添加到这里。保存流水线并执行。4、返回云主机CodeArts IDE刷新,查看新建的流水线信息,并本地调用执行。至此实验全部结束。
-
一、案例介绍Redis 是一个高性能的key-value数据库。Redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别是Redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。因此Redis常用于缓存系统和队列系统。本案例将指导开发者如何在云主机中安装和配置Redis,如何在Java项目中使用Jedis对接Redis服务器实现缓存功能并且使用CodeArts IDE模拟运行电商秒杀抢购场景。二、免费领取云主机如您还没有云主机,可点击链接 ,根据领取指南进行操作。如您已领取云主机,可直接开始实验。三、实验流程在云主机上安装Redis并设置密码;下载示例代码到云主机;使用CodeArts IDE打开示例代码工程并修改Redis配置;在CodeArts IDE上运行模拟测试文件查看结果。四、安装配置Redis4.1在云主机上安装Redis1.进入云主机后,点击左侧菜单“终端”按钮,打开命令行工具。2.在命令行中输入命令“sudo apt-get install redis-server”安装redis。3.输入命令“sudo systemctl status redis-server” 确认redis已经安装并且服务正在运行。4.确认安装好以后,键盘输入“ctrl+c”退出查看状态,接下来登录redis并测试数据的保存和获取,输入命令“redis-cli”登录到redis控制台,由于没有设置密码,可以直接登录。5.登录后,使用set <key> <value>和get <key>命令实现数据的保存和获取,先输入“get city”查看city的值。6.由于没有保存city的值所以是nil,现在输入命令“set city beijing”保存数据。7.接下来再使用“get city”来查看city的值。现在通过city这个key可以获取到beijing这个value值。4.2 修改Redis配置,配置密码安装好redis后,需要给redis服务器设置密码,先找到redis的配置文件,按照上述方式安装的redis,配置文件路径为/etc/redis/redis.conf。1.使用命令“sudo vim /etc/redis/redis.conf”打开并编辑配置文件,找到“requirepass”这一行,把注释符号“#”删除,并将“foobared”改成想要设置的密码。2.输入“:wq”命令保存文件,接下来使用命令“sudo systemctl restart redis-server”重启redis。3.再使用命令“redis-cli”登录到redis控制台,并使用“get city”获取数据发现报错,提示我们认证失败。4.在步骤1已经设置了登录密码,现在需要使用密码登录,先退出控制台,输入如下命令“redis-cli -h localhost -p 6379 -a <你的密码>”登录,再使用“get city”,获取数据。五、对接Redis并运行模拟场景5.1 下载示例代码1.打开云主机的火狐浏览器,地址栏输入:cid:link_02.打开示例代码页面,登录后点击下载按钮。3.找到下载的代码压缩包,解压缩到当前目录。4.打开云主机的CodeArts IDE,用IDE打开工程,选择项目代码。打开工程后,稍等片刻,等待IDE加载java相关工具和项目适配。5.2 修改代码对接Redis1.打开“src\main\java\com\huaweicloud\dcs\DistributedLock.java”文件,修改HOST、PORT以及redis密码等配置信息:• HOST改为127.0.0.1• PORT改为6379,• 下面密码改成步骤2.2设置的密码即可。5.3 使用CodeArts IDE的调试功能模拟秒杀场景1.添加IDE的运行配置,打开右上角配置的下拉菜单,点击“编辑配置”。2.在弹出框内点击左上角的“+”添加配置项。3.在新的菜单中选择“Java”,在展开的菜单中选择“Launch Current File”,点击“确定”。4.接着就可以在菜单中选到新配置。5.打开项目测试运行文件“CaseTest.java”,运行配置选择“Launch Current File”,点击右面的运行按钮,开始模拟测试。6.可以在控制台看到运行结果,实验结束。
-
开发者空间已经发布上线2个月啦~在此期间收获了在众多开发者对空间的优化意见,产研小哥哥们已在加紧迭代升级中。为感谢大家对开发者空间的关注,小编准备了“抢鲜礼”与“建议礼”免费领主机和提出优化建议都有机会获得开发者礼包,心动不如心动,快来参加吧~【活动时间】9月1日-12月31日【参与方式】1.免费领取专属云主机-点击领取2.反馈开发者空间优化建议-点击反馈【奖项设置】抢“鲜”有礼:活动期间加入华为开发者空间可免费领取云主机,有机会赢取开发者空间定制文化衫。“建议”有礼:体验开发者空间后,在云声平台反馈您的优化意见,即可获得开发者盲盒礼包,详情见云声活动页注:上述活动可同时参与,抢鲜礼抽取10人/月,每月从后台统一抽取;反馈礼不少于3人/月,获奖名单每月在活动页中公示【活动说明】用户限制说明:1.参加本次社区活动的用户必须为华为云注册用户。同时为保证活动公平性,禁止用户以IAM账号身份参与活动,否则将视为无效。2.领取奖品的用户需为华为云实名用户,未完成实名认证的用户将不发放活动奖励。3.本次活动如一个实名认证对应多个账号,只有一个账号可领取奖励。如在同一概率活动中,同一账号重复获奖,只发放首先获奖奖品。4.本次活动一个实名认证账号只能对应一个收件人,如同一账号填写多个不同收件人,不予发放奖励。5.请开发者不要在活动期间随意修改社区昵称和华为云账号,由此产生的统计问题,如过了申诉期,小助手不再处理。(申诉期为活动结果公示3天内。)奖品发放说明:1.获奖开发者用户需在截止时间在获奖信息收集表中填写获奖信息,活动结束且开发者用户填写完整领奖信息后14个工作日内,将统一发出奖品,所有实物奖品包邮,不额外收取任何费用。华为云遵守《中华人民共和国个人信息保护法》规定,将以上个人信息仅用于礼品发放之目的,不会向任何第三方披露,所有信息将在华为云问卷系统留存2个月,礼品发放完毕后即删除。若由于获奖开发者用户自身原因(包括但不限于提供的联系方式有误、身份不符或者通知领奖后超过30天未领取等)造成奖品无法发送的,视为获奖开发者用户放弃领奖。2. 为保证活动的公平公正,华为云有权对恶意刷活动资源(“恶意”是指为获取资源而异常注册账号等破坏活动公平性的行为),利用资源从事违法违规行为的开发者用户收回抽奖及奖励资格。3. 若发放奖品时,出现库存不足,则优先发放等价值的其他奖品。4. 所有参加本活动的开发者用户,均视为认可并同意遵守《华为云开发者用户协议》,包括以援引方式纳入《华为云开发者用户协议》、《可接受的使用政策》、《法律声明》、《隐私政策声明》、相关服务等级协议(SLA),以及华为云服务网站规定的其他协议和政策(统称为“云服务协议”)的约束。5.如果您不同意本活动规则和云服务协议的条款,请勿参加本活动。
-
我开发了一个安卓应用,通过在一个输入框中粘贴或手动输入数据,提交后生成三维的长方体,可以生成较简单的家具,较简单的房间或复杂一些的建筑等等,请问可以发布到华为吗,如果可以的话发布操作是怎样的呢?
上滑加载中
推荐直播
-
TinyEngine低代码引擎系列.第1讲——低代码浪潮之下,带你走进TinyEngine
2024/11/11 周一 16:00-18:00
李老师 高级前端开发工程师
低代码浪潮之下,带你走进TinyEngine。李旭宏老师将从低代码的发展趋势、TinyEngine的项目介绍,三方物料组件的使用、跨技术栈的使用、源码生成能力的差异性对比等多个方面带大家对TinyEngine低代码引擎有一个更清晰的认知和了解。
即将直播 -
0代码智能构建AI Agent——华为云AI原生应用引擎的架构与实践
2024/11/13 周三 16:30-18:00
苏秦 华为云aPaaS DTSE技术布道师
大模型及生成式AI对应用和软件产业带来了哪些影响?从企业场景及应用开发视角,面向AI原生应用需要什么样的工具及平台能力?企业要如何选好、用好、管好大模型,使能AI原生应用快速创新?本期直播,华为云aPaaS DTSE技术布道师苏秦将基于华为云自身实践出发,深入浅出地介绍华为云AI原生应用引擎,通过分钟级智能生成Agent应用的方式帮助企业完成从传统应用到智能应用的竞争力转型,使能千行万业智能应用创新。
去报名
热门标签