Deli z drugimi prek


Uporaba modelov orodja AI Builder v storitvi Power Apps

Z uporabo Power Fx, odprtokodnih formul z malo programske kode, lahko v svojo aplikacijo Power App dodate zmogljivejše in prilagodljivejše integracije modelov AI. Formule modela AI predvidevanje je mogoče integrirati s poljubnimi kontrolniki v aplikaciji Canvas. Zaznate lahko na primer jezik besedila v kontrolniku za vnos besedila in izpišete rezultate v kontrolnik oznake, kot je prikazano v spodnjem razdelku Uporaba modela s kontrolniki .

Zahteve

Za uporabo Power Fx in AI Builder modelov morate imeti:

Izberite model v aplikacijah za platno

Če želite uporabiti model AI z Power Fx, boste morali ustvariti aplikacijo platna, izbrati kontrolnik in dodeliti izraze lastnostim kontrolnika.

opomba,

Za seznam AI Builder modelov, ki jih lahko uporabljate, glejte Modeli AI in poslovni scenariji. Uporabite lahko tudi modele, vgrajene v Microsoft Azure Strojno učenje s funkcijo prinesite svoj model .

  1. Ustvarjanje aplikacije. Več informacij: Ustvarite aplikacijo za prazno platno iz nič.

  2. Izberite Podatki>Dodaj podatke>Modeli AI.

    Posnetek zaslona, ​​kako izbrati svoj model.

  3. Izberite enega ali več modelov, ki jih želite dodati.

    Če svojega modela ne vidite na seznamu, morda nimate dovoljenj za njegovo uporabo v Power Apps. Za rešitev te težave se obrnite na skrbnika.

Uporabite model s krmilniki

Zdaj, ko ste dodali model AI svoji aplikaciji za platno, poglejmo, kako priklicati AI Builder model iz kontrolnika.

V naslednjem primeru bomo izdelali aplikacijo, ki bo lahko zaznala jezik, ki ga je uporabnik vnesel v aplikacijo.

  1. Ustvarjanje aplikacije. Več informacij: Ustvarite aplikacijo za prazno platno iz nič.

  2. Izberite Podatki>Dodaj podatke>Modeli AI.

  3. Poiščite in izberite Zaznavanje jezika model AI.

    Posnetek zaslona modela zaznavanja jezika.

    opomba,

    Ko boste aplikacijo premikali med okolji, boste morali znova ročno dodati model v aplikacijo v novem okolju.

  4. V levem podoknu izberite + in nato izberite Nadzor za vnos besedila .

  5. Ponovite prejšnji korak, da dodate kontrolnik Besedilna oznaka .

  6. Preimenujte besedilno oznako v Jezik.

  7. Dodajte še eno besedilno oznako poleg oznake »Jezik«.

    Kontrolniki aplikacij, vključno z besedilom in obema kontrolnikoma oznak.

  8. Izberite besedilno oznako, dodano v prejšnjem korak.

  9. Vnesite naslednjo formulo v vrstico s formulami za lastnost Besedilo nalepke z besedilom.

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

    Oznaka se spremeni v kodo jezika glede na vaš jezik. Za ta primer, en (angleščina).

    Jezikovna formula spremeni besedilo etikete.

  10. Predogledna različica aplikacijo tako, da izberete gumb Predvajaj v zgornjem desnem kotu zaslona.

    Opravite predogled aplikacije.

  11. V besedilno polje vnesite bonjour. Upoštevajte, da se jezik za francoski jezik (fr) pojavi pod besedilnim poljem.

    Primer zaznavanja francoskega jezika.

  12. Podobno poskusite besedilo v drugem jeziku. Če na primer vnesete guten tag zaznan jezik spremenite v de za nemški jezik.

Najboljše prakse

  • Poskusite sprožiti model predvidevanje iz posameznih dejanj, kot je OnClick z uporabo gumba namesto dejanja OnChange na besedilu vnos za zagotovitev učinkovite porabe AI Builder kreditov.

  • Če želite prihraniti čas in vire, shranite rezultat klica modela, da ga lahko uporabite na več mestih. Izhod lahko shranite v globalno spremenljivko. Ko shranite rezultat modela, lahko uporabite jezik drugje v aplikaciji, da prikažete prepoznani jezik in njegov ocena zanesljivosti v dveh različnih oznakah.

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

Vhod in izhod po vrsti modela

V tem razdelku so vhodi in izhodi za modele po meri in vnaprej pripravljene modele po vrsti modela.

Modeli po meri

Vrsta modela Sintaksa Rezultat
Razvrstitev kategorij 'Custom text classification model name'.Predict(Text: String, Language?: Optional String) {AllClasses: {Name: String, Confidence: Number}[],TopClass: {Name: String,Confidence: Number}}
Ekstrahiranje entitet '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, }]}
Zaznavanje predmeta 'Custom object detection model name'.Predict(Image: Image) { Objects: { Name: String, Confidence: Number, BoundingBox: { Left: Number, Top: Number, Width: Number, Height: Number }}[]}

Predizdelani modeli

opomba,

Imena vnaprej pripravljenih modelov so prikazana v regionalnih nastavitvah vašega okolja. Naslednji primeri prikazujejo imena modelov za angleški jezik (en).

Vrsta modela Sintaksa Rezultat
Bralnik vizitk ‘Business card reader’.Predict( Document: Base64 encoded image ) { Fields: { FieldName: { FieldType: "text", Value: { Text: String, BoundingBox: { Top: Number, Left: Number, Height: Number, Width: Number }}}}}
Razvrstitev kategorij 'Category classification'.Predict( Text: String,Language?: Optional String, ) { AllClasses: { Name: String, Confidence: Number }[], TopClass: { Name: String, Confidence: Number }}
Bralnik osebnih dokumentov ‘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 }}}}}
Obdelava računa ‘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 } } } }[] } }}
Ekstrahiranje ključnih izrazov 'Key phrase extraction'.Predict(Text: String, Language?: Optional String)) { Phrases: String[]}
Zaznavanje jezika 'Language Detection'.Predict(Text: String) { Language: String, Confidence: Number}
Obdelava potrdil ‘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 } } } }[] } } }
Analiziranje mnenja '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 } }[]}
Prepoznavanje besedila 'Text recognition'.Predict( Document: Base64 encoded image) {Pages: {Page: Number,Lines: { Text: String, BoundingBox: { Left: Number, Top: Number, Width: Number, Height: Number }, Confidence: Number }[] }[]}
Prevajanje besedila 'Text translation'.Predict( Text: String, TranslateTo?: String, TranslateFrom?: String) { Text: String, // Translated text DetectedLanguage?: String, DetectedLanguageConfidence: Number} }

Primeri

Vsak model se prikliče z glagolom napovedi. Na primer, model zaznavanja jezika vzame besedilo kot vhod in vrne tabelo možnih jezikov, razvrščenih po rezultatu tega jezika. Rezultat kaže, kako samozavesten je model s svojim predvidevanje.

Vnos Rezultat
'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 } } ] }