xifan2333/fcitx5-vinput

Voice input for Fcitx5 — local and cloud ASR, LLM rewriting, cross-distro packages

fcitx5-vinput は、Fcitx5 入力メソッドフレームワーク(多くの Linux デスクトップ環境でタイピングを処理するソフトウェア)に音声入力を追加します。タイピングの代わりに話すだけで、プラグインが音声をテキストに変換し、カーソル位置に挿入したり、選択済みのテキストを変更したりします。

機能

音声認識、2つのオプション

  • ローカル / オフライン: バンドルされた sherpa-onnx 音声認識モデルを使用するため、インターネット接続は不要です。
  • クラウド: クラウド音声サービス(Doubao、Aliyun Bailian、ElevenLabs、または OpenAI 互換のプロバイダー)に接続します。

コマンドパレット(Shift_R を押してから /asr)で、いつでもローカルとクラウドを切り替えられます。

LLM によるスマートな後処理

音声をテキストに変換した後、その文字起こしを大規模言語モデルに渡して、以下を行うことができます:

  • 認識エラーを修正
  • テキストを再フォーマット
  • 翻訳

これらの動作はシーン(さまざまな状況向けの事前定義されたパイプライン、例:「メールを書く」や「これを翻訳」)として構成されます。

コマンドモード — 音声で操作

任意のテキストを選択し、コマンドキー(Control_R)を押しながら「これをよりフォーマルにして」などの指示を話し、離すと、LLM が要求を実行して選択範囲を置き換えます。これにより、ハンズフリーの編集ショートカットとして機能します。

録音を開始する2つの方法

  • タップ トリガーキー(Alt_R)で録音の開始/停止。
  • 長押し トリガーキーでプッシュトゥトーク(押している間のみ録音)。

GUI と CLI

  • vinput-gui — グラフィカルなセットアップウィザード(モデルのダウンロード、プロバイダーの設定)。
  • vinput — すべてのオプションを完全に制御するためのコマンドラインインターフェース。

キーバインド(すべて Fcitx5 設定でカスタマイズ可能)

キー デフォルト 機能
トリガーキー Alt_R タップ = 録音の切り替え; 長押し = プッシュトゥトーク
コマンドキー Control_R テキスト選択後に長押しして音声で変更
コマンドパレットキー Shift_R 統合コマンドパレットを開く(/model、/asr、/scene、/proc)

入手方法

2つのパッケージバリアントがあります:

  • フル — ローカルの sherpa-onnx 音声エンジンを含む(完全にオフラインで動作可能)
  • ライト — クラウドのみ、ローカル音声エンジンなし(フットプリントが小さい)

このプロジェクトは、主要な Linux ディストリビューションとパッケージングシステム向けのプリビルドパッケージを提供しています:

  • Arch Linux(archlinuxcn リポジトリまたは AUR 経由)
  • Fedora(COPR 経由)
  • Ubuntu 24.04(PPA 経由)
  • Ubuntu/Debian(手動で .deb をダウンロード)
  • Nix(flake、Cachix バイナリキャッシュ付き)
  • Flatpak
  • openSUSE/Fedora(.rpm)
  • 汎用 Linux(.tar.gz)

ソースからビルドすることもできます(cmake、fcitx5、pipewire、libcurl、CLI11、Qt6 が必要です)。

クイックスタート

systemctl --user enable --now vinput-daemon.service
fcitx5 -r

次に、Vinput GUI → リソース → モデル を開き、モデルをダウンロードしてアクティベートします。その後、Alt_R をタップまたは長押しすると音声入力が開始されます。

詳細

  • 完全なドキュメント(ASR セットアップ、シーンと LLM 設定、CLI リファレンス、モデルレジストリへの貢献)はドキュメントサイトにあります。
  • ライセンス: GPL-3.0
  • README には貢献者とスポンサーページも記載されています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト