Instructions to use MoYoYoTech/Translator with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- llama-cpp-python
How to use MoYoYoTech/Translator with llama-cpp-python:
# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="MoYoYoTech/Translator", filename="moyoyo_asr_models/qwen2.5-1.5b-instruct-q5_0.gguf", )
llm.create_chat_completion( messages = "No input example has been defined for this model task." )
- Notebooks
- Google Colab
- Kaggle
- Local Apps
- llama.cpp
How to use MoYoYoTech/Translator with llama.cpp:
Install from brew
brew install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf MoYoYoTech/Translator:Q5_0 # Run inference directly in the terminal: llama-cli -hf MoYoYoTech/Translator:Q5_0
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf MoYoYoTech/Translator:Q5_0 # Run inference directly in the terminal: llama-cli -hf MoYoYoTech/Translator:Q5_0
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf MoYoYoTech/Translator:Q5_0 # Run inference directly in the terminal: ./llama-cli -hf MoYoYoTech/Translator:Q5_0
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf MoYoYoTech/Translator:Q5_0 # Run inference directly in the terminal: ./build/bin/llama-cli -hf MoYoYoTech/Translator:Q5_0
Use Docker
docker model run hf.co/MoYoYoTech/Translator:Q5_0
- LM Studio
- Jan
- Ollama
How to use MoYoYoTech/Translator with Ollama:
ollama run hf.co/MoYoYoTech/Translator:Q5_0
- Unsloth Studio new
How to use MoYoYoTech/Translator with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for MoYoYoTech/Translator to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for MoYoYoTech/Translator to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for MoYoYoTech/Translator to start chatting
- Pi new
How to use MoYoYoTech/Translator with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama-server -hf MoYoYoTech/Translator:Q5_0
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "MoYoYoTech/Translator:Q5_0" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent new
How to use MoYoYoTech/Translator with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama-server -hf MoYoYoTech/Translator:Q5_0
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default MoYoYoTech/Translator:Q5_0
Run Hermes
hermes
- Docker Model Runner
How to use MoYoYoTech/Translator with Docker Model Runner:
docker model run hf.co/MoYoYoTech/Translator:Q5_0
- Lemonade
How to use MoYoYoTech/Translator with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull MoYoYoTech/Translator:Q5_0
Run and chat with the model
lemonade run user.Translator-Q5_0
List all available models
lemonade list
| // AudioUtils.ts | |
| export class AudioUtils { | |
| static async createPCM16Data(audioBuffer: AudioBuffer): Promise<ArrayBuffer> { | |
| const numChannels = 1; // Mono | |
| const sampleRate = 16000; // Target sample rate | |
| const format = 1; // PCM | |
| const bitDepth = 16; | |
| // Resample if needed | |
| let samples = audioBuffer.getChannelData(0); | |
| if (audioBuffer.sampleRate !== sampleRate) { | |
| samples = await this.resampleAudio(samples, audioBuffer.sampleRate, sampleRate); | |
| } | |
| const dataLength = samples.length * (bitDepth / 8); | |
| const headerLength = 44; | |
| const totalLength = headerLength + dataLength; | |
| const buffer = new ArrayBuffer(totalLength); | |
| const view = new DataView(buffer); | |
| // Write WAV header | |
| this.writeString(view, 0, 'RIFF'); | |
| view.setUint32(4, totalLength - 8, true); | |
| this.writeString(view, 8, 'WAVE'); | |
| this.writeString(view, 12, 'fmt '); | |
| view.setUint32(16, 16, true); | |
| view.setUint16(20, format, true); | |
| view.setUint16(22, numChannels, true); | |
| view.setUint32(24, sampleRate, true); | |
| view.setUint32(28, sampleRate * numChannels * (bitDepth / 8), true); | |
| view.setUint16(32, numChannels * (bitDepth / 8), true); | |
| view.setUint16(34, bitDepth, true); | |
| this.writeString(view, 36, 'data'); | |
| view.setUint32(40, dataLength, true); | |
| // Write audio data | |
| this.floatTo16BitPCM(view, 44, samples); | |
| return buffer; | |
| } | |
| static writeString(view: DataView, offset: number, string: string): void { | |
| for (let i = 0; i < string.length; i++) { | |
| view.setUint8(offset + i, string.charCodeAt(i)); | |
| } | |
| } | |
| static floatTo16BitPCM(view: DataView, offset: number, input: Float32Array): void { | |
| for (let i = 0; i < input.length; i++, offset += 2) { | |
| const s = Math.max(-1, Math.min(1, input[i])); | |
| view.setInt16(offset, s < 0 ? s * 0x8000 : s * 0x7FFF, true); | |
| } | |
| } | |
| static async resampleAudio( | |
| audioData: Float32Array, | |
| originalSampleRate: number, | |
| targetSampleRate: number | |
| ): Promise<Float32Array> { | |
| const originalLength = audioData.length; | |
| const ratio = targetSampleRate / originalSampleRate; | |
| const newLength = Math.round(originalLength * ratio); | |
| const result = new Float32Array(newLength); | |
| for (let i = 0; i < newLength; i++) { | |
| const position = i / ratio; | |
| const index = Math.floor(position); | |
| const fraction = position - index; | |
| if (index + 1 < originalLength) { | |
| result[i] = audioData[index] * (1 - fraction) + audioData[index + 1] * fraction; | |
| } else { | |
| result[i] = audioData[index]; | |
| } | |
| } | |
| return result; | |
| } | |
| } | |
| export default AudioUtils; | |