async def resolve_execution_options(registry, operator_uri, request_params):
    """Resolves the execution options of the operator with the given name.

    Args:
        registry: an :class:`fiftyone.operators.registry.OperatorRegistry`
        operator_uri: the URI of the operator
        request_params: a dictionary of request parameters

    Returns:
        a :class:`fiftyone.operators.executor.ExecutionOptions` or None
    """
    if registry.operator_exists(operator_uri) is False:
        raise ValueError("Operator '%s' does not exist" % operator_uri)

    operator = registry.get_operator(operator_uri)
    ctx = ExecutionContext(
        request_params,
        operator_uri=operator_uri,
        required_secrets=operator._plugin_secrets,
    )
    await ctx.resolve_secret_values(operator._plugin_secrets)
    try:
        return operator.resolve_execution_options(ctx)
    except Exception as e:
        return ExecutionResult(error=traceback.format_exc())
Resolves the execution options of the operator with the given name.

    Args:
        registry: an :class:`fiftyone.operators.registry.OperatorRegistry`
        operator_uri: the URI of the operator
        request_params: a dictionary of request parameters

    Returns:
        a :class:`fiftyone.operators.executor.ExecutionOptions` or None
    
fiftyone/operators/executor.py