AI Builder -mallien käyttäminen Power Appsissa
Voit lisätä tekoälymallien tehokkaampia ja joustavampia integraatioita Power App -sovellukseesi käyttämällä Power Fx:n, avoimen lähdekoodin vähäkoodisia kaavoja. Tekoälymallin ennustekaavat voidaan integroida mihin tahansa pohjaan perustuvan sovelluksen ohjausobjekteihin. Voit esimerkiksi tunnistaa tekstin kielen tekstinsyötteen ohjausobjekteissa ja tulostaa tulokset otsikko-ohjausobjektiin, niin kuin alla olevassa Mallin käyttäminen ohjausobjektien kanssa -osiossa on kuvattu.
Edellytykset
Käyttääksesi Power Fx:ää AI Builder -malleissa, sinulla tulee olla:
Microsoft Power Platform-ympäristön käyttö tietokannan avulla.
AI Builder -käyttöoikeus (kokeiluversio tai maksettu). Lisätietoja on kohdassa AI Builder -käyttöoikeudet.
Mallin valitseminen pohjaan perustuvissa sovelluksissa
Jos haluat käyttää tekoälymallia Power Fx:n avulla, sinun on luotava pohjaan perustuva sovellus, valittava ohjausobjekti ja määritettävä lausekkeita ominaisuuksien hallintaa ohjaamiseksi.
Muistiinpano
Katso käytettävissäsi olevien AI Builder -mallien luettelo kohdasta Tekoälymallit ja liiketoimintaskenaariot. Voit myös kuluttaa Microsoft Azure -koneoppimisen sisäänrakennettuja malleja tuo oma malli -ominaisuudella.
Sovelluksen luominen. Lisätietoja: Tyhjän pohjaan perustuvan sovelluksen luominen alusta alkaen.
Valitse Tiedot>Tietojen lisääminen>Tekoälymallit.
Valitse vähintään yksi lisättävä malli.
Jos et näe mallia luettelossa, sinulla ei välttämättä ole oikeuksia käyttää sitä Power Appsissa. Ota yhteyttä järjestelmänvalvojaasi ratkaistaksesi tämän ongelman.
Mallin käyttäminen ohjausobjektien kanssa
Nyt kun olet lisännyt tekoälymallin pohjana perustuvaan sovellukseesi, katsomme seuraavaksi, miten AI Builder -mallia kutsutaan ohjausobjektista.
Seuraavassa esimerkissä luomme sovelluksen, joka voi tunnistaa käyttäjän sovellukseen syöttämän kielen.
Sovelluksen luominen. Lisätietoja: Tyhjän pohjaan perustuvan sovelluksen luominen alusta alkaen.
Valitse Tiedot>Tietojen lisääminen>Tekoälymallit.
Hae ja valitse Kielen tunnistus -tekoälymalli.
Muistiinpano
Sinun täytyy lisätä malli uudelleen sovellukseen manuaalisesti uudessa ympäristössä, kun siirrät sovelluksen ympäristöstä toiseen.
Valitse vasemmanpuoleisesta ruudusta + ja valitse sitten Tekstisyöte-ohjausobjekti.
Toista edellinen vaihe lisätäksesi Tekstiotsikko-ohjausobjektin.
Nimeä tekstiotsikko uudelleen nimellä Kieli.
Lisää toinen tekstiotsikko "Kieli"-otsikon viereen.
Valitse edellisessä vaiheessa lisätty tekstiotsikko.
Syötä seuraava kaava kaavariville tekstiotsikon Teksti-ominaisuudelle.
'Language detection'.Predict(TextInput1.Text).Language
Otsikko muuttuu kielialueeseesi perustuvaan kielikoodiin. Tässä esimerkissä se on en (englanti).
Esikatsele sovellusta valitsemalla Toista-painike näytön oikeasta yläkulmasta.
Kirjoita tekstiruutuun
bonjour
. Huomaa, että ranskan kielen koodi (fr) ilmestyy tekstiruudun alapuolelle.Kokeile samalla tavalla muunkielistä tekstiä. Jos kirjoitat esimerkiksi
guten tag
, tunnistettu kieli muuttuu saksaksi, eli de.
Parhaat käytännöt
Kokeile käynnistää mallin ennuste yksittäisistä toiminnoista, kuten OnClick, käyttämällä painiketta tekstinsyötön OnChange-toiminnon sijaan, jotta AI Builder -krediittejä käytetään tehokkaasti.
Voit säästää aikaa ja resursseja tallentamalla mallipuhelun tuloksen, jotta voit käyttää sitä useissa paikoissa. Voit tallentaa tuloksen yleiseen muuttujaan. Kun olet tallentanut mallin tuloksen, voit käyttää kieltä muualla sovelluksessasi näyttääksesi tunnistetun kielen ja sen luotettavuuspisteet kahdessa eri otsikossa.
Set(lang, 'Language detection'.Predict("bonjour").Language)
Syöttö ja tulos mallin tyypin mukaan
Tässä osassa on mukautettujen ja valmiiksi rakennettujen mallien tulot ja lähdöt mallityypeittäin.
Mukautetut mallit
Mallityyppi | Syntaksi | Tuloste |
---|---|---|
Luokan luokitus | 'Custom text classification model name'.Predict(Text: String, Language?: Optional String) |
{AllClasses: {Name: String, Confidence: Number}[],TopClass: {Name: String,Confidence: Number}} |
Entiteetin poiminta | '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, }]} |
Objektintunnistus | 'Custom object detection model name'.Predict(Image: Image) |
{ Objects: { Name: String, Confidence: Number, BoundingBox: { Left: Number, Top: Number, Width: Number, Height: Number }}[]} |
Valmiit mallit
Muistiinpano
Valmiiden mallien nimet näytetään ympäristösi kielialueessa. Seuraavissa esimerkeissä näytetään mallien nimet englannille (en).
Mallityyppi | Syntaksi | Tuloste |
---|---|---|
Käyntikortinlukija | ‘Business card reader’.Predict( Document: Base64 encoded image ) |
{ Fields: { FieldName: { FieldType: "text", Value: { Text: String, BoundingBox: { Top: Number, Left: Number, Height: Number, Width: Number }}}}} |
Luokan luokitus | 'Category classification'.Predict( Text: String,Language?: Optional String, ) |
{ AllClasses: { Name: String, Confidence: Number }[], TopClass: { Name: String, Confidence: Number }} |
Henkilöllisyysasiakirjojen lukija | ‘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 }}}}} |
Laskujen käsittely | ‘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 } } } }[] } }} |
Avainlauseen poiminta | 'Key phrase extraction'.Predict(Text: String, Language?: Optional String)) |
{ Phrases: String[]} |
Kielen tunnistus | 'Language Detection'.Predict(Text: String) |
{ Language: String, Confidence: Number} |
Kuittien käsittely | ‘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 } } } }[] } } } |
Asenneanalyysi | '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 } }[]} |
Tekstin tunnistus | 'Text recognition'.Predict( Document: Base64 encoded image) |
{Pages: {Page: Number,Lines: { Text: String, BoundingBox: { Left: Number, Top: Number, Width: Number, Height: Number }, Confidence: Number }[] }[]} |
Tekstin kääntäminen | 'Text translation'.Predict( Text: String, TranslateTo?: String, TranslateFrom?: String) |
{ Text: String, // Translated text DetectedLanguage?: String, DetectedLanguageConfidence: Number} } |
Esimerkkejä
Jokainen malli käynnistetään ennusta-verbin avulla. Esimerkiksi kielentunnistusmalli ottaa tekstin syötteenä ja palauttaa taulukon mahdollisista kielistä kyseisen kielen pistemäärän mukaan. Pisteet osoittavat, kuinka luottavainen malli on ennuste.
Syöte | Tuloste |
---|---|
'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 } } ] } |