> ## Documentation Index
> Fetch the complete documentation index at: https://praison.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Run Until Async • AI Agent SDK

> run_until_async: Async version of run_until().

# run\_until\_async

<div className="flex items-center gap-2">
  <Badge color="blue">Async</Badge>
  <Badge color="purple">Method</Badge>
</div>

> This is a method of the [**Agent**](../classes/Agent) class in the [**agent**](../modules/agent) module.

Async version of run\_until().

Run agent iteratively until output meets quality criteria.

## Signature

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
async def run_until_async(prompt: str, criteria: str, threshold: float, max_iterations: int, mode: str, on_iteration: Optional[Callable[[Any], None]], verbose: bool) -> 'EvaluationLoopResult'
```

## Parameters

<ParamField query="prompt" type="str" required={true}>
  The prompt to send to the agent
</ParamField>

<ParamField query="criteria" type="str" required={true}>
  Evaluation criteria for the Judge
</ParamField>

<ParamField query="threshold" type="float" required={false} default="8.0">
  Score threshold for success (default: 8.0)
</ParamField>

<ParamField query="max_iterations" type="int" required={false} default="5">
  Maximum iterations before stopping (default: 5)
</ParamField>

<ParamField query="mode" type="str" required={false} default="'optimize'">
  "optimize" (stop on success) or "review" (run all iterations)
</ParamField>

<ParamField query="on_iteration" type="Optional" required={false}>
  Optional callback called after each iteration
</ParamField>

<ParamField query="verbose" type="bool" required={false} default="False">
  Enable verbose logging
</ParamField>

### Returns

<ResponseField name="Returns" type="'EvaluationLoopResult'">
  EvaluationLoopResult with iteration history and final score
</ResponseField>

## Uses

* `EvaluationLoop`
* `loop.run_async`

## Source

<Card title="View on GitHub" icon="github" href="https://github.com/MervinPraison/PraisonAI/blob/main/src/praisonai-agents/praisonaiagents/agent/agent.py#L2424">
  `praisonaiagents/agent/agent.py` at line 2424
</Card>

***

## Related Documentation

<CardGroup cols={2}>
  <Card title="Async Feature" icon="clock" href="/docs/features/async" />

  <Card title="Background Tasks" icon="spinner" href="/docs/features/background-tasks" />

  <Card title="Async Jobs" icon="list-check" href="/docs/features/async-jobs" />
</CardGroup>
