Title: AiClient::generateResult
Published: May 20, 2026

---

# AiClient::generateResult( WordPressAiClientPrompt $prompt, WordPressAiClientProvidersModelsContractsModelInterface|WordPressAiClientProvidersModelsDTOModelConfig $modelOrConfig, WordPressAiClientProvidersProviderRegistry|null $registry = null ): WordPressAiClientResultsDTOGenerativeAiResult

## In this article

 * [Description](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/generateresult/?output_format=md#description)
 * [Parameters](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/generateresult/?output_format=md#parameters)
 * [Return](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/generateresult/?output_format=md#return)
 * [Source](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/generateresult/?output_format=md#source)
 * [Related](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/generateresult/?output_format=md#related)
 * [Changelog](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/generateresult/?output_format=md#changelog)

[ Back to top](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/generateresult/?output_format=md#wp--skip-link--target)

Generates content using a unified API that automatically detects model capabilities.

## 󠀁[Description](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/generateresult/?output_format=md#description)󠁿

When no model is provided, this method delegates to PromptBuilder for intelligent
model discovery based on prompt content and configuration. When a model is provided,
it infers the capability from the model’s interfaces and delegates to the capability-
based method.

## 󠀁[Parameters](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/generateresult/?output_format=md#parameters)󠁿

 `$prompt`WordPressAiClientPromptrequired

The prompt content.

`$modelOrConfig`WordPressAiClientProvidersModelsContractsModelInterface|WordPressAiClientProvidersModelsDTOModelConfigrequired

Specific model to use, or model configuration for auto-discovery.

`$registry`WordPressAiClientProvidersProviderRegistry|nulloptional

Optional custom registry. If null, uses default.

Default:`null`

## 󠀁[Return](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/generateresult/?output_format=md#return)󠁿

 WordPressAiClientResultsDTOGenerativeAiResult The generation result.

## 󠀁[Source](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/generateresult/?output_format=md#source)󠁿

    ```php
    public static function generateResult($prompt, $modelOrConfig, ?ProviderRegistry $registry = null): GenerativeAiResult
    {
        self::validateModelOrConfigParameter($modelOrConfig);
        return self::getConfiguredPromptBuilder($prompt, $modelOrConfig, $registry)->generateResult();
    }
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-includes/php-ai-client/src/aiclient.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/7.0/src/wp-includes/php-ai-client/src/AiClient.php#L232)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/7.0/src/wp-includes/php-ai-client/src/AiClient.php#L232-L236)

## 󠀁[Related](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/generateresult/?output_format=md#related)󠁿

| Uses | Description | 
| [AiClient::validateModelOrConfigParameter()](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/validatemodelorconfigparameter/)`wp-includes/php-ai-client/src/AiClient.php` |

Validates that parameter is ModelInterface, ModelConfig, or null.

  | 
| [AiClient::getConfiguredPromptBuilder()](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/getconfiguredpromptbuilder/)`wp-includes/php-ai-client/src/AiClient.php` |

Configures PromptBuilder based on model/config parameter type.

  |

## 󠀁[Changelog](https://developer.wordpress.org/reference/classes/wordpress-aiclient-aiclient/generateresult/?output_format=md#changelog)󠁿

| Version | Description | 
| [0.1.0](https://developer.wordpress.org/reference/since/0.1.0/) | Introduced. |

## User Contributed Notes

You must [log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Fclasses%2Fwordpress-aiclient-aiclient%2Fgenerateresult%2F)
before being able to contribute a note or feedback.