fix(asr): restore computer terminology bias

Rebuild the bundled language model and runtime source filtering around a dedicated computer-term corpus so technical dictation keeps domain coverage.
This commit is contained in:
Rocky
2026-08-15 09:07:15 +08:00
parent 704ac2428c
commit 13214e6601
14 changed files with 10625 additions and 3134 deletions
@@ -1,7 +1,7 @@
// BuiltinLexiconIndex.swift
// OSGKeyboard · Shared
//
// In-memory index over the bundled project-curated AI/technology `phrases.tsv`.
// In-memory index over bundled `phrases.tsv` (~10k computer terms).
// macOS local ASR consumes a Top-N subset; the full index also backs
// polish supplements and future retrieval.
@@ -8,7 +8,7 @@ import Foundation
public enum LocalASRBiasAdapter {
/// Bundle IDs where the curated AI/technology vocabulary is especially likely.
/// Bundle IDs where computer-science vocabulary is especially likely.
private static let codeEditorBundleIDs: Set<String> = [
"com.apple.dt.Xcode",
"com.microsoft.VSCode",
@@ -119,7 +119,7 @@ public enum LocalASRBiasAdapter {
private static func preferredLexiconSources(for bundleId: String?) -> Set<String>? {
guard let bundleId, codeEditorBundleIDs.contains(bundleId) else { return nil }
return ["ai_tech_seed"]
return ["computer_terms"]
}
private static func hardHotwordList(from terms: [String], maxCount: Int) -> [String] {