WordPress\AiClient\Builders

PromptBuilder::inferCapabilityFromModelInterfacesprivateWP 0.1.0

Infers the capability from a model's implemented interfaces.

Method of the class: PromptBuilder{}

No Hooks.

Returns

CapabilityEnum|null. The inferred capability, or null if none can be inferred.

Usage

// private - for code of main (parent) class only
$result = $this->inferCapabilityFromModelInterfaces( $model ): ?CapabilityEnum;
$model(ModelInterface) (required)
The model to infer capability from.

Changelog

Since 0.1.0 Introduced.

PromptBuilder::inferCapabilityFromModelInterfaces() code WP 7.0

private function inferCapabilityFromModelInterfaces(ModelInterface $model): ?CapabilityEnum
{
    // Check model interfaces in order of preference
    if ($model instanceof TextGenerationModelInterface) {
        return CapabilityEnum::textGeneration();
    }
    if ($model instanceof ImageGenerationModelInterface) {
        return CapabilityEnum::imageGeneration();
    }
    if ($model instanceof TextToSpeechConversionModelInterface) {
        return CapabilityEnum::textToSpeechConversion();
    }
    if ($model instanceof SpeechGenerationModelInterface) {
        return CapabilityEnum::speechGeneration();
    }
    if ($model instanceof VideoGenerationModelInterface) {
        return CapabilityEnum::videoGeneration();
    }
    // No supported interface found
    return null;
}