Embedding Model
{% if effective_embedding_backend == "fastembed" %}
{% if fastembed_model_locked_by_config %}
Overridden by fastembed_model in config.yaml at startup. Remove that setting to manage the model here.
{% else %}
{% for fe in fastembed_models %}
{{ fe.model_code }} ({{ fe.dimension }} dims)
{% endfor %}
Save, then restart the worker or server to load the new model. First run may download weights.
{% endif %}
{% elif effective_embedding_backend == "hashed" %}
Hashed embeddings use embedding_dimensions from config, not the admin UI.
{% else %}
{% for model in available_models.data %}
{{ model.id }}
{% endfor %}
Current: {{ settings.embedding_model }}
{% endif %}
{% if effective_embedding_backend == "fastembed" and not fastembed_model_locked_by_config %}
FastEmbed: The running process keeps the model loaded until restart. Changing to a model with a
different dimension re-embeds all stored vectors on the next worker/server startup.
Same-dimension model swaps update settings only; existing vectors are not automatically regenerated until you
change dimension (or re-embed via the OpenAI workaround described in ops docs).
Warning: You changed the FastEmbed model. Save, then restart the worker or server to apply.
If the dimension changed, stored embeddings and HNSW indexes will be rebuilt on startup.
{% endif %}
{% if effective_embedding_backend != "fastembed" and effective_embedding_backend != "hashed" %}
Re-embedding stored data: Only a change to embedding_dimensions
followed by a restart triggers a full re-embed of text chunks and knowledge entities. Changing the embedding model alone
does not update vectors already in the database.
To force a full re-embed (for example after switching models), save a different dimension integer, restart the
worker, then set the final dimension and model and restart again if needed.
Warning: You changed embedding dimensions. Save, then restart the worker or server so stored embeddings
and HNSW indexes are rebuilt. Until then, search may use the old dimension.
{% endif %}