chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙原生開發(fā)-仿ChatGPT應(yīng)用實(shí)戰(zhàn)

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-01-23 17:40 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

運(yùn)行環(huán)境

DAYU200:4.0.10.16

SDK:4.0.10.15

IDE:4.0.600

前言

在配置好環(huán)境之后,可以嘗試這編寫一個(gè)較為簡單的應(yīng)用程序練練手,這里選擇使用一個(gè)免費(fèi)的API接口網(wǎng)站 ALAPI來嘗試編寫一個(gè)可進(jìn)行對話的GPT應(yīng)用程序。

創(chuàng)建項(xiàng)目

創(chuàng)建好項(xiàng)目之后可以先把helloworld的demo在真機(jī)上跑一下,注意需要簽名

簽名方式

隨后直接點(diǎn)擊運(yùn)行,可以看到控制臺輸出

開發(fā)板效果如圖所示

修改圖標(biāo)和名稱

項(xiàng)目中含有文件記錄了應(yīng)用的圖標(biāo)和名稱,一部分是設(shè)置里的,一部分是顯示在桌面的,需要將這兩部分均做修改。

第一部分目錄在AppScope/app.json5

如下圖所示,icon和label分別對應(yīng)圖標(biāo)與名稱,我們將這里改為我們需要的內(nèi)容

此時(shí)在系統(tǒng)設(shè)置中我們的應(yīng)用圖標(biāo)和名稱應(yīng)當(dāng)都改過來了

修改桌面圖標(biāo)和名稱

修改src/main/module.json5中如圖所示的label和icon。

我們修改label的時(shí)候,修改中文目錄下的就可以,具體操作衛(wèi)按住ctrl跳轉(zhuǎn)時(shí)選擇中文路徑

更改后效果如下

對應(yīng)用添加相關(guān)權(quán)限

由于使用ChatGpt需要使用網(wǎng)絡(luò)權(quán)限,我們在這里添加網(wǎng)絡(luò)權(quán)限

在src/main/module.json5中modele中添加配置

"requestPermissions": [{
  "name": "ohos.permission.INTERNET"
}],

自定義數(shù)據(jù)模型

本次調(diào)用GPT的API可以自定數(shù)據(jù)模型來實(shí)現(xiàn),我們可以在ets目錄下新建Model文件夾,新建GPTModel文件(ts)

export class ChatGptModel {
  code: number = 0
  message: string = ""
  data: ChatGpt = new ChatGpt()
}

export class ChatGpt {
  content: string = ""

}

由于在API網(wǎng)站中查看ChatGPT調(diào)用時(shí)返回的參數(shù)較少,直接寫在里面

在網(wǎng)站的請求參數(shù)介紹中有這樣的內(nèi)容

我們實(shí)現(xiàn)的時(shí)簡單的一對一的對話,所以message暫時(shí)可以不用管,在在線測試網(wǎng)站中嘗試

token可以通過注冊本網(wǎng)站來獲取[ ALAPI]

得到響應(yīng)主體

{
  "code": 200,
  "msg": "success",
  "data": {
    "content": "你好!我是一個(gè)AI助手,可以幫助您回答問題和提供服務(wù)。有什么我可以為您做的嗎?"
  },
  "time": 1704790385,
  "usage": 1,
  "log_id": "603268355937845248"
}

可以看到我們需要的僅僅只有content內(nèi)的內(nèi)容。

創(chuàng)建輸入界面

作為一款問答式GPT應(yīng)用,需要有用戶輸入的地方,我們這里簡單的做一個(gè)輸入頁面

輸入頁面可以直接在默認(rèn)的index頁面中修改

輸入框組件

查詢按鈕

按鈕點(diǎn)擊時(shí)的事件,這里參考一篇博客,將用戶輸入內(nèi)容傳遞給下一個(gè)頁面,下一個(gè)頁面我們將其命名為ChatGpt

源代碼如下

import router from '@ohos.router'

@Entry
@Component
struct Login {
  @State message: string = '歡迎使用ChatGpt'

  build() {
    Column() {
      TextInput({
        placeholder: "請輸入您的問題"
      }).onChange((value: string) = > {
        console.info("輸入的問題是" + value)
        this.message = value

      }).type(InputType.Normal)

      Button("查詢")
        .width("100%")
        .backgroundColor(Color.Orange)
        .fontColor(Color.Black)
        .margin({
          bottom: 10
        })
        .onClick(() = > {
          router.pushUrl({
            url: "pages/ChatGpt",
            params: {
              message: this.message
            }
          }, router.RouterMode.Single)
        })

    }.width("100%").height("100%").justifyContent(FlexAlign.Center).padding({
      left: "10", right: 10
    })
  }
}

創(chuàng)建HTTP請求

下面我們寫用戶點(diǎn)擊按鈕后的返回頁面

1.導(dǎo)入http模塊

登錄后復(fù)制

import http from '@ohos.net.http';
import { BusinessError } from '@ohos.base';

2.創(chuàng)建createHttp

let httpRequest = http.createHttp();

3.填寫HTTP地址

httpData() {

  // 3.每一個(gè)httpRequest對應(yīng)一個(gè)HTTP請求任務(wù),不可復(fù)用
  let httpRequest = http.createHttp();
  //4.
  httpRequest.request(// 填寫HTTP請求的URL地址,可以帶參數(shù)也可以不帶參數(shù)。URL地址需要開發(fā)者自定義。請求的參數(shù)可以在extraData中指定
    "https://v2.alapi.cn/api/chatgpt/pro",
    {
      method: http.RequestMethod.GET, // 可選,默認(rèn)為http.RequestMethod.GET
      // // 開發(fā)者根據(jù)自身業(yè)務(wù)需要添加header字段
      header: [{
        'Content-Type': 'application/json'
      }],
      // 當(dāng)使用POST請求時(shí)此字段用于傳遞內(nèi)容
      extraData: {
        "token": "此處替換為你的token",
        "content":this.paramsFromIndex?.['message'],
        "max_tokens":"10000"
      },
      // expectDataType: http.HttpDataType.STRING, // 可選,指定返回?cái)?shù)據(jù)的類型
      // usingCache: true, // 可選,默認(rèn)為true
      // priority: 1, // 可選,默認(rèn)為1
      // connectTimeout: 60000, // 可選,默認(rèn)為60000ms
      // readTimeout: 60000, // 可選,默認(rèn)為60000ms
      // usingProtocol: http.HttpProtocol.HTTP1_1, // 可選,協(xié)議類型默認(rèn)值由系統(tǒng)自動(dòng)指定
      // usingProxy: false, //可選,默認(rèn)不使用網(wǎng)絡(luò)代理,自API 10開始支持該屬性
    }, (err: BusinessError, data: http.HttpResponse) = > {
    
    //對網(wǎng)絡(luò)數(shù)據(jù)的處理    
    if (!err) {


      // data.result為HTTP響應(yīng)內(nèi)容,可根據(jù)業(yè)務(wù)需要進(jìn)行解析
      console.info('Result:' + JSON.stringify(data.result));
      let ChatGptModel: ChatGptModel = JSON.parse(data.result.toString())
      this.ChatGpt = ChatGptModel.data

      console.info('code:' + JSON.stringify(data.responseCode));
      // data.header為HTTP響應(yīng)頭,可根據(jù)業(yè)務(wù)需要進(jìn)行解析
      console.info('header:' + JSON.stringify(data.header));
      console.info('cookies:' + JSON.stringify(data.cookies)); // 8+
      // 當(dāng)該請求使用完畢時(shí),調(diào)用destroy方法主動(dòng)銷毀
      httpRequest.destroy();
    } else {

      console.error('error:' + JSON.stringify(err));
      // 取消訂閱HTTP響應(yīng)頭事件
      httpRequest.off('headersReceive');
      // 當(dāng)該請求使用完畢時(shí),調(diào)用destroy方法主動(dòng)銷毀
      httpRequest.destroy();
    }
  }
  );
}

不要忘記將頁面添加到mainpage中

路徑src/main/resources/base/profile/main_pages.json

接下來就可以嘗試運(yùn)行一下代碼,在開發(fā)板中運(yùn)行效果如下

點(diǎn)擊查詢之后的效果如下:

如此,一個(gè)簡單的GPT程序就做好了還可以讓它幫你寫情書哦

最后附上HarmonyOSOpenHarmony的技術(shù)分布曲線圖:主頁保存

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • API
    API
    +關(guān)注

    關(guān)注

    2

    文章

    2173

    瀏覽量

    66261
  • 鴻蒙
    +關(guān)注

    關(guān)注

    60

    文章

    2863

    瀏覽量

    45373
  • OpenHarmony
    +關(guān)注

    關(guān)注

    31

    文章

    3928

    瀏覽量

    20728
  • ChatGPT
    +關(guān)注

    關(guān)注

    31

    文章

    1596

    瀏覽量

    10077
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    【HarmonyOS 5】金融應(yīng)用開發(fā)鴻蒙組件實(shí)踐

    原生鴻蒙操作系統(tǒng)星河版,面向開發(fā)者開放申請,余承東宣布鴻蒙生態(tài)設(shè)備數(shù)達(dá) 8 億臺;建設(shè)銀行、郵儲銀行等完成鴻蒙
    的頭像 發(fā)表于 07-11 18:20 ?757次閱讀
    【HarmonyOS 5】金融應(yīng)用<b class='flag-5'>開發(fā)</b><b class='flag-5'>鴻蒙</b>組件實(shí)踐

    鴻蒙5開發(fā)寶藏案例分享---一多開發(fā)實(shí)例(音樂)

    各位開發(fā)者小伙伴們好呀!今天咱們來點(diǎn)硬核干貨!最近在鴻蒙文檔中心挖到一座“金礦”——官方竟然暗藏了100+實(shí)戰(zhàn)案例,從分布式架構(gòu)到交互動(dòng)效優(yōu)化應(yīng)有盡有!這些案例不僅藏著華為工程師的私房技巧,還直接
    的頭像 發(fā)表于 06-30 11:54 ?626次閱讀

    DevEco Studio 聯(lián)合小藝接入 DeepSeek,步驟更簡單開發(fā)鴻蒙更專業(yè)

    隨著小藝接入了 DeepSeek,智能體的問答變得更加絲滑流暢,讓人不禁想到鴻蒙原生應(yīng)用開發(fā)如果接入這個(gè)智能體會(huì)產(chǎn)生什么樣的效果?確實(shí),當(dāng)我們把負(fù)責(zé)開發(fā)
    發(fā)表于 03-13 15:11

    Get這個(gè)秘籍,鴻蒙原生應(yīng)用頁面滑動(dòng)絲滑無比

    鴻蒙應(yīng)用開發(fā)中,部分應(yīng)用頁面在滑動(dòng)時(shí)會(huì)出現(xiàn)白塊或白屏的問題,不僅困擾開發(fā)者,還直接影響用戶體驗(yàn)。針對這一痛點(diǎn),華為近期分別推出了針對鴻蒙原生
    發(fā)表于 03-06 14:41

    鴻蒙原生應(yīng)用開發(fā)也可以使用DeepSeek了

    近期DeepSeek火爆全球,那一樣很火的開發(fā)鴻蒙原生應(yīng)用的DevEco Studio如果把它接入,會(huì)發(fā)生什么“化學(xué)反應(yīng)”呢?下面我們將詳細(xì)分享如何在DevEco Studio中利用CodeGPT
    發(fā)表于 02-20 18:06

    DevEco Studio構(gòu)建分析工具Build Analyzer 為原生鴻蒙應(yīng)用開發(fā)提速

    原生鴻蒙應(yīng)用開發(fā)過程中,隨著項(xiàng)目復(fù)雜度的增加,開發(fā)者花費(fèi)在構(gòu)建上的時(shí)間越來越長,導(dǎo)致開發(fā)效率降低。為了幫助
    發(fā)表于 02-17 18:06

    HarmonyOS 應(yīng)用開發(fā)賦能套件:鴻蒙原生應(yīng)用開發(fā)的 “神助攻”

    隨著鴻蒙生態(tài)的快速發(fā)展,越來越多的開發(fā)者投身于鴻蒙原生應(yīng)用的開發(fā)中。然而,在學(xué)習(xí)鴻蒙
    發(fā)表于 02-17 16:37

    使用DevEco Studio高效解決鴻蒙原生應(yīng)用內(nèi)存問題

    鴻蒙原生應(yīng)用開發(fā)過程中,可能由于種種原因?qū)е聭?yīng)用內(nèi)存未被正常地使用或者歸還至操作系統(tǒng),從而引發(fā)內(nèi)存異常占用、內(nèi)存泄漏等問題,最終導(dǎo)致應(yīng)用卡頓甚至崩潰,嚴(yán)重影響用戶體驗(yàn)。
    的頭像 發(fā)表于 01-16 14:44 ?1187次閱讀

    【機(jī)器視覺】歡創(chuàng)播報(bào)|華為新品出廠默認(rèn)搭載原生鴻蒙

    據(jù)報(bào)道,2025年華為手機(jī)、平板、穿戴新品都將出廠默認(rèn)搭載原生鴻蒙操作系統(tǒng),且越來越多的舊款產(chǎn)品也將逐步完成原生鴻蒙升級。
    的頭像 發(fā)表于 01-04 17:16 ?1338次閱讀

    華為新品出廠默認(rèn)搭載原生鴻蒙系統(tǒng)

    華為近日宣布了一項(xiàng)重要決策,即2025年其手機(jī)、平板、穿戴等新品都將出廠默認(rèn)搭載原生鴻蒙操作系統(tǒng)。這一舉措標(biāo)志著華為在操作系統(tǒng)領(lǐng)域邁出了堅(jiān)實(shí)的一步,也彰顯了其對自主技術(shù)的堅(jiān)定信心和決心。 據(jù)了解
    的頭像 發(fā)表于 01-03 10:48 ?1650次閱讀

    鴻蒙原生頁面高性能解決方案上線OpenHarmony社區(qū) 助力打造高性能原生應(yīng)用

    隨著HarmonyOS NEXT的正式推出,鴻蒙原生應(yīng)用開發(fā)熱度高漲,數(shù)量激增。但在三方應(yīng)用鴻蒙化進(jìn)程中,性能問題頻出。為此,HarmonyOS NEXT推出了一整套
    發(fā)表于 01-02 18:00

    鴻蒙原生開發(fā)手記:04-一個(gè)完整元服務(wù)案例

    文章,或下方的參考資料。 完整代碼 完整的代碼見代碼倉庫 https://gitee.com/zacks/arkts-ohos-demo 參考資料 鴻蒙原生開發(fā)手記:01-元服務(wù)開發(fā)
    發(fā)表于 12-27 10:35

    鴻蒙Flutter實(shí)戰(zhàn):14-現(xiàn)有Flutter 項(xiàng)目支持鴻蒙 II

    分別安裝官方的3.22版本,以及鴻蒙社區(qū)的 3.22.0 版本 3.搭建 Flutter鴻蒙開發(fā)環(huán)境 參考文章《鴻蒙Flutter實(shí)戰(zhàn):0
    發(fā)表于 12-26 14:59

    鴻蒙原生開源庫ViewPool在OpenHarmony社區(qū)正式上線

    近日,由伙伴參與共建的鴻蒙原生開源庫“ViewPool”在OpenHarmony社區(qū)正式上線。這個(gè)開發(fā)庫是基于OpenHarmony技術(shù)孵化的成果,充分發(fā)揮了平臺的技術(shù)特性,同時(shí)融入了伙伴在應(yīng)用
    的頭像 發(fā)表于 12-20 14:44 ?855次閱讀

    首款開發(fā)鴻蒙原生應(yīng)用的AI輔助編程工具正式上線了

    在AI技術(shù)席卷全球的浪潮中,開發(fā)者工具也迎來了智能化的全新時(shí)代。為響應(yīng)開發(fā)者對高效編程工具的需求,12月14日在AICon全球人工智能開發(fā)與應(yīng)用大會(huì)(北京站)期間,華為宣布首款開發(fā)
    的頭像 發(fā)表于 12-18 10:39 ?1052次閱讀