Feature/semantic similarity (#36)

* fix: mixed up migrations

* feat: semantic similarity first take

* feat: semantic similarity first round of fixes

* feat: more work on making semantic similarity work properly

* feat: getPostBySlug for the AI

* feat: show similarity in post-link-insert-modal

* chore: remove done doc

---------

Co-authored-by: hugo <hugoms@me.com>
This commit is contained in:
Georg Bauer
2026-03-05 22:05:32 +01:00
committed by GitHub
parent 8ac8305e01
commit 7e1e8981a3
64 changed files with 6429 additions and 499 deletions

View File

@@ -139,6 +139,8 @@
"settings.technology.pythonRuntimeModeDescription": "Choose where Python scripts execute for transform pipelines.",
"settings.technology.pythonRuntimeMode.webworker": "Web Worker (Recommended)",
"settings.technology.pythonRuntimeMode.mainThread": "Main Thread (Legacy)",
"settings.technology.semanticSimilarityLabel": "Semantic Similarity",
"settings.technology.semanticSimilarityDescription": "Enable local AI embeddings for related-post suggestions, tag hints, and duplicate detection. Downloads a ~100 MB model on first use.",
"settings.publishing.sshTitle": "SSH Publishing",
"settings.data.title": "Database Maintenance",
"settings.data.fileSystemTitle": "File System",
@@ -237,6 +239,8 @@
"insert.searchPlaceholder.image": "Search media by name, title, or alt text...",
"insert.status.searching": "Searching...",
"insert.status.typeMore": "Type at least 2 characters to search",
"insert.status.loadingRelated": "Loading related posts...",
"insert.section.relatedPosts": "Related Posts",
"insert.status.noResults": "No {kind} found for \"{query}\"",
"insert.label.url": "URL",
"insert.label.linkTextOptional": "Link Text (optional)",
@@ -977,6 +981,8 @@
"assistantSidebar.conversationTitle": "Assistant Session",
"assistantSidebar.error.startFailed": "Failed to start assistant session",
"assistantSidebar.error.actionFailed": "Assistant action could not be executed",
"tagInput.aiSuggestedLabel": "AI Suggestions",
"tagInput.allTagsLabel": "All Tags",
"tagInput.alreadyAdded": "Tag already added",
"tagInput.remove": "Remove {tag}",
"tagInput.createdTag": "Tag \"{name}\" created",
@@ -1092,5 +1098,22 @@
"settings.toast.mcpConfigRemoveSuccess": "bDS MCP server removed from {agent} configuration",
"settings.toast.mcpConfigFailed": "Failed to configure {agent}: {error}",
"settings.toast.mcpConfigRemoveFailed": "Failed to remove from {agent}: {error}",
"settings.toast.mcpConfigPath": "Config written to {path}"
"settings.toast.mcpConfigPath": "Config written to {path}",
"duplicatesView.tabTitle": "Find Duplicates",
"duplicatesView.title": "Duplicate Posts",
"duplicatesView.description": "Posts with high content similarity that may be duplicates.",
"duplicatesView.loading": "Searching for duplicates...",
"duplicatesView.empty": "No duplicate posts found.",
"duplicatesView.error": "Failed to load duplicates",
"duplicatesView.refresh": "Refresh",
"duplicatesView.dismiss": "Dismiss",
"duplicatesView.similarity": "{value}% similar",
"duplicatesView.exactMatch": "Exact duplicate",
"duplicatesView.openPost": "Open post",
"duplicatesView.count": "{count} pairs found",
"duplicatesView.showMore": "Show more",
"duplicatesView.checkAll": "Check All",
"duplicatesView.uncheckAll": "Uncheck All",
"duplicatesView.dismissChecked": "Dismiss Checked ({count})",
"duplicatesView.notEnabled": "Semantic similarity is not enabled. Enable it in Settings → Technology."
}