Compartir a través de


Recuperar una lista de resultados

Es habitual pedirle a un agente que busque datos en un sistema externo y le devuelva una lista de resultados. Con este fin, un agente puede llamar a un flujo de Power Automate para:

  1. Autenticarse y conectarse a una solución externa.
  2. Ejecutar una consulta basada en la entrada de usuario.
  3. Formatear los resultados.
  4. Devolver los resultados al agente.

En este ejemplo se usa el conector de Dataverse en Power Automate para buscar cuentas. El conector devuelve una lista de resultados que incluye el nombre de la cuenta, la ciudad y el número de cuenta al agente.

Requisitos previos

Configurar una tabla de cuentas de Dataverse

La tabla Cuenta es una tabla estándar disponible de forma predeterminada en entornos de Power Platform. Sin embargo, no viene con los datos de la cuenta. Antes de que su agente pueda buscar cuentas, debe rellenar la tabla Cuenta.

Si ya tiene una tabla de cuentas con datos, omita este paso y continúe con Crear un tema. Sin embargo, recuerde utilizar términos de búsqueda relevantes para sus datos cuando pruebe a su agente en pasos posteriores.

  1. Vaya al portal de Power Apps.

  2. En el panel de navegación, seleccione Tablas.

  3. Seleccione la tabla Cuentas y luego seleccione la página de propiedades de la tabla y seleccione Editar.

  4. Añada las siguientes filas a la tabla:

    Dirección 1: Ciudad Nombre de cuenta Número de cuenta
    Pontevedra Contoso Inc AC0125
    San Francisco Contoso Residences AC0255
    Olympia Contoso Meal Delivery AC0035

Crear un tema

  1. En Copilot Studio, vaya a la página Temas de su agente.

  2. Crear un tema llamado Búsqueda de cuentas.

  3. Agregue las siguientes frases desencadenadoras:

    • Estoy buscando un cliente
    • Estoy buscando una cuenta
    • buscar cuenta
    • buscar cliente
  4. Agregue un nodo Mensaje e introduzca el mensaje «Parece que estás buscando una cuenta. Puedo buscarlo por ti".

  5. Agregue un nodo Pregunta e ingrese el mensaje «¿Cómo se llama el cliente que estás buscando?»

  6. En Identificar, seleccione Organización.

    La respuesta completa del usuario también funcionaría. Sin embargo, al seleccionar la entidad Organización, aprovecha las capacidades de comprensión del lenguaje del agente para extraer el nombre de la organización de la respuesta.

  7. En Guardar respuesta del usuario como, cambie el nombre de la variable a «organización».

    Captura de pantalla del tema «Búsqueda de cuenta» con un nodo Mensaje y un nodo Pregunta.

Creación de un flujo

  1. Seleccione el icono Agregar nododebajo de cualquier nodo y seleccione Agregar una acción.

  2. En la pestaña Acciones básicas, seleccione Nuevo flujo de Power Automate.

  3. En Power Automate seleccione el nombre del flujo y reemplácelo por Buscar cuenta.

  4. Seleccione el desencadenador de flujo Ejecutar un flujo desde Copilot y agregue un parámetro de entrada Texto denominado Organización.

    Captura de pantalla del desencadenador de flujo con la entrada de texto

  5. Seleccione el icono Agregar debajo del desencadenador de flujo Ejecutar un flujo desde Copilot.

  6. En Agregar una acción, busque Microsoft Dataverse y seleccione la acción Buscar filas.

    Esta acción utiliza coincidencias aproximadas para encontrar cuentas relevantes en su tabla de cuentas de Dataverse.

  7. En el cuadro Términos de búsqueda, escriba una barra diagonal (/), seleccione Insertar contenido dinámico y, a continuación, seleccione el parámetro de entrada de su Organización.

  8. En Parámetros avanzados, seleccione Mostrar todo y defina los siguientes valores:

    • Elemento de filtro de tabla: account
    • Ordenar por artículo - 1: search.score desc
    • Ordenar por artículo - 2: name asc

    Captura de pantalla de las propiedades de la acción 'Buscar filas' con opciones avanzadas

Dar formato a resultados

La acción Buscar filas devuelve la variable Lista de filas, que contiene datos JSON. Antes de utilizar los datos, debe analizarlos con la acción Analizar JSON.

  1. Seleccione el icono Agregar debajo de la acción Buscar filas.

  2. En Agregar una acción, busque «Operación de datos» y seleccione la acción Parse JSON.

  3. En el cuadro Contenido, escriba una barra diagonal (/), seleccione Insertar contenido dinámico y, a continuación, seleccione Lista de filas.

  4. Copie el siguiente esquema JSON y péguelo en el recuadro Esquema:

    {
        "type": "array",
        "items": {
            "type": "object",
            "properties": {
                "@@search.score": {
                    "type": "number"
                },
                "name": {
                    "type": "string"
                },
                "address1_city": {
                    "type": "string"
                },
                "accountnumber": {
                    "type": "string"
                }
            },
            "required": [
                "name"
            ]
        }
    }
    

    Captura de pantalla del esquema JSON en las propiedades de la acción Parse JSON.

  5. Seleccione el icono Agregar situado debajo de la acción Parse JSON.

  6. En Agregar una acción, busque «Variable» y seleccione la acción Inicializar variable.

  7. En el cuadro Nombre, introduzca «ListOfAccounts».

  8. En Tipo, seleccione Cadena.

    Captura de pantalla de las propiedades de la acción «Inicializar variable».

  9. Seleccione el icono Agregar debajo de la acción Inicializar variable.

  10. En Agregar una acción, busque «Control» y seleccione la acción Aplicar a cada.

  11. En el cuadro Seleccionar una salida de pasos anteriores, escriba una barra oblicua (/), seleccione Insertar contenido dinámico y, a continuación, seleccione la variable Body en Parse JSON.

  12. Seleccione el icono Agregardentro de la acción Aplicar a cada.

  13. En Agregar una acción, busque «Variable» y seleccione la acción Anexar a variable cadena.

  14. Para Nombre, seleccione ListOfAccounts.

  15. Copie el siguiente texto y péguelo en el recuadro Valor:

    - @{items('Apply_to_each')['accountnumber']}: @{items('Apply_to_each')['name']} - @{items('Apply_to_each')['address1_city']}
    
  16. Agregue un salto de línea después del fragmento de código para que cada resultado aparezca en su propia línea.

    Captura de pantalla de las propiedades de acción Anexar a variable cadena.

  17. En la acción Responder a Copilot, agregue una salida de Texto.

  18. Para Nombre, escriba «FoundAccounts».

  19. Para el valor, escriba una barra (/) en el cuadro, seleccione Insertar contenido dinámico y luego seleccione la variable ListOfAccounts.

    Captura de pantalla de las propiedades de la acción 'Responder a Copilot'.

  20. Guarde y publique su flujo.

Llamar al flujo de Copilot Studio

  1. En Copilot Studio, seleccione el icono Agregar nodo en el nodo Pregunta, elija Agregar una acción y, a continuación, seleccione el flujo que creó anteriormente, Buscar cuenta.

  2. Establezca el parámetro de entrada de flujo en la variable de salida del nodo Pregunta: Organización (cadena) obtiene su valor de la variable organización.

  3. Agregue un nodo Mensaje e ingrese el mensaje «Bien, esto es lo que encontré».

  4. Agregue un segundo nodo Mensaje. Seleccione el icono Insertar variable y después seleccione FoundAccounts.

    Captura de pantalla del flujo de conversación que responde con una lista de cuentas encontradas.

  5. Seleccione Guardar.

  6. Pruebe el agente.

    Captura de pantalla de una conversación de ejemplo en el panel de prueba