Skip to content

Commit 73efdf6

Browse files
committed
minor #138 Add CHANGELOG.md files for all components (OskarStark)
This PR was merged into the main branch. Discussion ---------- Add `CHANGELOG.md` files for all components | Q | A | ------------- | --- | Bug fix? | no | New feature? | no | Docs? | yes | Issues | -- | License | MIT Add comprehensive changelog files documenting all features for the upcoming 0.1 release. Generated based on code and git history. Commits ------- 12b9bf2 Add CHANGELOG.md files for all components
2 parents aee7a35 + 12b9bf2 commit 73efdf6

File tree

6 files changed

+239
-0
lines changed

6 files changed

+239
-0
lines changed

src/agent/CHANGELOG.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
CHANGELOG
2+
=========
3+
4+
0.1
5+
---
6+
7+
* Add Agent class as central orchestrator for AI interactions through the Platform component
8+
* Add input/output processing pipeline:
9+
- `InputProcessorInterface` for pre-processing messages and options
10+
- `OutputProcessorInterface` for post-processing LLM responses
11+
- `AgentAwareInterface` for processors requiring agent access
12+
- `SystemPromptInputProcessor` for system prompt injection
13+
- `ModelOverrideInputProcessor` for dynamic model switching
14+
* Add comprehensive tool system:
15+
- `#[AsTool]` attribute for simple tool registration
16+
- `ReflectionToolFactory` for auto-discovering tools with attributes
17+
- `MemoryToolFactory` for manual tool registration
18+
- `ChainFactory` for combining multiple factories
19+
- Automatic JSON Schema generation for parameter validation
20+
- Tool call execution with argument resolution
21+
- `ToolCallsExecuted` and `ToolCallArgumentsResolved` events
22+
- `FaultTolerantToolbox` for graceful error handling
23+
* Add built-in tools:
24+
- `SimilaritySearch` for RAG/vector store searches
25+
- `Agent` allowing agents to use other agents as tools
26+
- `Clock` for current date/time
27+
- `Brave` for web search integration
28+
- `Crawler` for web page crawling
29+
- `OpenMeteo` for weather information
30+
- `SerpApi` for search engine results
31+
- `Tavily` for AI-powered search
32+
- `Wikipedia` for Wikipedia content retrieval
33+
- `YouTubeTranscriber` for YouTube video transcription
34+
* Add structured output support:
35+
- PHP class output with automatic conversion from LLM responses
36+
- Array structure output with JSON schema validation
37+
- `ResponseFormatFactory` for schema generation
38+
- Symfony Serializer integration
39+
* Add memory management system:
40+
- `MemoryInputProcessor` for injecting contextual memory
41+
- `StaticMemoryProvider` for fixed contextual information
42+
- `EmbeddingProvider` for vector-based memory retrieval
43+
- Dynamic memory control with `use_memory` option
44+
- Extensible `MemoryInterface` for custom providers
45+
* Add advanced features:
46+
- Tool filtering to limit available tools per agent call
47+
- Tool message retention option for context preservation
48+
- Multi-method tools support in single classes
49+
- Tool parameter validation with `#[With]` attribute
50+
- Stream response support for real-time output
51+
- PSR-3 logger integration throughout
52+
- Symfony EventDispatcher integration
53+
* Add model capability detection before processing
54+
* Add fluent API with `Toolbox::create()` for easy instantiation
55+
* Add comprehensive type safety with full PHP type hints
56+
* Add clear exception hierarchy for different error scenarios

src/ai-bundle/CHANGELOG.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
CHANGELOG
2+
=========
3+
4+
0.1
5+
---
6+
7+
* Add Symfony bundle for integrating Platform, Agent, and Store components
8+
* Add service configuration:
9+
- Agent services with configurable platforms and system prompts
10+
- Tool registration via `#[AsTool]` attribute and `symfony_ai.tool` tag
11+
- Input/Output processor registration via `symfony_ai.agent.input_processor` and `symfony_ai.agent.output_processor` tags
12+
- Abstract service definitions for extensibility
13+
* Add Symfony Profiler integration for monitoring AI interactions
14+
* Add security integration:
15+
- `#[IsGrantedTool]` attribute for tool-level authorization
16+
- Security voter integration for runtime permission checks
17+
* Add configuration options:
18+
- Multiple agents configuration with different platforms
19+
- Platform credentials (API keys, endpoints)
20+
- Model configurations per agent
21+
- Vector store configurations
22+
* Add dependency injection integration:
23+
- Autoconfiguration for tools and processors
24+
- Service aliases for default agent and platform
25+
- Factory services for creating platforms
26+
* Add bundle configuration with semantic validation
27+
* Add support for fault-tolerant tool execution
28+
* Add structured output configuration support

src/mcp-bundle/CHANGELOG.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
CHANGELOG
2+
=========
3+
4+
0.1
5+
---
6+
7+
* Add Symfony bundle bridging MCP-SDK with Symfony applications
8+
* Add server mode exposing Symfony tools to MCP clients:
9+
- STDIO transport via `php bin/console mcp` command
10+
- SSE (Server-Sent Events) transport via HTTP endpoints
11+
- Automatic tool discovery and registration
12+
- Integration with AI-Bundle tools
13+
* Add routing configuration for SSE endpoints:
14+
- `/_mcp/sse` for SSE connections
15+
- `/_mcp/messages/{id}` for message retrieval
16+
* Add `McpController` for handling SSE connections
17+
* Add `McpCommand` providing STDIO interface
18+
* Add bundle configuration for enabling/disabling transports
19+
* Add cache-based SSE message storage
20+
* Add service configuration for MCP server setup

src/mcp-sdk/CHANGELOG.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
CHANGELOG
2+
=========
3+
4+
0.1
5+
---
6+
7+
* Add Model Context Protocol (MCP) implementation for LLM-application communication
8+
* Add JSON-RPC based protocol handling with `JsonRpcHandler`
9+
* Add three core MCP capabilities:
10+
- Resources: File-like data readable by clients (API responses, file contents)
11+
- Tools: Functions callable by LLMs (with user approval)
12+
- Prompts: Pre-written templates for specific tasks
13+
* Add multiple transport implementations:
14+
- Symfony Console Transport for testing and CLI applications
15+
- Stream Transport supporting Server-Sent Events (SSE) and HTTP streaming
16+
- STDIO transport for command-line interfaces
17+
* Add capability chains for organizing features:
18+
- `ToolChain` for tool management
19+
- `ResourceChain` for resource management
20+
- `PromptChain` for prompt template management
21+
* Add Server component managing transport connections
22+
* Add request/notification handlers for MCP operations
23+
* Add standardized interface enabling LLMs to interact with external systems
24+
* Add support for building LLM "plugins" with extra context capabilities

src/platform/CHANGELOG.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
CHANGELOG
2+
=========
3+
4+
0.1
5+
---
6+
7+
* Add unified abstraction layer for interacting with various AI models and providers
8+
* Add support for 13+ AI providers:
9+
- OpenAI (GPT-4, GPT-3.5, DALL·E, Whisper)
10+
- Anthropic (Claude models via native API and AWS Bedrock)
11+
- Google (Gemini models with server-side tools support)
12+
- Azure (OpenAI and Meta Llama models)
13+
- AWS Bedrock (Anthropic Claude, Meta Llama, Amazon Nova)
14+
- Mistral AI (language models and embeddings)
15+
- Meta Llama (via Azure, Ollama, Replicate, AWS Bedrock)
16+
- Ollama (local model hosting)
17+
- Replicate (cloud-based model hosting)
18+
- OpenRouter (Google Gemini, DeepSeek R1)
19+
- Voyage AI (specialized embeddings)
20+
- HuggingFace (extensive model support with multiple tasks)
21+
- TransformersPHP (local PHP-based transformer models)
22+
* Add comprehensive message system with role-based messaging:
23+
- `UserMessage` for user inputs with multi-modal content
24+
- `SystemMessage` for system instructions
25+
- `AssistantMessage` for AI responses
26+
- `ToolCallMessage` for tool execution results
27+
* Add support for multiple content types:
28+
- Text, Image, ImageUrl, Audio, Document, DocumentUrl, File
29+
* Add capability system for runtime model feature detection:
30+
- Input capabilities: TEXT, MESSAGES, IMAGE, AUDIO, PDF, MULTIPLE
31+
- Output capabilities: TEXT, IMAGE, AUDIO, STREAMING, STRUCTURED
32+
- Advanced capabilities: TOOL_CALLING
33+
* Add multiple response types:
34+
- `TextResponse` for standard text responses
35+
- `VectorResponse` for embedding vectors
36+
- `BinaryResponse` for binary data (images, audio)
37+
- `StreamResponse` for Server-Sent Events streaming
38+
- `ChoiceResponse` for multiple choice responses
39+
- `ToolCallResponse` for tool execution requests
40+
- `ObjectResponse` for structured object responses
41+
- `RawHttpResponse` for raw HTTP response access
42+
* Add real-time response streaming via Server-Sent Events
43+
* Add parallel processing support for concurrent model requests
44+
* Add tool calling support with JSON Schema parameter validation
45+
* Add contract system with normalizers for cross-platform compatibility
46+
* Add HuggingFace task support:
47+
- Text Classification, Token Classification, Fill Mask
48+
- Question Answering, Table Question Answering
49+
- Sentence Similarity, Zero-Shot Classification
50+
- Object Detection, Image Segmentation
51+
* Add metadata support for responses
52+
* Add token usage tracking
53+
* Add temperature and parameter controls
54+
* Add exception handling with specific error types
55+
* Add support for embeddings generation across multiple providers
56+
* Add response promises for async operations

src/store/CHANGELOG.md

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
CHANGELOG
2+
=========
3+
4+
0.1
5+
---
6+
7+
* Add core store interfaces:
8+
- `StoreInterface` for basic document storage
9+
- `VectorStoreInterface` extending with similarity search capabilities
10+
- `InitializableStoreInterface` for stores requiring initialization
11+
* Add document types:
12+
- `TextDocument` for raw text with UUID, content, and metadata
13+
- `VectorDocument` for vectorized documents with embeddings and similarity scores
14+
- `Metadata` for key-value document metadata storage
15+
* Add document loading system:
16+
- `LoaderInterface` contract for various document sources
17+
- `TextFileLoader` for loading text files as TextDocuments
18+
* Add document transformation pipeline:
19+
- `TransformerInterface` contract for document processing
20+
- `TextSplitTransformer` for splitting large documents into chunks
21+
- `ChainTransformer` for combining multiple transformers
22+
- `ChunkDelayTransformer` for rate limiting during processing
23+
* Add vectorization support:
24+
- `Vectorizer` for converting TextDocuments to VectorDocuments
25+
- Batch vectorization support for compatible platforms
26+
- Single document vectorization with fallback
27+
* Add high-level `Indexer` service:
28+
- Orchestrates document processing pipeline
29+
- Accepts TextDocuments, vectorizes and stores in chunks
30+
- Configurable batch processing
31+
* Add `InMemoryStore` implementation with multiple distance algorithms:
32+
- Cosine similarity
33+
- Angular distance
34+
- Euclidean distance
35+
- Manhattan distance
36+
- Chebyshev distance
37+
* Add store bridge implementations:
38+
- PostgreSQL with pgvector extension
39+
- MariaDB
40+
- MongoDB
41+
- Azure AI Search
42+
- Meilisearch
43+
- ChromaDB
44+
- Pinecone
45+
* Add Retrieval Augmented Generation (RAG) support:
46+
- Document embedding storage
47+
- Similarity search for relevant documents
48+
- Dynamic context extension for AI applications
49+
* Add query features:
50+
- Vector similarity search with configurable options
51+
- Minimum score filtering
52+
- Result limiting
53+
- Distance/similarity scoring
54+
* Add custom exception hierarchy with `ExceptionInterface`
55+
* Add support for specific exceptions for invalid arguments and runtime errors

0 commit comments

Comments
 (0)