本申請(qǐng)屬于數(shù)據(jù)處理,具體涉及一種模型運(yùn)行方法、電子設(shè)備及可讀存儲(chǔ)介質(zhì)。
背景技術(shù):
1、對(duì)于端側(cè)大模型的保護(hù),其中一個(gè)保護(hù)目標(biāo)為模型運(yùn)行。通常,端側(cè)大模型是在安卓(android)系統(tǒng)和內(nèi)核(kernel)系統(tǒng)的至少一個(gè)中運(yùn)行,一旦系統(tǒng)被超級(jí)權(quán)限(root),就會(huì)有模型文件泄露,因此存在用戶數(shù)據(jù)泄露或者用戶數(shù)據(jù)被篡改的風(fēng)險(xiǎn)。
2、為了解決這個(gè)問題,采取的措施是將模型放入非android系統(tǒng)以及非kernel系統(tǒng)的隔離執(zhí)行環(huán)境中運(yùn)行,從而可以保障模型運(yùn)行期間用戶數(shù)據(jù)不會(huì)泄露、被篡改。例如,主流的隔離執(zhí)行環(huán)境是可信執(zhí)行環(huán)境(trusted?excution?environment,tee)或者虛擬化。其中,當(dāng)模型在tee中運(yùn)行時(shí),因tee中的軟件無法調(diào)用神經(jīng)網(wǎng)絡(luò)處理器(neural?networkprocessing?unit,npu),使得無法使用npu對(duì)模型文件的運(yùn)行進(jìn)行加速;當(dāng)模型在虛擬化中運(yùn)行時(shí),安全npu和非安全npu的并發(fā)訪問會(huì)產(chǎn)生沖突,從而導(dǎo)致無法并行使用npu。
3、可見,在現(xiàn)有技術(shù)中,當(dāng)模型在隔離執(zhí)行環(huán)境中運(yùn)行時(shí),具有npu的使用受限的問題。
技術(shù)實(shí)現(xiàn)思路
1、本申請(qǐng)實(shí)施例的目的是提供一種模型運(yùn)行方法,能夠解決在現(xiàn)有技術(shù)中,當(dāng)模型在隔離執(zhí)行環(huán)境中運(yùn)行時(shí),具有npu的使用受限的問題。
2、第一方面,本申請(qǐng)實(shí)施例提供了一種模型運(yùn)行方法,應(yīng)用于電子設(shè)備,所述電子設(shè)備包括:進(jìn)行數(shù)據(jù)傳輸?shù)拇鎯?chǔ)器和神經(jīng)網(wǎng)絡(luò)處理器,所述神經(jīng)網(wǎng)絡(luò)處理器包括加解密模塊和密鑰寄存器,所述加解密模塊與所述密鑰寄存器之間進(jìn)行數(shù)據(jù)傳輸;所述方法包括:在所述電子設(shè)備上部署目標(biāo)模型的情況下,加載所述目標(biāo)模型的文件至所述存儲(chǔ)器;在所述神經(jīng)網(wǎng)絡(luò)處理器讀取所述目標(biāo)模型的文件中的密文數(shù)據(jù)的情況下,所述加解密模塊讀取所述密鑰寄存器中的解密密鑰;所述加解密模塊根據(jù)所述解密密鑰,對(duì)所述密文數(shù)據(jù)進(jìn)行解密;在所述神經(jīng)網(wǎng)絡(luò)處理器即將寫入明文數(shù)據(jù)至所述目標(biāo)模型的文件的情況下,所述加解密模塊讀取所述密鑰寄存器中的加密密鑰;所述加解密模塊根據(jù)所述加密密鑰,對(duì)所述明文數(shù)據(jù)進(jìn)行加密。
3、第二方面,本申請(qǐng)實(shí)施例提供了一種電子設(shè)備,所述電子設(shè)備包括:進(jìn)行數(shù)據(jù)傳輸?shù)拇鎯?chǔ)器和神經(jīng)網(wǎng)絡(luò)處理器,所述神經(jīng)網(wǎng)絡(luò)處理器包括加解密模塊和密鑰寄存器,所述加解密模塊與所述密鑰寄存器之間進(jìn)行數(shù)據(jù)傳輸;加載模塊,用于在所述電子設(shè)備上部署目標(biāo)模型的情況下,加載所述目標(biāo)模型的文件至所述存儲(chǔ)器;所述加解密模塊,用于在所述神經(jīng)網(wǎng)絡(luò)處理器讀取所述目標(biāo)模型的文件中的密文數(shù)據(jù)的情況下,讀取所述密鑰寄存器中的解密密鑰;根據(jù)所述解密密鑰,對(duì)所述密文數(shù)據(jù)進(jìn)行解密;在所述神經(jīng)網(wǎng)絡(luò)處理器即將寫入明文數(shù)據(jù)至所述目標(biāo)模型的文件的情況下,讀取所述密鑰寄存器中的加密密鑰;根據(jù)所述加密密鑰,對(duì)所述明文數(shù)據(jù)進(jìn)行加密。
4、第三方面,本申請(qǐng)實(shí)施例提供了一種電子設(shè)備,包括處理器和存儲(chǔ)器,所述存儲(chǔ)器存儲(chǔ)可在所述處理器上運(yùn)行的程序或指令,所述程序或指令被所述處理器執(zhí)行時(shí)實(shí)現(xiàn)如第一方面所述的步驟。
5、第四方面,本申請(qǐng)實(shí)施例提供了一種可讀存儲(chǔ)介質(zhì),所述可讀存儲(chǔ)介質(zhì)上存儲(chǔ)程序或指令,所述程序或指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)如第一方面所述的方法的步驟。
6、第五方面,本申請(qǐng)實(shí)施例提供了一種芯片,所述芯片包括處理器和通信接口,所述通信接口和所述處理器耦合,所述處理器用于運(yùn)行程序或指令,實(shí)現(xiàn)如第一方面所述的方法。
7、第六方面,本申請(qǐng)實(shí)施例提供一種計(jì)算機(jī)程序產(chǎn)品,該程序產(chǎn)品被存儲(chǔ)在存儲(chǔ)介質(zhì)中,該程序產(chǎn)品被至少一個(gè)處理器執(zhí)行以實(shí)現(xiàn)如第一方面所述的方法。
8、在本申請(qǐng)的實(shí)施例中,將目標(biāo)模型部署到電子設(shè)備,并將目標(biāo)模型的文件加載至存儲(chǔ)器。當(dāng)神經(jīng)網(wǎng)絡(luò)處理器從存儲(chǔ)器中讀取目標(biāo)模型的文件中的密文數(shù)據(jù)時(shí),神經(jīng)網(wǎng)絡(luò)處理器中的加解密模塊從密鑰寄存器中讀取解密密鑰,以將密文數(shù)據(jù)解密為明文數(shù)據(jù),以使得目標(biāo)模型在神經(jīng)網(wǎng)絡(luò)處理器上運(yùn)行;若在運(yùn)行期間,目標(biāo)模型產(chǎn)生數(shù)據(jù),這里產(chǎn)生的數(shù)據(jù)為明文數(shù)據(jù),則神經(jīng)網(wǎng)絡(luò)處理器中的加解密模塊從密鑰寄存器中讀取加密密鑰,將明文數(shù)據(jù)加密為密文數(shù)據(jù),再存儲(chǔ)至存儲(chǔ)器??梢?,本申請(qǐng)的實(shí)施例提供的模型運(yùn)行方法,一方面,存儲(chǔ)器中的模型文件中的數(shù)據(jù)是被加密保護(hù)了的,另一方面,神經(jīng)網(wǎng)絡(luò)處理器讀取的模型文件中的數(shù)據(jù)是經(jīng)過解密得到的明文數(shù)據(jù),從而在確保神經(jīng)網(wǎng)絡(luò)處理器的使用不受限制的基礎(chǔ)上,保障模型安全運(yùn)行,有效防止用戶數(shù)據(jù)泄露、被篡改。
1.一種模型運(yùn)行方法,其特征在于,應(yīng)用于電子設(shè)備,所述電子設(shè)備包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述電子設(shè)備還包括中央處理器;所述在所述電子設(shè)備上部署目標(biāo)模型的情況下,所述方法還包括:
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述加密密鑰和所述解密密鑰相同。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述加密密鑰和所述解密密鑰不同,且所述加密密鑰和所述解密密鑰之間具有對(duì)應(yīng)關(guān)系。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述目標(biāo)模型的數(shù)量為多個(gè),一個(gè)所述目標(biāo)模型對(duì)應(yīng)一個(gè)密鑰組,一個(gè)所述密鑰組包括一個(gè)所述加密密鑰和一個(gè)所述解密密鑰。
6.一種電子設(shè)備,其特征在于,所述電子設(shè)備包括:
7.根據(jù)權(quán)利要求6所述的設(shè)備,其特征在于,所述電子設(shè)備還包括:
8.根據(jù)權(quán)利要求6所述的設(shè)備,其特征在于,所述加密密鑰和所述解密密鑰相同。
9.根據(jù)權(quán)利要求6所述的設(shè)備,其特征在于,所述加密密鑰和所述解密密鑰不同,且所述加密密鑰和所述解密密鑰之間具有對(duì)應(yīng)關(guān)系。
10.根據(jù)權(quán)利要求6所述的設(shè)備,其特征在于,所述目標(biāo)模型的數(shù)量為多個(gè),一個(gè)所述目標(biāo)模型對(duì)應(yīng)一個(gè)密鑰組,一個(gè)所述密鑰組包括一個(gè)所述加密密鑰和一個(gè)所述解密密鑰。
11.一種電子設(shè)備,其特征在于,包括處理器和存儲(chǔ)器,所述存儲(chǔ)器存儲(chǔ)可在所述處理器上運(yùn)行的程序或指令,所述程序或指令被所述處理器執(zhí)行時(shí)實(shí)現(xiàn)如權(quán)利要求1~5任一項(xiàng)所述的模型運(yùn)行方法的步驟。
12.一種可讀存儲(chǔ)介質(zhì),其特征在于,所述可讀存儲(chǔ)介質(zhì)上存儲(chǔ)程序或指令,所述程序或指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)如權(quán)利要求1~5任一項(xiàng)所述的模型運(yùn)行方法的步驟。