Σημείωμα
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να εισέλθετε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
Αυτό το άρθρο δείχνει πώς μπορείτε να χρησιμοποιήσετε το SDK προγράμματος-πελάτη Python για να προσθέσετε έναν παράγοντα δεδομένων Fabric σε εφαρμογές web και άλλα προγράμματα-πελάτες, χρησιμοποιώντας αλληλεπιδραστικό έλεγχο ταυτότητας προγράμματος περιήγησης. Εισέρχεστε μέσω ενός προγράμματος περιήγησης με τα διαπιστευτήριά σας Microsoft Entra ID και ο παράγοντας δεδομένων εκτελείται με τα δικαιώματά σας. Προσθέτοντας τον παράγοντα δεδομένων σε εξωτερικές εφαρμογές, μπορείτε να δημιουργήσετε προσαρμοσμένες διασυνδέσεις, να ενσωματώσετε πληροφορίες σε υπάρχουσες ροές εργασιών, να αυτοματοποιήσετε αναφορές και να επιτρέψετε στους χρήστες να εκτελούν ερωτήματα δεδομένων φυσικής γλώσσας. Αυτή η προσέγγιση σάς παρέχει δυνατότητες παράγοντα δεδομένων, ενώ διατηρείτε τον πλήρη έλεγχο της εμπειρίας χρήστη και της αρχιτεκτονικής της εφαρμογής.
Σημαντικό
Ο κώδικας σε αυτό το έγγραφο και το αποθετήριο δεδομένων εξωτερικού προγράμματος-πελάτη Fabric Data Agent χρησιμοποιούν το OpenAI Assistants API (beta.assistants, beta.threads, beta.threads.runs), το οποίο το OpenAI απέσυρε με ημερομηνία τερματισμού λειτουργίας την 26η Αυγούστου 2026. Ο τρέχων κώδικας συνεχίζει να λειτουργεί έως τις 26 Αυγούστου 2026, αλλά σχεδιάζει τη μετεγκατάσταση στο τελικό σημείο MCP πριν από αυτήν την ημερομηνία.
Σημαντικό
Όταν χρησιμοποιείτε το SDK προγράμματος-πελάτη Python για να προσθέσετε έναν παράγοντα δεδομένων Fabric σε εφαρμογές web ή άλλα προγράμματα-πελάτες, οι αποκρίσεις που επιστρέφονται από τους παράγοντες δεδομένων Fabric ενδέχεται να αποστέλλονται εκτός του ορίου συμμόρφωσης ή της γεωγραφικής περιοχής του Fabric. Οι ισχύοντες όροι και οι πολιτικές διαχείρισης δεδομένων της εφαρμογής ιστού ή του πελάτη διέπουν τον τρόπο επεξεργασίας και αποθήκευσης αυτών των απαντήσεων.
Προαπαιτούμενα
- A επί πληρωμή F2 ή υψηλότεροι Fabric εκχωρημένοι πόροι ή εκχωρημένοι πόροι Power BI Premium ανά εκχωρημένους πόρους (P1 ή υψηλότεροι) με ενεργοποιημένο το Microsoft Fabric.
- Ενεργοποιήστε την επεξεργασία μεταξύ γεωγραφικών περιοχών και την αποθήκευση μεταξύ γεωγραφικών περιοχών για AI με βάση τις απαιτήσεις που εξηγούνται στις ρυθμίσεις μισθωτή παράγοντα δεδομένων Fabric.
- Τουλάχιστον μία από αυτές τις προελεύσεις δεδομένων, με δεδομένα: Μια αποθήκη, μια λίμνη, ένα σημασιολογικό μοντέλο Power BI, μια βάση δεδομένων KQL, μια βάση δεδομένων κατοπτρισμού ή μια οντολογία. Πρέπει να έχετε πρόσβαση ανάγνωσης στην προέλευση δεδομένων.
Ρύθμιση του περιβάλλοντός σας στο VS Code
Κλωνοποιήστε ή κάντε λήψη του αποθετηρίου εξωτερικού προγράμματος-πελάτη Fabric Data Agent. Στη συνέχεια, ανοίξτε το στο VS Code και εκτελέστε το δείγμα προγράμματος-πελάτη.
Δημιουργήστε και ενεργοποιήστε ένα εικονικό περιβάλλον Python (συνιστάται) και εγκαταστήστε τις απαιτούμενες εξαρτήσεις.
python -m venv .venvΕνεργοποιήστε το εικονικό περιβάλλον.
- Windows
- MacOS/Linux
.venv\Scripts\activate
Εγκατάσταση εξαρτήσεων
Εκτελέστε την ακόλουθη εντολή για να εγκαταστήσετε εξαρτήσεις:
pip install -r requirements.txt
Σημείωση
- Το πακέτο
azure-identityπου περιλαμβάνεται στοrequirements.txtσάς επιτρέπει να κάνετε έλεγχο ταυτότητας με Microsoft Entra ID. -
InteractiveBrowserCredentialαπό τοazure-identityπακέτο ανοίγει ένα πρόγραμμα περιήγησης, ώστε να μπορείτε να συνδεθείτε με έναν λογαριασμό Microsoft Entra ID. Χρησιμοποιήστε το για τοπική ανάπτυξη ή εφαρμογές που επιτρέπουν τη διαδραστική σύνδεση.
Ρύθμιση παραμέτρων του προγράμματος-πελάτη
Επιλέξτε μία από αυτές τις μεθόδους για να ορίσετε τις απαιτούμενες τιμές (TENANT_ID και DATA_AGENT_URL):
Ορίστε τις τιμές στο κέλυφός σας. Αντικαταστήστε το κείμενο κράτησης θέσης σε γωνιακές αγκύλες με τις δικές σας τιμές.
export TENANT_ID=<your-azure-tenant-id>
export DATA_AGENT_URL=<your-fabric-data-agent-url>
Ανατρέξτε στην τεκμηρίωση για να βρείτε τη δημοσιευμένη διεύθυνση URL του παράγοντα δεδομένων. Ακολουθήστε τις οδηγίες για να εντοπίσετε το αναγνωριστικό μισθωτή σας.
Τον έλεγχο ταυτότητας
Χρησιμοποιήστε την κλάση InteractiveBrowserCredential για έλεγχο ταυτότητας με Microsoft Entra ID σε ένα πρόγραμμα περιήγησης.
from azure.identity import InteractiveBrowserCredential
from fabric_data_agent_client import FabricDataAgentClient
credential = InteractiveBrowserCredential()
Δημιουργία προγράμματος-πελάτη παράγοντα δεδομένων
client = FabricDataAgentClient(credential=credential)
Σημείωση
- Το πακέτο
fabric-data-agent-clientπαρέχει το SDK πελάτη για σύνδεση με τον παράγοντα δεδομένων Fabric. - Το πρόγραμμα-πελάτης Python χρησιμοποιεί αλληλεπιδραστικό έλεγχο ταυτότητας προγράμματος περιήγησης: όταν εκτελείτε τη δέσμη ενεργειών, ανοίγει το προεπιλεγμένο πρόγραμμα περιήγησης, ώστε να εισέλθετε στον μισθωτή που φιλοξενεί τον παράγοντα δεδομένων Fabric.
Κάντε μια ερώτηση στον πράκτορα δεδομένων
Μετά τον έλεγχο ταυτότητας, αλληλεπιδράστε με τον παράγοντα δεδομένων χρησιμοποιώντας το πρόγραμμα-πελάτη Python.
response = client.ask("What were the total sales last quarter?")
print(f"Response: {response}")
Η client.ask μέθοδος στέλνει την ερώτησή σας στον πράκτορα δεδομένων και επιστρέφει ένα αντικείμενο με την απάντηση. Μπορείτε να δείτε τα βήματα που εκτέλεσε ο παράγοντας δεδομένων και τα αντίστοιχα ερωτήματα που δημιούργησε για να λάβετε την απάντηση.
run_details = client.get_run_details("What were the total sales last quarter?")
messages = run_details.get('messages', {}).get('data', [])
assistant_messages = [msg for msg in messages if msg.get('role') == 'assistant']
print("Answer:", assistant_messages[-1])
Προαιρετικά: Ελέγξτε τα βήματα και το αντίστοιχο ερώτημα
Επιθεωρήστε τα βήματα που έκανε ο πράκτορας δεδομένων για να καταλήξει στην απάντηση, συμπεριλαμβανομένων τυχόν σφαλμάτων κατά την εκτέλεση.
for step in run_details['run_steps']['data']:
tool_name = "N/A"
if 'step_details' in step and step['step_details'] and 'tool_calls' in step['step_details']:
tool_calls = step['step_details']['tool_calls']
if tool_calls and len(tool_calls) > 0 and 'function' in tool_calls[0]:
tool_name = tool_calls[0]['function'].get('name', 'N/A')
print(f"Step ID: {step.get('id')}, Type: {step.get('type')}, Status: {step.get('status')}, Tool Name: {tool_name}")
if 'error' in step:
print(f" Error: {step['error']}")
Αυτό το αποτέλεσμα σάς βοηθά να κατανοήσετε πώς ο πράκτορας παρήγαγε την απόκρισή του και παρέχει διαφάνεια όταν εργάζεστε με τα δεδομένα σας στο πρόγραμμα-πελάτη Python.