koharu-hy-qwen-pipeline
Koharu Hy-MT2 + Qwen pipeline
Eine unabhängige, experimentelle japanisch-koreanische Manga-Übersetzungspipeline für Koharu. Dieses Repository ist kein offizielles Koharu-Projekt und kein Upstream-Beitragsgesuch.
Das Repository enthält:
einen Patch, der an den Koharu-Commit
a81c5829ea99a45e04580ff97fd6affa81b2db34gebunden ist und eine reine Loopback-Headless-Web-UI, eine HTTP-API und einen MCP-Endpunkt hinzufügt;einen OpenAI-kompatiblen Übersetzungs-Sidecar, der einen gebundenen Hy-MT2-Erstdurchlauf ausführt, ihn entlädt, einen extern verwalteten Qwen-Reviewer startet, einen gezielten Reparaturdurchlauf erlaubt und bei unaufgelösten Bereichen sicher fehlschlägt;
Prozess-Wrapper, die die exakte Prozessidentität aufzeichnen und später verifizieren, bevor Koharu oder der Sidecar gestoppt oder neu gestartet wird.
Es enthält keine Modellgewichte, Mangaseiten, OCR-Korpora, generierte Übersetzungen, private Auswertungsergebnisse oder eine Qwen-Laufzeitumgebung. Eine private Pilotstudie mit 512 Seiten / 6.525 Bereichen hat die Entwicklung informiert, aber keines dieser Quellmaterialien oder detaillierten Ergebnisse wird hier veröffentlicht.
Architektur und Grenzen
Koharu pipeline
-> loopback OpenAI-compatible sidecar
-> pinned Hy-MT2-7B first translation (CUDA only)
-> Hy-MT2 process exits and releases VRAM
-> externally owned Qwen lifecycle starts the reviewer
-> sparse review, then at most one targeted repair
-> deterministic validation and Koharu typography update
-> Qwen lifecycle stops the reviewerDer Sidecar bindet standardmäßig an Loopback. Er verweigert den CPU-Fallback für Hy-MT2, verweigert die Übersetzung, während Qwen bereits läuft, verlangt, dass der Qwen-Prozess meldet, dass er von der aktuellen Anfrage gestartet wurde, serialisiert GPU-Aufträge und gibt einen Fehler zurück, anstatt unaufgelöste Ausgaben stillschweigend zu akzeptieren.
Voraussetzungen
Windows 11 und PowerShell 7
Python 3.13
Rust-Toolchain und die von Koharu benötigten Build-Abhängigkeiten
eine CUDA-fähige NVIDIA-GPU; die Entwicklungskonfiguration verwendete eine 32-GB-RTX-5090
einen CUDA-fähigen PyTorch-Build, der mit dem lokalen Treiber kompatibel ist
curl.exeeinen externen OpenAI-kompatiblen Qwen-Server und ein unten beschriebenes Lebenszyklus-Skript
Der Code verwendet standardmäßig die Qwen-Modell-ID dirk-qwen3.8-27b-q5 unter http://127.0.0.1:8000/v1. Beide Werte sind konfigurierbar. Modellgewichte und deren Lizenzen bleiben in der Verantwortung des Betreibers.
Koharu vorbereiten
Klonen Sie die exakte Upstream-Revision in das repository-lokale Verzeichnis vendor/koharu und wenden Sie den gebundenen Patch an:
git clone https://github.com/mayocream/koharu.git vendor/koharu
git -C vendor/koharu checkout a81c5829ea99a45e04580ff97fd6affa81b2db34
pwsh -File .\scripts\apply-koharu-patch.ps1 -KoharuCheckout .\vendor\koharu
cargo build --manifest-path .\vendor\koharu\Cargo.toml -p koharuDas Anwendungsskript lehnt einen anderen Commit, einen unsauberen Checkout oder einen Patch ab, der git apply --check nicht besteht.
Python und Hy-MT2 vorbereiten
Erstellen Sie eine repository-eigene virtuelle Umgebung. Installieren Sie einen CUDA-PyTorch-Build mit dem für den lokalen Treiber geeigneten Befehl und installieren Sie dann die übrigen gebundenen Pakete:
python -m venv .venv
.\.venv\Scripts\python.exe -m pip install --upgrade pip
# Install a compatible CUDA build of PyTorch here.
.\.venv\Scripts\python.exe -m pip install -r requirements.txt
.\.venv\Scripts\python.exe .\scripts\download-model.py hy-mt2-7bdownload-model.py lädt nur die in config/model-lock.json aufgezeichnete Revision herunter und schreibt ein lokales SHA-256-Manifest. Das Modellverzeichnis wird von Git ignoriert.
Qwen-Lebenszyklus-Vertrag
Das Argument -QwenLifecycleScript ist obligatorisch und maschinenspezifisch. Sein Skript muss Folgendes unterstützen:
-Operation status -Summary, das JSON zurückgibt, dessen Felderqwen.stateundcomfyuivor dem Pipeline-Startoffmelden;-Operation start-qwen, das JSON mitstarted_by_request: truenur dann zurückgibt, wenn diese Anfrage den gestarteten Qwen-Prozess besitzt;-Operation stop-qwen, das nur diesen eigenen Prozess stoppt und JSON zurückgibt.
Die Lebenszyklus-Implementierung ist bewusst nicht gebündelt, da sich Qwen-Laufzeitumgebungen, Startbefehle, Modellspeicherorte und die GPU-Freigaberichtlinie je nach Maschine unterscheiden.
Konfigurieren und ausführen
Konfigurieren Sie in Koharu den OpenAI-kompatiblen Anbieter so, dass er das Modell koharu-hy-qwen-v1 und die Basis-URL http://127.0.0.1:4020/v1 verwendet. Dies kann einmal über die normale Einstellungs-UI von Koharu gespeichert werden, bevor der Headless-Modus verwendet wird.
Starten Sie sowohl den Sidecar als auch das gepatchte Koharu:
pwsh -File .\scripts\start.ps1 `
-QwenLifecycleScript C:\path\to\your\Invoke-QwenLifecycle.ps1Öffnen Sie dann http://127.0.0.1:4010/. Die JSON-API ist unter /api/v1 erreichbar, und der MCP-JSON-RPC-Endpunkt ist /mcp.
Stoppen Sie nur die von diesem Repository aufgezeichneten Prozesse:
pwsh -File .\scripts\stop.ps1stop.ps1 validiert jeden aufgezeichneten ausführbaren Pfad, die Startzeit, die übergeordnete PID, die Erstellungszeit und die vollständige Befehlszeile, bevor eine PID angefasst wird. Wenn sich die Identität geändert hat, behält es den Zustand bei und verweigert den Stopp.
Verifizierung
Führen Sie die portablen Prüfungen aus:
.\.venv\Scripts\python.exe -m unittest service.test_server
$scripts = Get-ChildItem .\scripts -Filter *.ps1
foreach ($script in $scripts) {
$tokens = $null
$errors = $null
[void][System.Management.Automation.Language.Parser]::ParseFile($script.FullName, [ref]$tokens, [ref]$errors)
if ($errors.Count) { throw ($errors | Out-String) }
}Für den gepatchten Koharu-Checkout:
cargo test --manifest-path .\vendor\koharu\Cargo.toml -p koharu-app api::tests
cargo test --manifest-path .\vendor\koharu\Cargo.toml -p koharu-pipeline onomatopoeia_becomes_a_sound_effect_text_layer
cargo test --manifest-path .\vendor\koharu\Cargo.toml -p koharu-translator serializes_optional_koharu_region_metadata
cargo build --manifest-path .\vendor\koharu\Cargo.toml -p koharuDer CI-Workflow führt die portablen Python-Tests, die Python-Kompilierung und PowerShell-Parser-Prüfungen aus. Vollständige Koharu-Builds und GPU-/Modelltests bleiben lokal, da sie plattformspezifische native und Modell-Eingaben erfordern.
Einschränkungen
Der Patch ist absichtlich an einen einzigen Koharu-Commit gebunden; es wird nicht behauptet, dass er auf spätere Revisionen anwendbar ist.
Die Pipeline zielt derzeit auf japanisch-koreanischen Text und eine feste Lettering-Rollenrichtlinie ab.
Der End-to-End-Betrieb erfordert eine vom Betreiber bereitgestellte Qwen-Lebenszyklus-Implementierung und ein Modell.
Automatisierte und Live-Funktionsvalidierung ersetzen keine manuelle Quellcode-Prüfung oder ein unabhängiges Sicherheitsaudit.
Offenlegung der KI-Entwicklung
Die meisten nachgelagerten Änderungen wurden von OpenAI Codex aus benutzerbereitgestellten Anforderungen und iterativen Abnahmeanfragen generiert und überarbeitet. Der Repository-Inhaber hat den Quellcode nicht manuell überprüft. Die Validierung basiert auf automatisierten Tests und Live-Funktionstests in der Windows-/Codex-Umgebung des Inhabers. Es wurde kein unabhängiges Drittanbieter-Code- oder Sicherheitsaudit durchgeführt.
Kurz gesagt: KI-generiert, benutzergetestet, nicht manuell codegeprüft.
Upstream-Zuordnung und Lizenz
Der Koharu-Patch basiert auf Koharu von mayocream und Mitwirkenden am oben genannten exakten Commit. Siehe THIRD_PARTY_NOTICES.md für Abhängigkeitsgrenzen und Zuordnung. Dieses Repository wird unter Ihrer Wahl der Apache License 2.0 oder der MIT License angeboten; siehe LICENSE-APACHE und LICENSE-MIT.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
LibreTranslate MCP — open-source machine translation (BYO endpoint)
MCP server for AI dialogue using various LLM models via AceDataCloud
MCP server for Hailuo (MiniMax) AI video generation
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/M-T-D-N/koharu-hy-qwen-pipeline'
If you have feedback or need assistance with the MCP directory API, please join our Discord server