Skip to content

Commit 2b34320

Browse files
committed
Add Perplexity integration with contract and token usage processors
1 parent 3472687 commit 2b34320

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

src/ai-bundle/config/services.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,9 @@
3232
use Symfony\AI\Platform\Bridge\Ollama\Contract\OllamaContract;
3333
use Symfony\AI\Platform\Bridge\OpenAi\Contract\OpenAiContract;
3434
use Symfony\AI\Platform\Bridge\OpenAi\TokenOutputProcessor as OpenAiTokenOutputProcessor;
35+
use Symfony\AI\Platform\Bridge\Perplexity\Contract\PerplexityContract;
36+
use Symfony\AI\Platform\Bridge\Perplexity\SearchResultProcessor as PerplexitySearchResultProcessor;
37+
use Symfony\AI\Platform\Bridge\Perplexity\TokenOutputProcessor as PerplexityTokenOutputProcessor;
3538
use Symfony\AI\Platform\Bridge\VertexAi\Contract\GeminiContract as VertexAiGeminiContract;
3639
use Symfony\AI\Platform\Bridge\VertexAi\TokenOutputProcessor as VertexAiTokenOutputProcessor;
3740
use Symfony\AI\Platform\Contract;
@@ -55,6 +58,8 @@
5558
->factory([VertexAiGeminiContract::class, 'create'])
5659
->set('ai.platform.contract.ollama', Contract::class)
5760
->factory([OllamaContract::class, 'create'])
61+
->set('ai.platform.contract.perplexity', Contract::class)
62+
->factory([PerplexityContract::class, 'create'])
5863
// structured output
5964
->set('ai.agent.response_format_factory', ResponseFormatFactory::class)
6065
->args([
@@ -140,8 +145,12 @@
140145
->set('ai.platform.token_usage_processor.gemini', GeminiTokenOutputProcessor::class)
141146
->set('ai.platform.token_usage_processor.mistral', MistralTokenOutputProcessor::class)
142147
->set('ai.platform.token_usage_processor.openai', OpenAiTokenOutputProcessor::class)
148+
->set('ai.platform.token_usage_processor.perplexity', PerplexityTokenOutputProcessor::class)
143149
->set('ai.platform.token_usage_processor.vertexai', VertexAiTokenOutputProcessor::class)
144150

151+
// search result processors
152+
->set('ai.platform.search_result_processor.perplexity', PerplexitySearchResultProcessor::class)
153+
145154
// commands
146155
->set('ai.command.chat', ChatCommand::class)
147156
->args([

0 commit comments

Comments
 (0)