项目介绍:Python-ai-assistant
概述
Python-ai-assistant,昵称Jarvis,是一个基于Python 3.8的智能语音助手。它可以识别用户的语音并执行基本命令。这款语音助手旨在通过自然的语音交互帮助用户完成日常任务,提高工作效率。
系统要求
- 操作系统:Ubuntu 20.04 (Focal Fossa)
- Python版本:3.8.x
助手功能
Jarvis具有广泛的技能集,以下是一些核心功能:
- 打开网页:如"Jarvis open youtube"
- 播放音乐:如"Jarvis play mozart"
- 调节音量:如"Jarvis volume up"
- 打开LibreOffice程序:如"Jarvis open calc"
- 信息查询:可通过互联网搜索解答用户问题,如"Jarvis tells me about oranges"
- 报告天气:如"Jarvis tell me the weather in London"
- 报告当前时间和日期:如"Jarvis tell me time or date"
- 设置闹钟:如"Jarvis create a new alarm"
- 检查网络连接:如"Jarvis is the internet connection ok?"
- 报告每日新闻:如"Jarvis tell me today news"
- 拼写单词:如"Jarvis spell me the word animal"
- 创建提醒:如"Jarvis create a 10 minutes reminder"
- 打开Linux应用程序:如"Jarvis open bash/firefox"
- 列表已学习的技能:如"Jarvis tell me your skills"
- 报告当前位置:如"Jarvis tell me your current location"
- 报告内存使用情况:如"Jarvis tell me your memory consumption"
助手特色
- 异步命令执行及语音识别:支持同步和异步的文本及语音输入。
- 多种输入模式:支持文本和语音两种输入模式,用户可以选择最适合他们的方式。
- 可配置的助手名称:用户可以在运行时更改助手的名字。
- 日志预览和指令历史记录:在控制台中展示并记录用户的所有指令。
- 学习模式:Jarvis可以记住或学习新的响应。
快速开始
创建第三方API的Key
Jarvis使用第三方API进行功能扩展,如语音识别、天气预报等服务。需要注册并获取免费的API Key。
- OpenWeatherMap:天气预报API
- WolframAlpha:回答问题的API
- IPSTACK:获取当前位置的API
在Ubuntu/Debian系统中设置Jarvis
-
下载Jarvis代码库:
git clone https://github.com/ggeop/Jarvis.git --branch master
-
更改工作目录:
cd Jarvis
-
设置Jarvis及其系统依赖:
bash setup.sh
-
在设置文件中添加API Key:
nano Jarvis/src/jarvis/jarvis/setting.py
-
启动助手服务:
bash run_jarvis.sh
添加新技能
要为Jarvis添加新技能,只需按照以下步骤操作:
- 在
skills/registry.py
中创建新的技能配置。 - 在
skills/collection
中创建新的技能模块。
贡献指南
- 欢迎提交PR!请按照以下流程贡献代码:
- 克隆项目
- 切换到
develop
分支并创建新的功能分支 - 提交PR到
develop
- 等待审查和批准
Jarvis的更新和发布过程由Travis CI/CD自动控制。请尽量遵循PEP-8指南并添加有用的代码注释。
相关项目
如果对Jarvis感兴趣,可能还会喜欢其他的AI项目,例如DataDialogue,它能够让用户通过自然语言查询数据库并获得数据可视化,甚至无需SQL知识。