diff --git a/modules/ai_search/src/Plugin/search_api/backend/SearchApiAiSearchBackend.php b/modules/ai_search/src/Plugin/search_api/backend/SearchApiAiSearchBackend.php
index 21510376edcd07ce85a7af6667c318a85839b3d8..e4bfa0adbb6b98cdceba45a8c32afd593708ba01 100644
--- a/modules/ai_search/src/Plugin/search_api/backend/SearchApiAiSearchBackend.php
+++ b/modules/ai_search/src/Plugin/search_api/backend/SearchApiAiSearchBackend.php
@@ -127,8 +127,8 @@ class SearchApiAiSearchBackend extends AiSearchBackendPluginBase implements Plug
     if (!isset($config['database_settings'])) {
       $config['database_settings'] = [];
     }
-    if (!isset($config['embeddings_strategy'])) {
-      $config['embeddings_strategy'] = NULL;
+    if (!isset($config['embedding_strategy'])) {
+      $config['embedding_strategy'] = NULL;
     }
     return $config;
   }
@@ -248,6 +248,18 @@ class SearchApiAiSearchBackend extends AiSearchBackendPluginBase implements Plug
     }
   }
 
+  /**
+   * {@inheritdoc}
+   */
+  public function setConfiguration(array $configuration) {
+    $this->configuration = $configuration + $this->defaultConfiguration();
+    if ($this->configuration['embedding_strategy_container']) {
+      $this->configuration = array_merge($this->configuration, $this->configuration['embedding_strategy_container']);
+      unset($this->configuration['embedding_strategy_container']);
+    }
+    parent::setConfiguration($this->configuration);
+  }
+
   /**
    * {@inheritdoc}
    */
@@ -278,6 +290,7 @@ class SearchApiAiSearchBackend extends AiSearchBackendPluginBase implements Plug
    * @throws \Drupal\Component\Plugin\Exception\PluginException
    */
   public function submitConfigurationForm(array &$form, FormStateInterface $form_state): void {
+    $this->setConfiguration($form_state->getValues());
     $vdb_client = $this->vdbProviderManager->createInstance($this->configuration['database']);
     $vdb_client->submitSettingsForm($form, $form_state);
   }