> Discover all available pages from the documentation index: https://mastra.zisheng.pro/ko/llms.txt # 실행.startAsync() 그만큼`.startAsync()`메서드는 완료를 기다리지 않고 Workflow 실행을 시작합니다. 와 함께 즉시 반환됩니다.`runId`, Workflow가 백그라운드에서 실행될 수 있도록 합니다. 이는 장기 실행 Workflow나 예약된 작업에 유용합니다. 또한 Workflow 완료 시 차단을 방지합니다. ## 사용예 ```typescript const run = await workflow.createRun() // Fire-and-forget - returns immediately const { runId } = await run.startAsync({ inputData: { value: 'initial data', }, }) // Optionally poll for completion later const result = await workflow.getWorkflowRunExecutionResult(runId) ``` ## 매개변수 **inputData** (`z.infer`): Workflow의 입력 스키마와 일치하는 입력 데이터입니다 **requestContext** (`RequestContext`): Workflow 실행 중 사용할 Request Context 데이터입니다 **initialState** (`z.infer`): Workflow 실행에 사용할 초기 상태입니다 **tracingOptions** (`TracingOptions`): Tracing 구성을 위한 옵션입니다. **tracingOptions.metadata** (`Record`): 루트 Trace span에 추가할 메타데이터입니다. 사용자 ID, 세션 ID 또는 기능 플래그와 같은 사용자 정의 속성을 추가할 때 유용합니다. **tracingOptions.traceId** (`string`): 이 실행에 사용할 Trace ID입니다(1\~32자의 16진수). 제공하면 이 Trace가 지정된 Trace의 일부가 됩니다. **outputOptions** (`OutputOptions`): 출력 구성을 위한 옵션입니다. **outputOptions.includeState** (`boolean`): 결과에 Workflow 실행 상태를 포함할지 여부입니다. ## 보고 **runId** (`string`): 이 Workflow 실행의 고유 식별자입니다. 나중에 상태를 확인하거나 결과를 가져올 때 사용합니다. ## 언제 사용하나요?`startAsync()` 다음과 같은 경우 `start()` 대신 `startAsync()`를 사용하세요. - **장기 실행 Workflow**: Workflow를 완료하는 데 몇 분 또는 몇 시간이 걸릴 수 있습니다. - **예약된/크론 트리거**: 스케줄러를 차단하지 않고 Workflow를 트리거하려는 경우입니다. - **폴링 실패 방지**: Ingest Workflow를 사용하면 `start()`가 완료될 때까지 폴링하므로 실패하여 재시도가 발생할 수 있습니다. `startAsync()`는 이 문제를 방지합니다. - **백그라운드 처리**: 작업을 대기열에 추가하고 결과를 비동기적으로 처리하려는 경우입니다. ## Workflow 상태 확인 중 `startAsync()`를 호출한 후 다음을 사용하여 Workflow 상태를 확인할 수 있습니다. ```typescript // Get the execution result (including step outputs) const result = await workflow.getWorkflowRunExecutionResult(runId) if (result?.status === 'success') { console.log('Workflow completed:', result.steps) } else if (result?.status === 'failed') { console.log('Workflow failed:', result.error) } else if (result?.status === 'running') { console.log('Workflow still running...') } ``` ## 관련된 - [실행.시작()](https://mastra.zisheng.pro/ko/reference/workflows/run-methods/start): Workflow를 시작하고 완료될 때까지 기다립니다. - [Workflow 개요](https://mastra.zisheng.pro/ko/docs/workflows/overview) - [Workflow.createRun()](https://mastra.zisheng.pro/ko/reference/workflows/workflow-methods/create-run)