Σημείωση
Η πρόσβαση σε αυτή τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να συνδεθείτε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτή τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
Σημείωμα
Οι λειτουργίες προεπισκόπησης δεν προορίζονται για παραγωγική χρήση και ενδέχεται να έχουν περιορισμένη λειτουργικότητα. Αυτές οι δυνατότητες είναι διαθέσιμες πριν από μια επίσημη κυκλοφορία έτσι ώστε οι πελάτες να έχουν πρόσβαση από νωρίς και να κάνουν σχόλια.
Η δοκιμή εφαρμογών που υποστηρίζονται από AI εισάγει μοναδικές προκλήσεις, επειδή οι έξοδοι AI μπορεί να διαφέρουν μεταξύ των διαδρομών, ακόμη και με πανομοιότυπες εισόδους. Αυτή η μη ντετερμινιστική συμπεριφορά απαιτεί ειδικές προσεγγίσεις δοκιμών. Αυτός ο οδηγός εξηγεί πώς μπορείτε να επικυρώσετε αποτελεσματικά τα στοιχεία AI στις εφαρμογές σας Power Platform .
Κατανόηση μη ντετερμινιστικών αποτελεσμάτων
Οι παραδοσιακές δοκιμές βασίζονται σε ντετερμινιστικές εισροές που παράγουν συνεπείς εξόδους. Ωστόσο, τα συστήματα τεχνητής νοημοσύνης συχνά παράγουν ελαφρώς διαφορετικά αποτελέσματα κάθε φορά λόγω:
- Μοντέλο ρυθμίσεων θερμοκρασίας και μεθόδων δειγματοληψίας
- Επιλογή διαφορετικών εκδόσεων μοντέλων
- Μικρές παραλλαγές στην επεξεργασία φυσικής γλώσσας
- Βαθμολογίες εμπιστοσύνης που κυμαίνονται εντός φυσιολογικών ορίων
- Συλλογιστική εξαρτώμενη από το πλαίσιο που μπορεί να ακολουθήσει διαφορετικές διαδρομές
Στρατηγικές για τη δοκιμή μη ντετερμινιστικής τεχνητής νοημοσύνης
Power Apps Το Test Engine παρέχει διάφορες στρατηγικές για την αποτελεσματική δοκιμή εξαρτημάτων που λειτουργούν με AI:
Χρησιμοποιήστε τη συνάρτηση Preview.AIExecutePrompt
Η λειτουργία Preview.AIExecutePrompt επιτρέπει την ελεγχόμενη εκτέλεση προτροπών AI στις δοκιμές σας. Το παρακάτω παράδειγμα δείχνει πώς να το χρησιμοποιήσετε:
Response: ParseJSON(
Preview.AIExecutePrompt("CustomPrompt",
{
Context: "You are a helpful assistant.",
Question: "What is the capital of France?"
}).Text)
Αυτή η προσέγγιση σας επιτρέπει:
- Εκτελέστε προτροπές με ελεγχόμενες εισόδους
- Ανάλυση και επικύρωση δομημένων απαντήσεων
- Σύγκριση αποτελεσμάτων με αναμενόμενες τιμές
Εφαρμογή επικύρωσης βάσει ανοχής
Αντί να περιμένετε ακριβείς αντιστοιχίσεις, επαληθεύστε ότι τα αποτελέσματα πληρούν κριτήρια εντός αποδεκτών ορίων. Ο ακόλουθος κώδικας είναι ένα παράδειγμα:
// Validate that the sentiment score is within appropriate range
Assert(Response.SentimentScore >= 0.7, "Sentiment score should be positive")
Δοκιμάστε τη βασική λειτουργικότητα και όχι τις ακριβείς εξόδους
Εστιάστε τις δοκιμές στην επαλήθευση ότι το στοιχείο AI εκπληρώνει τον βασικό σκοπό του, όπως φαίνεται στο ακόλουθο παράδειγμα:
// Check that the classification happens (not the exact classification)
Assert(
Response.Category = "Positive" ||
Response.Category = "Neutral" ||
Response.Category = "Negative",
"Response should include a valid sentiment category"
)
Χρήση δομικής επικύρωσης για σύνθετα αποτελέσματα
Για σύνθετες αποκρίσεις AI, επικυρώστε τη δομή απόκρισης και όχι συγκεκριμένο περιεχόμενο, όπως φαίνεται στο ακόλουθο παράδειγμα:
// Verify all expected fields exist in the response
Assert(!IsBlank(Response.Rating), "Rating should be present")
Assert(!IsBlank(Response.Explanation), "Explanation should be present")
Assert(!IsBlank(Response.NextSteps), "Next steps should be present")
Χρήση του Preview.AIExecutePrompt
Το Test Engine παρέχει τη λειτουργία Preview.AIExecutePrompt ειδικά για τη δοκιμή αλληλεπιδράσεων AI.
Υπογραφή λειτουργίας
Preview.AIExecutePrompt(
PromptName: Text,
PromptContext: Record
): Record
Παράμετροι
- PromptName: Το όνομα του προτύπου προτροπής που θα χρησιμοποιηθεί
-
PromptContext: Δεδομένα περιβάλλοντος για το μήνυμα, τα οποία συνήθως περιέχουν:
- Περιβάλλον ή μήνυμα συστήματος
- Ερωτήσεις ή καταχωρήσεις χρηστών
- Οποιεσδήποτε άλλες παράμετροι για το μοντέλο
Επιστρεφόμενη αξία
Αρχείο που περιέχει:
- Κείμενο: Το ακατέργαστο κείμενο απάντησης
- Άλλες ιδιότητες ανάλογα με το πρότυπο και το μοντέλο προτροπής
Ενεργοποίηση της λειτουργίας
Για να χρησιμοποιήσετε αυτήν τη λειτουργία, ενεργοποιήστε τη μονάδα λειτουργιών AI στις ρυθμίσεις δοκιμής:
testSettings:
extensionModules:
enable: true
parameters:
enableAIFunctions: true
Παράδειγμα: Δοκιμή ενός στοιχείου ανάλυσης συναισθήματος
Το παρακάτω παράδειγμα παρουσιάζει τη δοκιμή μιας δυνατότητας ανάλυσης συναισθήματος που υποστηρίζεται από AI:
EvaluateSentimentPrompt(Input: Text): TestResult =
With({
Response: ParseJSON(
Preview.AIExecutePrompt("SentimentAnalyzer",
{
Text: Input
}).Text)
},
{
Result: Response.Sentiment,
Score: Response.ConfidenceScore,
IsPositive: Response.Sentiment = "Positive" && Response.ConfidenceScore > 0.7,
IsValid: !IsBlank(Response.Sentiment) && !IsBlank(Response.ConfidenceScore)
})
Παράδειγμα: AI αξιολόγησης αξιολόγησης
Το ακόλουθο παράδειγμα παρουσιάζει τη χρήση Preview.AIExecutePrompt για τη δοκιμή ενός συστήματος χαρακτηρισμού που υποστηρίζεται από AI:
EvaluateTestQuestionPrompt(Prompt: TestQuestion): TestResult =
With({
Response: ParseJSON(
Preview.AIExecutePrompt("PromptEvaluator",
{
Context: "You are a helpful agent asking about external customer service questions.",
Question: Prompt.Question
}).Text)
},If(
IsError(AssertNotError(Prompt.ExpectedRating=Response.Rating, Prompt.Question & ", Expected " & Prompt.ExpectedRating & ", Actual " & Response.Rating)),
{PassFail: 1, Summary: Prompt.Question & ", Expected " & Prompt.ExpectedRating & ", Actual " & Response.Rating},
{PassFail: 0, Summary: "Pass " & Prompt.Question}
))
Μπορείτε να εξερευνήσετε μια πλήρη υλοποίηση στο δείγμα AI Prompt.
Βέλτιστες πρακτικές για τη δοκιμή στοιχείων AI
Για να δημιουργήσετε αποτελεσματικές δοκιμές για εξαρτήματα που λειτουργούν με AI:
- Ορισμός αποδεκτών περιοχών αντί για ακριβείς τιμές για αριθμητικές εξόδους
- Δημιουργήστε προστατευτικά κιγκλιδώματα για να επαληθεύσετε ότι οι έξοδοι πληρούν τις δομικές απαιτήσεις
- Δοκιμή με διαφορετικές εισόδους, συμπεριλαμβανομένων των περιπτώσεων άκρων και των οριακών συνθηκών
- Συμπεριλάβετε περιπτώσεις αρνητικών δοκιμών για να διασφαλίσετε ότι το AI χειρίζεται κατάλληλα τις μη έγκυρες εισόδους
- Τμηματοποιήστε τις δοκιμές σας με βάση τη λειτουργικότητα και όχι το συγκεκριμένο περιεχόμενο
- Χρησιμοποιήστε κατάλληλες ανοχές με βάση την κρισιμότητα του κατασκευαστικού στοιχείου
Κοινά μοτίβα για δοκιμές AI
Τα παρακάτω παραδείγματα απεικονίζουν κοινές προσεγγίσεις για τη δοκιμή λειτουργιών που υποστηρίζονται από AI σε Power Platform εφαρμογές. Αυτά τα μοτίβα σάς βοηθούν να επικυρώσετε την ταξινόμηση περιεχομένου, τις οριακές συνθήκες και άλλα σενάρια όπου οι έξοδοι AI ενδέχεται να διαφέρουν.
Δοκιμή ταξινόμησης περιεχομένου
// Test that a content classifier produces valid categories
ClassifyContent(Text: Text): Record =
With({
Result: ParseJSON(Preview.AIExecutePrompt("Classifier", { Content: Text }).Text)
},
Assert(
Result.Category In ["News", "Opinion", "Advertisement"],
"Content should be classified into valid category"
))
Δοκιμή ορίων
// Test AI Builder form processing with edge cases
TestFormProcessing(FormType: Text): TestResult =
With({
Result: ParseJSON(Preview.AIExecutePrompt("FormProcessor", { FormType: FormType }).Text)
},
Assert(
!IsBlank(Result.Fields),
"Form processing should extract fields even with poor quality input"
))
Σχετικά άρθρα
Μάθετε σχετικά με Power Fx τις λειτουργίες δοκιμής
Εξερευνήστε τη σύνταξη δοκιμών με τη βοήθεια AI
Κατανόηση του πρωτοκόλλου περιβάλλοντος μοντέλου
Περιηγηθείτε στον κατάλογο δειγμάτων του μηχανισμού δοκιμής