Tous les produits
Search
Centre de documentation

Alibaba Cloud Model Studio:Run steps (Deprecated)

Dernière mise à jour :Oct 11, 2026

Les étapes d'exécution décrivent les actions qu'un agent effectue lors d'une exécution, y compris les appels de modèle et d'outils.

ImportantL'Assistant API est en cours de dépréciation. Migrez vers l'API Responses comme alternative. L'API Responses intègre plusieurs outils natifs et prend en charge la gestion du contexte sur plusieurs tours.

Lister les étapes d'exécution

Renvoie la liste de toutes les étapes d'une tâche d'exécution.

Exemple de requête

HTTP

curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/threads/thread_cc2a3e9d-436b-482b-91c5-377e0f376506/runs/run_3de634fa-75d4-4370-adcf-92ba2a60c396/steps?limit=20&order=asc' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"

SDK

import dashscope
from dashscope import Steps
import os

dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'
steps = Steps.list(
    'run_id',
    # We recommend setting the API key as an environment variable. If not, replace `api_key=os.getenv(...)` with `api_key="your_api_key"`.
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    thread_id='thread_id',
    limit=20
)
import com.alibaba.dashscope.common.GeneralListParam;
import com.alibaba.dashscope.common.ListResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.InvalidateParameter;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.threads.runs.RunStep;
import com.alibaba.dashscope.threads.runs.Runs;
import com.alibaba.dashscope.utils.Constants;

public class Main {
    static {
        Constants.baseHttpApiUrl="https://dashscope-intl.aliyuncs.com/api/v1";
    }
    public static void main(String[] args) throws ApiException, NoApiKeyException, InputRequiredException, InvalidateParameter, InterruptedException {
        Runs runs = new Runs();
        // We recommend setting the API key as an environment variable. If not, replace `apiKey(System.getenv(...))` with `apiKey("your_api_key")`.
        GeneralListParam listSteps = GeneralListParam.builder()
                .apiKey(System.getenv("DASHSCOPE_API_KEY"))
                .build();
        ListResult<RunStep> run = runs.listSteps("threadId", "runId", listSteps);
    }
}

Corps de la requête

Nom du paramètre

Type

Obligatoire

Valeur par défaut

Description

run_id

string

Oui

ID de l'exécution dont vous souhaitez lister les étapes.

thread_id

string

Oui

ID du thread.

limit

integer

Non

None

Nombre d'étapes d'exécution à récupérer. La valeur par défaut est None. Une valeur None applique la valeur par défaut du serveur.

order

string

Non

None

Ordre de tri des résultats basé sur le champ created_at. Définissez ce paramètre sur asc (croissant) ou desc (décroissant). La valeur par défaut est None, ce qui applique le tri par défaut du serveur.

after

string

Non

None

ID de l'étape d'exécution à utiliser comme curseur pour la pagination. Si fourni, renvoie la page de résultats située immédiatement après cette étape.

before

string

Non

None

ID de l'étape d'exécution à utiliser comme curseur pour la pagination. Si fourni, renvoie la page de résultats située immédiatement avant cette étape.

workspace

string

Oui

None

L'ID de l'espace de travail pour Alibaba Cloud Model Studio est requis uniquement si la api_key correspond à un sous-espace de travail.

api_key

string

Oui

None

L'API Key de Model Studio. Nous vous recommandons de configurer l'API Key en tant que variable d'environnement.

Exemple de réponse

{
    "object": "list",
    "data": [
        {
            "id": "[REDACTED]",
            "object": "thread.run.step",
            "created_at": 1711517599333,
            "assistant_id": "[REDACTED]",
            "thread_id": "[REDACTED]",
            "run_id": "[REDACTED]",
            "type": "message_creation",
            "status": "completed",
            "step_details": {
                "type": "message_creation",
                "message_creation": {
                    "message_id": "[REDACTED]"
                }
            },
            "last_error": {
                "code": "",
                "message": ""
            },
            "expired_at": 0,
            "cancelled_at": -1,
            "failed_at": -1,
            "completed_at": -1,
            "metadata": {},
            "usage": {}
        }
    ],
    "first_id": "[REDACTED]",
    "last_id": "[REDACTED]",
    "has_more": false,
    "request_id": "[REDACTED]"
}

Corps de la réponse

Une liste d'objets d'étape d'exécution

Récupérer une étape d'exécution

Exemple de requête

HTTP

Exemple de code
curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/threads/thread_cc2a3e9d-436b-482b-91c5-377e0f376506/runs/run_3de634fa-75d4-4370-adcf-92ba2a60c396/steps/step_4db180b5-d44a-4b12-9390-4307c6cb87a5' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"

SDK

Exemple de code
import dashscope
from dashscope import Steps
import os

dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'

step = Steps.retrieve(
    'step_id',
    # We recommend setting the API key as an environment variable. If not, replace `api_key=os.getenv(...)` with `api_key="your_api_key"`.
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    thread_id='thread_id',
    run_id='run_id'
)
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.InvalidateParameter;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.threads.runs.RunStep;
import com.alibaba.dashscope.threads.runs.Runs;
import com.alibaba.dashscope.utils.Constants;

public class Main {
    static {
        Constants.baseHttpApiUrl="https://dashscope-intl.aliyuncs.com/api/v1";
    }
    public static void main(String[] args) throws ApiException, NoApiKeyException, InputRequiredException, InvalidateParameter, InterruptedException {
        Runs runs = new Runs();
        // We recommend setting the API key as an environment variable. If not, replace `apiKey=System.getenv(...)` with `apiKey="your_api_key"`.
        String apiKey = System.getenv("DASHSCOPE_API_KEY");
        RunStep run = runs.retrieveStep("threadId", "runId", "stepId", apiKey);
    }
}

Corps de la requête

Nom du paramètre

Type

Obligatoire

Valeur par défaut

Description

step_id

string

Oui

ID de l'étape d'exécution (RunStep) à récupérer.

thread_id

string

Oui

ID du thread.

run_id

string

Oui

ID de l'exécution.

workspace

string

Oui

None

L'ID de l'espace de travail pour Alibaba Cloud Model Studio est requis uniquement si vous utilisez une API Key de sous-espace de travail.

api_key

string

Oui

None

L'API Key de Model Studio. Nous vous recommandons de configurer l'API Key en tant que variable d'environnement.

Exemple de réponse

{
    "assistant_id": "[REDACTED]",
    "cancelled_at": null,
    "completed_at": 1735025124000,
    "created_at": 1735025123150,
    "expired_at": null,
    "failed_at": null,
    "id": "[REDACTED]",
    "last_error": null,
    "metadata": {},
    "object": "thread.run.step",
    "request_id": "[REDACTED]",
    "run_id": "[REDACTED]",
    "status": "completed",
    "step_details": {
        "message_creation": {
            "message_id": "[REDACTED]"
        },
        "type": "message_creation"
    },
    "thread_id": "[REDACTED]",
    "type": "message_creation",
    "usage": null
}

Corps de la réponse

L'objet d'étape d'exécution correspondant à l'ID spécifié.

Objet d'étape d'exécution

Représente une étape du processus d'exécution d'une tâche.

Exemple d'objet

{
  "id": "[REDACTED]",
  "assistant_id": "[REDACTED]",
  "cancelled_at": null,
  "completed_at": 1678886400,
  "created_at": 1678886300,
  "expired_at": null,
  "failed_at": null,
  "last_error": null,
  "metadata": {
    "user_id": "[REDACTED]",
    "context": "order_processing"
  },
  "object": "thread.run.step",
  "run_id": "[REDACTED]",
  "status": "completed",
  "step_details": {
    "type": "message_creation",
    "message_creation": {
      "message_id": "[REDACTED]"
    }
  },
  "thread_id": "[REDACTED]",
  "type": "message_creation",
  "usage": {
    "prompt_tokens": 10,
    "completion_tokens": 20,
    "total_tokens": 30
  }
}

Attributs de l'objet

Nom du paramètre

Type

Description

id

string

Identifiant unique de l'étape d'exécution, pouvant être référencé dans les endpoints d'API.

assistant_id

string

ID de l'assistant associé à cette étape d'exécution.

cancelled_at

integer

Horodatage UNIX à 13 chiffres (en millisecondes) indiquant l'annulation de l'étape d'exécution.

completed_at

integer

Horodatage UNIX à 13 chiffres (en millisecondes) indiquant la fin de l'étape d'exécution.

created_at

integer

Horodatage UNIX à 13 chiffres (en millisecondes) indiquant la création de l'étape d'exécution.

expired_at

integer

Horodatage UNIX à 13 chiffres (en millisecondes) indiquant l'expiration de l'étape d'exécution. Si l'exécution parente a expiré, l'étape est également considérée comme expirée.

failed_at

integer

Horodatage UNIX à 13 chiffres (en millisecondes) indiquant l'échec de l'étape d'exécution.

last_error

object

Dernière erreur associée à cette étape d'exécution. Ce paramètre est null si aucune erreur ne s'est produite.

metadata

map

Ensemble de 16 paires clé-valeur maximum pouvant être attachées à l'objet. Permet de stocker des informations supplémentaires structurées sur l'objet. La longueur maximale d'une clé est de 64 caractères et celle d'une valeur est de 512 caractères.

object

string

Type d'objet, toujours thread.run.step.

run_id

string

ID de l'exécution à laquelle appartient cette étape.

status

string

Statut de l'étape d'exécution. Valeurs valides : in_progress, cancelled, failed, completed ou expired.

step_details

object

Détails de l'étape d'exécution.

thread_id

string

ID du thread en cours d'exécution.

type

string

Type de l'étape d'exécution. Valeurs valides : message_creation ou tool_calls.

usage

object

Statistiques d'utilisation des ressources.

status_code

integer

Code de statut HTTP. Remarque : Ce paramètre sert au traitement interne. Dans la plupart des cas, vous pouvez l'ignorer.

Codes d'erreur

Si un appel échoue et renvoie un message d'erreur, consultez la rubrique Codes d'erreur pour le dépannage.