symfony/ai-meta-platform
Bridge for Meta's Llama models in Symfony AI, translating prompts into the correct Llama 3, 3.2, and 3.3 chat formats so you can use Meta's platform seamlessly within your Symfony AI applications.
Architecture fit
symfony/ai-meta-platform), one of a family of vendor bridges (alongside OpenAI, Anthropic, Gemini, Ollama, etc.) that implement Symfony AI's platform contracts. In a Laravel codebase it is a library-level dependency, not a framework integration: Composer will install it, but nothing wires it up for you.[INST]/[/INST] chat-template handling and per-version prompt conventions are the deliverable; transport, retries, and streaming come from the shared Symfony AI abstractions.PlatformInterface rather than a concrete vendor. That enables multi-model routing (Llama for cheap/batch work, OpenAI/Anthropic for precision), swap-on-failure, and consistent testing. If you are not adopting that abstraction, the package's marginal value is close to zero.Integration feasibility
ServiceProvider; Symfony's autowiring/services.yaml conventions do not apply, and the bridge likely ships no Laravel config/ or publishable config.symfony/http-client. If the latter, either install it (it works fine under Laravel) or inject a Laravel Http-backed adapter. Do not assume substitutability without reading the constructor signatures.config/services.php + .env. There is no Laravel-native config surface.Meta facade or typed wrapper (Llama::chat($messages)) is your team's work, not the package's.StreamedResponse/SSE or Livewire), tool/function calling, structured/JSON output, embeddings, token counting, retry/backoff, and timeout handling. Symfony AI's broader component set covers some of this; this bridge specifically appears to cover chat prompt formatting only.Technical risk
symfony/ai-platform 0.15. Under Symfony AI's 0.x policy, that upstream minor may itself contain breaking contract changes. So the package delivers no capability while widening the range of upstream contract versions your install can resolve to — the opposite of the de-risking direction. It does not answer any of the open PSR-18, streaming, tool-calling, token-counting, or error-taxonomy questions, and it can change what composer update pulls into your lockfile the next time you run it.Key questions
symfony/http-client a hard requirement? This determines whether it drops into Laravel cleanly. Still unanswered by v0.15.0.StreamedResponse/Broadcasting?symfony/messenger or EventDispatcher anywhere in the request path? If so, budget for a Laravel Bus/Events adapter.ai-platform 0.15 constraint bump actually admit? Which upstream contract versions now satisfy this bridge, were any methods renamed or removed in ai-platform 0.15, and does the rest of our Symfony AI tree (if we use multiple bridges) have to move in lockstep to avoid resolution conflicts?Stack fit
PlatformInterface as the internal seam is defensible and this bridge is a cheap addition. If Llama is the only target, hand-rolling the Llama 3.x prompt template plus an HTTP call is a few hours of work and removes an immature 0.x dependency entirely — increasingly the stronger option now that the package has demonstrated it will move your upstream constraint floor for you, unprompted.laravel/ai, Prism) is a more natural fit for a Laravel shop and should be evaluated head-to-head before committing to the Symfony dependency tree.Migration path
ai-platform version mid-evaluation.LlamaClient interface owned by your application. No application code imports Symfony\AI\... types. This makes the package replaceable — by laravel/ai, Prism, or a direct HTTP call — without touching feature code.Compatibility
"symfony/ai-meta-platform": "0.15.*" or 0.14.* — decide deliberately, do not float) and commit composer.lock. Given eleven consecutive content-free minors, treat updates as scheduled reviews, not routine composer update collateral.ai-platform 0.15 means accepting the release also means accepting whatever contract surface 0.15 ships. Diff ai-platform 0.14 → 0.15 and read the changelog for interface changes before bumping; if you run more than one Symfony AI bridge, confirm they have all moved to 0.15 or you will hit a resolution conflict pitting a pinned 0.14.* bridge against a 0.15 constraint.symfony/ai-platform contract version constraints against your Laravel/PHP baseline; a Laravel 10/PHP 8.1 legacy service may be out of range. Confirm the bridge's ai-platform constraint has not drifted destructively across the jump from 0.8 to 0.15.Sequencing
ai-platform 0.15 constraint review as a separate, named task with its own owner. It is the only substantive work item v0.15.0 has generated, and it belongs to whoever owns the abstraction seam, not to whoever happens to run composer update.Maintenance
ai-platform diff review, a lockfile change, and possibly a coordinated bump across sibling bridges — and delivers no capability in return. Expect this cadence to continue and to occasionally carry constraint changes like this one; budget a small recurring "review churn, expect nothing" line item plus occasional cross-tree dependency work.Support
Scaling
Failure modes
ai-platform 0.15, so a routine dependency resolution can pull contract changes into your application with no corresponding functional change in the bridge. Mitigated only by exact pinning, a committed lockfile, and a read of the upstream diff before bumping.Ramp-up
ai-platform constraint bump.How can I help you explore Laravel packages today?