eIQ GenAI 流量演示器
eIQ GenAI Flow是一套軟件流水線,用于在邊緣設(shè)備上實現(xiàn) AI 驅(qū)動的體驗。目前,F(xiàn)low 支持NXP i.MX 95上的?對話式 AI?。
概述
eIQ GenAI Flow 集成了多種 AI 技術(shù),打造無縫的 HMI 體驗。對話式 AI 流程包含以下階段:
- ?喚醒詞檢測?:VIT(語音智能技術(shù))喚醒詞觸發(fā)ASR(自動語音識別)。
- ?語音轉(zhuǎn)文本 (ASR)?:將語音輸入轉(zhuǎn)換為文本。
- ?檢索增強生成 (RAG)?:利用相關(guān)外部知識增強大型語言模型 (LLM)。
- ?文本生成 (LLM)?:根據(jù)檢索到的上下文生成響應(yīng)。
- ?文本到語音 (TTS)?:將響應(yīng)轉(zhuǎn)換為語音輸出。
此演示程序展示了 eIQ GenAI Flow 的一些核心功能。此英文演示程序旨在概述該項目的功能及其工作原理。它是完整項目eIQ GenAI Flow Pro的一個子集。
Flow 完整版提供了更多?模型?、?功能?、?定制?、RAG 微調(diào)選項以及更好的音頻任務(wù)性能。
有關(guān)更多詳細信息,請使用NXP 社區(qū)論壇生成 AI 和 LLM。
目錄
先決條件
該存儲庫使用Git 大文件存儲 (LFS)來管理大文件(例如模型、數(shù)據(jù)集、二進制文件)。
?在克隆此存儲庫之前?,請確保您的機器上已安裝并初始化 Git LFS。
安裝 Git LFS
Ubuntu/Debian:
shell
sudo apt update
sudo apt install git-lfs
macOS(自制):
shell
brew install git-lfs
Windows:從https://git-lfs.github.com/ 下載并安裝 Git LFS
初始化 Git LFS(運行一次)
shell
git lfs install
克隆項目
shell
git clone https://github.com/nxp-appcodehub/dm-eiq-genai-flow-demonstrator
cd dm-eiq-genai-flow-demonstrator
Git LFS 將在克隆期間或之后自動下載所有跟蹤的大文件。如果需要,你可以運行:
shell
git lfs pull
手動獲取任何缺失的 LFS 文件。
BSP 選擇
此演示需要適用于i.MX 應(yīng)用處理器的嵌入式 Linux中提供的 Linux BSP 。
雖然該演示可以在常規(guī)的 NXP Q1 2025 BSP 上運行,但它在使用軟件包中提供的meta-eiq-genai-flow定制的 BSP 上效果最佳。此元層更新:
- Linux 內(nèi)核: matmul Neutron C-API
- 設(shè)備樹: Neutron 專用的連續(xù)內(nèi)存分配 (CMA) 區(qū)域
- ?Onnxruntime:?添加 Neutron 執(zhí)行提供程序
- ?Neutron 資產(chǎn):?用于處理 matmul 操作的驅(qū)動程序和固件。
有關(guān)構(gòu)建詳細信息,請參閱meta-eiq-genai-flow中的README 。
此項定制的優(yōu)勢在于顯著降低 CPU 負載,并加快 LLM 操作的首個令牌時間 (TTFT)。詳情請參閱 LLM 基準測試部分。
一旦 BSP 閃存到目標上,就必須將此包中的eiqgenaiflow文件夾復制到 linux 主文件夾中。
安裝
要設(shè)置環(huán)境,請運行:
shell
cd eiq_genai_flow
./install.sh
入門
要運行演示,請使用以下命令:
shell
./eiq_genai_flow
?注意:?二進制文件必須始終從目錄執(zhí)行
eiq_genai_flow
。?注意?:試用期有 2 小時的超時時間。
注意: i.MX 95 中當前未啟用緩存。每次執(zhí)行此應(yīng)用程序時,都需要預熱時間(少于一分鐘)。
運行
./eiq_genai_flow --help
以查看可用選項。
默認模式為鍵盤轉(zhuǎn)語音,這意味著模塊 VIT 和 ASR 被禁用。要啟用語音轉(zhuǎn)語音體驗,請使用 --input-mode vasr
參數(shù)。
該應(yīng)用程序支持各種輸入/輸出選項和模型選擇,詳見下面的軟件組件部分。
軟件組件
語音智能技術(shù)(VIT)
VIT 是 NXP 的語音 UI 技術(shù),它利用深度學習實現(xiàn)始終在線的喚醒詞檢測。
?VIT 與“HEY NXP”?預定義的喚醒詞集成。
? 啟用 VIT
使用參數(shù)在喚醒詞檢測后-i vasr
啟用 ASR 。
其他選項包括:
-c
(連續(xù)模式):允許連續(xù)對話,無需每次回應(yīng)后發(fā)出喚醒詞。
???
自動語音識別(ASR)
ASR 將口語轉(zhuǎn)換為文本。
演示器使用 Whisper-small.en int8-quantized 針對具有 244M 參數(shù)的流式傳輸進行了優(yōu)化。
? 啟用 ASR
使用--input-mode
具有下列值之一的參數(shù):
-i vasr
:檢測到 VIT 喚醒詞后啟用 ASR。-i kasr
:通過鍵盤輸入激活 ASR(按“Enter”開始轉(zhuǎn)錄)。-i keyb
:禁用 ASR,僅使用鍵盤輸入。
要啟用連續(xù) ASR,請傳遞-c
標志。在此模式下,ASR 會保持活動狀態(tài),直到用戶按下“停止”鍵或因不活動而發(fā)生超時。
**
來源:恩智浦appcodehub