Monitoramento de solicitações de Cortex Agents

Os Cortex Agents registram em log os rastreamentos detalhados de todas as conversas para fins de auditoria e depuração. Com o monitoramento, você pode acessar o histórico da conversa de um agente implantado via Snowflake Intelligence ou API Agent. Além do histórico da conversa, você pode revisar o rastreamento detalhado do processo de planejamento do agente, seleção de ferramentas, resultados de execução e geração de respostas finais.

Informações coletadas em logs do Cortex Agent

Os logs do Cortex Agent incluem as seguintes informações:

  • Histórico de conversas associado a um thread

  • Rastreamento de execução do agente com intervalos, incluindo:

    • Planejamento de LLM

    • Execução de ferramentas (Cortex Search, Cortex Analyst, pesquisa na Web)

    • Geração de resposta deLLM

    • Execução de SQL

    • Geração de gráficos

  • Entradas e saídas associadas a cada intervalo

  • Feedback do usuário para cada resposta do agente

Acesso aos logs do Cortex Agent

Para visualizar os logs de conversas do Cortex Agent no Snowsight, faça o seguinte:

  1. Faça login no Snowsight.

  2. No menu de navegação, selecione AI & ML » Agents.

  3. Selecione o agente cujos logs você deseja visualizar.

  4. Navegue até o painel Monitoring da exibição do agente.

Os logs de monitoramento associados ao agente são armazenados na tabela de eventos SNOWFLAKE.LOCAL.AI_OBSERVABILITY_EVENTS. As entradas nessa tabela não podem ser modificadas.

Administradores com a função de aplicativo AI_OBSERVABILITY_ADMIN podem excluir entradas na tabela SNOWFLAKE.LOCAL.AI_OBSERVABILITY_EVENTS.

Visualizar o feedback fornecido pelos usuários

Para visualizar o feedback dos usuários sobre os agentes programaticamente, execute o seguinte comando SQL:

SELECT * FROM TABLE(SNOWFLAKE.LOCAL.GET_AI_OBSERVABILITY_EVENTS('<database_name>', '<schema_name>', '<agent_name>', 'CORTEX AGENT')) WHERE RECORD:name='CORTEX_AGENT_FEEDBACK';
Copy

A tabela resultante contém colunas que incluem informações sobre o agente, o usuário que forneceu o feedback, o feedback fornecido pelo usuário e se o feedback foi positivo ou negativo.

Controle de acesso e permissões

Para visualizar os logs do Cortex Agent, os usuários devem ter os seguintes privilégios:

  • Privilégios OWNERSHIP ou MONITOR no objeto AGENT

  • A função de banco de dados CORTEX_USER

  • A função do aplicativo AI_OBSERVABILITY_EVENTS_LOOKUP

O exemplo a seguir usa a função ACCOUNTADMIN para criar uma nova função agent_monitoring_user_role com as permissões necessárias para visualizar os logs do Cortex Agent. Essa nova função é então atribuída a some_user.

USE ROLE ACCOUNTADMIN;
CREATE ROLE agent_monitoring_user_role;
GRANT MONITOR ON AGENT my_agent TO ROLE agent_monitoring_user_role;
GRANT DATABASE ROLE SNOWFLAKE.CORTEX_USER TO ROLE agent_monitoring_user_role;
GRANT APPLICATION ROLE SNOWFLAKE.AI_OBSERVABILITY_EVENTS_LOOKUP TO ROLE agent_monitoring_user_role;
GRANT APPLICATION ROLE SNOWFLAKE.AI_OBSERVABILITY_ADMIN_RL TO ROLE agent_monitoring_user_role;
GRANT ROLE agent_monitoring_user_role TO USER some_user;
Copy

Conceder acesso de monitoramento a agentes futuros

Para conceder a um função de acesso de monitoramento em agentes futuros criados em um esquema, use o seguinte comando SQL:

GRANT MONITORING ON FUTURE AGENTS IN SCHEMA <database_name>.<schema_name> TO ROLE <role_name>;
Copy