一個專業的繁體中文命令列語音助手,結合語音識別、AI對話和系統查詢功能,完全本地化運行,確保隱私安全。
- 🔒 完全隱私 - 所有處理都在本地進行,無需網路連線
- 🇹� 繁體中文優先 - 專為繁體中文使用者設計,自然對話體驗
- 🖥️ 命令列專家 - 整合系統查詢功能,協助電腦操作
- ⚡ 雙模式處理 - 系統查詢即時執行(< 1秒),AI 對話智能回應(2-3秒)
- �🎤 語音識別 - 使用 OpenAI Whisper 進行高精度語音轉文字 -### 新增功能 專案採用模組化設計,您可以輕松擴展:
- 新增語音識別引擎
- 整合不同的 AI 模型
- 加入新的系統查詢功能
- 擴展命令列功能(在
command_helper.py) - 自訂按鍵綁定
- 添加其他語言支援
新增功能:
- ✨ 新增「最後修改檔案查詢」功能
- 支援語音查詢:「最後一個被修改的檔案」、「最新檔案」、「最近修改的檔案」
- 顯示檔案名稱、修改時間和檔案大小
- 🔧 改進查詢匹配邏輯
- 優化匹配順序,避免誤判
- 增強模糊匹配算法,提高語音識別容錯率
- 📝 更新系統文檔和使用範例
初始版本:
- 🤖 繁體中文語音助手基礎功能
- 🔊 語音識別 (OpenAI Whisper)
- 🦙 AI 對話 (Ollama + Gemma3)
- 🎵 語音合成 (多重 TTS 引擎)
- 🖥️ 系統查詢功能 (時間、檔案、目錄、系統資訊) 對話** - 整合 Ollama 本地 Gemma3 模型,支援繁體中文
- 🗣️ 語音合成 - 多重 TTS 引擎支援
- 🎮 簡單操作 - 按空白鍵開始對話
- 🛠️ 智能分類 - 自動判斷系統查詢或一般對話
🤖 繁體中文命令列語音助手
============================================================
🔍 Checking dependencies...
📱 Microphone... ✅ Available
🦙 Ollama server... ✅ Connected
🧠 Model (gemma3:1b-it-qat)... ✅ Available
🎯 Whisper model... ⏳ Will load on first use
🔊 Audio playback... ✅ Available
📋 語音助手設定
控制方式:
• 按 [空白鍵] 開始錄音
• 按 [Q] 離開程式
• 錄音時間: 5 秒
🌍 語言設定: 繁體中文
🖥️ 角色模式: 命令列專家助手
✅ 語音助手已就緒!
等待語音輸入... (按空白鍵說話,Q 離開)
🎤 使用者說:"現在幾點?"
🖥️ 執行系統查詢: 現在幾點?
🤖 助手: 目前時間是:2025年07月20日 15:18:47
🎤 使用者說:"最後一個被修改的檔案"
🖥️ 執行系統查詢: 最後一個被修改的檔案
🤖 助手: 目錄 'F:\VS_PJ\Python\AI語音電腦' 中最後被修改的檔案是:
檔案名稱:ollama_client.py
修改時間:2025年07月20日 16:04:59
檔案大小:10648 bytes
🎤 使用者說:"你好,請介紹你的功能"
🤖 Generating response from Ollama...
🤖 助手: 您好!我是 Gemma3 繁體中文命令列助手。我可以協助您執行系統查詢、
提供命令列操作指導,以及進行日常對話。我的專長包括時間查詢、檔案管理、
系統資訊查詢等功能...
- 作業系統: Windows 10/11
- Python: 3.8+
- 記憶體: 最少 4GB RAM
- 儲存空間: 15-20GB 可用空間
- 音訊設備: 麥克風和喇叭/耳機
- Ollama: 本地 AI 模型運行環境
- Git: 版本控制 (可選)
git clone https://github.com/YOUR_USERNAME/local-voice-assistant.git
cd local-voice-assistant- 前往 Ollama官網 下載安裝
- 安裝完成後執行:
ollama serve
ollama pull gemma3:1b-it-qat📝 關於 Gemma3:1b-it-qat 模型
我們選用 Google DeepMind 的 Gemma3 1B 量化模型 (IT-QAT) 作為預設 AI 引擎,具備以下優勢:
- ⚡ 速度快: 1B 參數量化版本,推理速度極快
- 🧠 智能: 經過指令調優,對話能力優秀
- 🌏 多語言: 支援中文和英文自然對話
- 💾 省資源: 僅需 ~1GB RAM,適合個人電腦
- 🔒 隱私: 完全本地運行,資料不上傳
# 創建虛擬環境
python -m venv .venv
# 啟動虛擬環境 (Windows)
.venv\Scripts\activate
# 安裝相依套件
pip install -r requirements.txtpython setup.py# 方式一:Python 命令
python voice_assistant.py
# 方式二:批次檔 (Windows)
quick_start.bat- 啟動程式 - 執行
py voice_assistant.py - 開始對話 - 按 空白鍵 開始錄音 (5秒)
- 說話 - 對著麥克風清楚說話
- 等待回應 - AI 會自動回應並語音播放
- 退出程式 - 按 Q 鍵退出
您的語音助手現在是一個專業的繁體中文命令列專家,支援兩種查詢模式:
直接執行系統命令,回應速度極快(< 1秒):
-
時間查詢:
- "現在幾點?" / "目前時間"
- "今天日期是什麼?" / "今天幾號"
-
檔案與目錄:
- "目前目錄在哪?" / "現在在哪"
- "列出檔案" / "看看有什麼" / "目錄內容"
- "目前路徑下有多少檔案?" / "統計檔案數量"
- "最後一個被修改的檔案" / "最新檔案" / "最近修改的檔案"
-
系統資訊:
- "系統資訊" / "電腦資訊"
- "磁碟空間還有多少?" / "硬碟容量" / "剩餘空間"
使用 AI 模型進行智能回應(2-3秒):
-
一般對話:
- "你好,請自我介紹"
- "能幫我做什麼?"
-
技術協助:
- "如何使用命令列?"
- "什麼是路徑?"
- "如何查看檔案?"
-
命令列教學:
- "PowerShell 怎麼用?"
- "常用的 CMD 指令有哪些?"
🎤 您說:"現在幾點?"
🤖 助手:目前時間是:2025年07月20日 15:18:47
🎤 您說:"磁碟空間還有多少?"
🤖 助手:磁碟使用狀況:總容量 366.37GB,已使用 276.69GB,剩餘 89.68GB(使用率 75.5%)
🎤 您說:"如何使用命令列?"
🤖 助手:好的,讓我來教你如何使用命令列!命令列是一個強大的工具,透過文字指令來控制系統...
🎤 語音輸入 → 📝 語音轉文字 → 🧠 查詢類型判斷 →
├─ 🖥️ 系統查詢:直接執行 (< 1秒)
└─ 🤖 AI 對話:Gemma3 處理 (2-3秒) → 🗣️ 語音回應
您可以使用以下測試工具來體驗功能:
# 交互式文字測試(不需要語音)
py interactive_test.py
# 功能展示和效能測試
py demo.py
# 基礎功能測試
py ai_test.pylocal-voice-assistant/
├── voice_assistant.py # 主程式
├── config.py # 配置設定
├── audio_recorder.py # 音訊錄製模組
├── speech_to_text.py # 語音識別模組
├── ollama_client.py # AI 對話模組(含系統查詢整合)
├── command_helper.py # 命令列功能模組
├── text_to_speech.py # 語音合成模組
├── audio_player.py # 音訊播放模組
├── setup.py # 安裝檢查工具
├── test_components.py # 元件測試工具
├── interactive_test.py # 交互式測試工具
├── demo.py # 功能展示腳本
├── ai_test.py # AI 功能測試
├── requirements.txt # Python 相依套件
├── quick_start.bat # Windows 快速啟動
├── COMMAND_ASSISTANT_SETUP.md # 命令列助手設定說明
└── README.md # 說明文件
編輯 config.py 檔案可調整各種設定:
# 基本設定
RECORD_DURATION = 5 # 錄音時間(秒)
ACTIVATION_KEY = "space" # 啟動按鍵
OLLAMA_MODEL = "gemma3:1b-it-qat" # AI 模型
# 語音設定
WHISPER_MODEL = "base" # Whisper 模型大小
TTS_SPEED = 1.0 # 語音速度
# 命令列助手設定
ENABLE_SYSTEM_COMMANDS = True # 啟用系統命令處理
COMMAND_TIMEOUT = 10 # 命令執行超時時間(秒)
DEFAULT_LANGUAGE = "zh-TW" # 預設回應語言(繁體中文)
VOICE_FEEDBACK = True # 啟用語音回饋您可以根據需要更換不同的 Gemma3 模型:
# 效能優先(推薦)
OLLAMA_MODEL = "gemma3:1b-it-qat" # 1B 量化版本,速度最快
# 品質優先
OLLAMA_MODEL = "gemma3:3b" # 3B 版本,回應品質更好
OLLAMA_MODEL = "gemma3:7b" # 7B 版本,最高品質但較慢A: 請確保 Ollama 服務正在運行:
ollama serveA: 確認以下設定:
config.py中ENABLE_SYSTEM_COMMANDS = True- 使用繁體中文關鍵字,如:"現在幾點?"、"目前目錄在哪?"
- 檢查
command_helper.py模組是否正常載入
A: 檢查以下設定:
- 確認使用
gemma3:1b-it-qat模型 config.py中DEFAULT_LANGUAGE = "zh-TW"- 系統提示詞已設定為繁體中文模式
A: 使用文字測試工具:
py interactive_test.py # 交互式測試
py demo.py # 功能展示
py ai_test.py # AI 功能測試A: 檢查 Windows 麥克風權限設定,確保應用程式可以存取麥克風。
A: 系統會自動使用 Windows 內建 TTS,請檢查音量設定。
A: 嘗試使用 conda 安裝:
conda install pyaudio| 組件 | 最小配置 | 建議配置 | 說明 |
|---|---|---|---|
| CPU | Intel i3 或同等 | Intel i5 或以上 | 系統查詢功能需要基本運算能力 |
| RAM | 4GB | 8GB+ | Gemma3:1b-it-qat 需要約 1.2GB RAM |
| 儲存 | 10GB | 20GB+ | 包含模型檔案和暫存空間 |
| GPU | 不需要 | NVIDIA GPU (可選) | 可加速 Whisper 語音識別 |
- 系統查詢回應: < 1 秒(直接執行)
- AI 對話回應: 2-3 秒(Gemma3:1b-it-qat)
- 語音識別: 3-5 秒(Whisper base 模型)
- 記憶體使用: ~1.5GB(含所有模組)
# 基礎元件測試
python test_components.py
# 完整 AI 功能測試
py ai_test.py
# 交互式功能測試(無語音)
py interactive_test.py
# 系統功能展示
py demo.py
# 完整系統集成測試
py test_integration.pytest_components.py: 測試各個模組的基本功能ai_test.py: 測試 AI 對話和系統查詢功能interactive_test.py: 提供文字輸入介面,無需語音demo.py: 展示所有功能並測量效能test_integration.py: 完整系統集成測試
專案採用模組化設計,您可以輕松擴展:
- 新增語音識別引擎
- 整合不同的 AI 模型
- 加入新的系統查詢功能
- 擴展命令列功能(在
command_helper.py) - 自訂按鍵綁定
- 添加其他語言支援
本專案採用 MIT 授權條款 - 詳見 LICENSE 檔案。
歡迎提交 Issues 和 Pull Requests!
- Fork 此專案
- 建立功能分支 (
git checkout -b feature/AmazingFeature) - 提交變更 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 開啟 Pull Request
- OpenAI Whisper - 語音識別
- Ollama - 本地 AI 模型運行
- PyAudio - 音訊處理
- pyttsx3 - 文字轉語音
如有問題或建議,請透過以下方式聯絡:
- GitHub Issues: 專案問題追蹤
- Email: [email protected]
⭐ 如果這個專案對您有幫助,請給我們一個星星!