wppaste
WordPress

FunctionResponse

Since
0.1.0
Source
wp-includes/php-ai-client/src/Tools/DTO/FunctionResponse.php:20
Represents a response to a function call.

Description

This DTO encapsulates the result of executing a function that was requested by the AI model through a FunctionCall.

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 · 3

$idstring|nullprivate
$namestring|nullprivate
$responsemixedprivate

Methods · 7

Source code

class FunctionResponse extends AbstractDataTransferObject{    public const KEY_ID = 'id';    public const KEY_NAME = 'name';    public const KEY_RESPONSE = 'response';    /**     * @var string|null The ID of the function call this is responding to.     */    private ?string $id;    /**     * @var string|null The name of the function that was called.     */    private ?string $name;    /**     * @var mixed The response data from the function.     */    private $response;    /**     * Constructor.     *     * @since 0.1.0     *     * @param string|null $id The ID of the function call this is responding to.     * @param string|null $name The name of the function that was called.     * @param mixed $response The response data from the function.     * @throws InvalidArgumentException If neither id nor name is provided.     */    public function __construct(?string $id, ?string $name, $response)    {        if ($id === null && $name === null) {            throw new InvalidArgumentException('At least one of id or name must be provided.');        }        $this->id = $id;        $this->name = $name;        $this->response = $response;    }    /**     * Gets the function call ID.     *     * @since 0.1.0     *     * @return string|null The function call ID.     */    public function getId(): ?string    {        return $this->id;    }    /**     * Gets the function name.     *     * @since 0.1.0     *     * @return string|null The function name.     */    public function getName(): ?string    {        return $this->name;    }    /**     * Gets the function response.     *     * @since 0.1.0     *     * @return mixed The response data.     */    public function getResponse()    {        return $this->response;    }    /**     * {@inheritDoc}     *     * @since 0.1.0     */    public static function getJsonSchema(): array    {        return ['type' => 'object', 'properties' => [self::KEY_ID => ['type' => 'string', 'description' => 'The ID of the function call this is responding to.'], self::KEY_NAME => ['type' => 'string', 'description' => 'The name of the function that was called.'], self::KEY_RESPONSE => ['type' => ['string', 'number', 'boolean', 'object', 'array', 'null'], 'description' => 'The response data from the function.']], 'anyOf' => [['required' => [self::KEY_RESPONSE, self::KEY_ID]], ['required' => [self::KEY_RESPONSE, self::KEY_NAME]]]];    }    /**     * {@inheritDoc}

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.0.4 tag, from src/wp-includes/php-ai-client/src/Tools/DTO/FunctionResponse.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.