paul 1e2df898a5 [Platform][Azure] Replace Chat Completions client with Responses API client
The Azure OpenAI platform previously used the Chat Completions API
(`/openai/deployments/{deployment}/chat/completions`) via `CompletionsModel`.
Azure now supports the unified Responses API (`/openai/v1/responses`), which
is consistent with how the standard OpenAI bridge already works.

- Remove `CompletionsModelClient` and replace with `Responses\ModelClient`
  that authenticates via `api-key` header and targets `/openai/v1/responses`
- Update `ModelCatalog` to map `Gpt` models to `ResponsesModel` instead of
  `CompletionsModel`, enabling file input support and unified streaming
- Update `PlatformFactory` to use the new `Responses\ModelClient` together
  with `OpenAiContract` (which includes `DocumentNormalizer`) and the
  `OpenResponses\ResultConverter`
- Fix `DocumentNormalizer::supportsModel()` to use capability-based check
  (`Capability::INPUT_PDF`) instead of `$model instanceof Gpt`, so it works
  for any model that declares PDF support (including Azure's `ResponsesModel`)
- Register `DocumentNormalizer` in `OpenAiContract::create()` so PDF documents
  are serialized correctly when sent via agents
- Add `OpenResponsesPlatform` to `AzurePlatform` allowed deps in deptrac.yaml
- Add `.codespellrc` to suppress false positive on `Vektor` (intentional name
  of the Vektor vector store bridge)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-04 20:54:13 +01:00
2025-11-21 10:58:54 +01:00
2025-05-26 18:10:22 +02:00
2026-01-23 13:49:59 +01:00
2025-05-29 15:40:43 +02:00
2025-05-29 12:54:29 +02:00
2025-11-22 22:11:37 +01:00
2025-11-19 22:42:03 +01:00
2026-02-23 09:34:58 +01:00

Symfony AI Logo

Symfony AI is a set of components that integrate AI capabilities into PHP applications.

Components & Bundles

Symfony AI consists of several lower and higher level components and the respective integration bundles:

  • Components
    • Agent: Framework for building AI agents that can interact with users and perform tasks.
    • Chat: A unified interface to send messages to agents and store long-term context.
    • Mate: MCP development server enabling AI assistants to interact with PHP applications through standardized tools.
    • Platform: A unified interface to various AI platforms like OpenAI, Anthropic, Azure, Gemini, VertexAI, and more.
    • Store: Data storage abstraction with indexing and retrieval for AI applications.
  • Bundles
    • AI Bundle: Symfony integration for AI Platform, Store and Agent components.
    • MCP Bundle: Symfony integration for official MCP SDK, allowing them to act as MCP servers or clients.

Examples & Demo

To get started with Symfony AI, you can either check out the examples to see how to use the components in smaller snippets, or you can run the demo application to see the components work together in a full Symfony web application.

Resources

Sponsor

Help Symfony by sponsoring its development!

Contributing

Thank you for considering contributing to Symfony AI! You can find the contribution guide here.

Description
⚠️ ARCHIVED: Original GitHub repository no longer exists. Preserved as backup on 2026-01-22T16:26:56.179Z
Readme MIT 21 MiB
Languages
PHP 97.4%
Twig 1.9%
CSS 0.4%
JavaScript 0.3%