小智客户端是一个基于Flutter框架开发的跨平台AI助手应用,支持Android、iOS、Web、Windows、macOS和Linux等多个平台。它通过WebSocket技术实现实时语音交互和文字对话,用户可以随时随地与AI助手沟通。项目托管在GitHub,由开发者shenjingnan维护,基于小智(xiaozhi-server)生态系统,提供灵活的服务配置和多平台支持。客户端支持多种AI服务提供商,拥有语音识别、文字对话和智能设备控制等功能,适合个人用户和开发者使用。界面简洁,操作流畅,适配深色和浅色主题,为用户提供便捷的交互体验。
功能列表
- 实时语音交互:支持用户通过语音与AI助手对话,具备回音消除和语音打断功能。
- 文字对话:提供流畅的文字输入和输出,适合快速查询或复杂对话。
- 多平台支持:一套代码运行在Android、iOS、Web、Windows、macOS和Linux。
- 服务配置管理:支持配置多个小智服务地址、WebSocket URL、Token认证和自定义MAC地址。
- Dify服务集成:支持配置多个Dify服务,管理API密钥和服务器URL。
- 模型选择与参数调整:支持OpenAI接口、Qwen3模型开关思考模式及温度等参数配置。
- 深色/浅色主题:适配不同显示模式,提升用户体验。
- 增强语音识别:优化语音识别准确性,支持文字和语音混合会话。
- OTA自动注册:支持设备自动注册,简化部署流程。
- 智能设备控制:集成MIot功能,支持控制米家设备。
- Live2D模型切换:内置免费Live2D模型,支持自由导入和多模型切换。
- 创新心情模式:根据用户情绪调整交互方式,增强个性化体验。
使用帮助
安装流程
小智客户端基于Flutter开发,需安装Flutter环境才能运行或构建应用。以下是详细安装步骤:
- 安装Flutter环境
- 访问Flutter官方网站,下载并安装Flutter SDK(支持Windows、macOS、Linux)。
- 配置环境变量,确保命令行可以运行
flutter
命令。 - 运行
flutter doctor
检查环境是否配置正确,安装缺失的依赖(如Android SDK或Xcode)。
- 克隆项目
- 打开终端,运行以下命令克隆小智客户端代码:
git clone https://github.com/shenjingnan/xiaozhi-client.git
- 进入项目目录:
cd xiaozhi-client
- 打开终端,运行以下命令克隆小智客户端代码:
- 安装依赖
- 在项目目录下运行以下命令,安装必要的Flutter依赖:
flutter pub get
- 在项目目录下运行以下命令,安装必要的Flutter依赖:
- 运行应用
- 连接设备(Android/iOS模拟器或真机),运行以下命令启动应用:
flutter run
- 应用会在调试模式下运行,可在设备上查看效果。
- 连接设备(Android/iOS模拟器或真机),运行以下命令启动应用:
- 构建发布版本
- 为Android设备构建APK:
flutter build apk --release
- 为iOS设备构建IPA(需在macOS上运行):
flutter build ios --release
- 为Web平台构建:
flutter build web --release
- 注意:iOS编译完成后,需在设备设置中开启网络权限。
- 为Android设备构建APK:
使用主要功能
小智客户端的核心功能是语音和文字交互,以下是详细操作说明:
- 语音交互
- 打开应用,点击主界面上的麦克风图标进入语音模式。
- 对着设备说话,客户端会实时识别语音并转换为文字。
- AI助手会根据输入内容生成语音或文字回复。
- 如果环境嘈杂,启用回音消除功能(在设置中开启),可提高识别准确性。
- 支持语音打断功能:对话时可随时说“停止”或“重新说”,中断当前回复并重新输入。
- 文字对话
- 在主界面输入框中输入问题或指令,点击发送按钮。
- AI助手会快速生成文字回复,支持复杂问题解答或多轮对话。
- 文字和语音模式可混合使用,例如用语音提问后查看文字回复。
- 服务配置管理
- 进入设置页面,添加小智服务地址(WebSocket URL)。
- 输入Token进行认证,确保与服务器安全连接。
- 可配置多个Dify服务,输入API密钥和服务器URL,选择需要的AI模型(如OpenAI或Qwen3)。
- 调整模型参数(如温度)以控制回复的创造性或准确性。
- 智能设备控制
- 在设置中启用MIot功能,连接米家设备(如智能灯或空调)。
- 使用语音指令(如“打开客厅灯”)或文字输入控制设备。
- 确保设备和客户端在同一网络环境下。
- Live2D模型切换
- 应用内置两个免费Live2D模型,进入设置页面可切换模型。
- 支持导入自定义Live2D模型:将模型文件放入指定目录(参考文档),然后在设置中选择。
- 模型会随对话动态显示,提升交互趣味性。
- 主题切换
- 在设置中选择深色或浅色主题,适配不同光线环境。
- 主题切换实时生效,无需重启应用。
- 心情模式
- 开启心情模式后,AI会根据用户输入的情绪关键词(如“开心”或“疲惫”)调整回复语气。
- 例如,说“我今天很累”,AI会以更温和的语气回复,增强用户体验。
注意事项
- 确保网络稳定,语音交互需要实时连接服务器。
- iOS用户需在首次运行时授予麦克风和网络权限。
- 定期检查GitHub仓库更新,获取最新功能和修复。
- 如果使用Dify服务,需提前在Dify平台注册并获取API密钥。
应用场景
- 日常助手
用户可以用小智客户端查询天气、设置提醒或解答问题。例如,忙碌的上班族可以通过语音指令快速查询日程或控制家中智能设备。 - 学习辅助
学生可以用文字对话功能向AI提问学术问题,获取详细解答。支持OpenAI接口的图文交互功能适合分析复杂文档或图片。 - 智能家居控制
用户通过语音或文字指令控制米家设备,例如打开空调或调节灯光,适合打造智能生活环境。 - 开发者调试
开发者可以利用服务配置功能测试不同的AI模型和参数,快速验证WebSocket连接或Dify服务集成效果。
QA
- 小智客户端支持哪些平台?
它支持Android、iOS、Web、Windows、macOS和Linux,使用Flutter开发,一套代码适配多平台。 - 如何提高语音识别准确性?
在安静环境下使用,开启回音消除功能,并在设置中选择高质量的语音识别模型。 - 是否需要服务器支持?
是的,需连接小智服务器(xiaozhi-server)或Dify服务,配置正确的WebSocket URL和API密钥。 - 如何导入自定义Live2D模型?
将模型文件放入应用指定目录(参考文档),然后在设置中选择导入的模型。 - 支持哪些AI模型?
支持OpenAI、Qwen3等多种模型,用户可在设置中选择并调整参数。