diff --git a/so_semantic_text/operations/default.json b/so_semantic_text/operations/default.json index d426980a..bf972508 100644 --- a/so_semantic_text/operations/default.json +++ b/so_semantic_text/operations/default.json @@ -88,5 +88,6 @@ "param-source": "semantic-search", "size": {{ semantic_search_page_size | default(20) | int }}, "use_pipelines": {{ p_use_pipelines | lower }}, + "use_text_expansion": {{ p_use_text_expansion | lower }}, "model_id": "{{ p_inference_model_id }}" } diff --git a/so_semantic_text/track.json b/so_semantic_text/track.json index d2488c7f..aa8dc3a8 100644 --- a/so_semantic_text/track.json +++ b/so_semantic_text/track.json @@ -6,6 +6,7 @@ {% set p_task_type = (task_type | default("sparse_embedding")) %} {% set p_calculate_body_vector = (calculate_body_vector | default(false)) %} {% set p_enable_search = (enable_search | default(false)) %} +{% set p_use_text_expansion = (use_text_expansion | default(false)) %} { "version": 2, diff --git a/so_semantic_text/track.py b/so_semantic_text/track.py index 376dfc80..9d2de9f4 100644 --- a/so_semantic_text/track.py +++ b/so_semantic_text/track.py @@ -35,6 +35,20 @@ def params(self): } } } + elif self._params["use_text_expansion"]: + es_query = { + "nested": { + "path": "title_semantic.inference.chunks", + "query": { + "text_expansion": { + "title_semantic.inference.chunks.embeddings": { + "model_id": self._params["model_id"], + "model_text": query + } + } + } + } + } else: es_query = { "semantic": {