Desenvolver um agente de IA no Visual Studio Code

Concluído

Tip

Consulte a guia Texto e imagens para obter mais detalhes!

O Visual Studio Code oferece um ambiente de desenvolvimento familiar para construir agentes que utilizam o Microsoft Foundry. Pode trabalhar visualmente com a extensão Foundry Toolkit, escrever código de agente com o Foundry SDK ou Microsoft Agent Framework, e usar o GitHub Copilot para o ajudar a desenvolver e testar a sua solução.

Use o Kit de Ferramentas da Fundição

A extensão Foundry Toolkit liga o Visual Studio Code aos seus projetos e recursos Foundry. Fornece ferramentas para criar, gerir, testar e implementar agentes sem que precise de sair do editor.

O construtor de agentes fornece uma interface visual na qual pode configurar o modelo, as instruções e as ferramentas de um agente. Pode então introduzir pedidos no painel de conversação e rever as respostas enquanto refina o agente.

Captura de ecrã da interface do construtor de agentes do Foundry Toolkit no Visual Studio Code.

Para agentes e fluxos de trabalho baseados em código, o toolkit também pode ajudar a criar projetos a partir de templates, testá-los e depurá-los localmente, inspecionar traços e implementá-los como agentes alojados no Foundry.

Desenvolver agentes com código

Desenvolver um agente em código dá-lhe controlo direto sobre a sua definição e ciclo de vida. Duas abordagens comuns são criar um agente de prompts com o Foundry Agent Service ou construir um agente com um SDK como o Microsoft Agent Framework, e alojá-lo num contentor no Foundry.

Crie um agente de prompts com o Foundry Agent Service

O SDK do Foundry fornece um AIProjectClient para trabalhar com os ativos num projeto Foundry. Pode utilizar as operações do agente do cliente para criar um agente de prompt com nome e versão que é persistido no Foundry Agent Service.

O exemplo seguinte autentica-se com o Microsoft Entra ID, liga-se a um projeto Foundry e cria uma versão de um agente. A definição do agente especifica um modelo implementado, instruções e uma ferramenta de pesquisa web. O código obtém então um cliente compatível com OpenAI que está ligado ao agente e usa-o para enviar um prompt.

from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient
from azure.ai.projects.models import PromptAgentDefinition, WebSearchTool

# Create client to call Foundry API
project = AIProjectClient(
    endpoint="https://ai-resrce.services.ai.azure.com/api/projects/ai-project", # Project endpoint
    credential=DefaultAzureCredential())

# Create an agent with a web search tool
agent = project.agents.create_version(
    agent_name="computinghistorycode",
    definition=PromptAgentDefinition(
        model="gpt-5-mini",
        instructions="You are a helpful expert on computing history",
        tools=[WebSearchTool()]))

# Test the agent with a prompt
openai_client = project.get_openai_client(agent_name="computinghistorycode")
response = openai_client.responses.create(input="Who was Ada Lovelace?")
print(response.output_text)

Como o agente é armazenado como um ativo versionado no Foundry, outras aplicações podem referir-se ao agente pelo nome e usar a sua definição gerida. Alterações ao seu modelo, instruções ou ferramentas podem ser registadas em versões subsequentes.

Criar um agente com o Microsoft Agent Framework

O Microsoft Agent Framework é uma framework de desenvolvimento open-source para construir agentes e fluxos de trabalho multi-agente em Python ou .NET. Fornece abstrações consistentes para definir agentes, adicionar ferramentas, gerir conversas e orquestrar comportamentos mais complexos dos agentes.

O exemplo seguinte serve FoundryChatClient para ligar a um modelo implementado num projeto Foundry. A aplicação define as instruções e ferramentas do agente, e o Agent Framework trata da interação com o endpoint Foundry Responses.

import asyncio
from azure.identity import AzureCliCredential
from agent_framework import Agent
from agent_framework.foundry import FoundryChatClient

# Create client for a FoundryChat agent
foundry_client = FoundryChatClient(
    project_endpoint="https://ai-resrce.services.ai.azure.com/api/projects/ai-project", # Project endpoint
    model="gpt-5-mini",
    credential=AzureCliCredential()
 )

# Create an agent with a web search tool
agent = Agent(
        client=foundry_client,
        instructions="You are a helpful expert on computing history",
        tools=[FoundryChatClient.get_web_search_tool()]

 )

# Test the agent with a prompt
async def main():
    result = await agent.run("Who was Ada Lovelace?")
    print(f"Agent: {result}")

asyncio.run(main())

Nesta abordagem, a definição do agente existe na aplicação e é criada quando o código é executado. Este padrão de agente efémero é útil quando se quer que a definição e o seu ciclo de vida permaneçam com o código da sua aplicação. Para disponibilizar um agente baseado em código através de um endpoint persistente e gerido no Foundry, pode empacotá-lo e implementá-lo como um agente alojado. O Foundry Toolkit fornece suporte ao desenvolvimento e implementação deste fluxo de trabalho.

Desenvolver com GitHub Copilot

O Visual Studio Code também se integra com o GitHub Copilot, que pode ajudar-te a compreender, criar e modificar o código do teu agente. No Copilot Chat, pode colaborar com agentes de programação que inspecionam o seu espaço de trabalho, propõem uma abordagem, editam ficheiros, executam comandos e respondem a resultados de compilações ou testes.

Captura de ecrã de GitHub Copilot em Visual Studio Code.

Por exemplo, pode pedir ao Copilot para adicionar uma ferramenta a um agente, melhorar as suas instruções, criar testes ou investigar uma resposta inesperada. O Copilot mostra as alterações que faz para que possas revisá-las, executar o agente e testar as respostas antes de aceitar as alterações na tua base de código. Permanece responsável por validar se o agente resultante se comporta de forma segura e como previsto.