Reshoot every tab, and put the local models first
The settings window has four tabs it did not have when these were taken: Agent, Meeting, Minutes and Shortcuts. Replace the four screenshots with seven, at the same size and lossless as before. History goes without a replacement rather than showing an old tab bar beside the new ones. Running here is what the program does by default, and it was buried in a paragraph under Install. Make it the first thing the feature list says, and cut that paragraph back so the two do not repeat each other.
@@ -17,7 +17,8 @@ just the Python standard library and PyQt6.
|
||||
| | |
|
||||
|---|---|
|
||||
| <img src="docs/settings-api.webp" width="410" alt="API and models"> | <img src="docs/settings-cleanup.webp" width="410" alt="Cleanup rules"> |
|
||||
| <img src="docs/settings-audio-file.webp" width="410" alt="Audio file"> | <img src="docs/settings-history.webp" width="410" alt="History"> |
|
||||
| <img src="docs/settings-agent.webp" width="410" alt="Agent"> | <img src="docs/settings-meeting.webp" width="410" alt="Meeting"> |
|
||||
| <img src="docs/settings-audio-file.webp" width="410" alt="Audio file"> | <img src="docs/settings-shortcuts.webp" width="410" alt="Shortcuts"> |
|
||||
|
||||
## Install
|
||||
|
||||
@@ -42,16 +43,14 @@ puts all of that back, keeping the keys you chose; `./uninstall.sh` takes it awa
|
||||
again and leaves your settings and dictations alone unless you pass `--purge`.
|
||||
|
||||
Speech to text and cleanup each pick a provider in the settings window, and both
|
||||
can run here, on whisper.cpp and llama.cpp: the program and the model are
|
||||
downloaded from that window, checksummed, so nothing has to be installed first
|
||||
and nothing leaves the machine. Otherwise speech to text runs on **OpenAI**,
|
||||
**Groq** or **OpenRouter** (`gpt-4o-transcribe` by default) and cleanup on
|
||||
OpenRouter (`google/gemini-3.5-flash-lite`) or, when either is installed, on
|
||||
Claude Code or Codex. The keys fall back to `OPENAI_API_KEY`, `GROQ_API_KEY` and
|
||||
`OPENROUTER_API_KEY`, and are
|
||||
stored in `~/.config/dikte/config.json`, mode 600. Cleanup can be switched off,
|
||||
in which case the raw transcript is pasted, and a thinking model's effort can be
|
||||
set next to it.
|
||||
run here by default, on models of your own. The cloud is the other option:
|
||||
speech to text on **OpenAI**, **Groq** or **OpenRouter** (`gpt-4o-transcribe`),
|
||||
cleanup on OpenRouter (`google/gemini-3.5-flash-lite`) or, when either is
|
||||
installed, on Claude Code or Codex. The keys fall back to `OPENAI_API_KEY`,
|
||||
`GROQ_API_KEY` and `OPENROUTER_API_KEY`, and are stored in
|
||||
`~/.config/dikte/config.json`, mode 600. Cleanup can be switched off, in which
|
||||
case the raw transcript is pasted, and a thinking model's effort can be set next
|
||||
to it.
|
||||
|
||||
## Using it
|
||||
|
||||
@@ -81,6 +80,12 @@ running.
|
||||
|
||||
## What it does
|
||||
|
||||
- **It all runs on this machine by default.** Speech to text on whisper.cpp and
|
||||
cleanup on llama.cpp, neither installed beforehand: the settings window fetches
|
||||
the program and the model, verifies the sha256 and refuses a download published
|
||||
without one, then keeps a server alive while you dictate. The graphics card is
|
||||
reached through CUDA, ROCm or Vulkan where the build allows. No key, no
|
||||
account, nothing leaving the machine.
|
||||
- **Silence never reaches the API.** Handed near-silence, a transcription model
|
||||
invents a sentence instead of returning nothing ("Thanks for watching", or in
|
||||
Turkish "Altyazı M.K."). A recording is dropped when nothing rose 10 dB above
|
||||
|
||||
@@ -16,7 +16,8 @@ sadece Python standart kütüphanesi ve PyQt6.
|
||||
| | |
|
||||
|---|---|
|
||||
| <img src="docs/settings-api.webp" width="410" alt="API ve modeller"> | <img src="docs/settings-cleanup.webp" width="410" alt="Temizleme kuralları"> |
|
||||
| <img src="docs/settings-audio-file.webp" width="410" alt="Ses dosyası"> | <img src="docs/settings-history.webp" width="410" alt="Geçmiş"> |
|
||||
| <img src="docs/settings-agent.webp" width="410" alt="Ajan"> | <img src="docs/settings-meeting.webp" width="410" alt="Toplantı"> |
|
||||
| <img src="docs/settings-audio-file.webp" width="410" alt="Ses dosyası"> | <img src="docs/settings-shortcuts.webp" width="410" alt="Kısayollar"> |
|
||||
|
||||
## Kurulum
|
||||
|
||||
@@ -42,11 +43,9 @@ son sürümü çeker ve bunları senin seçtiğin tuşlarla yerine koyar;
|
||||
diktelerine dokunmaz.
|
||||
|
||||
Sesi yazıya çevirme ve temizleme, ayarlar penceresinde ayrı ayrı sağlayıcı
|
||||
seçer; ikisi de burada çalışabilir, whisper.cpp ve llama.cpp üzerinde: program da
|
||||
model de o pencereden, sha256 doğrulamasıyla indirilir, yani önceden hiçbir şey
|
||||
kurman gerekmez ve makineden hiçbir şey çıkmaz. Bulutu seçersen sesi yazıya
|
||||
çevirme **OpenAI**, **Groq** ya da **OpenRouter**'da (varsayılan
|
||||
`gpt-4o-transcribe`), temizleme OpenRouter'da
|
||||
seçer; ikisi de varsayılan olarak burada, kendi modellerinle çalışır. Bulutu
|
||||
seçersen sesi yazıya çevirme **OpenAI**, **Groq** ya da **OpenRouter**'da
|
||||
(varsayılan `gpt-4o-transcribe`), temizleme OpenRouter'da
|
||||
(`google/gemini-3.5-flash-lite`) ya da kuruluysa Claude Code veya Codex'te
|
||||
çalışır. Anahtarları boş bırakırsan `OPENAI_API_KEY`, `GROQ_API_KEY` ve
|
||||
`OPENROUTER_API_KEY` kullanılır; anahtarlar `~/.config/dikte/config.json`
|
||||
@@ -81,6 +80,12 @@ olmasını ister.
|
||||
|
||||
## Neler yapıyor
|
||||
|
||||
- **Her şey varsayılan olarak bu makinede çalışır.** Sesi yazıya çevirme
|
||||
whisper.cpp, temizleme llama.cpp üzerinde; ikisini de önceden kurman gerekmez:
|
||||
ayarlar penceresi programı ve modeli indirir, sha256'sını doğrular,
|
||||
checksum'suz yayınlanmış bir indirmeyi reddeder, sen dikte ettikçe sunucuyu
|
||||
ayakta tutar. Derleme destekliyorsa ekran kartına CUDA, ROCm ya da Vulkan
|
||||
üzerinden ulaşılır. Anahtar yok, hesap yok, makineden çıkan bir şey yok.
|
||||
- **Sessizlik API'ye gitmez.** Sessize yakın bir ses verildiğinde model boş dize
|
||||
döndürmez, bir cümle uydurur ("Altyazı M.K.", "Thanks for watching"). *O
|
||||
kaydın kendi* gürültü tabanının 10 dB üstüne en az 0,3 saniye çıkan bir şey
|
||||
|
||||
|
After Width: | Height: | Size: 92 KiB |
|
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 71 KiB |
|
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 48 KiB |
|
Before Width: | Height: | Size: 99 KiB After Width: | Height: | Size: 116 KiB |
|
Before Width: | Height: | Size: 71 KiB After Width: | Height: | Size: 70 KiB |
|
Before Width: | Height: | Size: 66 KiB |
|
After Width: | Height: | Size: 83 KiB |
|
After Width: | Height: | Size: 58 KiB |