Jednotka 11 / 11

End-to-End projekt, zodpovedné využívanie umelej inteligencie a plán v profesii

zisky:

  • Schopnosť vyvinúť komplexnú mobilnú funkciu a overiteľnú v dizajne, kóde, integrácii AI, ochrane súkromia, testovaní, ladení, výkone a krokoch vydania
  • Schopnosť vytvoriť rámec pre zodpovedné a etické využívanie umelej inteligencie s princípmi transparentnosti, overovania-zodpovednosti a spravodlivosti-neškodenia.
  • Byť schopný vytvoriť udržateľnú profesionálnu prax rozlíšením oblastí, v ktorých je umelá inteligencia silná a slabá, a ponechať konečné rozhodnutie v rukách ľudí.

V celom tomto module sme používali AI v každej fáze mobilného vývoja: generovanie kódu, rozhranie, integrácia AI na zariadení a cloud, testovanie, ladenie, výkon, súkromie a doručovanie do obchodu. V tejto záverečnej časti spojíme všetky tieto časti do jedného komplexného postupu, objasníme rámec pre zodpovedné a etické používanie AI a porozprávame sa o tom, ako tieto zručnosti premeniť na udržateľnú profesionálnu prax. Základné posolstvo sa nezmenilo, ale teraz je pevne stanovené: AI je sila, ktorá znásobuje kompetentných mobilných vývojárov; nejde o náhradu. Je to osoba, ktorá je zodpovedná za kvalitu, bezpečnosť a prísľub produktu užívateľovi.

Komplexná funkcia: kombinovanie častí

Vývoj skutočnej funkcie od začiatku do konca s podporou AI spája všetky jednotky, ktoré sme sa naučili, v reťazci. Príklad: funkcia „pridať výdavok z príjmového dokladu“. Tok funguje takto:

  1. Dizajn (Jednotka 3). Navrhnite obrazovku a štyri stavy (načítavanie/prázdne/chyba/plné) s AI, požiadajte o prístupnosť od začiatku.
  2. Kód (Jednotka 2). Generujte kameru, dátový model a ViewModel vrstvu po vrstve pomocou MVVM; skontrolujte každú vrstvu.
  3. AI na zariadení (jednotka 4). Prečítajte si množstvo/dátum od prijatia pomocou rozpoznávania textu súpravy ML; Zvážte predbežné spracovanie a hodnotenie spoľahlivosti.
  4. Dôvernosť (jednotka 9). Požiadajte o povolenie fotoaparátu s najmenším oprávnením, napíšte scenár odmietnutia a uchovávajte údaje v zariadení.
  5. Testovanie (Jednotka 6). Generovanie jednotkových testov extrakčnej logiky, testovanie UI displeja; Zahrňte hraničné štáty.
  6. Ladenie (jednotka 7). Nechajte AI analyzovať zlyhania s kontextom a vyriešiť hlavnú príčinu.
  7. Výkon (Jednotka 8). Zmerajte náklady na batériu pri spracovaní fotoaparátu a nastavte ho tak, aby bol šetrný k batérii.
  8. Vysielanie (jednotka 10). Transparentne nahláste používanie AI, pravdivo vyplňte formulár ochrany osobných údajov a vykonajte autotest.

Na každom kroku AI zrýchľuje, človek overuje a rozhoduje. Táto slučka je jadrom modulu.

Tip: Nesnažte sa, aby AI urobila komplexnú funkciu s jednou obrovskou požiadavkou. Rozdeľte to na overiteľné kroky, ako je uvedené vyššie. Testovanie výstupu každého kroku a prechod na ďalší je bezpečnejší a v konečnom dôsledku rýchlejší; Pretože veľkú chybu zachytíte nie na konci, ale pri prvom kroku.

Zodpovedné a etické používanie AI

Samotná technická spôsobilosť nestačí; to dopĺňa zodpovedný rámec. Tri princípy:

Transparentnosť. Používateľ musí vedieť, že interaguje s AI. Tajná AI je porušením dôvery. Obsah generovaný AI je označený; Rada AI je prezentovaná ako „užitočná rada“ a nie ako „tvrdá pravda“.

Overovanie a zodpovednosť. Výstup AI je východiskovým bodom, nie hotovým produktom. Ste zodpovedný za každý zverejnený riadok kódu, každú odpoveď AI, každú dátovú transakciu. „AI ​​to tak napísala“ nie je obrana.

Spravodlivosť a nezlomnosť. Modely AI môžu niesť odchýlky od údajov, na ktorých sú trénované. Rozpoznanie tváre môže pri niektorých farbách pleti fungovať horšie, nástroj odporúčaní môže vylúčiť skupinu. Je vašou zodpovednosťou otestovať, či váš produkt funguje správne v rôznych skupinách používateľov.

Upozornenie: Akákoľvek technika, ktorú sa naučíte v oblasti IT a bezpečnosti, sa používa iba na autorizované a konštruktívne účely. Používanie AI na vytváranie škodlivého softvéru, crackovanie cudzej aplikácie bez povolenia, zhromažďovanie používateľských údajov bez súhlasu alebo vytváranie zavádzajúceho obsahu je nezákonné a proti etike profesie. Miera sily sa odhalí tam, kde ju nepoužívate.

Uvedomenie si limitov AI

Zrelý vývojár vie, kde AI svieti a kde zaostáva.

AI je mocná

AI je slabá

Kód formy, výroba kotlového plechu

Produktové a architektonické rozhodnutia

Testovanie a návrh dokumentácie

Pochopenie obchodného kontextu a používateľa

Čítanie protokolu o zlyhaní, skenovanie chýb

Definitívna diagnóza základnej príčiny (vyžaduje sa overenie)

Učenie, vysvetlenie pojmu

Aktuálne/nevyrobené informácie API

Text, popis, preklad

Etika, bezpečnosť a právne konečné rozhodnutie

Internalizácia tohto rozdielu je kľúčom k efektívnemu využívaniu AI a vyhýbaniu sa jej nástrahám.

tri mini prípady

Prípad 1 – Koncová rýchlosť. Jeden samostatný vývojár dokončil funkciu „unplugged“ za 4 dni s 8-krokovým postupom uvedeným vyššie; Bez AI bol odhad 12 dní. Ale pretože overoval každý krok, publikácia bola schválená na prvýkrát. Rýchlosť bola skutočná, pretože disciplína bola skutočná. Ponaučenie: AI + verifikácia je rýchlejšia ako AI - verifikácia.

Prípad 2 – Zaujatosť. Pri testovaní funkcie predikcie podstatného mena a pohlavia založenej na AI si tím všimol systematické chyby v niektorých tureckých podstatných menách; model bol trénovaný na prevažne anglických údajoch. Funkcia sa zmenila tak, že sa namiesto nesprávneho predpokladu pýta používateľa. Ponaučenie: úlohou vývojára je otestovať tréningovú zaujatosť modelu.

Prípad 3 – Obrana „AI to povedala“ zlyhala. Vývojár zverejnil platobný kód vygenerovaný AI bez toho, aby ho overil; V jednom extrémnom prípade kód robil dvojité zbery. Zodpovednosť sa nezbavuje vyslovením „AI to napísala“; Ako majiteľ účtu bol vývojárom. Ponaučenie: zodpovednosť nemožno delegovať.

Slabá výzva / Silná výzva

Slabá výzva: „Napíšte mi úplnú aplikáciu na skenovanie účteniek.“

Výkonná výzva: „Pomôžte mi vyvinúť funkciu „pridať výdavok z potvrdenia“ krok za krokom. Pokračujme v poradí, keď overím a schválim každý krok, prejdite na ďalší: 1) Obrazovka + štyri stavy + dostupnosť2) Vrstvy MVVM (fotoaparát, model, ViewModel)3) Čítanie množstva/dátumu od prijatia pomocou súpravy ML Unit + skóre dôvery4) Povedzte mi o oprávnení na prístup k fotoaparátu a privilégiám, ktoré potrebujem 5) overiť v každom kroku."

Kopírovateľné šablóny

Kompletná šablóna plánovania: "Vyviniem nasledujúcu funkciu: [funkcia]. Rozdelím ju do overiteľných krokov: dizajn, kód, integrácia AI, súkromie/povolenie, testovanie, výkon, vydanie. Napíšte výstup, riziko a overovacie kritériá pre každý krok. Nerobte jednu obrovskú produkciu."

Šablóna auditu etiky/predpojatosti: „Auditovanie nasledujúcej funkcie umelej inteligencie z hľadiska férovosti a zaujatosti: [funkcia]. Ktoré skupiny používateľov by mohla vykonávať slabú výkonnosť? Ako ovplyvňujú zaujatosť údajov školenia? Ako to otestujem, ako to urobím inkluzívnejším?“

Šablóna kontroly zodpovednosti: „Uveďte otázky týkajúce sa zodpovednosti, ktoré by som si mal položiť pred vydaním tohto kódu/funkcie generovanej AI: Rozumiem tomu, testoval som to, je to bezpečné, je to pre používateľa transparentné, je to legálne/etické?“

Šablóna kontinuálneho vzdelávania: „Navrhnite 4-týždňový praktický plán na zlepšenie mojich zručností AI v oblasti mobilného vývojára: jedna téma každý týždeň (kód, integrácia, testovanie, vydanie) s cieľom malého projektu a overovacieho zvyku.“

Časté chyby

  • Vytváranie komplexných funkcií s jednou obrovskou požiadavkou. Nedá sa overiť; rozložiť na kroky.
  • Vyhýbanie sa zodpovednosti vyjadrením „AI napísala tak“. Zodpovedáte za zverejnený kód.
  • Netestuje sa zaujatosť AI. Model môže v niektorých skupinách fungovať zle; Otestujte spravodlivosť.
  • Skrytie interakcie AI pred používateľom. Transparentnosť je základom dôvery.
  • Zabúdame na obmedzenia AI. Ľudia majú posledné slovo o architektúre, etike a súčasnom API.
  • Aby sa prestali učiť. Nástroje a pravidlá obchodu sa rýchlo menia; Buďte neustále informovaní.

V súhrne

Funkcia typu end-to-end spája všetky časti modulu v reťazci: dizajn, kód, integrácia AI, súkromie, testovanie, ladenie, výkon a vydanie. Na každom kroku AI zrýchľuje, človek overuje a rozhoduje; Komplexná práca je rozdelená do malých overiteľných krokov. Zodpovedné používanie je založené na troch princípoch: transparentnosť, overovanie – zodpovednosť a spravodlivosť – neškodí. Umelá inteligencia je mocný multiplikátor, ale posledné slovo v oblasti architektúry, etiky, bezpečnosti a súčasných znalostí majú ľudia. „AI to urobila tak“ nie je obrana; Ste zodpovedný za svoj produkt a sľub, ktorý dávate svojmu používateľovi. Vďaka tejto disciplíne vás AI robí počas vašej kariéry rýchlejšími, komplexnejšími a silnejšími.

Aplikačná úloha

Rozdeľte mobilnú funkciu podľa vlastného výberu (napr. „zhrnutie pomocou hlasových poznámok“ alebo „rozpoznanie produktu z fotografie“) na overiteľné kroky pomocou „šablóny komplexného plánovania“. Vyvíjajte a overujte aspoň jeden krok s AI. Potom analyzujte, ktorým skupinám používateľov môže funkcia spôsobovať problémy so „šablónou kontroly etiky/predpojatosti“ a pomocou „šablóny kontroly zodpovednosti“ odpovedzte na otázky, ktoré si musíte položiť pred vydaním.

kontrolný zoznam

  • [ ] Rozdelil som funkciu na overiteľné malé kroky, nie jednu obrovskú produkciu
  • [ ] Overil som výstup AI na každom kroku a rozhodol som sa
  • [ ] Interakciu AI som používateľovi prezentoval transparentne
  • [ ] Vyhodnotil som, či funkcia funguje spravodlivo/objektívne naprieč rôznymi skupinami
  • [ ] Odpovedal som na otázky týkajúce sa zodpovednosti pred vydaním (pochopené/testovanie/bezpečné/etické)
  • [ ] AI som používal len na kompetentné a konštruktívne účely a plánujem pokračovať v učení

Modulová skúška

1. Ktoré z nasledujúcich je najpresnejšie určovanie polohy pre umelú inteligenciu v mobilnom vývoji?

  • A) AI nahrádza vývojára; môžu byť zverejnené priamo bez čítania kódu, ktorý generuje
  • B) Umelá inteligencia funguje len pri písaní textu, nemá nič spoločné s generovaním kódu
  • C) Umelá inteligencia je asistent a akcelerátor; Zodpovednosť za architektonické, bezpečnostné a vysielacie rozhodnutia nesú ľudia ✔
  • D) Keďže umelá inteligencia vždy vytvára správny kód, ďalšie testovanie a overovanie sú zbytočné

Popis: Umelá inteligencia je asistent a akcelerátor, ktorý generuje kód, plány a riešenia. Zodpovednosť a konečné schválenie rozhodnutí ako architektúra, povolenie, bezpečnosť a zverejnenie spočíva na kompetentnom developerovi; Za každý uverejnený riadok sú zodpovední ľudia.

2. Čo pri vyžiadaní mobilného kódu od umelej inteligencie najviac zvyšuje architektonickú kvalitu vyrobeného kódu?

  • A) Udržujte výzvu čo najkratšiu a povedzte „napíš mi aplikáciu“
  • B) Najprv zaveďte architektúru ako MVVM a vyžiadajte si kód po malých častiach, vrstvu po vrstve ✔
  • C) Vytvorenie celej funkcie ako jedného obrovského súboru v jednej výzve
  • D) Architektúru vôbec nešpecifikujte a najlepšie rozhodnutie nechajte na umelú inteligenciu

Vysvetlenie: Zavedenie architektúry ako MVVM a vyžadovanie vrstvy po vrstve pred zapísaním kódu priamo do AI vytvára testovateľnú a udržiavateľnú štruktúru, ktorá oddeľuje logiku od obrazovky. Požiadavka bez architektúry vráti kód, ktorý všetko vtlačí na obrazovku.

3. Čo sa najčastejšie prehliada pri vytváraní rozhrania s umelou inteligenciou a čo je pri reálnom používaní najdôležitejšie?

  • A) Navrhovanie stavov načítania, prázdneho a chybového stavu, nielen celej obrazovky ✔
  • B) Vytváranie len najlepšie vyzerajúcich na celú obrazovku, vynechávanie iných prípadov
  • C) Pridanie čo najväčšieho počtu farieb a animácií na každú obrazovku
  • D) Značky prístupnosti nechávame ako posledné a zaoberáme sa len vzhľadom

Vysvetlenie: Vývojári často berú do úvahy iba „úplný“ stav; pričom v skutočnosti sa používateľ väčšinou stretáva so stavmi načítania, prázdnoty a chybových stavov. Generovanie všetkých štyroch stavov (načítanie/prázdne/chyba/plné) je tajomstvom robustného rozhrania.

4. Prečo je AI na zariadení často predvolenou voľbou pre funkciu, ktorá spracúva citlivé osobné údaje (napr. meranie zdravia)?

  • A) Modely na zariadení sú vždy presnejšie ako cloud
  • B) Spracovanie na zariadení nikdy nespôsobí náklady na batériu alebo procesor
  • C) Spracovanie na zariadení je z hľadiska veľkosti modelu neobmedzené
  • D) Keďže dáta neopúšťajú telefón, poskytuje to veľkú výhodu z hľadiska súkromia a dôvery používateľov ✔

Vysvetlenie: Spracovanie na zariadení neodstráni údaje z telefónu; Je to veľká výhoda z hľadiska dodržiavania súladu s ochranou osobných údajov a dôvery používateľov, navyše funguje offline a okamžite. Jeho limitom je výkon zariadenia a veľkosť modelu.

5. Aká je najbežnejšia „tichá“ chyba, ktorá spôsobuje nezmyselné výsledky a nevytvára chybové hlásenie v integrácii modelu na zariadení?

  • A) Nesprávny pravopis názvu súboru modelu
  • B) Nízke rozlíšenie ikony aplikácie
  • C) Nesprávne vstupné predspracovanie (veľkosť/normalizácia) ✔
  • D) Téma tmavej obrazovky

Vysvetlenie: Nesprávne vykonanie predbežného spracovania vstupu prinesie úplne nesprávne výsledky bez vyvolania chýb. Hodnoty predbežného spracovania by mali byť overené z dokumentácie modelu.

6. Aké je najdôležitejšie bezpečnostné pravidlo pri integrácii cloud LLM do mobilnej aplikácie?

  • A) Kľúč API by sa mal uchovávať iba v backende, nie na klientovi; požiadavky musia ísť cez proxy ✔
  • B) Kľúč API by mal byť pre pohodlie vložený priamo do kódu aplikácie
  • C) API kľúč by mal byť zdieľaný v popise aplikácie
  • D) API kľúč by mal zostať v klientovi a skrytý iba zmenou názvu.

Zverejnenie: Kľúč API nie je nikdy vložený do kódu mobilnej aplikácie; pretože aplikáciu možno spätne spracovať a extrahovať kľúč. Správna architektúra je ponechať kľúč iba v backende a prenášať požiadavky cez váš vlastný proxy server.

7. Čo najviac zvyšuje rýchlosť vnímanú používateľom a mieru dokončenia funkcií v dlhých odpovediach LLM?

  • A) Čakanie, kým sa vygeneruje celá odpoveď, a jej zobrazenie naraz
  • B) Zobrazenie odpovede slovo po slove tak, ako je vytvorené, so streamovaním ✔
  • C) Odoslanie celej histórie chatu modelke s každou požiadavkou
  • D) Zväčšite modelovú inštrukciu, aby ste čo najviac rozšírili odozvu

Popis: Streamovanie dramaticky zvyšuje vnímanú rýchlosť a plynulosť zobrazením odozvy tak, ako sa vytvára slovo po slove. Namiesto čakania na prázdnej obrazovke používateľ sleduje textovú formu; To výrazne znižuje mieru opustenia.

8. Aký je najčastejší problém v testoch produkovaných umelou inteligenciou, ktorý robí test bezcenným?

  • A) Skúšky pokrývajú príliš veľa medzných stavov
  • B) Testy používajú falošné objekty, nie skutočné služby
  • C) Testy prebiehajú veľmi rýchlo
  • D) Skúmajte nadúvanie pomocou prázdnych/zbytočných testov, ktoré v skutočnosti nepotvrdzujú správanie ✔

Vysvetlenie: Umelá inteligencia niekedy vytvára testy, ktoré v skutočnosti neoverujú žiadny výstup (napr. stačí zavolať funkciu a napísať prázdne tvrdenie). Tieto zvyšujú číslo pokrytia, ale neposkytujú skutočnú ochranu; Každý test musí byť skontrolovaný, aby sa overilo zmysluplné správanie.

9. Prečo nie je dostatočným riešením umlčať haváriu tak, že ju zapojíte do pokusu s návrhom umelej inteligencie?

  • A) Try-catch sa v mobilných aplikáciách nedá použiť vôbec
  • B) Zrútenie sa zastaví, ale keďže hlavná príčina nie je vyriešená, problém sa vráti v inej forme ✔
  • C) Použitie try-catch spomaľuje aplikáciu, preto je zakázané
  • D) Umlčaná chyba je automaticky odmietnutá obchodom

Vysvetlenie: Umlčanie symptómu nevyrieši hlavnú príčinu; Zrútenie sa zastaví, ale pôvodný problém (napr. prerušené dátové pripojenie) sa vráti v inej forme (napr. strata dát). Cieľom profesionálneho ladenia je vyriešiť hlavnú príčinu, nie symptóm.

10. Aké je základné zlaté pravidlo, ktoré treba dodržiavať pri optimalizácii výkonu?

  • A) Najprv urobte profil a zmerajte skutočné úzke miesto, potom optimalizujte ✔
  • B) Hádanie kde je pomalé a sústredenie sa tam
  • C) Hľadanie malých ziskov v každej funkcii
  • D) Meranie výkonu na emulátore a nikdy skúšanie skutočného zariadenia

Popis: Najprv merajte, neskôr optimalizujte. Skutočná prekážka je takmer vždy na inom mieste, ako sa predpokladalo; Optimalizácia bez profilovania je slepý odhad a často je to strata úsilia.

11. Aký je najdôležitejší technický problém pre neustále spustenú funkciu AI (napr. živý preklad z kamery)?

  • A) Funkcia vyžaduje čo najviac povolení
  • B) Riadenie nákladov na batériu a procesor pri nepretržitom spracovaní s frekvenciou vzorkovania a dávkovým spracovaním ✔
  • C) Funkciu spúšťajte iba na najdrahších telefónoch
  • D) Nepretržité vykresľovanie fotoaparátu pri najvyššej možnej snímkovej frekvencii

Popis: Neustále fungujúci model, kamera a sieť; Môže rýchlo spotrebovať batériu, zahriať zariadenie a byť obmedzený systémom. Zníženie vzorkovacej frekvencie, dávkovanie a spustenie iba v prípade potreby sú spôsoby, ako riadiť náklady na batériu.

12. Čo znamená zásada „najmenšieho privilégia“ pri správe povolení pri vývoji mobilných zariadení?

  • A) Požiadanie o všetky možné povolenia pri spustení, pre každý prípad.
  • B) znefunkčnenie aplikácie v prípade zamietnutia povolenia
  • C) Požiadať o čo najširšie povolenie a neskôr ho plánovať zúžiť.
  • D) Žiadosť len o povolenie, ktoré sa skutočne vyžaduje, keď je to potrebné a v najužšom rozsahu, so scenárom odmietnutia ✔

Vysvetlenie: Najmenej privilégium vyžaduje len povolenie, ktoré je skutočne potrebné, vtedy, keď je potrebné a v čo najužšom rozsahu. Príliš veľa povolení podkopáva dôveru používateľov, vedie k odmietnutiu úložiska a zvyšuje riziko úniku údajov.

13. Aké konkrétne požiadavky musia byť splnené pri prezentovaní aplikácie s umelou inteligenciou na predajni?

  • A) Transparentnosť obsahu, kontrola obsahu a sprístupnenie údajov umelej inteligencii formou dôvernosti ✔
  • B) Skrytie používania umelej inteligencie pred používateľom
  • C) Označenie údajov, ktoré sa v skutočnosti nezhromažďujú vo formulári ochrany osobných údajov
  • D) Sľubné vlastnosti, ktoré v popise neexistujú

Zverejnenie: Obchody očakávajú transparentnosť obsahu (vyhlásenie, že produkuje AI), moderovanie obsahu (filtrovanie škodlivého výstupu a upozornení používateľov) a zverejnenie využívania údajov z aplikácií obsahujúcich umelú inteligenciu; V citlivej oblasti sa vyžaduje výstraha presnosti. Žiadosti, ktoré ich vynechajú, budú zamietnuté.

14. Prečo je obrana „AI to tak napísala“ neplatná, keď sa v publikovanom kóde vygenerovanom AI vyskytne chyba typu edge case?

  • A) Keďže umelá inteligencia vždy vytvára bezchybný kód, chyba pochádza od používateľa
  • B) Pretože automaticky ukladá správny kód vygenerovaný AI
  • C) Pretože zodpovednosť nemožno preniesť na umelú inteligenciu; Vývojár je zodpovedný za zverejnený kód a údaje ✔
  • D) Pretože kód vygenerovaný umelou inteligenciou sa nikdy nespustí

Popis: Výstup AI je východiskovým bodom, nie hotovým produktom. Je to vývojár, ktorý je zodpovedný za každý zverejnený riadok, každé spracované údaje a každý daný sľub; zodpovednosť nemôže byť delegovaná na AI, takže výstup musí byť pochopený a otestovaný pred zverejnením.