Share
Embed
2024 - Gally @ SymfonyCon - Revolutionize Searchandising with Gally
Why and how we crafted an unique Open Source Searchandising solution based on Symfony
Romain Ruaud
December 11, 2024
Transcript
22 slides
-
TABLE OF CONTENTS Intro, History & Inception Going hands on
From a Magento extension to a full Symfony standalone product • Where we stand, what we’ve done in the past • Our needs • The architecture we’ve built to fulfill them What Gally can do for you • Elasticsearch index, mappings & fields abstraction • Create impactful landing pages • Define product rankings and understand them • Go further in search relevance with vector search • Generic business cases On Premise vs SaaS Why Gally is different • Commitment on respecting privacy • Transparent and predictable pricing -
Recommendations SEARCHANDISING : Not (only) a search engine Categories Search
Merchandising Facets / Filters Recommended On sale Preorders Search … Fulltext search configuration IA / LLM powered search Synonyms & Expansions Virtual categories Products manual ranking Facet management Category level facet management Ranking algorithm Boosting rules How to furnish your house Cross-content Multi-Languages Extensibility Plugins SDK API-First Up Sell, Cross Sell Personalized recos -
Our mission We’re matchmakers. We see e-commerce as an opportunity
to bring people together with the right products at the right time. -
Where we stand and what’s to come 2013 - 2015
2016 - 2019 2019 - 2020 2021 - 2023 2024 - 2026 R&D project • 1 people • Some Smile customers as early adopters Productization • Product has a name : Elasticsuite • Distributed as Open Source (for free) • Strong growth worldwide Questioning • Adobe/Magento stepped into the discussion to acquire us Becoming a startup • Dedicated team / Business Unit inside Smile Group • Develop a new product to address other E-Commerce solutions : Gally Scale • Reach new E-Commerce markets with Gally • Accelerate on worldwide sales -
Our main goals for Gally For merchants A fast and
easy to use back-office Business features helping them to increase their revenue Affordable Customizable For end-users Relevant search results Natural language ready Excellent response time For developers Easy to extend Not requiring extensive knowledge of low-level search engines Modern technologies and paradigms Merchants Developers Endusers -
➔ Unique Merchant Needs : Merchants require tailored experiences to
differentiate their businesses and meet customer expectations. ➔ Flexibility & Personalization : We built an open-source tool to enable complete customization and feature adaptability. ➔ Developer-Friendly : Gally is based on Symfony, ensuring ease of use and accessibility for a wide developer community—no proprietary frameworks or unnecessary complexity. ➔ Aligned with Our DNA : Unlike rigid, opaque SaaS solutions, we prioritizes openness and adaptability, staying true to our values. Why We Chose Open Source Over SaaS -
The first level to address was the lowest one :
➔ the search engine itself We’ve been having 10+ years of experience on Elasticsearch, and were also familiar with OpenSearch. This was a no-brainer for us, we decided to stick with them and to support both. Building our Open Source architecture : Search Elasticsearch AWS OpenSearch ➔ on Premise ➔ or Cloud ➔ or Serverless ➔ AI/ML features (but on paid licence) ➔ on Premise ➔ or Cloud ➔ or Serverless ➔ AI/ML features -
Second level to address is the middle one : ➔
the business logic ➔ the APIs We needed a layer : ➔ where we could easily implement our concepts and keep them extensible for agencies. ➔ that could be easily exposed as APIs, both for configuration (write) and for browsing (read). Building our Open Source architecture : Business Layer & API API Platform Symfony ➔ API-first (as the name says) ➔ built on top of Symfony ➔ very easy to expose REST / GraphQl ➔ (and it’s french-made) ➔ well-known by most EU agencies ➔ robust and extensible ➔ (did you know it’s french-made ?) -
Final level to address is the top one : ➔
User Interface We needed a layer : ➔ where we could easily implement our concepts and keep them extensible for agencies. (yes, again) ➔ modern, easy to scaffold for building a fancy Back-Office Building our Open Source architecture : User interface Next React ➔ well-known by most developers ➔ easy to interact with GraphQl API ➔ a lot of UX/UI libraries (MaterialUI) ➔ Legacy component of API Platform Admin ➔ only used for routing in Gally -
The final stack : inside a Gally application Web Server
& Cache Nginx & Varnish Business features & Elasticsearch API wrapper Gally PHP bundles (Symfony) GraphQl & REST API builder API Platform (Symfony) Configuration storage PostgreSQL Content & Data storage, computation, search Opensearch (or Elasticsearch) Open source and extensible -
Uses Cases : Headless commerce (or not), Omnichannel Vendor tablet
in physical shop End User Your cloud ecosystem A chatbot agent GraphQL API GraphQL or REST API Frontend E-Commerce App Index omnichannel data and leverage on cloud based features Frontend app -
Low-code / No-code : abstracting the Elasticsearch complexity Cluster Nodes
Shards (& replicas) Indices (& aliases) Mapping Settings Fields Analyzers Tokenizers Filters Type Properties Analyzer Elasticsearch concepts in real life … … and in the Gally back-office. ⇒ Don’t bother with low-level technical configuration, engage your energy in creating value where it’s needed ! -
Impactful landing pages in a few click Father’s day incoming
? With Gally you can create a dedicated landing page within a minute, just by using the built-in rule engine to craft your products selection. Thematic landing pages (like “Nike woman running shoes”) created with the same tool can also drastically improve your SEO ranking. -
Promote the right products Leverage conversion rate by promoting :
➔ relevant products ➔ in the proper context ➔ for the appropriate period It’s also possible to “bury” out-of-stock or low-margin products : -
Avoid the “blackbox effect” It’s often hard to understand the
ranking algorithm of SaaS solutions. Sometimes it’s even assumed that products are ranked by a “shhht it’s magic” algorithm but nobody has a clue about what’s going on. ⇒ In Gally there is a built-in “Explain” tool that gives full detail about the scoring of each product in the results, including the explanation of business rules that can be contributed in Gally. ⇒ Wanna go-deeper ? The tool can even give you the raw Elasticsearch query. -
Leverage search relevance with AI : Vector search Principle ➔
On query time, the same LLM will transform the keywords typed by the end user to vectors as well. ➔ Then a kNN (k-nearest neighbors) search is done by Gally to fetch the products that are the “closest” (mathematically) of user query. Documents Queries transform into embeddings transform into embeddings -71 28 34 34 Nearest Neighbor Results Chardonnay 2005 wine for seafood … description : “... good with fish …” -
Governance & Data sovereignty ⇒ Gally is an On Premise
product, merchants remain the owners of all the data stored into it. With SaaS searchandising providers, merchants are giving away : ➔ their own catalog data (public prices but probably also confidential data like margin, number of unit sold, turnover per item, etc…) ➔ their clients data (product views, sales, search history…) …and SaaS products are often giving it away as well to other sub-processors, which might be under shady or very permissive rules when it comes to personal data… -
The Hidden Costs of SaaS Pricing Models SaaS "Pay-as-You-Go" Pricing
🛑 Unpredictable Costs ➔ Pricing tied to traffic, catalog size, or search queries can spiral out of control. ➔ Merchants often face skyrocketing bills during peak seasons 🛑 Penalizes Growth ➔ As the business grows, so do the costs ➔ Expanding catalogs or increased traffic can become financial burdens. 🛑 Budgeting Nightmares ➔ Hard to predict monthly expenses with fluctuating demand. ➔ Merchants struggle to align operational costs with revenue. Gally’s Fixed Pricing Model ✅ Transparent and Predictable ➔ One fixed price regardless of traffic, catalog size, or search volume. ➔ Merchants know exactly what they’re paying — no surprises. ✅ Growth-Friendly ➔ Encourage scaling your business without fear of cost spikes. ➔ Large catalogs or traffic surges? No additional charges. ✅ Merchant-Centric ➔ A pricing model designed to support long-term success. ➔ Invest in innovation and growth, not bloated operational costs. With Gally, your success is celebrated - not taxed. -
BOOSTS ➔ Constants boosts CONTENT MANAGEMENT ➔ Mixing E-Commerce &
CMS ➔ Ibexa plugin AI / LLM #1 ➔ Vectorized search BEHAVIORAL FEATURES ➔ Behavioral boosts ➔ Recommendations SCOPE, ATTRIBUTES, PRODUCTS ➔ Search ➔ Scope : Catalogs and locales ➔ Attributes configuration ➔ Categories : sorting, virtual categories, product listing preview Product roadmap (2024-2025) EXPLAIN ➔ Boost analysis ➔ Thesaurus analysis ➔ Listing preview & score details PLUGIN ➔ Shopware ➔ Sylius ➔ OroCommerce SYNONYMS ➔ Synonyms & expansions AI / LLM #2 ➔ Personal Shopper -
Testing and contributing Gally is available on Github : Template
repo → https://github.com/Elastic-Suite/gally Library repo → https://github.com/Elastic-Suite/gally-standard PRs are welcome ! -
Romain RUAUD Co founder & CTO [email protected] Any questions ?
Daniel GUIZADO Channel Manager [email protected] Book a demo on our booth or on https:/ /meetgally.com#demo