feat: use internal ollama embeddings

This commit is contained in:
2026-08-08 17:29:36 +02:00
parent 9f104171b6
commit 2911e008d1
7 changed files with 455 additions and 92 deletions
+8 -1
View File
@@ -3,7 +3,6 @@ from __future__ import annotations
from copy import deepcopy
from typing import Any
_LEGACY_RESOURCE_KEYS = {
"database",
"rest",
@@ -11,6 +10,7 @@ _LEGACY_RESOURCE_KEYS = {
"vector_rest",
"vector_write_rest",
"paths",
"resources",
}
@@ -26,6 +26,13 @@ def _as_mapping(value: Any) -> dict[str, Any] | None:
def translate_legacy_config(raw: dict[str, Any]) -> tuple[dict[str, Any], bool]:
"""Translate the legacy flat resource keys without validating their contents."""
translated = deepcopy(raw)
resources = _as_mapping(raw.get("resources"))
if isinstance(resources, dict) and "embeddings" in resources and "embeddings" not in translated:
embedding = _as_mapping(resources.get("embeddings"))
if isinstance(embedding, dict):
translated["embeddings"] = embedding
if "dimensions" in translated["embeddings"] and "dim" not in translated["embeddings"]:
translated["embeddings"]["dim"] = translated["embeddings"].pop("dimensions")
legacy = any(key in raw for key in _LEGACY_RESOURCE_KEYS)
if not legacy:
return translated, False