Repository navigation
Wire in signwriting-to-text model - #8
Merged
Merged
Conversation
Fix the broken signwriting_to_text() CLI (it passed the model path as the translator, never tokenized input, never decoded output) and expose the direction via bin, CLI, and server. The sign/sockeye-signwriting-to-text model is a separately-trained plain string->string model (single source/target factor, subword-nmt BPE target), not the factored/tiktoken pipeline. Source is SignWritingTokenizer tokens prefixed with $spoken $signed; target is de-BPE'd spoken text. - bin.py: tokenize_signwriting(), process_text_output(), translate_to_text(); shared _run_translator() core - server.py: load both models, add POST /signwriting-to-text - Dockerfile: prime the new endpoint - test: round-trip test for the new direction Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Wires the
sign/sockeye-signwriting-to-textmodel intobin, the CLI, and the FastAPI server. Previously only text→SignWriting was hooked up;signwriting_to_text()was broken — it passed the model path where a translator object was expected, never tokenized the input, and never decoded the output.Key finding
This model is a separately-trained plain string→string model (
num_source_factors: 1,num_target_factors: 1, subword-nmt BPE target) — not the factored/tiktoken pipelinecreate_parallel_data.pybuilds:SignWritingTokenizertokens, prefixed with$<spoken> $<signed>@@'d back to spoken textChanges
bin.py:tokenize_signwriting(),process_text_output(),translate_to_text(); extracted shared_run_translator()core; fixedsignwriting_to_text()server.py: loads both models, addsPOST /signwriting-to-textDockerfile: primes the new endpoint during buildtests/test_server.py: round-trip test for the new directionVerification
All 6 tests +
ruffpass. Real translations:M528x518S15a28472x487S1f010490x502AS14c20S27106M518x529…🤖 Generated with Claude Code