Skip to content

Releases: Elastic-Suite/gally

v 1.3.1

13 Jun 16:15
Compare
Choose a tag to compare

New features

Attributes in autocomplete

A new configuration allows merchants to show attribute in the autocomplete results:
image

If you search for some product, the autocomplete response will contain some attributes in order to help users to find the product they are searching for more easily by pre-filtered the result page:
image

Explain details premium

In the previous version we released a new page in the gally backoffice where marchant can preview the results of their configuration. In this version we add the possibility to show the details of how the score of each product has been computed.
image

Use external model premium

Vector search congfiguration has been improve in order to allow the usage of external large language models (such as the one provided by OpenAI, Cohere or MistralAi) :

gally_vector_search:
    llm_model:
        name: miniLM_remote_v17
        format: REMOTE
        version: '2'
        config:
            model_type: bert
            embedding_dimension: 384
            framework_type: sentence_transformers
        connector:
            name: test_connector_model_remote_116
            version: 1
            protocol: http
            parameters:
                endpoint: api-inference.huggingface.co
            credential:
                huggingface_token: 'XXX'
            actions:
                - action_type: predict
                  method: POST
                  url: https://${parameters.endpoint}/pipeline/feature-extraction/sentence-transformers/all-MiniLM-L6-v2
                  headers:
                      Authorization: 'Bearer ${credential.huggingface_token}'
                  request_body: '{ "inputs": ${parameters.inputs} }'
                  pre_process_function: 'String first = params.text_docs[0]; return "{ \"parameters\":{\"inputs\":[\"" + first + "\"]}}";'
                  post_process_function: 'def shape = [params.result[0].length]; return "{\"name\": \"sentence_embedding\", \"data_type\": \"FLOAT32\", \"shape\": " + shape + ", \"data\": " + params.result[0] + " }"'
    trusted_endpoints:
        - "^https://api-inference\\.huggingface\\.co/.*$"

📦 Features

🔨 Quality

New Contributors

Full Changelog: 1.3.0...1.3.1

v 1.3.0

22 Mar 16:16
Compare
Choose a tag to compare

New features

Boost preview premium

In the boost contribution page, you can now have a preview of the effect of the boost you are creating. You will be able to see how the boost affect your product score and how the position of the product evolves after the application of this boost.

image

Explain premium

A new menu has been added to the gally backoffice. It allows user to visualize the results of a given context (a product search or a category product listing). This will help merchants to understand why some products are at a certain position by displaying their document score and highlight the product that are manually positioned.

image

Vector Search premium

A new endpoint has been added to the graphQl schema in order use the OpenSearch ability to do semantic search. In short, a vector that represent your document will be computed by a LLM (Large Language Model) during the indexation of your data based on you configuration. When a user will search data on your website, it's search query will be also computed as a vector and the search engine will return all the document that are semantically close to the search query instead of the results that match the words of the search query (like a classical search engine will do).

image

Configuration

A default model have been configured in the gally_vector_search.yaml, you can update this configuration to change this model by any PyToch or ONNX embedding model.

gally_vector_search:
    llm_model:
        name: 'huggingface/sentence-transformers/all-MiniLM-L12-v2'
        version: 1.0.1
        format: ONNX
        ...

The screen in the screenshot aboveallow you to compute a dynamic field on each product which will be used by the LLM to calculate the vector for this product.
The field "Vectorisable" indicate which field we want to include in vector computation.
The field "Position" indicate in which order we want to include these fields.
And the field "prompt" allow you to create a short sentence where the field value will be inserted at the position of the @%s@ placeholder.
For exemple if you have a product with these data :

name: My Product
sku: AAA
description: An incredible product
price: 75€

With the above configuration, the vector will be calculated from a dynamic field with the value : The product's name is: My Product and this is its description : An incredible product.

Usage

A new GraphQl endpoint has been added in the api : vectorSearchDocuments.
It needs the same parameter as the documents endpoint, but it will run a semantic search instead a fulltext search.

A new screen has been added to the example app in order to be able to compare results from these two search approaches.
image

📦 Features

🔨 Quality

  • [CI] Update cs-fixer command to avoid running docker compose from a sub directory @PierreGauthier in #588
  • [Symfony] Update composer version of symfony/flex to 1.21.5 by @botisSmile in #590

Full Changelog: 1.2.0...1.3.0

v 1.2.0

11 Dec 11:02
Compare
Choose a tag to compare

New features

Autocomplete

In the example App, the autocomplete feature has been added for products and categories.
Autocomplete_1-2-0

Search on CMS pages

In the example App, the search on "CMS pages" entity has been added.
cms_search_1-2-0

Thesaurus

In the premium version, you can now add synonyms and expansions to improve the search results according to your business.
Thesaurus_1-2-0

📦 Features

  • [Thesaurus] Merge thesauruses on master by @botisSmile in #574
  • [Search] [Autocomplete] feat #1243475 Autocomplete by @botisSmile in #558
  • [Search] [CMS] #1214071 Add possibility to search on CMS pages by @botisSmile in #579
  • [Versions] feat: #1265689 update front package versions to '~1.2.0-alpha.8' by @botisSmile in #583

🔨 Quality

Full Changelog: 1.1.0...1.2.0

v 1.1.0

10 Oct 11:54
Compare
Choose a tag to compare

What's Changed

  • ESPP-668 Refacto deploy action by @botisSmile in #509
  • Revert "ESPP-668 Refacto deploy action" by @botisSmile in #512
  • Add beberlei/doctrineextensions composer package by @botisSmile in #542
  • Update front version of Gally packages on master by @botisSmile in #544
  • Update @elastic-suite/gally-admin-shared version on example-app to main by @botisSmile in #551
  • "Merge" Feature boost on master by @botisSmile in #543
  • #1242562 [Elasticsearch] Prevent automatic ES requests during model A… by @rbayet in #546
  • Update gally front packages by @Adrien-Meynard in #552
  • Set initial scale value by @botisSmile in #553
  • [Github secret] Replace AWS_HOSTNAME_1_0_x by AWS_HOSTNAME_STABLE by @botisSmile in #559
  • Update the deploy schedule of the 1.1.x integration by @botisSmile in #566

Full Changelog: 1.0.2...1.1.0

v 1.0.2

21 Aug 13:04
Compare
Choose a tag to compare

What's Changed

Full Changelog: 1.0.1...1.0.2

v 1.0.1

24 Jul 17:00
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 1.0.0...1.0.1

v 1.0.0 - Initial release

20 Jan 18:33
03230e7
Compare
Choose a tag to compare

Gally, engineered by Elasticsuite

Meet Gally, the newborn of the Elasticsuite family. If you've been an user of elasticsuite for Magento, you'll fall in love with Gally as well.

First, be sure to check the install page to build your project environment.

Then you'll be all set to begin integrating your data with Gally by following our integration guide

v 1.0.0 - Initial release

  • Ability to synchronize catalogs :

    • Catalog structure (fields)
    • Catalog data : categories & products
  • Ability to configure fields :

    • Searchable fields
    • Filterable fields
    • Sortable fields
  • Ability to merchandize categories :

    • Default sorting.
    • Manual product sorting.
    • Virtual Categories
  • Ability to synchronize additional entity types.

  • Complete E-Commerce search API to navigate through products & categories, display layered navigation, and proceed with fulltext search.

  • Complete agnostic API to navigate through additional entity types.