文章目录
一、关于项目
1、项目概览
这是一个致力于构建现实版《传送门》游戏中GLaDOS人工智能的硬件与软件集成项目。
2、相关链接资源
- GitHub:https://github.com/dnhkng/GLaDOS
- 视频演示:https://private-user-images.githubusercontent.com/2691732/402261237-c22049e4-7fba-4e84-8667-2c6657a656a0.mp4
- Discord社区:https://discord.com/invite/ERTDKwpjNB
- 赞助支持:https://ko-fi.com/dnhkng
- RK3588 NPU系统:https://github.com/dnhkng/RKLLM-Gradio
- 趋势统计:https://trendshift.io/repositories/9828
3、功能特性
-
低延迟交互系统
- 语音检测:https://github.com/snakers4/silero-vad
- 语音转录:https://github.com/huggingface/distil-whisper
- 本地LLM:https://github.com/ggerganov/llama.cpp
- 语音合成:https://github.com/rhasspy/piper
-
硬件集成
- 基于伺服电机/步进电机系统
- 3D打印机身设计
- 视觉追踪系统
二、安装指南
尝试这个简化流程,但请注意它仍处于实验阶段!对于所有操作系统,您首先需要安装Ollama来运行LLM。
必要时安装驱动程序!
如果您使用Nvidia GPU,请确保安装必要的驱动程序和CUDA工具包,可在此处获取:CUDA Toolkit
若使用其他加速器(如ROCm、DirectML等),在完成下方针对您平台的安装指南后,请继续安装适用于您系统的最佳onnxruntime版本。
注意:若不安装正确的驱动程序,系统仍可运行,但延迟会显著增加!
搭建本地LLM服务器 - Ollama :
1、根据您的操作系统下载并安装Ollama。
2、安装完成后,下载一个小型3B模型进行测试 - 在终端或命令提示符中使用:
ollama pull llama3.2
注意:您可以使用任何兼容OpenAI或Ollama的服务器,无论是本地还是云端。
只需编辑 glados_config.yaml
文件,根据需要更新 completion_url
、model
以及 api_key
(如有必要)。
具体操作说明
Windows 安装流程
1、打开微软商店,搜索 python
并安装 Python 3.12
macOS 安装流程
当前仍处于实验阶段。任何问题都可以在 Discord 服务器中提出。如果您创建与此相关的问题,将会被引导至 Discord 服务器处理。注意:我曾遇到段错误(Segfaults)!请务必留下反馈!
Linux 安装流程
如果尚未安装 PortAudio
库,请先安装:
sudo apt update
sudo apt install libportaudio2
安装 GLaDOS
1、下载本代码库,可选择以下方式之一:
1)下载并解压到您的用户主目录下某个位置,或
2)在终端中,使用以下命令克隆本代码库:
git clone https://github.com/dnhkng/GLaDOS.git
2、在终端中,进入代码仓库目录并运行以下命令:
Mac/Linux:
python scripts/install.py
Windows:
python scripts\install.py
这将安装GLaDOS并下载所需的AI模型
3、要启动GLaDOS,请运行:
uv run glados
如果你想体验更炫酷的界面,可以尝试文本用户界面(TUI),使用:
uv run glados tui
三、使用
语音生成
你可以通过以下方式让她说话:
uv run glados say "The cake is real"
更换LLM模型
如需使用其他模型,请运行以下命令:
ollama pull {modelname}
然后在 glados_config.yaml 中将其添加为 model:
model: "{modelname}"
其中{modelname}
是一个占位符,需要替换为您想使用的模型。您可以在这里找到更多模型!
更改语音模型
您也可以使用Kokoro提供的语音!
请从以下选项中选择一个语音:
-
女声
- 美式英语
- af_alloy
- af_aoede
- af_jessica
- af_kore
- af_nicole
- af_nova
- af_river
- af_saraha
- af_sky
- 英式英语
- bf_alice
- bf_emma
- bf_isabella
- bf_lily
- 美式英语
-
男声
- 美式英语
- am_adam
- am_echo
- am_eric
- am_fenrir
- am_liam
- am_michael
- am_onyx
- am_puck
- 英式英语
- bm_daniel
- bm_fable
- bm_george
- bm_lewis
- 美式英语
然后将其添加到glados_config.yaml配置文件中作为语音参数,例如:
voice: "af_bella"
./install.sh
Windows:
install.bat
然后启动服务:
python -m tts_server
OpenAI 兼容的 TTS 服务器
要运行 OpenAI 兼容的 TTS 服务器,首先使用安装脚本安装依赖项:
Mac/Linux:
./install.sh
Windows:
install.bat
然后通过以下命令启动服务器:
python -m tts_server
python scripts/install.py --api
Windows:
python scripts\install.py --api
运行服务器的命令如下:
./scripts/serve
或者,您可以在 Docker 中运行服务器:
docker compose up -d --build
你可以像这样生成语音:
curl -X POST http://localhost:5050/v1/audio/speech \
-H "Content-Type: application/json" \
-d '{
"input": "Hello world! This is a test.",
"voice": "glados"
}' \
--output speech.mp3
注意:使用 Docker 运行时,服务器不会在代码变更时自动重新加载。在开发过程中,建议使用 serve
脚本在本地运行服务器。
服务器将通过 http://localhost:5050 地址访问。
更多个性化或大语言模型
复制文件 configs/glados_config.yaml
并重命名,然后编辑参数:
model: # the LLM model you want to use, see "Changing the LLM Model"
personality_preprompt:
system: # A description of who the character should be
- user: # An example of a question you might ask
- assistant: # An example of how the AI should respond
要使用这些新设置,请运行以下命令:
uv run glados start --config configs/assistant_config.yaml
四、常见问题
1、如果发现系统陷入循环(例如GLaDOS不断重复听到自己说话的声音),可通过以下两种方式解决:
方式 1、升级硬件设备。您需要使用耳机(这样GLaDOS就无法物理接收自身声音),或改用会议级麦克风/扬声器。这类设备具有硬件级消噪功能,可有效防止声学循环。
方式 2、禁用语音打断功能。该设置将禁止您和GLaDOS在系统播报时进行打断。具体操作:编辑glados_config.yaml
文件,将interruptible:
参数改为false
。
2、如需使用文本界面,请运行glados-ui.py文件而非glado.py
五 、测试子模块
想尝试玩玩AI模型吗?你可以通过探索 demo.ipynb
文件来测试这些系统。
六、参考资源
- CUDA工具包:https://developer.nvidia.com/cuda-toolkit
- ONNX Runtime:https://onnxruntime.ai/docs/install/
- Ollama模型库:https://ollama.com/library
伊织 xAI 2025-05-28