Edit a Pipeline

Improve your pipeline to make your search faster and more accurate. You can edit pipelines in Pipeline Builder or through REST API.

About This Task

You can edit a development pipeline while it remains deployed. You can make the following changes:

  • Update query pipeline components, except for the embedding model and its format.
  • Update the pipeline's name.

You can't modify components in the indexing pipelines, add or remove components in the query pipeline, or change their order without undeploying the pipeline first.

Editing production pipelines is forbidden. You must change the pipeline's service level first.

Prerequisites

  • You must be an Admin to perform this task.
  • If the changes you want to make require undeploying the pipeline, go to Pipelines, click the more actions button next to the pipeline name, and select Undeploy.
  • To edit pipelines using API endpoints, generate an API Key first.

Edit a Pipeline in Pipeline Builder

This is the default way of editing pipelines. It opens the pipeline in the visual editor. You can use it to replace one component with another or update the parameters quickly.

  1. Log in to deepset Cloud and go to Pipelines.
  2. Find the pipeline you want to edit, click the More Actions menu next to it, and choose Edit.
    The three dots menu expanded with the Edit option underlined.
  3. Modify the pipeline and save it.
  4. Deploy the pipeline to use it for search.

Edit a Pipeline with REST API

There are two endpoints you can use to update your pipeline: Update Pipeline and Update Pipeline Yaml.

Update Pipeline YAML

This method lets you quickly upload an updated pipeline YAML to deepset Cloud. It's best to change the pipeline configuration and have a pipeline YAML file ready. It uses the Update Pipeline Yaml endpoint.

See this recipe for a step-by-step explanation of the code:

Or copy this code:

curl --request PUT \
     --url https://api.cloud.deepset.ai/api/v1/workspaces/<YOUR_WORKSPACE>/pipelines/<YOUR_PIPELINE_NAME>/yaml \
     --header 'accept: application/json'
     --authorization: Bearer <API_KEY>

Update Pipeline Settings

Use the Update Pipeline endpoint if you want to change pipeline settings, such as name or service level, without changing the YAML configuration.

Open the recipe for a walkthrough of the request code:

Copy this code and modify it as needed:

curl --request PATCH \
     --url https://api.cloud.deepset.ai/api/v1/<YOUR_WORKSPACE>/pipelines/<YOUR_PIPELINE_NAME> \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{
  "name": "new_pipeline_name",
  "service_level": "DEVELOPMENT",
  "status": 1
}
'