Compartilhar via


Agente de dados Fabric de consumo do Microsoft Foundry Services (versão prévia)

Agente de dados no Microsoft Fabric transforma dados corporativos em sistemas de perguntas e respostas conversacionais. Ele permite que os usuários interajam com seus dados por meio do chat, para descobrir insights acionáveis. Uma maneira de consumir Fabric agente de dados é por meio do Foundry Agent Service, um componente principal do Microsoft Foundry. Por meio da integração de Fabric agentes de dados com o Foundry, seus agentes de IA Azure podem acessar diretamente os dados avançados, estruturados e semânticos disponíveis no Microsoft Fabric OneLake. Essa integração fornece acesso imediato a dados corporativos de alta qualidade e capacita seus agentes de IA Azure a gerar insights acionáveis e simplificar fluxos de trabalho analíticos. Em seguida, as organizações podem aprimorar a tomada de decisões orientada por dados com o agente de dados Fabric, como uma fonte poderosa de conhecimento em seus ambientes Azure AI.

Importante

Esse recurso está na versão prévia. Use a versão beta ou prévia mais recente do Azure AI Agents Python SDK.

Pré-requisitos

  • Os desenvolvedores e os usuários finais no Foundry devem ter pelo menos a função AI Developer Role-Based Controle de Acesso (RBAC).

Como funciona

Configuração do Agente: No Serviço de Agente, crie um novo agente e adicione o agente de dados Fabric como uma de suas fontes de conhecimento. Para estabelecer essa conexão, você precisa da ID do workspace e da ID do artefato para o agente de dados Fabric. A configuração permite que seu agente de IA Azure avalie as fontes disponíveis quando receber uma consulta, para garantir que ele invoque a ferramenta correta para processar a solicitação. Atualmente, você só pode adicionar um agente de dados Fabric como uma fonte de conhecimento ao agente de IA do Azure.

Observação

O modelo que você seleciona na configuração do Azure AI Agent é usado apenas para orquestração do agente de IA e geração de respostas. Isso não afeta o modelo que Fabric agente de dados usa.

Query Processing: Quando um usuário envia uma consulta do playground do Foundry, o Serviço de Agente determina se o agente de dados Fabric é ou não a melhor ferramenta para a tarefa. Se estiver, o agente de IA do Azure:

  • Usa a identidade do usuário final para gerar consultas seguras nas fontes de dados que o usuário tem permissão para acessar de dentro do agente de dados Fabric.
  • Invoca Fabric para buscar e processar os dados, para garantir uma experiência automatizada e suave.
  • Combina os resultados de Fabric agente de dados com sua própria lógica para gerar respostas abrangentes. A autorização de Passagem de Identidade (On-Behalf-Of) protege esse fluxo, para garantir a segurança robusta e o controle de acesso adequado nos dados corporativos.

Observação

O agente de dados Fabric e os recursos do Foundry devem estar no mesmo locatário, e Microsoft Fabric e Foundry devem ser conectados com a mesma conta.

Adicionar Fabric agente de dados ao agente de IA do Azure

Você pode adicionar um agente de dados Fabric ao agente de IA Azure programaticamente ou com a UI. Para obter exemplos de código detalhados e instruções adicionais, consulte a documentação de integração do agente de IA do Azure.

Adicionar agente de dados do Fabric pela interface do usuário:

  • Navegue até o painel esquerdo. Em Compilar e Personalizar, selecione Agentes, conforme mostrado na seguinte captura de tela:

Screenshot mostrando a página principal Azure Foundry.

Esta etapa exibe a lista de seus agentes de IA Azure existentes. Você pode adicionar Fabric a um desses agentes ou selecionar New Agent para criar um novo agente. A criação do novo agente gera uma ID de agente exclusiva e um nome padrão. Você pode alterar esse nome a qualquer momento. Para obter mais informações, consulte O que é o Azure OpenAI no portal Foundry.

  • Iniciar a adição de uma fonte de conhecimento: selecione o botão Adicionar, conforme mostrado na seguinte captura de tela:

Screenshot exibindo adição do agente de dados do Fabric como conhecimento.

Esta etapa abre um menu de tipos de fonte de conhecimento com suporte.

  • Selecione Microsoft Fabric como a Origem: Na lista, escolha Microsoft Fabric, conforme mostrado na seguinte captura de tela:

Screenshot mostrando a seleção de Fabric como fonte de dados de conhecimento.

Com essa opção, seu agente pode acessar o agente de dados Fabric.

  • Crie uma conexão: se você estabeleceu anteriormente uma conexão com um agente de dados Fabric, poderá reutilizar essa conexão para o novo agente de IA do Azure. Caso contrário, selecione Nova Conexão para criar uma conexão, conforme mostrado na seguinte captura de tela:

Screenshot mostrando como criar uma nova conexão do Fabric.

A janela Criar uma nova conexão Microsoft Fabric é aberta, conforme mostrado na seguinte captura de tela:

Captura de tela mostrando a criação de uma conexão.

Ao configurar a conexão, forneça os valores workspace-id e artifact-id do agente de dados Fabric como chaves personalizadas. Você pode encontrar os valores workspace-id e artifact-id no endpoint do agente de dados do Fabric publicado. O endpoint do agente de dados do Fabric tem o seguinte formato:

https://fabric.microsoft.com/groups/ < workspace_id>/aiskills/<artifact-id>, e marque a caixa de seleção É segredo

Por fim, atribua um nome à sua conexão e escolha se deseja disponibilizá-lo a todos os projetos na Foundry ou restringi-lo ao projeto atual.

Depois de selecionar Connect, o agente de dados Microsoft Fabric será adicionado como um recurso Knowledge, conforme mostrado na captura de tela a seguir:

Captura de tela que mostra como adicionar instruções.

Você também deve fornecer instruções ao agente de IA do Azure sobre quando, como e sob quais condições usar o agente de dados Fabric. Do ponto de vista do agente de IA Azure, o agente de dados Fabric é tratado como uma ferramenta de Fabric, para que você possa se referir a ele como tal em suas instruções.

Você também pode ajustar o modelo de implantação, adicionar Ações ou alterar as configurações de modelo com base nos requisitos de caso de uso. Depois que o agente Azure IA estiver totalmente configurado, selecione Experimentar no playground para testar seu desempenho.

Adicionar o agente de dados do Fabric programaticamente: As seguintes etapas descrevem como adicionar um agente de dados do Fabric ao agente de IA do Azure em Python programaticamente. Para outras linguagens (C#, JavaScript), consulte este recurso.

Etapa 1: Criar um cliente de projeto

Crie um objeto cliente que contenha o cadeia de conexão que se conecta ao seu projeto de IA e a outros recursos.

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

Etapa 2: Criar um agente com a ferramenta Microsoft Fabric habilitada

Para disponibilizar a ferramenta Fabric agente de dados ao agente de IA Azure, use uma conexão para inicializar a ferramenta e anexá-la ao agente. Você pode encontrar sua conexão na seção de recursos conectados do seu projeto no portal do Foundry.

# 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}")

Etapa 3: Criar um thread

# 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}")

Etapa 4: Criar uma execução e verificar a saída

Crie uma execução e observe que o modelo usa a ferramenta Fabric agente de dados para fornecer uma resposta à pergunta do usuário.

# 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}")