CI/CD egyéni beszédhez

Automatizált betanítás, tesztelés és kiadáskezelés implementálása az egyéni beszédmodellek folyamatos fejlesztése érdekében, amikor frissítéseket alkalmaz a betanítási és tesztelési adatokra. A CI/CD-munkafolyamatok hatékony implementálásával biztosíthatja, hogy a legjobban teljesítő egyéni beszédmodell végpontja mindig elérhető legyen.

A folyamatos integráció (CI) az a mérnöki gyakorlat, amely során gyakran véglegesítik a frissítéseket egy megosztott adattárban, és automatizált buildelést hajtanak végre rajta. Az egyéni beszédalapú CI-munkafolyamatok betanítenek egy új modellt az adatforrásaiból, és automatizált tesztelést végeznek az új modellen, hogy az jobban teljesítsen, mint az előző modell.

A folyamatos teljesítés (CD) a CI-folyamatból veszi a modelleket, és végpontot hoz létre minden továbbfejlesztett egyéni beszédmodellhez. A CD-vel a végpontok könnyen elérhetővé válnak a megoldásokba való integrálhatóvá.

Egyéni CI/CD-megoldások is lehetségesek, de egy robusztus, előre elkészített megoldáshoz használja a Speech DevOps-sablontárat, amely CI/CD-munkafolyamatokat hajt végre a GitHub Actions használatával.

CI-/CD-munkafolyamatok egyéni beszédhez

Ezeknek a munkafolyamatoknak a célja annak biztosítása, hogy minden egyéni beszédmodell jobb felismerési pontosságú legyen, mint az előző build. Ha a tesztelési és/vagy betanítási adatok frissítései javítják a pontosságot, ezek a munkafolyamatok új egyéni beszédvégpontot hoznak létre.

Az olyan Git-kiszolgálók, mint a GitHub és az Azure DevOps, automatizált munkafolyamatokat futtathatnak adott Git-események, például egyesítések vagy lekéréses kérelmek esetén. Egy CI-munkafolyamat például akkor aktiválható, ha a tesztelési adatok frissítéseit leküldi a főágba . A különböző Git-kiszolgálók eltérő eszközkészlettel rendelkeznek, de engedélyezik a parancssori felületi parancsok szkriptelését, hogy végrehajthassák őket egy buildkiszolgálón.

A munkafolyamatoknak a folyamat során el kell nevezniük és tárolniuk az adatokat, teszteket, tesztfájlokat, modelleket és végpontokat, hogy visszakövethetők legyenek a véglegesítésre vagy a verzióra, amelyből származnak. Az is hasznos, ha ezeket az eszközöket elnevozza, így könnyen áttekinthető, hogy mely elemek lettek létrehozva a tesztelési adatok frissítése és a betanítási adatok frissítése után.

CI-munkafolyamat az adatfrissítések teszteléséhez

A CI/CD-munkafolyamatok fő célja egy új modell létrehozása a betanítási adatok használatával, és a tesztelési adatok használatával annak megállapítása, hogy a Word hibaaránya (WER) javult-e az előző legjobb teljesítményt nyújtó modellhez (a "benchmark modellhez") képest. Ha az új modell jobban teljesít, az lesz az új referenciamodell, amelyhez a jövőbeli modelleket hasonlítják össze.

Az adatfrissítések tesztelésére szolgáló CI-munkafolyamatnak újra kell tesztelnie az aktuális teljesítményteszt-modellt a frissített tesztadatokkal a módosított WER kiszámításához. Ez biztosítja, hogy amikor egy új modell WER-ét összehasonlítják a teljesítményteszt WER-ével, mindkét modellt ugyanazon tesztadatokon tesztelték, és ön hasonlóval hasonlít össze.

Ennek a munkafolyamatnak aktiválnia kell az adatok tesztelésének frissítését, és a következőt:

  • Tesztelje a teljesítményteszt-modellt a frissített tesztelési adatokon.
  • Tárolja a tesztkimenetet, amely tartalmazza a teljesítménytesztmodell WER-ét a frissített adatok használatával.
  • Ezekből a tesztekből származó WER lesz az új benchmark WER, amelyet a jövőbeli modelleknek le kell győzniük.
  • A CD-munkafolyamat nem hajtja végre az adatok teszteléséhez szükséges frissítéseket.

CI-munkafolyamat az adatfrissítések betanításához

Frissítések betanítási adatok az egyéni modell frissítéseit jelzik.

Ennek a munkafolyamatnak aktiválnia kell a betanítási adatok frissítéseit, és a következőt:

  • Új modell betanítása a frissített betanítási adatokkal.
  • Tesztelje az új modellt a tesztelési adatokon.
  • Tárolja a wer-t tartalmazó tesztkimenetet.
  • Hasonlítsa össze az új modell WER-ét a referenciamodell WER-ével.
  • Ha a WER nem javul, állítsa le a munkafolyamatot.
  • Ha a WER javul, hajtsa végre a CD-munkafolyamatot egy egyéni beszédvégpont létrehozásához.

CD-munkafolyamat

Miután a betanítási adatok frissítése javítja a modell felismerését, a CD-munkafolyamatnak automatikusan végre kell hajtania, hogy új végpontot hozzon létre a modellhez, és elérhetővé tegye a végpontot úgy, hogy az egy megoldásban használható legyen.

Kiadáskezelés

A legtöbb csapat manuális felülvizsgálati és jóváhagyási folyamatot igényel az éles környezetben való üzembe helyezéshez. Éles üzembe helyezés esetén érdemes lehet meggyőződni arról, hogy ez akkor fordul elő, ha a fejlesztési csapat kulcsemberei támogatás céljából vagy alacsony forgalmú időszakokban érhetők el.

Egyéni beszéd-munkafolyamatok eszközei

Egyéni beszédhez használja az alábbi eszközöket a CI/CD-automatizálási munkafolyamatokhoz:

  • Azure CLI azure-szolgáltatásnév-hitelesítés létrehozásához, Azure-előfizetések lekérdezéséhez és teszteredmények tárolásához az Azure Blobban.
  • Azure AI Speech CLI a Speech szolgáltatással való kommunikációhoz a parancssorból vagy egy automatizált munkafolyamatból.

DevOps-megoldás egyéni beszédhez a GitHub Actions használatával

Az egyéni beszédhez már implementált DevOps-megoldásért nyissa meg a Speech DevOps-sablon adattárát. Készítsen másolatot a sablonról, és kezdje el az egyéni modellek fejlesztését egy robusztus DevOps-rendszerrel, amely a GitHub Actions használatával végzett tesztelést, betanítást és verziószámozást is magában foglalja. Az adattár mintatesztelési és betanítási adatokat biztosít a munkafolyamat beállításához és magyarázatához. A kezdeti beállítás után cserélje le a mintaadatokat a projektadatokra.

A Speech DevOps-sablon adattára az infrastruktúrát és részletes útmutatást nyújt a következőhöz:

  • Másolja a sablontárházat a GitHub-fiókjába, majd hozzon létre Azure-erőforrásokat és egy szolgáltatásnevet a GitHub Actions CI/CD-munkafolyamataihoz.
  • Járja végig a "fejlesztői belső hurkot". Frissítse a betanítási és tesztelési adatokat egy szolgáltatáságból, tesztelje a módosításokat egy ideiglenes fejlesztési modellel, és küldjön lekéréses kérelmet a módosítások javaslatára és áttekintésére.
  • Ha a betanítási adatok egy fő lekéréses kérelemben frissülnek, a modellek betanítása a GitHub Actions CI-munkafolyamattal.
  • Automatizált pontosságtesztelés a modell Word-hibaarányának (WER) megállapításához. A teszteredmények tárolása az Azure Blobban.
  • Futtassa a CD-munkafolyamatot egy végpont létrehozásához, amikor a WER javul.

Következő lépések

  • A Speech DevOps-sablon adattárával implementálhatja a DevOps egyéni beszédhez a GitHub Actions használatával.