mirror of
https://github.com/symfony/ai.git
synced 2026-03-23 23:42:18 +01:00
35 lines
956 B
PHP
35 lines
956 B
PHP
<?php
|
|
|
|
/*
|
|
* This file is part of the Symfony package.
|
|
*
|
|
* (c) Fabien Potencier <fabien@symfony.com>
|
|
*
|
|
* For the full copyright and license information, please view the LICENSE
|
|
* file that was distributed with this source code.
|
|
*/
|
|
|
|
use Symfony\AI\Platform\Bridge\Perplexity\PlatformFactory;
|
|
use Symfony\AI\Platform\Message\Message;
|
|
use Symfony\AI\Platform\Message\MessageBag;
|
|
|
|
require_once __DIR__.'/bootstrap.php';
|
|
|
|
$platform = PlatformFactory::create(env('PERPLEXITY_API_KEY'), http_client());
|
|
|
|
$messages = new MessageBag(
|
|
Message::forSystem('You are a thoughtful philosopher.'),
|
|
Message::ofUser('What is the purpose of an ant?'),
|
|
);
|
|
$result = $platform->invoke('sonar', $messages, [
|
|
'stream' => true,
|
|
]);
|
|
|
|
foreach ($result->asStream() as $word) {
|
|
echo $word;
|
|
}
|
|
echo \PHP_EOL;
|
|
|
|
print_search_results($result->getResult()->getMetadata()->get('search_results'));
|
|
print_citations($result->getResult()->getMetadata()->get('citations'));
|