本文分享自華為云社區(qū)《【案例教學】華為云API圖引擎服務 GES的便捷性—AI幫助快速處理圖片小助手》,作者:華為云PaaS服務小智。
調(diào)用云服務、API、SDK、調(diào)試、查看…… “我”都行,一起來體驗用Huawei Cloud API實現(xiàn)AI快速處理圖片。
1 IntelliJ IDEA 之API插件介紹
API插件支持 VS Code IDE、IntelliJ IDEA等平臺、以及華為云自研 CodeArts IDE,基于華為云服務提供的能力,幫助開發(fā)者更高效、便捷的搭建應用。API插件關聯(lián)華為云服務下的 API Explorer、DevStar、CodeLabs、SDK 中心和 CLI 中心產(chǎn)品,致力于為開發(fā)者提供更穩(wěn)定、快速、安全的編程體驗。
在本插件中,我們提供了但不局限于如下的功能:
對接華為云API開放平臺,支持用戶檢索API、查看API文檔、調(diào)試API、以及提供SDK示例代碼供用戶學習如何使用API。
提供華為云SDK代碼片段補全功能,SDK依賴包自動引入,加速用戶集成華為云API。
對接華為云開發(fā)體驗館Codelabs,提供500+云服務代碼示例,向?qū)浇坛處椭脩艨焖賹W習。
說明:
在IntelliJ IDEA等系列平臺和VS Code IDE,華為云API插件的名稱是Huawei Cloud API。而在CodeArts IDE,API插件是IDE原生內(nèi)置的,名稱是華為云API開發(fā)套件。
API插件在IntelliJ IDEA等系列平臺和VS Code IDE的使用依賴底座插件,請?zhí)崆鞍惭b底座插件。
2 API插件安裝--IntelliJ IDEA
2.1 IntelliJ IDEA等平臺
安裝準備:下載并安裝JDK1.8或更高版本。下載并安裝IntelliJ IDEA 2020.2或更高版本。
須知:IntellIj平臺同時支撐包括Goland、Pycharm等在內(nèi)的IDE,若在其它相關IDE上開發(fā),請下載配置好對應語言的編譯器或者解釋器。這里以IDEA為例介紹IntelliJ平臺插件的安裝流程,其他IntelliJ系列的IDE請參考IDEA。https://developer.huaweicloud.com/develop/toolkit.html
開始安裝:
您可以在直接在IDE插件市場或者直接在JetBrains插件市場下載離線包安裝。
IDE安裝:
- 在IntelliJ IDEA頂部菜單欄中選擇File > Settings,在Settings對話框的左側(cè)導航欄中單擊Plugins。
- Plugins區(qū)域單擊Marketplace,在搜索欄中輸入Huawei Cloud API。
Search Results區(qū)域會出現(xiàn)Huawei Cloud API,單擊Install,完成后重啟IDE。
離線包安裝:
- 進入插件市場搜索Huawei Cloud API,進入插件詳情頁,在Versions頁簽下選擇想要版本的API插件,點擊Download下載離線的插件壓縮包保存到本地。。
- 在IntelliJ IDEA頂部菜單欄中選擇File > Settings,在Settings對話框的左側(cè)導航欄中單擊Plugins。
- 在Plugins區(qū)域單擊 ,再單擊Install Plugin from Disk...。
- 在Choose Plugin File對話框中選擇離線安裝包(不用解壓),并按照IntelliJ IDEA安裝頁面的提示,完成后續(xù)安裝步驟。
說明:若當前您想要安裝插件的IntelliJ IDE已經(jīng)在桌面打開,則進入插件市場搜索Huawei Cloud API,進入插件詳情頁,在右上角會識別到本地已經(jīng)打開的IDE,點擊相應按鈕,在彈出的IDE窗口中點擊ok,則IDE后臺會開始安裝相應版本的API插件。
安裝驗證:在IntelliJ系列平臺上安裝插件成功后在左側(cè)的導航欄中可以看到Huawei Cloud Toolkit圖標,點擊后面板會出現(xiàn)Huawei Cloud API的字樣,則說明安裝成功。
2.2 API列表
左側(cè)展示API列表,可以查詢所有API,目前云服務206,APIs9213
https://developer.huaweicloud.com/develop/toolkit.html
已 注冊 華為云,并完成 實名認證
已具備開發(fā)環(huán)境 ,支持Java JDK 1.8及其以上版本
已獲取華為云賬號對應的Access Key(AK)和Secret Access Key(SK)。請在華為云控制臺“我的憑證 > 訪問密鑰”頁面上創(chuàng)建和查看您的 AK/SK。具體請參見訪問密鑰。https://support.huaweicloud.com/usermanual-ca/zh-cn_topic_0046606340.html
endpoint 華為云各服務應用區(qū)域和各服務的終端節(jié)點,詳情請查看 地區(qū)和終端節(jié)點。
https://developer.huaweicloud.com/endpoint
SDK 獲取和安裝:
<dependency> <groupId>com.huaweicloud.sdk</groupId> <artifactId>huaweicloud-sdk-ges</artifactId> <version>3.0.69</version> </dependency>
3 快速查圖
示例代碼
package com.huawei.ges; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.exception.ClientRequestException; import com.huaweicloud.sdk.core.exception.ServerResponseException; import com.huaweicloud.sdk.ges.v1.GesClient; import com.huaweicloud.sdk.ges.v1.model.ListGraphsRequest; import com.huaweicloud.sdk.ges.v1.model.ListGraphsResponse; import com.huaweicloud.sdk.ges.v1.region.GesRegion; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class ListGraphsDemo { private static final Logger logger = LoggerFactory.getLogger(ListGraphsDemo.class.getName()); public static void main(String[] args) { ICredential auth = new BasicCredentials().withAk("{ak}").withSk("{sk}"); GesClient client = GesClient.newBuilder().withCredential(auth).withRegion(GesRegion.valueOf("cn-north-4")).build(); ListGraphsRequest request = new ListGraphsRequest(); try { ListGraphsResponse response = client.listGraphs(request); logger.info(response.toString()); } catch (ClientRequestException e) { logger.error(String.valueOf(e.getHttpStatusCode())); logger.error(e.toString()); } catch (ServerResponseException e) { logger.error(String.valueOf(e.getHttpStatusCode())); logger.error(e.toString()); } } }
4 增量導入圖
示例代碼
package com.huawei.ges; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.exception.ClientRequestException; import com.huaweicloud.sdk.core.exception.ServerResponseException; import com.huaweicloud.sdk.ges.v1.GesClient; import com.huaweicloud.sdk.ges.v1.model.ImportGraphReq; import com.huaweicloud.sdk.ges.v1.model.ImportGraphRequest; import com.huaweicloud.sdk.ges.v1.model.ImportGraphResponse; import com.huaweicloud.sdk.ges.v1.region.GesRegion; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class ImportGraphDemo { private static final Logger logger = LoggerFactory.getLogger(ImportGraphDemo.class.getName()); public static void main(String[] args) { ICredential auth = new BasicCredentials().withAk("{ak}").withSk("{sk}"); GesClient client = GesClient.newBuilder().withCredential(auth).withRegion(GesRegion.valueOf("cn-north-4")).build(); // 請求Body ImportGraphReq importGraphReq = new ImportGraphReq(); importGraphReq.setSchemaPath("{schemaPath}"); importGraphReq.setEdgesetPath("{edgesetPath}"); importGraphReq.setVertexsetPath("{vertexsetPath}"); ImportGraphRequest request = new ImportGraphRequest(); request.setGraphId("{graph_id}"); request.setActionId(ImportGraphRequest.ActionIdEnum.IMPORT_GRAPH); // 枚舉類型 request.setBody(importGraphReq); try { ImportGraphResponse response = client.importGraph(request); logger.info(response.toString()); } catch (ClientRequestException e) { logger.error(String.valueOf(e.getHttpStatusCode())); logger.error(e.toString()); } catch (ServerResponseException e) { logger.error(String.valueOf(e.getHttpStatusCode())); logger.error(e.toString()); } } }
5 管理面查詢Job狀態(tài)
示例代碼
package com.huawei.ges; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.exception.ClientRequestException; import com.huaweicloud.sdk.core.exception.ServerResponseException; import com.huaweicloud.sdk.ges.v1.GesClient; import com.huaweicloud.sdk.ges.v1.model.ShowJobRequest; import com.huaweicloud.sdk.ges.v1.model.ShowJobResponse; import com.huaweicloud.sdk.ges.v1.region.GesRegion; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class ShowJobDemo { private static final Logger logger = LoggerFactory.getLogger(ShowJobDemo.class.getName()); public static void main(String[] args) { ICredential auth = new BasicCredentials().withAk("{ak}").withSk("{sk}"); GesClient client = GesClient.newBuilder().withCredential(auth).withRegion(GesRegion.valueOf("cn-north-4")).build(); ShowJobRequest request = new ShowJobRequest(); request.setGraphId("{graphId}"); request.setJobId("{jobId}"); try { ShowJobResponse response = client.showJob(request); logger.info(response.toString()); } catch (ClientRequestException e) { logger.error(String.valueOf(e.getHttpStatusCode())); logger.error(e.toString()); } catch (ServerResponseException e) { logger.error(String.valueOf(e.getHttpStatusCode())); logger.error(e.toString()); } } }
6 體驗插件的魅力
華為云devkit已上線:https://developer.huaweicloud.com/develop/toolkit.html
點擊關注,第一時間了解華為云新鮮技術~文章來源:http://www.zghlxwxcb.cn/news/detail-710113.html
?文章來源地址http://www.zghlxwxcb.cn/news/detail-710113.html
到了這里,關于教你用API插件開發(fā)一個AI快速處理圖片小助手的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!