Del via


Consume Fabric dataagent fra Microsoft Foundry Services (forhåndsvisning)

Dataagent i Microsoft Fabric omdanner virksomhedsdata til samtalebaserede Q& Et system. Det gør det muligt for brugerne at interagere med deres data via chat, så de kan få indsigt, der kan handles på. En måde at udnytte Fabric data agent på er gennem Foundry Agent Service, en kernekomponent i Microsoft Foundry. Gennem integration af Fabric-dataagenter med Foundry kan dine Azure AI-agenter direkte få adgang til de rige, strukturerede og semantiske data, der er tilgængelige i Microsoft Fabric OneLake. Denne integration giver øjeblikkelig adgang til virksomhedsdata af høj kvalitet og giver dine Azure AI-agenter mulighed for at generere handlingsorienterede indsigter og effektivisere analytiske arbejdsgange. Organisationer kan derefter forbedre datadrevne beslutninger med Fabric data agent som en stærk videnskilde i deres Azure AI-miljøer.

Important

Denne funktion er en prøveversion. Brug den nyeste beta- eller preview-version af Azure AI Agents Python SDK.

Prerequisites

  • Udviklere og slutbrugere i Foundry skal mindst have rollen AI Developer Role-Based Access Control (RBAC).

Sådan fungerer det

Agent Setup: I Agent Service opretter du en ny agent og tilføjer Fabric dataagent som en af dens videnskilder. For at etablere denne forbindelse skal du bruge arbejdsområde-ID og artefakt-ID for Fabric-dataagenten. Opsætningen gør det muligt for din Azure AI-agent at evaluere tilgængelige kilder, når den modtager en forespørgsel, for at sikre, at den aktiverer det korrekte værktøj til at behandle anmodningen. I øjeblikket kan du kun tilføje én Fabric-dataagent som videnskilde til din Azure AI-agent.

Note

Den model, du vælger i Azure AI Agent-opsætningen, bruges kun til Azure AI-agent-orkestrering og responsgenerering. Det påvirker ikke den model, som Fabric-dataagenten bruger.

Query Processing: Når en bruger sender en forespørgsel fra Foundry-legepladsen, afgør Agent Service, om Fabric dataagent er det bedste værktøj til opgaven. Hvis det er, så gør Azure AI-agenten:

  • Bruger slutbrugerens identitet til at generere sikre forespørgsler over de datakilder, brugeren har tilladelse til at tilgå fra Fabric-dataagenten.
  • Aktiverer Fabric for at hente og behandle dataene for at sikre en glat, automatiseret oplevelse.
  • Kombinerer resultaterne fra Fabric data agent med sin egen logik for at generere omfattende svar. Godkendelse af identitetsadgang (on-Behalf-Of) sikrer dette flow for at sikre robust sikkerhed og korrekt adgangskontrol på tværs af virksomhedsdata.

Note

Fabric-dataagenten og Foundry-ressourcerne burde være på samme tenant, og både Microsoft Fabric og Foundry burde være logget ind med samme konto.

Add Fabric data agent to your Azure AI Agent

Du kan tilføje en Fabric-dataagent til din Azure AI-agent enten programmatisk eller via brugergrænsefladen (UI). For detaljerede kodeeksempler og yderligere instruktioner, se dokumentationen for integration af Azure AI Agent.

Tilføj Fabric dataagent via UI:

  • Gå til venstre rude. Under Opret og tilpasskal du vælge Agentersom vist på følgende skærmbillede:

Skærmbillede, der viser hovedsiden Azure Foundry.

Dette trin viser listen over dine eksisterende Azure AI-agenter. Du kan tilføje Fabric til en af disse agenter, eller du kan vælge Ny agent for at oprette en ny agent. Oprettelse af ny agent genererer et entydigt agent-id og et standardnavn. Du kan når som helst ændre dette navn. For mere information, se Hvad er Azure OpenAI i Foundry portal.

  • Start tilføjelse af en videnskilde: Vælg knappen Tilføj som vist på følgende skærmbillede:

Skærmbillede, der viser tilføjelsen af Fabric dataagent som knowledge.

Dette trin åbner en menu over understøttede videnskildetyper.

  • Vælg Microsoft Fabric som kilde: Fra listen vælger du Microsoft Fabric, som vist i følgende skærmbillede:

Skærmbillede viser valg af Fabric som videnskilde.

Med denne mulighed kan din agent få adgang til Fabric-dataagenten.

  • Opret en forbindelse: Hvis du tidligere har oprettet en forbindelse til en Fabric dataagent, kan du genbruge forbindelsen til din nye Azure AI Agent. Ellers skal du vælge Ny forbindelse for at oprette en forbindelse, som vist på følgende skærmbillede:

Skærmbillede, der viser, hvordan man opretter en ny Fabric-forbindelse.

Vinduet Opret en ny Microsoft Fabric forbindelse åbner, som vist i følgende skærmbillede:

Skærmbillede, der viser oprettelse af en forbindelse.

Når du sætter forbindelsen op, skal du angive Fabric dataagenten workspace-id og artifact-id værdier som brugerdefinerede nøgler. Du kan finde værdierne workspace-id og artifact-id i det publicerede Fabric dataagent-endpoint. Dit Fabric dataagent-endpoint har dette format:

https://fabric.microsoft.com/groups/ < workspace_id>/aiskills/<artifact-id>, og marker afkrydsningsfeltet Er hemmeligt

Endelig tildel et navn til din forbindelse, og vælg om det vil gøres tilgængeligt for alle projekter i Foundry eller begrænse det til det nuværende projekt.

Efter du har valgt Connect, tilføjes den Microsoft Fabric dataagent som en Knowledge ressource, som vist på følgende skærmbillede:

Skærmbillede, der viser, hvordan du tilføjer instruktioner.

Du skal også give instruktioner til din Azure AI-agent om hvornår, hvordan og under hvilke betingelser du skal bruge Fabric-dataagenten. Set fra Azure AI-agentens perspektiv behandles Fabric-dataagenten som et Fabric-værktøj, så du kan henvise til den som sådan i dine instruktioner.

Du kan også justere udrulningsmodellen, tilføje handlinger eller ændre modelindstillinger baseret på dine krav til use case. Når din Azure AI-agent er fuldt konfigureret, vælg Prøv i playground for at teste dens ydeevne.

Tilføj Fabric dataagent programmatisk: Følgende trin beskriver, hvordan du programmatisk tilføjer en Fabric dataagent til din Azure AI-agent i Python. For andre sprog (C#, JavaScript), se denne ressource.

Trin 1: Opret en projektklient

Opret et klientobjekt, der indeholder connection string, som forbinder til dit AI-projekt og andre ressourcer.

import os
from azure.ai.projects import AIProjectClient
from azure.identity import DefaultAzureCredential
from azure.ai.agents.models import FabricTool, ListSortOrder

Trin 2: Opret en agent med Microsoft Fabric-værktøjet aktiveret

For at gøre Fabric-dataagentværktøjet tilgængeligt for din Azure AI-agent, brug en forbindelse til at initialisere værktøjet og vedhæfte det til agenten. Du kan finde din forbindelse i sektionen for forbundne ressourcer i dit projekt i Foundry-portalen.

# The Fabric connection ID can be found in the Foundry project as a property of the Fabric tool
# Your connection ID is in the format /subscriptions/<your-subscription-id>/resourceGroups/<your-resource-group>/providers/Microsoft.MachineLearningServices/workspaces/<your-project-name>/connections/<your-fabric-connection-name>
conn_id = "your-connection-id"

# Initialize the AI project client
project_client = AIProjectClient(
    endpoint=os.environ["PROJECT_ENDPOINT"],
    credential=DefaultAzureCredential(),
)

# Initialize agent Fabric tool and add the connection ID
fabric = FabricTool(connection_id=conn_id)

# Create agent with the Fabric tool and process assistant run
with project_client:
    agent = project_client.agents.create_agent(
        model="gpt-4o",
        name="my-assistant",
        instructions="You are a helpful assistant",
        tools=fabric.definitions,
        headers={"x-ms-enable-preview": "true"},
    )
    print(f"Created agent, ID: {agent.id}")

Trin 3: Opret en tråd

# Create thread for communication
thread = project_client.agents.create_thread()
print(f"Created thread, ID: {thread.id}")

# Create message to thread
# Remember to update the message with your data
message = project_client.agents.create_message(
    thread_id=thread.id,
    role="user",
    content="what is top sold product in Contoso last month?",
)
print(f"Created message, ID: {message.id}")

Trin 4: Opret en kørsel, og kontrollér outputtet

Opret et run, og observer at modellen bruger Fabric data agent-værktøjet til at give et svar på brugerens spørgsmål.

# Create and process agent run in thread with tools
run = project_client.agents.create_and_process_run(thread_id=thread.id, assistant_id=agent.id)
print(f"Run finished with status: {run.status}")

if run.status == "failed":
    print(f"Run failed: {run.last_error}")

# Delete the assistant when done
project_client.agents.delete_agent(agent.id)
print("Deleted agent")

# Fetch and log all messages
messages = project_client.agents.list_messages(thread_id=thread.id)
print(f"Messages: {messages}")