Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Ai Weaviate Store Laravel Package

symfony/ai-weaviate-store

Weaviate vector store integration for Symfony AI Store, with links to the REST API, GraphQL Get, and nearVector similarity search docs. Part of the Symfony AI monorepo for reporting issues and contributions.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Roadmap: whether to ship semantic search / RAG at all. This bridge is the cheapest path from "idea on a roadmap" to a working vector retrieval loop in a PHP codebase. It lets you validate demand for semantic search, "similar items," and LLM-grounded answers behind one StoreInterface abstraction rather than a bespoke Weaviate integration. A PM can scope a 2–3 sprint discovery spike, not a quarter-long infrastructure project.
  • Build vs. buy — with a nuance. The integration is a buy (MIT, ~free, abstracts Weaviate's REST + GraphQL, nearVector similarity search, document CRUD, and clear()/count() operations). The infrastructure is still yours: you own the Weaviate cluster, schema/collection lifecycle, embeddings pipeline, and cost. Frame the decision as "buy the adapter, operate the store."
  • Feature-level use cases you can put on a roadmap with confidence:
    • Semantic search over docs, product catalogs, support tickets, or knowledge bases.
    • "More like this" / recommendation surfaces via similarity retrieval.
    • RAG context injection for chat and Q&A assistants.
    • Search UX and admin instrumentation — the new count() capability gives you result totals, collection-size displays, index-health dashboards, and coverage metrics without fetching full documents.
  • Vendor-portability hedge. Because the package targets a Symfony StoreInterface abstraction, a Weaviate decision doesn't hard-lock your application code the way a raw Weaviate SDK would. That materially lowers the cost of being wrong, which is exactly the argument a PM needs to get a first vector store into the stack.
  • Cost positioning. Open-source Weaviate (self-hosted or cloud) vs. proprietary vector DBs (Pinecone, Astra) is a real line-item difference in a roadmap review. Include it in the business case — but pair it with the ops headcount you're implicitly adding.
  • Not a decision this supports: any commitment to vector search as a core, revenue-critical primitive today. At v0.14.x pre-1.0 with 1 star and 0 dependents, this is an evaluation-grade dependency. Treat it as a spike enabler, not a foundation.

When to Consider This Package

Adopt when:

  • You're on Laravel/PHP and already (or willing to) pull in Symfony AI components; the interoperability story is credible and the abstraction layer is Laravel-wrappable behind a service provider and facade.
  • You need semantic search or RAG now, and the alternative is a 4–8 week custom Weaviate client. The package removes the raw HTTP/GraphQL work — schema, auth scoping (ScopingHttpClient), and query abstraction are handled.
  • You already run, or plan to run, Weaviate. If the answer is "we'd have to stand up Weaviate first," add that as a separate line item and a separate owner before committing.
  • Your team can pin Composer constraints to a tested minor line and absorb pre-1.0 churn. Symfony AI packages are still 0.x; releases like v0.14.0 are additive but the ecosystem moves.
  • You're building an internal or discovery-phase feature where a mid-flight dependency change is recoverable.

Look elsewhere when:

  • You need a vendor SLA, long-term support guarantees, or a security-reviewed dependency. One star, zero dependents, and "no significant changes" release notes across five of the last eight versions is a real signal — the bridge is maintained as part of the Symfony AI monorepo, not as an independently hardened product.
  • You need capabilities the abstraction doesn't expose: advanced GraphQL traversal, hybrid/BM25 tuning, multi-tenancy controls, or fine-grained schema management. Those still require direct Weaviate API calls, which erodes the "drop-in" value proposition.
  • Your latency budget is tight and count/search queries will sit on hot request paths. Counts are not free at scale, and the package won't cache or degrade for you — that's your engineering work.
  • You're on a pure-Laravel stack with no appetite for Symfony HTTP client alongside Guzzle. Dependency conflicts are a known friction point; isolate and pin, or don't adopt.
  • You're building a durable, revenue-critical search product. At that point evaluate Weaviate's official clients, a managed service, or a Laravel-native vector solution with a support contract.

Threshold to graduate: if the spike succeeds, re-evaluate against a supported client or managed vector DB before the feature becomes customer-facing and load-bearing.

How to Pitch It (Stakeholders)

For executives (one paragraph): We can ship semantic search and AI-grounded answers without hiring a vector-database team. This is a free, MIT-licensed PHP adapter that connects our Laravel app to Weaviate — the open-source vector store — so we write product code instead of database plumbing. It's roughly a two-to-three sprint discovery spike, and because it sits behind an abstraction layer, we can swap out Weaviate later without rewriting the feature. The caveat is maturity: this is a pre-1.0 component with a small footprint, so I'm recommending it for a scoped pilot with a defined go/no-go gate, not as a platform commitment. We'd own the Weaviate infrastructure and its operating cost either way.

For engineering (the framing that gets a clean estimate):

  • The adapter covers vector persistence, nearVector similarity search, GraphQL document retrieval, delete, clear(), and count(). It does not cover schema/collection lifecycle — that's ours, and it needs an owner and an Artisan-command story before we start.
  • Wrap StoreInterface in a Laravel service provider and facade. Do not let Symfony store types reach controllers; map to our own DTOs at the adapter boundary. If we adopt VectorDocumentInterface, do it inside the adapter, not in domain models.
  • Pin to the tested 0.x minor. Assign upgrade validation explicitly — nobody owns this by default, and that's how pre-1.0 dependencies rot.
  • Known risks to size in the estimate: Weaviate-specific exceptions need Laravel-side mapping; count queries need caching (Redis keys per collection/query) before they touch high-traffic paths; Symfony HTTP client vs. Guzzle conflicts should be isolated to the AI module; heavy ingestion goes on queues so it doesn't compete with search or count latency.
  • Go/no-go gate: if the spike proves retrieval quality and p95 latency on a realistic collection, we promote it and revisit the dependency against a supported client. If not, we've spent a bounded spike and kept the abstraction knowledge.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings
coleus/apps
seampact/laravel
emmyconceptng/laravel-ng-postcode
jjsquady/round-robin