- How do I install symfony/ai-azure-search-store in a Laravel app?
- Install the package with Composer alongside symfony/ai. Configure your Azure AI Search endpoint, index name, and API key, then bind StoreInterface in a Laravel service provider. You can wrap the bound store in a facade for ergonomic access and use Laravel's HTTP client bridge for transport.
- Does symfony/ai-azure-search-store work with Laravel 10 and Laravel 11?
- The practical baseline is PHP 8.2 or newer, which aligns with Laravel 10 and later. The package is Symfony-centric but integrates through PSR standards, so Laravel's HTTP client and service container work cleanly. Always verify the symfony/ai Composer constraint before upgrading, because new interfaces can require a minimum Symfony AI version.
- Do I need an existing Azure AI Search index before using this package?
- Yes. You must pre-configure an Azure AI Search index with the right schema, vector fields, and API credentials before the store can index or query documents. This index setup is the largest single integration cost and is unchanged by the store package. The README links directly to Azure guides for creating a vector index and running vector queries.
- How do I run vector similarity search with metadata filters in Laravel?
- Use the Symfony AI StoreInterface to issue vector queries against Azure AI Search, optionally combining vector similarity with metadata filters such as category = 'tech'. In Laravel you can expose this through a service provider binding or a facade such as AzureSearch::query(). Be aware that the filter syntax is Azure-specific, so complex filtering logic may not port cleanly to other vector stores.
- What is VectorDocumentInterface in symfony/ai-azure-search-store?
- VectorDocumentInterface is a document abstraction introduced in v0.14.0 between the store and the caller. It gives Laravel developers a portability seam for moving to Pinecone, Weaviate, or pgvector later, and it improves testability because you can use fake documents without hitting Azure. Because it is a new public interface in a pre-1.0 package, review any document handling written against v0.13 shapes before upgrading.
- Can I get a document count from the Azure AI Search store?
- Yes, v0.14.0 adds count capabilities to Symfony AI stores, including this Azure AI Search integration. This is useful for index health dashboards, ingest reconciliation, pagination counts, cost forecasting, and per-tenant document quotas. Treat counts as approximate immediately after writes because Azure Search index refresh is eventually consistent, and do not use them as a transactional source of truth.
- How do I test a Laravel app using this Azure AI Search store without hitting Azure?
- Use VectorDocumentInterface to create fake documents in unit tests and mock or fake the StoreInterface where your application depends on it. This avoids live Azure AI Search calls and keeps tests fast and deterministic. The new document abstraction was added partly to improve testability, but you should still isolate Azure-specific query behavior behind your own service boundary.
- Is symfony/ai-azure-search-store a good alternative to Pinecone or pgvector for Laravel RAG?
- It is a strong fit if your organization already uses Azure AI Search and you want vector search, metadata filtering, and hybrid workflows behind Symfony AI's StoreInterface. VectorDocumentInterface reduces lock-in at the document-model level, but residual lock-in remains in the Azure index schema and Azure-specific filtering syntax. For Laravel teams without Azure investments, pgvector or a dedicated vector database may involve less setup.
- What are the limitations of using Azure AI Search with Laravel Eloquent?
- There is no Laravel-native Eloquent integration, query builder, or Laravel cache driver in this package. Azure Search writes are eventually consistent, which can conflict with synchronous Laravel expectations such as write-then-read invariants and transactions. Azure Search also supports cosine and squared L2 distance metrics, so dot product use cases may require normalization workarounds.
- How stable is symfony/ai-azure-search-store for production if it is pre-1.0?
- The package is pre-1.0, so public APIs can still change even though v0.14.0 is a largely additive release. Pin your Composer versions, run your test suite on upgrade, and review manual document construction against VectorDocumentInterface. For production, isolate Azure-specific behavior behind your own Laravel service layer so future API churn does not spread through the application.