文档开发者中心
我的

DevEco IDE使用指南

1    DevEco IDE介绍
    DevEcoIDE(简称IDE)是华为消费者业务为开发者提供的集成开发环境,旨在帮助开发者快捷、方便、高效使用华为EMUI开放能力。IDE基于Android Studio 功能扩展(以插件形式提供),当前已上线开放能力为智慧服务(HUAWEI HiAI),功能主要包括HiAI Engine、HiAI Foundation(AI模型分析、AI模型转换、业务类生成)、AI模型市场、远程真机调试等。

1.1      支持Android Studio版本
支持Android Studio 2.3.x及以上版本

1.2      支持操作系统及配置
1.2.1     支持操作系统
     Win7、Win10、MacOS 10.12/10.13

  备注:如操作系统不满足要求,AI本地模型转换功能将不可用。

1.2.2     开发环境配置(推荐)

  • Windows7/Windows 10:


   内存:4G及以上

   硬盘:100G及以上

   软件:docker(>Version 17.09)

(2) MacOS10.12.x/10.13.x:

    内存:4G及以上

    硬盘:100G及以上

    软件:docker(>Version 17.12)

    Docker 下载地址:https://store.docker.com/

1.2.3     支持Android Studio UI主题
     Windows平台:Darcula/IntelliJ

     MacOS平台:Darcula/Default

2    功能介绍及说明
请根据实际场景选择开发助手。


  • 如基于EMUI AI API开发应用,请选择HiAI Engine。

  • 如需将Tensorflow/Caffe模型转换成华为HiAI模型,并且需要集成模型至APP中,请选择HiAI Foundation。


2.1      工具下载及安装
   通过华为开发者联盟网站下载Huawei_ IDE.zip,然后通过Android Studio本地插件的方式安装,如图一所示。

     图一

2.2      开始使用
   在Android Studio菜单栏DevEco可进入HiAI IDE工具,如图二所示:

图二

当前仅开放智慧服务,HiAI的能力如图三所示


图三

2.2.1     如何使用HiAI Engine 工具
    HiAI Engine工具是EMUI面向第三方应用开发者开放的华为人工智能引擎。开发者可以通过集成SDK的方式,使用EMUI系统提供的AI能力,快速开发AI应用。如图四所示,AI API通过卡片呈现,点击API卡片可以弹出该API的详细信息包括API功能介绍、使用场景、输入参数及其说明,输出,代码示例等。开发者可直接拖动API卡片或者代码片段到源码文件的任一地方。工具会帮助开发者自动下载依赖SDK并导入到libs目录,会自动导入gradle依赖,会自动导入import。


图四

2.2.2      如何使用HiAI Foundation工具
HiAI Foundation工具是针对已有模型的开发者,需要将模型移植到HiAI平台提供的功能。当前同时支持Tensorflow和Caffe两种模型框架。该工具集模型转换(容器化)环境检测,AI模型分析,AI模型转换,模型引用API自动生成和依赖添加等功能于一体,方便开发者快速集成自有AI模型。


        打开HiAI Foundation工具以后,点击“选择本地模型文件”打开模型转换对话框。在模型转化对话框中,如果你使用的是Caffe模型,则需要输入如下参数,见图五,


  • AI模型文件 – Caffe模型在本地次磁盘的位置

  • 模型Prototxt文件 – Caffe模型训练时使用的prototxt文件

  • 转换后HIAI模型输出的文件路径– HIAI Foundation工具会将用户的模型文件转换为HiAI兼容格式文件,然后使用该模型做运行时AI预测。该参数用来指定HiAI兼容格式文件的输出路径。

  • 模型引用API文件路径– 当AI模型被转换为HIAI兼容格式后,HIAIFoundation工具将会生成JavaAPI类文件以便在运行时引用模型来做AI预测。该参数指定了生成JavaAPI类文件的路.该类文件的命名规律是[AI模型文件名]Model.java。如果你的Caffe模型文件名是AlexNet.caffe,转换后的模型则会被命名为AlexNetModel.java。当模型转化完成后,可以使用如下示例代码引用模型:
    AlexNetModel.predict(assetManager);


      我们也提供了异步API:

     AlexNetModel.predictAsync(assetManager);

    更多细节请参阅生成的模型引用API文件中的文档。




图五

     


如果指定的模型文件是Tensorflow模型,则需要提供如下参数,见图六.


  • Input_nodes– 神经网络的输入节点

  • Output_nodes– 神经网络的输出节点

  • Target_nodes–  LSTM网络时使用,在Tensorlowtu网络中Session::Run的结束节点。该参数为可选参数






图六


    当参数指定完毕时,点击“Run”按钮来开始模型转换。模型转换的过程包含了以下几个阶段:



  • 模型转换容器化环境检查
    在这个阶段,工具会检查容器环境的完备性。如发现任何问题,会弹出对话框一步步提示用户修正问题。
      图七

  • AI模型分析
    在这个阶段,工具会分析所提供模型和HIAIFoundation的兼容性。虽然HIAIFoundation支持了多大99个神经网络算子并且在持续扩大支持中,但是在一些AI模型中,仍旧有可能出现暂时不被支持得算子。这种情况下,模型转换过程会停止,并且显示失败信息(图八)。点击“模型分析报告”链接可查看模型兼容问题和修复建议(图九).



图八


图九


  • 转换AI模型
    在这个阶段,用户指定的AI模型会被转换为HiAI模型格式并更具用户指定的位置加入到工程中。转换后的文件会被命名为[给定模型文件].cambricon.例如, 用户提供的AI模型文件名为AlexNet.caffe,转换后的模型会被命名为AlexNet.cabricon。

  • 生成模型引用API类并添加依赖
    在这个阶段,工具会自动生成模型引用类并集在工程中成所有的依赖。当整个阶段完成后裔,模型转换就全部完成了(图十)。这时,点击“Detail”按钮查看工具添加和修改的文件内容(图十一)。


        当以上步骤都完成后,用户可以引用[模型文件]Model.java类做运行时AI预测。在前面提到的例子中,用户提供自己的AlxtNet.caffe模型并完成转换后,以下代码可以用来引用模型并做预测:

AlexNetModel.predict(assetManager);


另外,用户也可以使用异步API

AlexNetModel.predictAsync(assetManager);

更多内容请参见生成类中的API文档






图十



图十一

2.3      帮助
2.3.1     IDE工具详细功能请查看《HiAI IDE使用指南》
2.3.2     工具版本信息请查看Tool version
2.3.3     问题反馈
欢迎开发者提出问题建议和反馈,地址:[url=]deveco@huawei.com[/url]

3      FAQ
3.1      DevEco IDE需要收费吗?怎么下载?
   HiAIIDE为华为合作伙伴免费。请登录华为开发者联盟网站下载

3.2      我已经有AI模型,我该如何使用IDE?
    对于已有具有AI模型的开发者,我们建议使用HiAIFoundation。按照我们工具提示完成模型预分析、模型转换、模型集成至APP等过程。

我们针对在HiAI平台不支持的AI模型,提供有AI模型分析报告,开发者可根据报告了解模型支持情况,并修改模型。

3.3      我没有AI模型,想使用华为HiAI能力,我该如何使用IDE?
对于没有AI模型的开发者,想使用华为HiAI能力,我们推荐使用HiAI Engine,我们提供了CV相关的API供开发者调用。

3.4      我该如何搭建本地模型转换环境







        • 下载安装docker,版本和下载路径请参考1.2.2

        • 下载和安装ubuntu镜像,请在控制台执行命令:dockerpull hiai/ubuntu:150

        • 根据HiAI Foundation提示进行操作即可。





点赞
1
收藏
1
回复
3
分享
举报
浏览3871 编辑于2018-07-17 08:41未知归属地
全部评论
最多点赞
最新发布
最早发布

无法粘贴是怎么回事?

3楼回复于2026-06-18 07:50 来自江苏
大佬,这Huawei_ IDE.zip在哪下载,我怎么没找到,只找得到开发工具呢
2楼回复于2023-12-28 07:10 来自浙江
好东西
1楼回复于2018-08-28 22:47 未知归属地
写回答
新增插入模板功能
一键使用模板,快速填写内容,轻松发帖~
知道了
  • 为了保障您的信息安全,请勿上传您的敏感个人信息(如您的密码等信息)和您的敏感资产信息(如关键源代码、签名私钥、调试安装包、业务日志等信息),且您需自行承担由此产生的信息泄露等安全风险。
  • 如您发布的内容为转载内容,请注明内容来源。

我要发帖子

了解社区公约,与您携手共创和谐专业的开发者社区。