Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Importante
Os itens assinalados com (pré-visualização) neste artigo estão atualmente em pré-visualização pública. Esta pré-visualização é fornecida sem um acordo de nível de serviço, e não a recomendamos para trabalhos em produção. Certas funcionalidades podem não ser suportadas ou podem ter capacidades limitadas. Para mais informações, consulte Termos Suplementares de Utilização para Microsoft Azure Previews.
A reminder_preview ferramenta permite que um agente alojado se programe para ser executado novamente numa data futura. Use este padrão quando o agente decidir, durante uma execução, que precisa de fazer seguimento mais tarde, como para verificar uma tarefa de longa duração ou para pedir ao utilizador uma atualização de estado.
Quando o agente liga para a ferramenta de lembrete, esta especifica um atraso em minutos. Após esse atraso, Foundry volta a invocar o mesmo agente na mesma conversa. O agente pode então continuar o seu trabalho, verificar sistemas externos ou avisar o utilizador.
Importante
A ferramenta de lembrete está disponível apenas para agentes alojados. Não podes usar a ferramenta de lembrete com agentes de prompts. Para usar a ferramenta de lembrete, crie uma caixa de ferramentas que inclua a reminder_preview ferramenta e depois anexe-a a um agente alojado.
Pré-requisitos
- Um projeto da Foundry com um modelo implementado.
- Um agente alojado. Veja : Crie o seu primeiro agente alojado.
- Azure Developer CLI (
azd) instalado e autenticado. Veja Instalar a CLI do Azure para Desenvolvedores.
Como funciona a ferramenta de lembretes
A ferramenta de lembrete adota os seguintes argumentos:
| Argumento | Tipo | Alcance | Description |
|---|---|---|---|
minutes |
número inteiro | 1–43,200 | O número de minutos a esperar antes de invocar novamente o agente. |
input |
cadeia (de caracteres) | — | Instruções sobre o que o agente precisa de fazer quando é invocado pelo lembrete. |
Quando o agente chama a ferramenta, decide quanto tempo atrasar com base no seu raciocínio. O Foundry cria então uma rotina programada que é executada após o atraso especificado e reinvoca o mesmo agente hospedado na mesma conversa. Esta abordagem preserva o contexto através das invocações, ao contrário das rotinas regulares que iniciam novas conversas.
Adicione a ferramenta de lembrete a uma caixa de ferramentas
A ferramenta de lembretes não requer ligação à rede. Não precisas de configurar nenhum serviço externo ou autenticação.
- No portal da Foundry, aceda ao seu projeto.
- No painel esquerdo, selecione Construir e personalizar>Caixas de Ferramentas.
- Selecionar + Novo para criar uma caixa de ferramentas, ou selecionar uma caixa de ferramentas existente para editar.
- No editor da caixa de ferramentas, selecione + Adicionar ferramenta.
- Em Ferramentas integradas, selecione Lembrete (pré-visualização).
- Configura o nome e a descrição da ferramenta e depois seleciona Adicionar.
- Selecione Guardar para guardar a caixa de ferramentas.
A página de detalhes da caixa de ferramentas mostra o endpoint MCP. Copie este endpoint para ligar o seu agente alojado.
from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient
from azure.ai.projects.models import ReminderPreviewToolboxTool
# Create Foundry project client
endpoint = "https://<your-foundry-account>.services.ai.azure.com/api/projects/<your-project>"
project = AIProjectClient(
endpoint=endpoint,
credential=DefaultAzureCredential(),
)
# Create toolbox version with reminder tool
toolbox_version = project.toolboxes.create_version(
name="reminder-toolbox",
description="Built-in reminder tool for a self-scheduling agent",
tools=[
ReminderPreviewToolboxTool(
name="schedule_reminder",
description="Schedule a reminder that re-invokes this agent at a future time.",
),
],
)
print(f"Created toolbox: {toolbox_version.name}, version: {toolbox_version.version}")
print(f"MCP endpoint: {toolbox_version.mcp_endpoint}")
using Azure.Identity;
using Azure.AI.Projects;
// Create Foundry project client
var projectEndpoint = "https://<your-foundry-account>.services.ai.azure.com/api/projects/<your-project>";
AIProjectClient projectClient = new(new Uri(projectEndpoint), new DefaultAzureCredential());
// Create toolbox version with reminder tool
var reminderTool = new ReminderPreviewToolboxTool
{
Name = "schedule_reminder",
Description = "Schedule a reminder that re-invokes this agent at a future time."
};
ToolboxVersionObject toolboxVersion = await projectClient.Toolboxes.CreateVersionAsync(
name: "reminder-toolbox",
tools: [reminderTool],
description: "Built-in reminder tool for a self-scheduling agent"
);
Console.WriteLine($"Created toolbox: {toolboxVersion.Name}, version: {toolboxVersion.Version}");
Console.WriteLine($"MCP endpoint: {toolboxVersion.McpEndpoint}");
import { DefaultAzureCredential } from "@azure/identity";
import { AIProjectClient } from "@azure/ai-projects";
// Create Foundry project client
const projectEndpoint = "https://<your-foundry-account>.services.ai.azure.com/api/projects/<your-project>";
const project = new AIProjectClient(projectEndpoint, new DefaultAzureCredential());
const toolboxVersion = await project.toolboxes.createVersion(
"reminder-toolbox",
[
{
type: "reminder_preview",
name: "schedule_reminder",
description: "Schedule a reminder that re-invokes this agent at a future time.",
},
],
{
description: "Built-in reminder tool for a self-scheduling agent",
},
);
console.log(`Created toolbox: ${toolboxVersion.name}, version: ${toolboxVersion.version}`);
console.log(`MCP endpoint: ${toolboxVersion.mcpEndpoint}`);
POST https://{project_endpoint}/toolboxes/reminder-toolbox/versions?api-version=v1
Authorization: Bearer {token}
Content-Type: application/json
{
"description": "Built-in reminder tool for a self-scheduling agent",
"tools": [
{
"type": "reminder_preview",
"name": "schedule_reminder",
"description": "Schedule a reminder that re-invokes this agent at a future time."
}
]
}
Note
Use o âmbito do token https://ai.azure.com/.default ao obter o token de portador.
A resposta inclui o mcp_endpoint. Ligue o seu agente alojado a este endpoint.
Crie um ficheiro de manifesto da toolbox:
# reminder-toolbox.yaml
description: Built-in reminder tool for a self-scheduling agent
tools:
- type: reminder_preview
name: schedule_reminder
description: Schedule a reminder that re-invokes this agent at a future time.
Crie a caixa de ferramentas:
azd ai toolbox create reminder-toolbox --from-file reminder-toolbox.yaml
O comando imprime o endpoint MCP da toolbox. Ligue o seu agente alojado a este endpoint.
Configurar o agente alojado
Depois de criares a caixa de ferramentas, configura o teu agente alojado para a usar. No manifesto do agente, adicione o endpoint da caixa de ferramentas em resources:
# agent.yaml
name: reminder-agent
model_deployment: gpt-4.1
instructions: |
You are a helpful assistant. When the user asks you to follow up later,
use the schedule_reminder tool to re-invoke yourself after the specified time.
resources:
- kind: toolbox
url: https://{project-endpoint}/agents/toolboxes/reminder-toolbox/mcp?version=1
Exemplo de cenário: Sondagem da conclusão da tarefa
Um cenário comum é sondar um sistema externo para a conclusão da tarefa. Neste padrão, o agente:
- Recebe um pedido de utilizador para iniciar uma tarefa de longa duração.
- Chama uma API externa para iniciar a tarefa e recebe um ID de tarefa.
- Usa a ferramenta de lembrete para agendar um seguimento em 15 minutos.
- Quando o lembrete dispara, o agente verifica o estado da tarefa.
- Se a tarefa ainda estiver em execução, o agente programa outro lembrete.
- Quando a tarefa termina, o agente notifica o utilizador.
Para permitir este comportamento, inclua instruções no seu manifesto de agente:
# agent.yaml
name: task-monitor
model_deployment: gpt-4.1
instructions: |
You help users monitor long-running tasks.
When a user asks you to start a task:
1. Call the start_task tool with the user's parameters.
2. Note the task_id in your response.
3. Use the schedule_reminder tool to check back in 15 minutes.
When you're re-invoked by a reminder:
1. Call the check_status tool with the task_id.
2. If the task is still running, schedule another reminder for 10 minutes.
3. If the task is complete, summarize the results for the user.
resources:
- kind: toolbox
url: https://{project-endpoint}/agents/toolboxes/my-toolbox/mcp?version=1
O modelo decide quando e como usar a ferramenta de lembrete com base nestas instruções. Não precisas de escrever código para gerir a invocação do lembrete.
Limitations
- Apenas agentes alojados. A ferramenta de lembrete está disponível apenas para agentes alojados. Não podes usá-lo com agentes de prompt.
- Mesma conversa. Os lembretes invocam novamente o agente na mesma conversa. Eles não começam novas conversas.
- Atraso mínimo. O atraso mínimo é de 1 minuto.
- Atraso máximo. O atraso máximo é de 43.200 minutos (30 dias).