Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ Symfony AI consists of several lower and higher level **components** and the res
* **[Agent](src/agent/README.md)**: Framework for building AI agents that can interact with users and perform tasks.
* **[Chat](src/chat/README.md)**: An unified interface to send messages to agents and store long-term context.
* **[Store](src/store/README.md)**: Data storage abstraction with indexing and retrieval for AI applications.
* **[Tools](src/tools/README.md)**: Collection of third-party tools to be used with agents.
* **Bundles**
* **[AI Bundle](src/ai-bundle/README.md)**: Symfony integration for AI Platform, Store and Agent components.
* **[MCP Bundle](src/mcp-bundle/README.md)**: Symfony integration for official MCP SDK, allowing them to act as MCP servers or clients.
Expand Down
1 change: 1 addition & 0 deletions demo/composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
"php-http/discovery": "^1.20",
"runtime/frankenphp-symfony": "^0.2.0",
"symfony/ai-bundle": "@dev",
"symfony/ai-tools": "@dev",
"symfony/asset": "~7.3.0",
"symfony/asset-mapper": "~7.3.0",
"symfony/clock": "~7.3.0",
Expand Down
11 changes: 6 additions & 5 deletions demo/config/packages/ai.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -98,11 +98,6 @@ services:
autowire: true
autoconfigure: true

# Symfony\AI\Agent\Toolbox\Tool\Clock: ~
# Symfony\AI\Agent\Toolbox\Tool\OpenMeteo: ~
# Symfony\AI\Agent\Toolbox\Tool\SerpApi:
# $apiKey: '%env(SERP_API_KEY)%'
Symfony\AI\Agent\Toolbox\Tool\Wikipedia: ~
Symfony\AI\Agent\Toolbox\Tool\SimilaritySearch:
$vectorizer: '@ai.vectorizer.openai'
$store: '@ai.store.chroma_db.symfonycon'
Expand All @@ -111,6 +106,12 @@ services:
Symfony\AI\Store\Document\Transformer\TextSplitTransformer: ~
Symfony\AI\Store\Document\Transformer\TextTrimTransformer: ~

# Symfony\AI\Tools\Clock: ~
# Symfony\AI\Tools\OpenMeteo: ~
# Symfony\AI\Tools\SerpApi:
# $apiKey: '%env(SERP_API_KEY)%'
Symfony\AI\Tools\Wikipedia: ~

app.filter.week_of_symfony:
class: 'Symfony\AI\Store\Document\Filter\TextContainsFilter'
arguments:
Expand Down
2 changes: 1 addition & 1 deletion examples/aimlapi/toolcall.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Wikipedia;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\AiMlApi\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Wikipedia;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
3 changes: 1 addition & 2 deletions examples/anthropic/toolcall.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Source\Source;
use Symfony\AI\Agent\Toolbox\Tool\Wikipedia;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\Anthropic\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Wikipedia;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/bedrock/toolcall-claude.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Wikipedia;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\Bedrock\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Wikipedia;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/bedrock/toolcall-nova.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Wikipedia;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\Bedrock\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Wikipedia;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
1 change: 1 addition & 0 deletions examples/composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
"symfony/ai-chat": "@dev",
"symfony/ai-platform": "@dev",
"symfony/ai-store": "@dev",
"symfony/ai-tools": "@dev",
"symfony/cache": "^7.3|^8.0",
"symfony/clock": "^7.3|^8.0",
"symfony/console": "^7.3|^8.0",
Expand Down
2 changes: 1 addition & 1 deletion examples/deepseek/structured-output-clock.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Clock;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\DeepSeek\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Platform\StructuredOutput\PlatformSubscriber;
use Symfony\AI\Tools\Clock;
use Symfony\Component\Clock\Clock as SymfonyClock;
use Symfony\Component\EventDispatcher\EventDispatcher;

Expand Down
2 changes: 1 addition & 1 deletion examples/deepseek/toolcall-stream.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Wikipedia;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\DeepSeek\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Wikipedia;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/deepseek/toolcall.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Clock;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\DeepSeek\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Clock;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/dockermodelrunner/toolcall.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Wikipedia;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\DockerModelRunner\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Wikipedia;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/gemini/server-tools.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Clock;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\Gemini\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Clock;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/gemini/structured-output-clock.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Clock;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\Gemini\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Platform\StructuredOutput\PlatformSubscriber;
use Symfony\AI\Tools\Clock;
use Symfony\Component\Clock\Clock as SymfonyClock;
use Symfony\Component\EventDispatcher\EventDispatcher;

Expand Down
2 changes: 1 addition & 1 deletion examples/gemini/toolcall.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Clock;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\Gemini\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Clock;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/mistral/toolcall-stream.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\YouTubeTranscriber;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\Mistral\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\YouTubeTranscriber;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/mistral/toolcall.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Clock;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\Mistral\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Clock;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/ollama/stream-toolcall.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Clock;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\Ollama\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Clock;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/ollama/toolcall.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Clock;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\Ollama\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Clock;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
4 changes: 2 additions & 2 deletions examples/openai/agent-stream-sources.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Clock;
use Symfony\AI\Agent\Toolbox\Tool\Tavily;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\OpenAi\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Clock;
use Symfony\AI\Tools\Tavily;
use Symfony\Component\Clock\Clock as SymfonyClock;

require_once dirname(__DIR__).'/bootstrap.php';
Expand Down
2 changes: 1 addition & 1 deletion examples/openai/structured-output-clock.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Clock;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\OpenAi\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Platform\StructuredOutput\PlatformSubscriber;
use Symfony\AI\Tools\Clock;
use Symfony\Component\Clock\Clock as SymfonyClock;
use Symfony\Component\EventDispatcher\EventDispatcher;

Expand Down
2 changes: 1 addition & 1 deletion examples/openai/toolcall-stream.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Wikipedia;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\OpenAi\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Wikipedia;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/openai/toolcall.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\YouTubeTranscriber;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\OpenAi\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\YouTubeTranscriber;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/scaleway/toolcall-stream.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\YouTubeTranscriber;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\Scaleway\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\YouTubeTranscriber;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/scaleway/toolcall.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\YouTubeTranscriber;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\Scaleway\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\YouTubeTranscriber;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
6 changes: 3 additions & 3 deletions examples/toolbox/brave.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,13 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Brave;
use Symfony\AI\Agent\Toolbox\Tool\Clock;
use Symfony\AI\Agent\Toolbox\Tool\Scraper;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\OpenAi\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Brave;
use Symfony\AI\Tools\Clock;
use Symfony\AI\Tools\Scraper;
use Symfony\Component\Clock\Clock as SymfonyClock;

require_once dirname(__DIR__).'/bootstrap.php';
Expand Down
2 changes: 1 addition & 1 deletion examples/toolbox/firecrawl-crawl.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Firecrawl;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\OpenAi\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Firecrawl;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/toolbox/firecrawl-map.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Firecrawl;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\OpenAi\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Firecrawl;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/toolbox/firecrawl-scrape.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Firecrawl;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\OpenAi\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Firecrawl;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
2 changes: 1 addition & 1 deletion examples/toolbox/mapbox-geocode.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

use Symfony\AI\Agent\Agent;
use Symfony\AI\Agent\Toolbox\AgentProcessor;
use Symfony\AI\Agent\Toolbox\Tool\Mapbox;
use Symfony\AI\Agent\Toolbox\Toolbox;
use Symfony\AI\Platform\Bridge\OpenAi\PlatformFactory;
use Symfony\AI\Platform\Message\Message;
use Symfony\AI\Platform\Message\MessageBag;
use Symfony\AI\Tools\Mapbox;

require_once dirname(__DIR__).'/bootstrap.php';

Expand Down
Loading
Loading