Title: wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php | Developer.WordPress.org

---

# File: wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php

 * method[ModelRequirements::fromPromptData()](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/frompromptdata/)
 * Creates ModelRequirements from prompt data and model configuration.
 * Used by [2 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/frompromptdata/#used-by)
   | Uses [4 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/frompromptdata/#uses)
   | Source: [wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php:133](https://github.com/WordPress/wordpress-develop/blob/7.0/src/wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php#L133-L185)
 * method[ModelRequirements::toRequiredOptions()](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/torequiredoptions/)
 * Converts ModelConfig to an array of RequiredOptions.
 * Used by [1 function](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/torequiredoptions/#used-by)
   | Uses [21 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/torequiredoptions/#uses)
   | Source: [wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php:194](https://github.com/WordPress/wordpress-develop/blob/7.0/src/wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php#L194-L261)
 * method[ModelRequirements::includeInRequiredOptions()](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/includeinrequiredoptions/)
 * Includes a RequiredOption in the array, ensuring no duplicates based on option
   name.
 * Used by [1 function](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/includeinrequiredoptions/#used-by)
   | Uses [0 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/includeinrequiredoptions/#uses)
   | Source: [wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php:271](https://github.com/WordPress/wordpress-develop/blob/7.0/src/wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php#L271-L284)
 * method[ModelRequirements::getJsonSchema()](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/getjsonschema/)
 * {@inheritDoc}
 * Used by [0 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/getjsonschema/#used-by)
   | Uses [1 function](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/getjsonschema/#uses)
   | Source: [wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php:290](https://github.com/WordPress/wordpress-develop/blob/7.0/src/wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php#L290-L293)
 * method[ModelRequirements::toArray()](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/toarray/)
 * {@inheritDoc}
 * Used by [0 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/toarray/#used-by)
   | Uses [0 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/toarray/#uses)
   | Source: [wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php:301](https://github.com/WordPress/wordpress-develop/blob/7.0/src/wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php#L301-L304)
 * method[ModelRequirements::fromArray()](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/fromarray/)
 * {@inheritDoc}
 * Used by [0 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/fromarray/#used-by)
   | Uses [2 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/fromarray/#uses)
   | Source: [wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php:310](https://github.com/WordPress/wordpress-develop/blob/7.0/src/wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php#L310-L314)
 * method[ModelRequirements::areMetBy()](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/aremetby/)
 * Checks whether the given model metadata meets these requirements.
 * Used by [0 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/aremetby/#used-by)
   | Uses [3 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/aremetby/#uses)
   | Source: [wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php:92](https://github.com/WordPress/wordpress-develop/blob/7.0/src/wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php#L92-L122)
 * class[ModelRequirements](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/)
 * Represents requirements that implementing code has for AI model selection.
 * Used by [0 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/#used-by)
   | Uses [0 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/#uses)
   | Source: [wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php:29](https://github.com/WordPress/wordpress-develop/blob/7.0/src/wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php#L29-L315)
 * method[ModelRequirements::__construct()](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/__construct/)
 * Constructor.
 * Used by [2 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/__construct/#used-by)
   | Uses [0 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/__construct/#uses)
   | Source: [wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php:51](https://github.com/WordPress/wordpress-develop/blob/7.0/src/wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php#L51-L61)
 * method[ModelRequirements::getRequiredCapabilities()](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/getrequiredcapabilities/)
 * Gets the capabilities that the model must support.
 * Used by [0 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/getrequiredcapabilities/#used-by)
   | Uses [0 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/getrequiredcapabilities/#uses)
   | Source: [wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php:69](https://github.com/WordPress/wordpress-develop/blob/7.0/src/wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php#L69-L72)
 * method[ModelRequirements::getRequiredOptions()](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/getrequiredoptions/)
 * Gets the options that the model must support with specific values.
 * Used by [0 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/getrequiredoptions/#used-by)
   | Uses [0 functions](https://developer.wordpress.org/reference/classes/wordpress-aiclient-providers-models-dto-modelrequirements/getrequiredoptions/#uses)
   | Source: [wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php:80](https://github.com/WordPress/wordpress-develop/blob/7.0/src/wp-includes/php-ai-client/src/Providers/Models/DTO/ModelRequirements.php#L80-L83)