wppaste
WordPress

ModelConfig

Since
0.1.0
Source
wp-includes/php-ai-client/src/Providers/Models/DTO/ModelConfig.php:51
Represents configuration for an AI model.

Description

This class allows configuring various parameters for model behavior, including output modalities, system instructions, generation parameters, and tool integrations.

Compatibility

WordPress
since 0.1.0
  • 6.7.7
  • 6.8.8
  • 6.9.7
  • 7.0.4
  • 7.1.0

Present in 2 of the 5 tracked releases, added in 0.1.0.

Properties · 21

$outputModalitiesWordPress\AiClient\Providers\Models\DTO\list<ModalityEnum>|nullprotected
$systemInstructionstring|nullprotected
$candidateCountint|nullprotected
$maxTokensint|nullprotected
$temperaturefloat|nullprotected
$topPfloat|nullprotected
$topKint|nullprotected
$stopSequencesWordPress\AiClient\Providers\Models\DTO\list<string>|nullprotected
$presencePenaltyfloat|nullprotected
$frequencyPenaltyfloat|nullprotected
$logprobsbool|nullprotected
$topLogprobsint|nullprotected
$functionDeclarationsWordPress\AiClient\Providers\Models\DTO\list<FunctionDeclaration>|nullprotected
$webSearchWordPress\AiClient\Tools\DTO\WebSearch|nullprotected
$outputFileTypeWordPress\AiClient\Files\Enums\FileTypeEnum|nullprotected
$outputMimeTypestring|nullprotected
$outputSchemaWordPress\AiClient\Providers\Models\DTO\array<string,protected
$outputMediaOrientationWordPress\AiClient\Files\Enums\MediaOrientationEnum|nullprotected
$outputMediaAspectRatiostring|nullprotected
$outputSpeechVoicestring|nullprotected
$customOptionsWordPress\AiClient\Providers\Models\DTO\array<string,protected

Methods · 48

Source code

class ModelConfig extends AbstractDataTransferObject{    public const KEY_OUTPUT_MODALITIES = 'outputModalities';    public const KEY_SYSTEM_INSTRUCTION = 'systemInstruction';    public const KEY_CANDIDATE_COUNT = 'candidateCount';    public const KEY_MAX_TOKENS = 'maxTokens';    public const KEY_TEMPERATURE = 'temperature';    public const KEY_TOP_P = 'topP';    public const KEY_TOP_K = 'topK';    public const KEY_STOP_SEQUENCES = 'stopSequences';    public const KEY_PRESENCE_PENALTY = 'presencePenalty';    public const KEY_FREQUENCY_PENALTY = 'frequencyPenalty';    public const KEY_LOGPROBS = 'logprobs';    public const KEY_TOP_LOGPROBS = 'topLogprobs';    public const KEY_FUNCTION_DECLARATIONS = 'functionDeclarations';    public const KEY_WEB_SEARCH = 'webSearch';    public const KEY_OUTPUT_FILE_TYPE = 'outputFileType';    public const KEY_OUTPUT_MIME_TYPE = 'outputMimeType';    public const KEY_OUTPUT_SCHEMA = 'outputSchema';    public const KEY_OUTPUT_MEDIA_ORIENTATION = 'outputMediaOrientation';    public const KEY_OUTPUT_MEDIA_ASPECT_RATIO = 'outputMediaAspectRatio';    public const KEY_OUTPUT_SPEECH_VOICE = 'outputSpeechVoice';    public const KEY_CUSTOM_OPTIONS = 'customOptions';    /*     * Note: This key is not an actual model config key, but specified here for convenience.     * It is relevant for model discovery, to determine which models support which input modalities.     * The actual input modalities are part of the message sent to the model, not the model config.     */    public const KEY_INPUT_MODALITIES = 'inputModalities';    /**     * @var list<ModalityEnum>|null Output modalities for the model.     */    protected ?array $outputModalities = null;    /**     * @var string|null System instruction for the model.     */    protected ?string $systemInstruction = null;    /**     * @var int|null Number of response candidates to generate.     */    protected ?int $candidateCount = null;    /**     * @var int|null Maximum number of tokens to generate.     */    protected ?int $maxTokens = null;    /**     * @var float|null Temperature for randomness (0.0 to 2.0).     */    protected ?float $temperature = null;    /**     * @var float|null Top-p nucleus sampling parameter.     */    protected ?float $topP = null;    /**     * @var int|null Top-k sampling parameter.     */    protected ?int $topK = null;    /**     * @var list<string>|null Stop sequences.     */    protected ?array $stopSequences = null;    /**     * @var float|null Presence penalty for reducing repetition.     */    protected ?float $presencePenalty = null;    /**     * @var float|null Frequency penalty for reducing repetition.     */    protected ?float $frequencyPenalty = null;    /**     * @var bool|null Whether to return log probabilities.     */    protected ?bool $logprobs = null;    /**     * @var int|null Number of top log probabilities to return.     */    protected ?int $topLogprobs = null;    /**     * @var list<FunctionDeclaration>|null Function declarations available to the model.     */

Changelog

Introduced in 0.1.0. Unchanged from 7.0.4 through 7.1.0.

  1. 7.0.4
  2. 7.1.0

Signature, return type and hooks compared across 2 parsed releases.

About this page

Parsed data
Generated from the wordpress-develop 7.1.0 tag, from src/wp-includes/php-ai-client/src/Providers/Models/DTO/ModelConfig.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.
Corrections
Something wrong on this page? Report it and it gets fixed in the next regeneration.