Głos w trybie offline w całym systemie na polecenia lub tekst, system podłączany¶
⚠️ Wymagania systemowe i kompatybilność
Windows: ✅ W pełni obsługiwane (używa AutoHotkey/PowerShell).
macOS: ✅ W pełni obsługiwany (używa AppleScript).
Linux (X11/Xorg): ✅ W pełni obsługiwane. Zalecane dla najlepszych wrażeń.
Linux (Wayland): ⚠️ Ograniczony / eksperymentalny.
Globalne skróty klawiszowe i automatyczne wpisywanie zazwyczaj nie działają w Wayland ze względu na ograniczenia bezpieczeństwa.
Proszę przejść na sesję X11 podczas logowania (np. „Plasma (X11)” lub „Ubuntu na Xorg”), aby móc korzystać ze wszystkich funkcji.
Witamy w serwisie SL5 Aura! Ten dokument zawiera krótki przegląd naszych kluczowych funkcji i ich kompatybilności z systemem operacyjnym.
Aura to nie tylko osoba dokonująca transkrypcji; to potężny silnik przetwarzania offline, który przekształca Twój głos w precyzyjne działania i tekst.
Jest to kompletny asystent głosowy offline zbudowany na bazie Vosk (do zamiany mowy na tekst) i LanguageTool (do gramatyki/stylu), teraz wyposażony w opcjonalną funkcję Local LLM (Ollama) Fallback do kreatywnych odpowiedzi i zaawansowanego dopasowywania rozmytego. Został zaprojektowany z myślą o maksymalnej personalizacji poprzez podłączany system reguł i dynamiczny silnik skryptowy.
XSPACEbreakX Tłumaczenia: Ten dokument istnieje również w other languages.
Uwaga: Wiele tekstów to wygenerowane maszynowo tłumaczenia oryginalnej dokumentacji w języku angielskim i mają one wyłącznie charakter ogólny. W przypadku rozbieżności lub niejasności, zawsze obowiązuje wersja angielska. Czekamy na pomoc społeczności w ulepszaniu tego tłumaczenia!
( https://www.youtube.com/watch?v=BZCHonTqwUw lub https://skipvids.com/?v=BZCHonTqwUw )
Kluczowe funkcje¶
Offline i prywatnie: 100% lokalnie. Żadne dane nigdy nie opuszczają Twojej maszyny.
Dynamiczny silnik skryptowy: Wyjdź poza zastępowanie tekstu. Reguły mogą uruchamiać niestandardowe skrypty Pythona (
on_match_exec) w celu wykonywania zaawansowanych działań, takich jak wywoływanie interfejsów API (np. przeszukiwanie Wikipedii), interakcja z plikami (np. zarządzanie listą zadań do wykonania) lub generowanie zawartości dynamicznej (np. kontekstowe powitanie e-mail).Silnik transformacji o wysokim poziomie kontroli: implementuje oparty na konfiguracji, wysoce konfigurowalny potok przetwarzania. Priorytet reguł, wykrywanie poleceń i transformacje tekstu są określane wyłącznie na podstawie kolejności reguł w Fuzzy Maps, co wymaga konfiguracji, a nie kodowania.
Oszczędne wykorzystanie pamięci RAM: Inteligentnie zarządza pamięcią, wstępnie ładując modele tylko wtedy, gdy dostępna jest wystarczająca ilość wolnej pamięci RAM, zapewniając, że inne aplikacje (takie jak gry komputerowe) zawsze mają priorytet.
Wiele platform: działa na systemach Linux, macOS i Windows.
W pełni zautomatyzowany: Zarządza własnym serwerem LanguageTool (ale możesz także użyć zewnętrznego).
Niezwykła szybkość: Inteligentne buforowanie zapewnia natychmiastowe powiadomienia „Słuchanie…” i szybkie przetwarzanie.
Dokumentacja¶
Aby uzyskać pełne informacje techniczne, w tym wszystkie moduły i skrypty, odwiedź naszą oficjalną stronę dokumentacji. Jest generowany automatycznie i zawsze aktualny.
Stan kompilacji¶
Przeczytaj to w innych językach:
🇬🇧 English | 🇸🇦 العربية | 🇩🇪 Deutsch | 🇪🇸 Español | 🇫🇷 Français | 🇮🇳 हिन्दी | 🇯🇵 日本語 | 🇰🇷 한국어 | 🇵🇱 Polski | 🇵🇹 Português | 🇧🇷 Português Brasil | 🇨🇳 简体中文
Instalacja¶
Konfiguracja jest procesem dwuetapowym:
Pobierz ostatnią wersję lub master (https://github.com/sl5net/Vosk-System-Listener/archive/master.zip) lub sklonuj to repozytorium na swój komputer.
Uruchom jednorazowy skrypt instalacyjny dla swojego systemu operacyjnego.
Skrypty instalacyjne obsługują wszystko: zależności systemowe, środowisko Python i pobieranie niezbędnych modeli i narzędzi (~4 GB) bezpośrednio z naszych wydań GitHub w celu uzyskania maksymalnej szybkości.
Dla systemów Linux, macOS i Windows (z opcjonalnym wykluczeniem języka)¶
Aby zaoszczędzić miejsce na dysku i przepustowość, możesz podczas instalacji wykluczyć określone modele językowe („de”, „en”) lub wszystkie opcjonalne modele („all”). Podstawowe komponenty (LanguageTool, lid.176) są zawsze uwzględnione.
Otwórz terminal w katalogu głównym projektu i uruchom skrypt dla swojego systemu:
KOD_BLOKU_0
Dla systemu Windows¶
Uruchom skrypt instalacyjny z uprawnieniami administratora.
Zainstaluj narzędzie do odczytu i uruchamiania, np. CopyQ lub AutoHotkey v2. Jest to wymagane dla obserwatora wpisując tekst.
Instalacja jest w pełni zautomatyzowana i zajmuje około 8-10 minut w przypadku użycia 2 modeli w nowym systemie.
Przejdź do folderu „setup”.
Kliknij dwukrotnie
windows11_setup_with_ahk_copyq.bat.
Skrypt automatycznie wyświetli monit o uprawnienia administratora.
Instaluje system podstawowy, modele językowe, AutoHotkey v2 i CopyQ.
Po zakończeniu instalacji Aura Dictation uruchomi się automatycznie.
Uwaga: Nie musisz wcześniej instalować Pythona ani Gita; skrypt obsługuje wszystko.
Instalacja zaawansowana/niestandardowa¶
Jeśli nie chcesz instalować narzędzi klienckich (AHK/CopyQ) lub chcesz zaoszczędzić miejsce na dysku, wykluczając określone języki, możesz uruchomić podstawowy skrypt za pomocą wiersza poleceń:
KOD_BLOKU_1
Użycie¶
1. Uruchom usługi¶
W systemie Linux i macOS¶
Wszystko obsługuje jeden skrypt. Uruchamia główną usługę dyktowania i przeglądarkę plików automatycznie w tle. KOD_BLOKU_2
W systemie Windows¶
Uruchomienie usługi jest dwuetapowym procesem ręcznym:
Uruchom usługę główną: Uruchom
start_dictation_v2.0.bat. lub rozpocznij usługę od.venvza pomocąpython3
2. Skonfiguruj swój skrót¶
Aby uruchomić dyktowanie, potrzebujesz globalnego skrótu, który tworzy określony plik. Gorąco polecamy narzędzie wieloplatformowe CopyQ.
Nasza rekomendacja: CopyQ¶
Utwórz nowe polecenie w CopyQ za pomocą globalnego skrótu.
Polecenie dla systemu Linux/macOS: KOD_BLOKU_3
Polecenie dla Windows przy użyciu CopyQ: KOD_BLOKU_4
Polecenie dla Windows przy użyciu AutoHotkey: KOD_BLOKU_5
3. Zacznij dyktować!¶
Kliknij dowolne pole tekstowe, naciśnij klawisz skrótu, a pojawi się powiadomienie „Słucham…”. Mów wyraźnie, a potem pauzuj. Poprawiony tekst zostanie wpisany za Ciebie.
Zaawansowana konfiguracja (opcjonalnie)¶
Możesz dostosować zachowanie aplikacji, tworząc plik ustawień lokalnych.
Przejdź do katalogu
config/.Utwórz kopię pliku
config/settings_local.py_Example.txti zmień jej nazwę naconfig/settings_local.py.Edytuj plik
config/settings_local.py(zastępuje to wszelkie ustawienia z głównego plikuconfig/settings.py).
Ten plik config/settings_local.py jest (być może) ignorowany przez Gita, więc Twoje osobiste zmiany (być może) nie zostaną nadpisane przez aktualizacje.
Struktura i logika wtyczek¶
Modułowość systemu pozwala na solidną rozbudowę poprzez katalog plugins/.
Silnik przetwarzający ściśle przestrzega hierarchicznego łańcucha priorytetów:
Kolejność ładowania modułów (wysoki priorytet): Reguły załadowane z podstawowych pakietów językowych (de-DE, en-US) mają pierwszeństwo przed regułami załadowanymi z katalogu plugins/ (które ładują się jako ostatnie w kolejności alfabetycznej). XSPACEbreakX
Kolejność w pliku (mikropriorytet): W dowolnym pliku mapy (FUZZY_MAP_pre.py) reguły są przetwarzane ściśle według numeru wiersza (od góry do dołu). XSPACEbreakX
Architektura ta zapewnia ochronę podstawowych reguł systemowych, podczas gdy reguły specyficzne dla projektu lub kontekstowe (takie jak te dla CodeIgniter lub kontroli gier) można łatwo dodać jako rozszerzenia o niskim priorytecie za pośrednictwem wtyczek.
Kluczowe skrypty dla użytkowników systemu Windows¶
Oto lista najważniejszych skryptów do konfigurowania, aktualizowania i uruchamiania aplikacji w systemie Windows.
Konfiguracja i aktualizacja¶
setup/setup.bat: Główny skrypt do wstępnej jednorazowej konfiguracji środowiska.or
Uruchom PowerShell -Polecenie "Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process -Force; .\setup\windows11_setup.ps1"update.bat: Uruchom je z folderu projektu pobierz najnowszy kod i zależności.
Uruchamianie aplikacji¶
start_dictation_v2.0.bat: Podstawowy skrypt służący do uruchamiania usługi dyktowania.
Skrypty podstawowe i pomocnicze¶
aura_engine.py: podstawowa usługa Pythona (zwykle uruchamiana przez jeden z powyższych skryptów).get_suggestions.py: Skrypt pomocniczy dla określonych funkcjonalności.
🚀 Kluczowe funkcje i zgodność z systemem operacyjnym¶
Legenda dotycząca zgodności systemu operacyjnego:XSPACEbreakX
🐧 Linux (np. Arch, Ubuntu)XSPACEbreakX
🍏 macOSXSPACEbreakX
🪟 WindowsXSPACEbreakX
📱 Android (dla funkcji przeznaczonych dla urządzeń mobilnych)XSPACEbreakX
Podstawowy silnik zamiany mowy na tekst (Aura)¶
Nasz główny silnik do rozpoznawania mowy w trybie offline i przetwarzania dźwięku.
XSPACEbreakX
Aura-Rdzeń/ 🐧 🍏 🪟XSPACEbreakX
├─ aura_engine.py (Główna usługa Pythona zarządzająca Aurą) 🐧 🍏 🪟XSPACEbreakX
├┬ Przeładuj na żywo (konfiguracja i mapy) 🐧 🍏 🪟XSPACEbreakX
│├ Bezpieczne ładowanie prywatnej mapy (na pierwszym miejscu jest integralność) 🔒 🐧 🍏 🪟XSPACEbreakX
││ * Przebieg pracy: Ładuje archiwa ZIP chronione hasłem. XSPACEbreakX
│├ Przetwarzanie i korekta tekstu/ Pogrupowane według języka (np. de-DE, en-US, … ) XSPACEbreakX
│├ 1. normalize_punstanding.py (Standaryzuje interpunkcję po transkrypcji) 🐧 🍏 🪟XSPACEbreakX
│├ 2. Inteligentna korekta wstępna (FuzzyMap Pre - The Primary Command Layer) 🐧 🍏 🪟XSPACEbreakX
││ * Dynamiczne wykonywanie skryptów: reguły mogą uruchamiać niestandardowe skrypty Pythona (on_match_exec) w celu wykonywania zaawansowanych działań, takich jak wywołania API, operacje we/wy plików lub generowanie odpowiedzi dynamicznych.XSPACEbreakX
││ * Wykonanie kaskadowe: Reguły są przetwarzane sekwencyjnie, a ich efekty są kumulatywne. Późniejsze reguły mają zastosowanie do tekstu zmodyfikowanego przez wcześniejsze reguły.XSPACEbreakX
││ * Kryterium zatrzymania o najwyższym priorytecie: Jeśli reguła osiągnie Pełne dopasowanie (^…$), cały potok przetwarzania dla tego tokena zostanie natychmiast zatrzymany. Mechanizm ten ma kluczowe znaczenie dla realizacji niezawodnych poleceń głosowych.XSPACEbreakX
│├ 3. correct_text_by_languagetool.py (integruje narzędzie LanguageTool do poprawiania gramatyki/stylu) 🐧 🍏 🪟XSPACEbreakX
│├ 4. Hierarchiczny silnik reguł RegEx z rezerwą Ollama AI 🐧 🍏 🪟XSPACEbreakX
││ * Kontrola deterministyczna: wykorzystuje silnik RegEx-Rule-Engine do precyzyjnego sterowania poleceniami i tekstem o wysokim priorytecie.XSPACEbreakX
││ * Awaryjny algorytm Ollama AI (lokalny LLM): służy jako opcjonalna kontrola o niskim priorytecie w przypadku kreatywnych odpowiedzi, pytań i odpowiedzi oraz zaawansowanego dopasowywania rozmytego, gdy nie jest spełniona żadna reguła deterministyczna.XSPACEbreakX
││ * Stan: Lokalna integracja LLM.
│└ 5. Inteligentna korekcja końcowa (FuzzyMap)** – Udoskonalanie po LT** 🐧 🍏 🪟
││ * Stosowane po LanguageTool w celu skorygowania wyników specyficznych dla LT. Działa zgodnie z tą samą ścisłą logiką priorytetów kaskadowych, co warstwa wstępnej korekty.XSPACEbreakX
││ * Dynamiczne wykonywanie skryptów: reguły mogą uruchamiać niestandardowe skrypty w języku Python (on_match_exec) w celu wykonywania zaawansowanych działań, takich jak wywołania API, operacje we/wy plików lub generowanie odpowiedzi dynamicznych.XSPACEbreakX
││ * Fuzzy Fallback: Rozmyta kontrola podobieństwa (kontrolowana przez próg, np. 85%) działa jako warstwa korekcji błędów o najniższym priorytecie. Jest wykonywana tylko wtedy, gdy w całym poprzedzającym uruchomieniu reguły deterministycznej/kaskadowej nie znaleziono dopasowania (bieżąca_rule_matched ma wartość False), optymalizując wydajność poprzez unikanie, jeśli to możliwe, powolnych kontroli rozmytych.XSPACEbreakX
├┬ Zarządzanie modelami/ XSPACEbreakX
│├─ prioritize_model.py (optymalizuje ładowanie/rozładowywanie modelu w oparciu o wykorzystanie) 🐧 🍏 🪟XSPACEbreakX
│└─ setup_initial_model.py (Konfiguruje pierwszą konfigurację modelu) 🐧 🍏 🪟XSPACEbreakX
├─ Adaptacyjny limit czasu VAD 🐧 🍏 🪟XSPACEbreakX
├─ Adaptacyjny klawisz skrótu (Start/Stop) 🐧 🍏 🪟XSPACEbreakX
└─ Natychmiastowa zmiana języka (eksperymentalnie poprzez wstępne ładowanie modelu) 🐧 🍏 XSPACEbreakX
Narzędzia systemowe/ XSPACEbreakX
├┬ Zarządzanie serwerem LanguageTool/ XSPACEbreakX
│├─ start_languagetool_server.py (Inicjuje lokalny serwer LanguageTool) 🐧 🍏 🪟XSPACEbreakX
│└─ stop_languagetool_server.py (zamyka serwer LanguageTool) 🐧 🍏
├─ monitor_mic.sh (np. do użytku z zestawem słuchawkowym bez użycia klawiatury i monitora) 🐧 🍏 🪟XSPACEbreakX
Zarządzanie modelami i pakietamiXSPACEbreakX¶
Narzędzia do niezawodnej obsługi dużych modeli językowych.XSPACEbreakX
Zarządzanie modelem/ 🐧 🍏 🪟XSPACEbreakX
├─ ** Solidny program do pobierania modeli ** (fragmenty wersji GitHub) 🐧 🍏 🪟XSPACEbreakX
├─ split_and_hash.py (Narzędzie dla właścicieli repozytoriów umożliwiające dzielenie dużych plików i generowanie sum kontrolnych) 🐧 🍏 🪟XSPACEbreakX
└─ download_all_packages.py (Narzędzie dla użytkowników końcowych do pobierania, weryfikowania i ponownego składania plików wieloczęściowych) 🐧 🍏 🪟XSPACEbreakX
Pomocnicy w programowaniu i wdrażaniuXSPACEbreakX¶
Skrypty do konfiguracji środowiska, testowania i wykonywania usług.XSPACEbreakX
Wskazówka: glogg umożliwia używanie wyrażeń regularnych do wyszukiwania interesujących zdarzeń w plikach dziennika. XSPACEbreakX
Podczas instalacji zaznacz pole wyboru, aby powiązać je z plikami dziennika. XSPACEbreakX
https://translate.google.com/translate?hl=en&sl=en&tl=pl&u=https://glogg.bonnefon.org/
XSPACEbreakX
Wskazówka: Po zdefiniowaniu wzorców wyrażeń regularnych uruchom python3 Tools/map_tagger.py, aby automatycznie wygenerować możliwe do przeszukiwania przykłady dla narzędzi CLI. Aby uzyskać szczegółowe informacje, zobacz Map Maintenance Tools.
Wtedy może kliknij dwukrotnie
log/aura_engine.log
XSPACEbreakX
XSPACEbreakX
**Pomocnicy deweloperów/**XSPACEbreakX
├┬ **Zarządzanie środowiskiem wirtualnym/**XSPACEbreakX
│├ scripts/restart_venv_and_run-server.sh (Linux/macOS) 🐧 🍏XSPACEbreakX
│└ scripts/restart_venv_and_run-server.ahk (Windows) 🪟
├┬ **Ogólnosystemowa integracja dyktowania/**XSPACEbreakX
│├ Integracja Vosk-System-Słuchacz 🐧 🍏 🪟XSPACEbreakX
│├ scripts/monitor_mic.sh (monitorowanie mikrofonu specyficzne dla Linuksa) 🐧
│└ scripts/type_watcher.ahk (AutoHotkey nasłuchuje rozpoznanego tekstu i wpisuje go w całym systemie) 🪟XSPACEbreakX
└─ **Automatyka CI/CD/**XSPACEbreakX
└─ Rozszerzone przepływy pracy GitHub (instalacja, testowanie, wdrażanie dokumentów) 🐧 🍏 🪟 *(Działa w akcjach GitHub)*XSPACEbreakX
Nadchodzące/eksperymentalne funkcjeXSPACEbreakX¶
Funkcje obecnie w fazie opracowywania lub w wersji roboczej.XSPACEbreakX
**Funkcje eksperymentalne/**XSPACEbreakX ├─ ENTER_AFTER_DICTATION_REGEX Przykładowa reguła aktywacji „(ExampleAplicationThatNotExist|Pi, Twoja osobista sztuczna inteligencja)” 🐧XSPACEbreakX ├┬WtyczkiXSPACEbreakX │╰┬ Lenno na żywo – przeładuj (*) 🐧 🍏 🪟XSPACEbreakX (Zmiany dotyczące aktywacji/dezaktywacji wtyczki i ich konfiguracji zostaną zastosowane przy następnym uruchomieniu przetwarzania bez ponownego uruchomienia usługi.)XSPACEbreakX │ ├ polecenia git (sterowanie głosowe przy wysyłaniu poleceń git) 🐧 🍏 🪟XSPACEbreakX │ ├ wannweil (Mapa lokalizacji Niemcy-Wannweil) 🐧 🍏 🪟XSPACEbreakX │ ├ Wtyczka pokerowa (wersja robocza) (Sterowanie głosowe w aplikacjach pokerowych) 🐧 🍏 🪟XSPACEbreakX │ └ Wtyczka 0 A.D. (wersja robocza) (Sterowanie głosowe dla gry 0 A.D.) 🐧 XSPACEbreakX ├─ Wyjście dźwięku podczas rozpoczynania lub kończenia sesji (opis w toku) 🐧 XSPACEbreakX ├─ Mowa dla osób niedowidzących (opis w oczekiwaniu na opis) 🐧 🍏 🪟XSPACEbreakX └─ Prototyp Androida SL5 Aura (jeszcze nie w pełni offline) 📱XSPACEbreakX
(Uwaga: określone dystrybucje Linuksa, takie jak Arch (ARL) lub Ubuntu (UBT) są oznaczone ogólnym symbolem Linuksa 🐧. Szczegółowe rozróżnienia mogą być omówione w przewodnikach instalacji.)
<szczegóły>
KOD_BLOKU_6
trochę graficznie, żeby zobaczyć, co jest za nimi:¶

XSPACEbreakX
Używane modele:¶
Zalecenie: użyj modeli z Mirror https://github.com/sl5net/SL5-aura-service/releases/tag/v0.2.0.1 (prawdopodobnie szybciej)
Te spakowane modele muszą być zapisane w folderze models/
mv vosk-model-*.zip models/
Modelka |
Rozmiar |
Poziom błędów/prędkość słów |
Notatki |
Licencja |
|---|---|---|---|---|
1,8G |
5,69 (czysty test librispeech) |
Dokładny ogólny model w języku angielskim w USA |
Apache 2.0 |
|
1,9G |
9,83 (test Tuda-de) |
Duży niemiecki model telefonii i serwerów |
Apache 2.0 |
Ta tabela zawiera przegląd różnych modeli Vosk, w tym ich rozmiar, współczynnik błędów lub prędkość, uwagi i informacje licencyjne.
Modele Vosk: Vosk-Model List
**Narzędzie językowe:**XSPACEbreakX (6.6) https://languagetool.org/download/
Licencja na LanguageTool: GNU Lesser General Public License (LGPL) v2.1 or later
Wesprzyj projekt¶
Jeśli uznasz to narzędzie za przydatne, rozważ zakup nam kawy! Twoje wsparcie pomaga w napędzaniu przyszłych ulepszeń.
IgnorePkg = linux66-nvidia-575xx nvidia-575xx-utils lib32-nvidia-575xx-utils
ustawienia nvidia-575xx mhwd-nvidia-575xx
