Joseph Kim193 downloadsTranslate selected text in Obsidian's native PDF reader with local and cloud translation services.
Features • Quick Start • Recommended Settings • Usage Guide • Other Services • Windows Notes • FAQ • Development
A local LLM-powered translation plugin for Obsidian, supporting real-time text selection translation in PDF and Markdown files.
# 1. Install Ollama (macOS / Linux)
curl -fsSL https://ollama.com/install.sh | sh
# 2. Pull translation model (recommended HY-MT2-1.8B)
ollama pull RogerBen/HY-MT2-1.8B:latest
# 3. After installing the plugin, select Local LLM in settings
# Enter endpoint http://localhost:11434 and model name
# Click Test to verify connection
💡 Windows Users: Download the installer from the Ollama website. Ollama will run automatically in the background after installation.
Download and install via Terminal:
# Create plugin directory
mkdir -p YourVault/.obsidian/plugins/llm-translator
# Download Release files
curl -sL https://github.com/KimFischer99/Obsidian-LLM-Translator/releases/download/0.3.0/main.js \
-o YourVault/.obsidian/plugins/llm-translator/main.js
curl -sL https://github.com/KimFischer99/Obsidian-LLM-Translator/releases/download/0.3.0/manifest.json \
-o YourVault/.obsidian/plugins/llm-translator/manifest.json
curl -sL https://github.com/KimFischer99/Obsidian-LLM-Translator/releases/download/0.3.0/styles.css \
-o YourVault/.obsidian/plugins/llm-translator/styles.css
Replace YourVault with your Obsidian vault path. Restart Obsidian and enable LLM Translator in Settings → Community plugins.
After installing the plugin, configure as follows:
| Setting | Recommended Value |
|---|---|
| Translation scope | Global |
| Auto-translate selected text | Enabled |
| Enable reader selection popup | Enabled |
| Setting | Recommended Value |
|---|---|
| Translation service | Local LLM |
| Local model endpoint | http://localhost:11434 |
| Model name | hy-mt2-1.8b-q4:latest |
| Source language | Auto |
| Target language | 简体中文 |
| Setting | Recommended Value |
|---|---|
| Max selection length | 5000 |
| Selection trigger delay | 350ms |
| Request timeout | 30000ms |
| Top K | 20 |
| Top P | 0.6 |
| Repeat Penalty | 1.05 |
| Num Predict | 4096 |
Modify the translation prompt in Settings → Advanced → Custom prompt:
Translate the following academic text. Preserve technical terminology,
citations, and formulas. Output only the translation.
Supports any OpenAI-compatible API provider:
| Configuration | Description |
|---|---|
| API URL | Provider's endpoint |
| API Key | Provider's authentication key |
| Model name | Provider's model identifier |
No configuration required. Select directly from the translation service dropdown.
⚠️ Free translation services have rate limits. For heavy usage, switch to local models or cloud APIs.
http://localhost:11434/: http://localhost:11434 (correct)http://localhost:11434\ (wrong)http://localhost:11434 in your browser to verify# Install dependencies
npm install
# Development mode (watch for file changes)
npm run dev
# Production build
npm run build
After building, copy main.js, manifest.json, and styles.css to:
YourVault/.obsidian/plugins/llm-translator/
MIT License © 2026