Build Agent Pipelines in AgentCreator

These steps summarize the process for creating an Agent pipeline in Designer. We recommend that you build your tool pipelines first, which makes debugging easier.

Tip: The following tips are for building pipelines in Designer:
  1. If you plan to have multiple unconnected pipelines in one canvas, use the Disable Snap setting to turn off pipeline segments from validating and executing.
  2. Use a JSON Generator Snap in your worker and tool pipelines to mock data input for testing purposes. It can be disconnected and disabled later.

Activities outside of SnapLogic would be:

  • Creating an interface for your end users to interact with the agent.
  • Using a 3rd-party monitoring tool to assess the quality of responses and LLM costs.
  • Plan your agent pipeline design.
    1. Objective - Define a specific goal for your agent is crucial as a first step.
    2. Preparation - Collect data and prepare a real-world context for the types of end-user questions the agent is designed to answer.
    3. Tools - Enumerate the tools required for the agent to respond best to the prompt and determine the layers of pipelines that inform the hierarchy of agents. Refer to Create tool pipelines.
    4. Data sources - Identify data sources for the agent. This applies to RAG pipelines especially.
  • Make sure your LLM Snap accounts are configured. Refer to the following for LLM configuration details:

  • Set up your Snaplex to validate and run your pipelines.
  1. Go to Designer and create the following Agent pipeline:

    From the Snap Catalog, add the following Snaps to the canvas in order:

    1. JSON Generator Snap

      Use the JSON editor for the initial user prompt. This creates the JSON document that is sent through the pipeline with the prompt input.

    2. Prompt Generator Snap
      1. Click Prompt Composer and enter the prompt.
      2. Select the System Prompt checkbox and define the role.
      3. Add a second Prompt Generator Snap and in the Prompt Composer, enter the user prompt.
    3. Add a Function Generator for each tool definition.
      • Amazon Bedrock Function Generator: You can use this Snap to generate a tool definition. The output of the Snap must be converted to the JSON schema as required by Amazon Converse API.
      • Azure OpenAI Function Generator: You can use this Snap to generate a function definition that can be used for tool calling in the chat completions endpoint.
      • Google GenAI Function Generator: You can use this Snap to generate a tool definition. The output of the Snap must be converted to the JSON schema as required by Google Gemini API.
      • OpenAI Function Generator: Converts an OpenAPI specification to a list of functions
      • APIM Function Generator: Converts the APIM service version to a list of functions
      • Function Generator: You can use this Snap to generate tool definitions for any Agent Snap. It informs the model about the tools that user can call, including their names, descriptions, and required input parameters. This simplifies the process of defining custom tools compared to manual JSON construction.
      • Multi Pipeline Function Generator You can use this Snap to transform pipeline properties and parameters (such as pipeline name, purpose, and OpenAPI parameters) into function definitions.
      • MCP Function Generator: convert the tools available from an MCP server to a list of function definitions, with the additional ability to add "list resource" and "read resource" to the function definitions list.
    4. Add the Agent Snap per LLM vendor you plan to use.
  2. Configure the Function Generator Snaps.
    1. Specify the name, description, and any parameters for your tool definition.
    2. In the Tool Path field, select the tool pipeline from the dropdown
      Tip: Tagging your pipelines as tools filters the dropdown so that only tool pipelines display.
    3. For APIM and OpenAPI Function Generator Snaps. In the Account Path field, select the LLM Snap account.
    4. Save and close the Snap.
  3. Configure the Agent Snap.
    1. On the Accounts tab, select the account.
    2. On the Settings tab, specify the basic configuration.
    3. For advanced settings, configure the following sections of the Agent Snap form:
      1. Agent execution configuration: Defines how the Agent iterates on the prompt and responses from the tools.
      2. Model parameters: Specifies the behavior of the model.
      3. Advanced tool configuration: Defines the tool response.
      4. Advanced prompt configurations: Provides options for different prompt modes.
      5. Advanced response configurations: Defines the LLM response.
    4. Save and close the Agent Snap.
  4. Click to open Pipeline Properties dialog:
    1. Enter the name of the Agent.
    2. Select Agent.
    3. Add additional pipeline parameters if needed.
  5. Verify that your Agent pipeline runs successfully.
    1. Click Validate icon to validate the pipeline.
    2. When validation is completed, open the Agent Snap, and click Visualize agent flow.

      The AgentVisualizer page opens with a graph and log of the input and the Agent response.

      Example of an Agent Visualization

  6. Deploy your agent to production. You can view Pipeline executions in Monitor.

    These activities include:

    • Create a Triggered Task or Ultra Taskfor the pipeline.
      Note: Once the pipeline is in production, you should disable or remove the JSON Generator Snap. The open input for the data source would trigger the pipeline.
    • Move the Task, pipelines, and associated assets (such as an accounts file or expression library) to a production Environment (Org).
    • Assign the pipeline a Snaplex in your production environment.
    • View execution statistics in Monitor.

The following table provides Agent Snap patterns based on LLM vendor.

LLM Vendor

Pattern

Amazon Bedrock AgentCreator Agent - Amazon Bedrock - Personal assistant agent
Azure OpenAI AgentCreator Agent - Azure OpenAI - Personal assistant agent
Google Gemini AgentCreator Agent - Google Gemini - Personal assistant agent
OpenAI AgentCreator Agent - OpenAI - Personal assistant agent