WordPress\AiClient\Builders
PromptBuilder::generateResult
Generates a result from the prompt.
This is the primary execution method that generates a result (containing potentially multiple candidates) based on the specified capability or the configured output modality.
Method of the class: PromptBuilder{}
No Hooks.
Returns
GenerativeAiResult. The generated result containing candidates.
Usage
$PromptBuilder = new PromptBuilder(); $PromptBuilder->generateResult( ?CapabilityEnum $capability ): GenerativeAiResult;
- ?CapabilityEnum $capability
- .
Default:null
Changelog
| Since 0.1.0 | Introduced. |
PromptBuilder::generateResult() PromptBuilder::generateResult code WP 7.0
public function generateResult(?CapabilityEnum $capability = null): GenerativeAiResult
{
$this->validateMessages();
// If capability is not provided, infer it
if ($capability === null) {
// First try to infer from a specific model if one is set
if ($this->model !== null) {
$inferredCapability = $this->inferCapabilityFromModelInterfaces($this->model);
if ($inferredCapability !== null) {
$capability = $inferredCapability;
}
}
// If still no capability, infer from output modalities
if ($capability === null) {
$capability = $this->inferCapabilityFromOutputModalities();
}
}
$model = $this->getConfiguredModel($capability);
// Dispatch BeforeGenerateResultEvent
$this->dispatchEvent(new BeforeGenerateResultEvent($this->messages, $model, $capability));
// Route to the appropriate generation method based on capability
$result = $this->executeModelGeneration($model, $capability, $this->messages);
// Dispatch AfterGenerateResultEvent
$this->dispatchEvent(new AfterGenerateResultEvent($this->messages, $model, $capability, $result));
return $result;
}