本公開涉及機(jī)器學(xué)習(xí)領(lǐng)域,尤其涉及一種機(jī)器學(xué)習(xí)平臺的數(shù)據(jù)管理及分發(fā)的方法、設(shè)備和存儲介質(zhì)。
背景技術(shù):
1、隨著以大模型為代表的ai技術(shù)的迅猛發(fā)展,訓(xùn)練數(shù)據(jù)、模型數(shù)據(jù)的體量迅速攀升。如何有效的管理數(shù)據(jù),包括精確的版本控制,高效的數(shù)據(jù)分發(fā),方便的訓(xùn)練使用,成為aiinfra技術(shù)面臨的新挑戰(zhàn)。
2、現(xiàn)有的技術(shù)中,當(dāng)數(shù)據(jù)的多個版本同時在使用時,往往需要進(jìn)行多次的跨集群傳輸操作,導(dǎo)致重復(fù)的數(shù)據(jù)存儲工作,傳輸效率不夠。
技術(shù)實現(xiàn)思路
1、有鑒于此,本公開提出了一種機(jī)器學(xué)習(xí)平臺的數(shù)據(jù)管理及分發(fā)的方法、設(shè)備和存儲介質(zhì)。
2、該方法基于git版本控制系統(tǒng)來管理和共享數(shù)據(jù)。在面對多可用區(qū)訓(xùn)練任務(wù)需求時,在各個可用區(qū)設(shè)置了2級存儲結(jié)構(gòu),一級存儲用于鏡像git源站,二級存儲用于按commitid進(jìn)行文件存儲,并利用argo?workflow進(jìn)行任務(wù)dag調(diào)度。通過在多任務(wù)間實現(xiàn)存儲空間、分發(fā)操作共享,可以有效提高數(shù)據(jù)存儲、傳輸?shù)男省?/p>
3、根據(jù)本申請的一方面,提供了一種機(jī)器學(xué)習(xí)平臺的數(shù)據(jù)管理及分發(fā)的方法,包括:
4、基于git版本控制數(shù)據(jù)系統(tǒng)管理和共享數(shù)據(jù),數(shù)據(jù)存儲包括多個機(jī)器學(xué)習(xí)訓(xùn)練集群可用區(qū),每個所述可用區(qū)設(shè)置有兩級存儲結(jié)構(gòu),其中,一級存儲用于鏡像git源站;
5、二級存儲用于按commit?id進(jìn)行文件存儲,且所述二級存儲中對每個數(shù)據(jù)版本進(jìn)行存儲,且每個版本有對應(yīng)的commit?id標(biāo)識,不同訓(xùn)練任務(wù)共享調(diào)用所述二級存儲。
6、在一種可能的實現(xiàn)方式中,利用argo?workflow進(jìn)行任務(wù)dag調(diào)度,當(dāng)一機(jī)器學(xué)習(xí)訓(xùn)練中需要調(diào)用數(shù)據(jù)時,確定要調(diào)用數(shù)據(jù)的待調(diào)用commit?id標(biāo)識;
7、根據(jù)所述待調(diào)用commit?id標(biāo)識,通過kubernetes的自定義資源確定所述待調(diào)用數(shù)據(jù)是否準(zhǔn)備完畢;
8、當(dāng)所述待調(diào)用數(shù)據(jù)準(zhǔn)備完畢時,當(dāng)前執(zhí)行的所述機(jī)器學(xué)習(xí)訓(xùn)練使用所述待調(diào)用數(shù)據(jù)進(jìn)行訓(xùn)練。
9、在一種可能的實現(xiàn)方式中,根據(jù)所述待調(diào)用commit?id標(biāo)識,通過kubernetes的自定義資源確定所述待調(diào)用數(shù)據(jù)是否準(zhǔn)備完畢時,還包括:
10、當(dāng)所述待調(diào)用數(shù)據(jù)未準(zhǔn)備完畢時,根據(jù)所述待調(diào)用commit?id標(biāo)識,檢查所述待調(diào)用commit?id標(biāo)識對應(yīng)的cr是否在執(zhí)行中,并得到判斷結(jié)果;
11、當(dāng)所述cr在執(zhí)行中,掛起待執(zhí)行cr;
12、當(dāng)所述待執(zhí)行cr可以被執(zhí)行時,則所述待調(diào)用數(shù)據(jù)準(zhǔn)備完畢。
13、在一種可能的實現(xiàn)方式中,檢查所述待調(diào)用commit?id標(biāo)識對應(yīng)的cr是否在執(zhí)行中得到的所述判斷結(jié)果還包括:
14、當(dāng)所述cr不在執(zhí)行中,則提交所述cr申請,進(jìn)行cr數(shù)據(jù)準(zhǔn)備。
15、在一種可能的實現(xiàn)方式中,所述cr數(shù)據(jù)準(zhǔn)備包括,判斷是否從一級存儲中獲取到指定的commit?id;
16、當(dāng)從一級存儲中獲取到指定的commit?id時,基于所述獲取的指定的commit?id,以所述獲取到的commit?id對應(yīng)的數(shù)據(jù)作為二級存儲;
17、當(dāng)未獲取到所述指定的commit?id時,則觸發(fā)所述一級存儲的fetch操作,再次獲取指定的commit?id。
18、在一種可能的實現(xiàn)方式中,當(dāng)未獲取到所述指定的commit?id時,則觸發(fā)所述一級存儲的fetch操作,包括:
19、當(dāng)未獲取到所述指定的commit?id時,觸發(fā)所述一級存儲的fetch操作之前,檢查是否有執(zhí)行中的一級存儲的fetch操作;
20、當(dāng)存在執(zhí)行中一級存儲的fetch操作時,則所述cr進(jìn)入等待模式;
21、所述一級存儲的fetch操作完成時,所述進(jìn)入等待模式的cr再次獲取所述指定的commit?id。
22、在一種可能的實現(xiàn)方式中,所述機(jī)器學(xué)習(xí)訓(xùn)練中需要調(diào)用數(shù)據(jù)時,利用argoworkflow進(jìn)行任務(wù)調(diào)度,將一個訓(xùn)練任務(wù)描述為dag,當(dāng)所述dag執(zhí)行至數(shù)據(jù)初始化節(jié)點,檢查數(shù)據(jù)準(zhǔn)備是否達(dá)成;
23、其中,所述dag的數(shù)據(jù)初始化節(jié)點基于cr實現(xiàn)。
24、在一種可能的實現(xiàn)方式中,所述cr準(zhǔn)備完成狀態(tài)檢查通過自定義資源控制器實現(xiàn);
25、其中,所述cr的狀態(tài)包括初始狀態(tài)、一級數(shù)據(jù)準(zhǔn)備中、一級數(shù)據(jù)準(zhǔn)備完成、數(shù)據(jù)準(zhǔn)備失敗、數(shù)據(jù)準(zhǔn)備完成中的至少一種。
26、根據(jù)本申請的另一方面,提供了一種機(jī)器學(xué)習(xí)平臺的數(shù)據(jù)管理及分發(fā)的設(shè)備,包括:處理器;用于存儲處理器可執(zhí)行指令的存儲器;其中,所述處理器被配置為執(zhí)行上述方法。
27、根據(jù)本申請的另一方面,提供了一種非易失性計算機(jī)可讀存儲介質(zhì),其上存儲有計算機(jī)程序指令,其中,所述計算機(jī)程序指令被處理器執(zhí)行時實現(xiàn)上述方法。
28、根據(jù)下面參考附圖對示例性實施例的詳細(xì)說明,本公開的其它特征及方面將變得清楚。
1.一種機(jī)器學(xué)習(xí)平臺的數(shù)據(jù)管理及分發(fā)方法,其特征在于:
2.根據(jù)權(quán)利要求1所述的機(jī)器學(xué)習(xí)平臺的數(shù)據(jù)管理及分發(fā)方法,其特征在于,利用argoworkflows進(jìn)行訓(xùn)練任務(wù)調(diào)度;步驟包括:
3.根據(jù)權(quán)利要求2所述的機(jī)器學(xué)習(xí)平臺的數(shù)據(jù)管理及分發(fā)方法,其特征在于,根據(jù)所述待調(diào)用commit?id標(biāo)識,通過kubernetes的自定義資源確定所述待調(diào)用數(shù)據(jù)是否準(zhǔn)備完畢還包括:
4.根據(jù)權(quán)利要求3所述的機(jī)器學(xué)習(xí)平臺的數(shù)據(jù)管理及分發(fā)方法,其特征在于,檢查所述待調(diào)用commit?id標(biāo)識對應(yīng)的cr是否在執(zhí)行中得到的所述判斷結(jié)果還包括:
5.根據(jù)權(quán)利要求4所述的機(jī)器學(xué)習(xí)平臺的數(shù)據(jù)管理及分發(fā)方法,其特征在于,所述cr數(shù)據(jù)準(zhǔn)備包括:
6.根據(jù)權(quán)利要求5所述的機(jī)器學(xué)習(xí)平臺的數(shù)據(jù)管理及分發(fā)方法,其特征在于,當(dāng)未獲取到所述指定的commit?id時,則觸發(fā)所述一級存儲的fetch操作,包括:
7.根據(jù)權(quán)利要求1-6任一項所述的機(jī)器學(xué)習(xí)平臺的數(shù)據(jù)管理及分發(fā)方法,其特征在于,所述機(jī)器學(xué)習(xí)訓(xùn)練中需要調(diào)用數(shù)據(jù)時,利用argo?workflow進(jìn)行任務(wù)調(diào)度,將一個訓(xùn)練任務(wù)描述為dag,當(dāng)所述dag執(zhí)行至數(shù)據(jù)初始化節(jié)點,檢查數(shù)據(jù)準(zhǔn)備是否達(dá)成;
8.根據(jù)權(quán)利要求1-6任一項所述的機(jī)器學(xué)習(xí)平臺的數(shù)據(jù)管理及分發(fā)方法,其特征在于,所述cr準(zhǔn)備完成狀態(tài)檢查通過自定義資源控制器實現(xiàn);
9.一種機(jī)器學(xué)習(xí)平臺的數(shù)據(jù)管理及分發(fā)設(shè)備,其特征在于,包括:
10.一種非易失性計算機(jī)可讀存儲介質(zhì),其上存儲有計算機(jī)程序指令,其特征在于,所述計算機(jī)程序指令被處理器執(zhí)行時實現(xiàn)權(quán)利要求1至8中任意一項所述的方法。