Zdieľať cez


Používanie modelov nástroja AI Builder v službe Power Apps

Pomocou Power Fx, vzorcov nízkokódové s otvoreným zdrojom, môžete do Power App pridať výkonnejšie a flexibilnejšie integrácie modelov AI. Vzorce modelu AI predikcia je možné integrovať s akýmikoľvek ovládacími prvkami v aplikácii canvas. Môžete napríklad zistiť jazyk textu v ovládacom prvku zadávania textu a výsledky odoslať do ovládacieho prvku označenia, ako je uvedené v časti Použiť model s ovládacími prvkami nižšie.

Požiadavky

Ak chcete použiť Power Fx v AI Builder modeloch, musíte mať:

Vyberte model v aplikáciách plátna

Ak chcete použiť model AI s Power Fx, budete musieť vytvoriť aplikáciu plátna, vybrať ovládací prvok a priradiť výrazy k vlastnostiam ovládacieho prvku.

Poznámka

Zoznam AI Builder modelov, ktoré môžete používať, nájdete v časti Modely AI a obchodné scenáre. Môžete tiež používať modely vstavané v Microsoft Azure strojové učenie s funkciou prineste si vlastný model .

  1. Vytvorenie aplikácie. Ďalšie informácie: Vytvorte prázdnu aplikáciu na plátne od začiatku.

  2. Vyberte Údaje>Pridať údaje>Modely AI.

    Snímka obrazovky s výberom modelu.

  3. Vyberte jeden alebo viac modelov, ktoré chcete pridať.

    Ak svoj model nevidíte v zozname, možno nemáte povolenia na jeho použitie v Power Apps. Ak chcete tento problém vyriešiť, kontaktujte svojho správcu.

Použite model s ovládacími prvkami

Teraz, keď ste do svojej aplikácie na plátne pridali model AI, pozrime sa, ako zavolať AI Builder model z ovládacieho prvku.

V nasledujúcom príklade vytvoríme aplikáciu, ktorá dokáže zistiť jazyk zadaný používateľom v aplikácii.

  1. Vytvorenie aplikácie. Ďalšie informácie: Vytvorte prázdnu aplikáciu na plátne od začiatku.

  2. Vyberte Údaje>Pridať údaje>Modely AI.

  3. Vyhľadajte a vyberte Detekcia jazyka model AI.

    Snímka obrazovky modelu detekcie jazyka.

    Poznámka

    Pri presúvaní aplikácie medzi prostrediami budete musieť v novom prostredí znova ručne pridať model do aplikácie.

  4. Vyberte + v ľavom paneli a potom vyberte Ovládanie zadávania textu .

  5. Opakujte predchádzajúce krok a pridajte ovládací prvok Textový štítok .

  6. Premenujte textový štítok na Jazyk.

  7. Pridajte ďalší textový štítok vedľa štítku „Jazyk“.

    Ovládacie prvky aplikácie vrátane textu a oboch ovládacích prvkov štítkov.

  8. Vyberte textový štítok pridaný v predchádzajúcom krok.

  9. Do riadka vzorcov zadajte nasledujúci vzorec pre vlastnosť Text textového označenia.

    'Language detection'.Predict(TextInput1.Text).Language
    

    Označenie sa zmení na kód jazyka na základe vášho miestneho nastavenia. Pre tento príklad en (angličtina).

    Jazykový vzorec zmení text štítku.

  10. Verzia Preview aplikáciu výberom tlačidla Prehrať v pravom hornom rohu obrazovky.

    Skontrolujte aplikáciu.

  11. Do textového poľa zadajte bonjour. Všimnite si, že jazyk pre francúzštinu (fr) sa zobrazuje pod textovým poľom.

    Príklad detekcie francúzskeho jazyka.

  12. Podobne skúste text v inom jazyku. Napríklad zadaním guten tag sa zistený jazyk zmení na de pre nemecký jazyk.

Osvedčené postupy

  • Skúste spustiť model predikcia z jednotlivých akcií, ako napríklad OnClick pomocou tlačidla namiesto akcie OnChange v texte vstup na zabezpečenie efektívneho využívania AI Builder kreditov.

  • Ak chcete ušetriť čas a zdroje, uložte si výsledok modelového volania, aby ste ho mohli použiť na viacerých miestach. Výstup môžete uložiť do globálnej premennej. Po uložení výsledku modelu môžete použiť jazyk inde vo svojej aplikácii na zobrazenie identifikovaného jazyka a jeho skóre spoľahlivosti v dvoch rôznych štítkoch.

    Set(lang, 'Language detection'.Predict("bonjour").Language)
    

Vstup a výstup podľa typu modelu

Táto časť poskytuje vstupy a výstupy pre vlastné a vopred zostavené modely podľa typu modelu.

Vlastné modely

Typ modelu Syntax Výstup
Klasifikácia kategórií 'Custom text classification model name'.Predict(Text: String, Language?: Optional String) {AllClasses: {Name: String, Confidence: Number}[],TopClass: {Name: String,Confidence: Number}}
Extrakcia entity 'Custom entity extraction model name’.Predict(Text: String,Language?:String(Optional)) {Entities:[{Type: "name",Value: "Bill", StartIndex: 22, Length: 4, Confidence: .996, }, { Type: "name", Value: "Gwen", StartIndex: 6, Length: 4, Confidence: .821, }]}
Rozpoznávanie objektov 'Custom object detection model name'.Predict(Image: Image) { Objects: { Name: String, Confidence: Number, BoundingBox: { Left: Number, Top: Number, Width: Number, Height: Number }}[]}

Vopred zostavené modely

Poznámka

Názvy vopred zostavených modelov sú zobrazené v lokálnom nastavení vášho prostredia. Nasledujúce príklady zobrazujú názvy modelov pre anglický jazyk (en).

Typ modelu Syntax Výstup
Čítačka vizitiek ‘Business card reader’.Predict( Document: Base64 encoded image ) { Fields: { FieldName: { FieldType: "text", Value: { Text: String, BoundingBox: { Top: Number, Left: Number, Height: Number, Width: Number }}}}}
Klasifikácia kategórií 'Category classification'.Predict( Text: String,Language?: Optional String, ) { AllClasses: { Name: String, Confidence: Number }[], TopClass: { Name: String, Confidence: Number }}
Čítačka dokladov totožnosti ‘Identity document reader’.Predict( Document: Base64 encoded image ) { Context: { Type: String, TypeConfidence: Number }, Fields: { FieldName: { FieldType: "text", Confidence: Number, Value: { Text: String, BoundingBox: { Top: Number, Left: Number, Height: Number, Width: Number }}}}}
Spracovanie faktúry ‘Invoice processing’.Predict( Document: Base64 encoded image ) { Fields: { FieldName: { FieldType: "text" | "date" | "number", Confidence: Number,Value: { Text: String, [Date: Date] | [Number: Number], BoundingBox: { Top: Number, Left: Number, Height: Number, Width: Number } } } }, Tables: { Items: { Rows: { FieldName: { FieldType: "text" | "date" | "number", Confidence: Number, Key: { Name: String, }, Value: { Text: String, [Date: Date] | [Number: Number], BoundingBox: { Top: Number, Left: Number, Height: Number, Width: Number } } } }[] } }}
Extrakcia kľúčových fráz 'Key phrase extraction'.Predict(Text: String, Language?: Optional String)) { Phrases: String[]}
Zisťovanie jazyka 'Language Detection'.Predict(Text: String) { Language: String, Confidence: Number}
Spracovanie potvrdenia ‘Receipt processing’.Predict( Document: Base64 encoded image) { Context: { Type: String, TypeConfidence: Number }, Fields: { FieldName: { FieldType: "text" | "date" | "number", Confidence: Number, Value: { Text: String, [Date: Date] | [Number: Number], BoundingBox: { Top: Number, Left: Number, Height: Number, Width: Number } } } }, Tables: {Items: {Rows: {FieldName: { FieldType: "text" | "date" | "number", Confidence: Number, Key: { Name: String, }, Value: { Text: String, [Date: Date] | [Number: Number], BoundingBox: { Top: Number, Left: Number, Height: Number, Width: Number } } } }[] } } }
Analýza pocitov 'Sentiment analysis'.Predict( Text: String, Language?: Optional String ) { Document: { AllSentiments: [ { Name: "Positive", Confidence: Number }, { Name: "Neutral", Confidence: Number }, { Name: "Negative", Confidence: Number } ], TopSentiment: { Name: "Positive" | "Neutral" | "Negative", Confidence: Number } } Sentences: { StartIndex: Number, Length: Number, AllSentiments: [ { Name: "Positive", Confidence: Number }, { Name: "Neutral", Confidence: Number }, { Name: "Negative", Confidence: Number } ], TopSentiment: { Name: "Positive" | "Neutral" | "Negative", Confidence: Number } }[]}
Rozpoznávanie textu 'Text recognition'.Predict( Document: Base64 encoded image) {Pages: {Page: Number,Lines: { Text: String, BoundingBox: { Left: Number, Top: Number, Width: Number, Height: Number }, Confidence: Number }[] }[]}
Preklad textu 'Text translation'.Predict( Text: String, TranslateTo?: String, TranslateFrom?: String) { Text: String, // Translated text DetectedLanguage?: String, DetectedLanguageConfidence: Number} }

Príklady

Každý model je vyvolaný pomocou predpovedacieho slovesa. Napríklad model detekcie jazyka berie text ako vstup a vracia tabuľku možných jazykov zoradených podľa skóre daného jazyka. Skóre ukazuje, ako sebavedomý je model s predikcia.

Vstup Výstup
'Language detection'.Predict("bonjour") { Language: “fr”, Confidence: 1}
‘Text Recognition’.Predict(Image1.Image) { Pages: [ {Page: 1, Lines: [ { Text: "Contoso account", BoundingBox: { Left: .15, Top: .05, Width: .8, Height: .10 }, Confidence: .97 }, { Text: "Premium service", BoundingBox: { Left: .15, Top: .20, Width: .8, Height: .10 }, Confidence: .96 }, { Text: "Paid in full", BoundingBox: { Left: .15, Top: .35, Width: .8, Height: .10 }, Confidence: .99 } } ] }