Der Wir­bel um die jüngst publi­zier­ten Künst­li­che Intel­li­genz (KI) Sprach­mo­del­le hat vie­le Fir­men unter Zug­zwang gesetzt. Soll man schnell ein Pro­to­typ ein­set­zen? Ver­passt man den Anschluss, wenn man war­tet? Die­se Fra­ge stellt sich bei vie­len Tech­no­lo­gien. Wir beleuch­ten hier des­halb kurz die ange­prie­se­nen Lösun­gen unter dem Gesichts­punkt der IT-Sicher­heit und schla­gen Regeln für den Umgang mit KI Sprach­mo­del­len vor.

Grund­le­gen­de Funktionsweise

Das For­schungs­ge­biet der Künst­li­chen Intel­li­genz besteht aus vie­len wei­te­ren Algo­rith­mus Fami­li­en. Dazu gehö­ren alle wis­sens­ba­sier­ten Sys­te­me, Mus­ter­ana­ly­se, Robo­tik oder auch Sprach­mo­del­le, die jetzt im Ram­pen­licht ste­hen. Micro­soft® ChatGPT, Goog­le Bard und Ver­wand­te stüt­zen sich rein auf die Ana­ly­se von Sprach­struk­tu­ren. Alle Model­le ver­wen­den frei zugäng­li­che Daten als Biblio­thek für ihre Aus­künf­te. Bei GPT‑4 sind die Daten auf dem Stand von Sep­tem­ber 2021. Die Quel­len sind nicht offen­ge­legt. Das Vor­gän­ger­mo­dell GPT‑3 lern­te an zwei Kol­lek­tio­nen von Büchern, der kom­plet­ten Wiki­pe­dia, Daten­sät­zen von Web-Craw­lern (3,15 Mil­li­ar­den Web­sei­ten) und der WebText2 Samm­lung (ca. 70 Mil­lio­nen Tex­ten aus dem Web). Die­se Daten wer­den durch das Sprach­mo­dell nach Ein­ga­be von Auf­for­de­run­gen (soge­nann­te Prompts) beaus­kunftet. Dabei ent­steht zwangs­läu­fig eine Mischung aus ver­schie­dens­ten Quel­len. Dadurch sind die Model­le ein Fil­ter für Big Data Archi­ve. Ein wich­ti­ges Detail am Ran­de ist, dass das Trai­ning der Algo­rith­men auf­grund der Grö­ße der Quell­da­ten ohne Über­wa­chung oder Kon­trol­le geschieht.

Wich­tig dabei ist, dass die Auf­ar­bei­tung der Daten rein auf der sprach­li­chen Ebe­ne erfolgt. Die Model­le ver­su­chen, die von Men­schen ver­wen­de­te Spra­che nach­zu­bil­den. Kogni­ti­ve Pro­zes­se wer­den nicht model­liert, d.h. das Modell kann weder ein Ver­ständ­nis ent­wi­ckeln noch den Kon­text von Infor­ma­tio­nen ver­ste­hen. Dies ist eine Schwach­stel­le, die bei­spiels­wei­se gezielt zum “Ver­gif­ten” der Daten­samm­lun­gen durch Falsch­in­for­ma­tio­nen ver­wen­det wer­den kann.

Lern­fä­hig — ja oder nein?

Ein wei­te­res Risi­ko bei öffent­lich ver­füg­ba­ren Sprach­mo­del­len ist die Lern­fä­hig­keit. Wenn der Algo­rith­mus ein­ge­ge­be­ne Daten und Doku­men­te zur inter­nen Daten­samm­lung hin­zu­fü­gen, dann hat man es mit einem Daten­leck zu tun. Je nach Prompt kön­nen dann ande­re Infor­ma­tio­nen über die­se impor­tier­ten Daten abfra­gen. Man soll­te also, wie bei Such­ma­schi­nen, auf­pas­sen, wel­che Daten per For­mu­lar an Dritt­an­bie­ter gesen­det wer­den. Deren all­ge­mei­ne Geschäfts­be­din­gun­gen mögen zwar Daten­schutz ver­si­chern, aber die Bedin­gun­gen kön­nen jeder­zeit Ände­run­gen unter­wor­fen wer­den. Zusätz­lich ist oft nicht klar, ob Daten zur Dia­gno­se von Feh­ler doch gespei­chert und ver­ar­bei­tet werden.

Pro­gram­mie­ren­de Sprachmodelle

AI Technologie

Pro­gram­mier­spra­chen haben eben­so Voka­beln und eine Gram­ma­tik wie natür­li­che Spra­chen. Da man in der Soft­ware­ent­wick­lung ohne­hin seit 1951 Sprach­ge­nera­to­ren in Form von Com­pi­lern ein­setzt, ist die Erzeu­gung von Code eine nahe­lie­gen­de Anwen­dung. Auch Umfor­mun­gen von einer Spra­che in eine ande­re sind mög­lich und jetzt schon Teil von Stan­dard­tools. Der wich­tigs­te Unter­schied dabei: AI Sprach Model­le fol­gen kei­nen star­ren Regeln, son­dern die lie­fern eine gut les­ba­re Mischung aus vie­len Quel­len. Tests haben erge­ben, dass meis­tens lauf­fä­hi­ger Code gene­riert wird, der die Anfor­de­rung erfüllt. Laut einer Stu­die baut das Sprach­mo­dell aber in etwas 30% aller Fäl­le Feh­ler ein­baut, die teil­wei­se zu Schwach­stel­len füh­ren. Zwar las­sen sich die­se Feh­ler leicht fin­den, weil sie nur zu bestimm­ten Feh­ler­klas­sen gehö­ren, aber sie illus­trie­ren damit, dass es einen Pro­zess zur manu­el­len Kon­trol­le benötigt.

Vie­le inte­grier­te Ent­wick­lungs­um­ge­bun­gen bie­ten jetzt schon die Mög­lich­keit wäh­rend dem Pro­gram­mie­ren sol­che Vor­schlä­ge zu erhal­ten. Bei der Über­nah­me des gene­rier­ten Codes muss man vor­sich­tig sein. Auto­ma­ti­siert kom­plet­te Anwen­dun­gen mit weni­gen Anga­ben zu bau­en, ist noch nicht mög­lich. Man kann sich aber Tem­pla­tes erstel­len las­sen, die man dann wei­ter­ver­ar­bei­tet. Vor­aus­set­zung dafür ist, dass der gene­rier­te Code nicht zu groß ist. Ansons­ten ist die Über­prü­fung auf­wän­di­ger als den Code gleich selbst zu erstellen.

Eine mög­li­che Anwen­dung liegt bei Tests von Soft­ware durch Gene­rie­rung von ver­än­der­ten Ein­ga­be­da­ten. Die­ses “AI fuz­zing” könn­te für die Qua­li­ty Assu­rance Pha­se her­an­ge­zo­gen wer­den, benö­tigt aber Erfah­rung im Umgang mit den Sprachmodellen.

Rich­ti­ger Umgang mit Sprachmodellen

Wenn Fir­men jetzt Erfah­run­gen mit den Sprach­al­go­rith­men sam­meln möch­ten, so soll­te man sich an eini­ge Regeln halten.

  1. Kei­ne Ein­ga­be von sen­si­ti­ven Daten in öffent­li­che Chat-Por­ta­le. Das schließt die pro­gram­ma­ti­sche Ein­ga­be über Pro­gram­mier­schnitt­stel­len ein.
  2. Gene­rier­ten Code nie­mals unver­än­dert in eige­ne Soft­ware übernehmen.
    (Ent­wick­lungs­um­ge­bung limi­tie­ren jetzt schon Cut & Pas­te wegen Secu­re Coding Regeln)
  3. Ant­wor­ten der Sprach­mo­del­le las­sen sich als Fil­ter oder zur Recher­che ver­wen­den. Damit kann man Code ver­ste­hen ler­nen und mit dem Wis­sen den eige­nen Code schreiben.
  4. Die Ver­wen­dung von AI Sprach­mo­del­len als Fil­ter für inter­ne Daten­samm­lun­gen erzwin­gen den Betrieb fir­men­in­tern — ganz ana­log zu Such­ma­schi­nen, die inter­ne Fir­men­da­ten auch nicht indi­zie­ren dürfen.

Apple und Sam­sung haben schon Vor­keh­run­gen getrof­fen und ver­bie­ten den Ein­satz öffent­lich ver­füg­ba­rer Sprach­mo­del­le für fir­men­in­ter­ne Tätig­kei­ten. Es ist zu erwar­ten, dass ande­re Fir­men nach­zie­hen und ent­spre­chend ihre Richt­li­ni­en über­ar­bei­ten werden.