OmniSteward:LLM Agent 赋能,语音文字随心控,智能家居与电脑的超级管家

OmniSteward:LLM Agent 赋能,语音文字随心控,智能家居与电脑的超级管家

目录


一、前言

在科技日新月异的今天,人工智能正以前所未有的速度改变着我们的生活方式。从智能手机的语音助手到智能家居的自动化控制,AI技术逐渐渗透到生活的各个角落,为我们带来了便捷与高效。OmniSteward正是在这样的背景下应运而生,它作为一款基于大语言模型的全能AI管家系统,致力于打破人机交互的壁垒,为用户打造一个智能、高效、便捷的生活和工作环境。无论是忙碌的上班族希望在工作中提高效率,还是追求高品质生活的家庭用户渴望轻松掌控家居设备,OmniSteward都有可能成为他们理想的智能伙伴,引领我们进入一个全新的智能生活时代。

二、项目概述

OmniSteward是一个正在积极开发中的全能管家系统,它借助大语言模型的强大能力,实现了与用户的语音和文字交互,旨在帮助用户轻松控制智能家居设备以及管理电脑程序。该项目由ElliottZheng主要维护,在开发过程中得到了阶跃星辰开放平台【繁星计划】的支持,并遵循MIT License开源协议。其具备诸多亮点,如支持多轮对话、可调用工具执行复杂任务、兼容多种LLM模型且拓展性强,用户能够方便地自定义和分享工具。通过不断的更新与完善,OmniSteward有望成为智能生活领域的重要应用,为用户提供更加智能化、个性化的服务体验。

在这里插入图片描述

三、功能特性

  1. 多模态交互体验
    • OmniSteward提供了语音和文字两种交互模式,满足用户在不同场景下的需求。语音交互利用先进的语音识别技术,准确理解用户的语音指令;文字交互则为用户提供了精确表达复杂需求的途径。支持多轮对话功能,系统能够依据之前的对话内容和上下文,连续回答用户问题,使交互过程更加自然流畅。例如,用户可以在一系列对话中连续询问不同的问题,OmniSteward都能准确理解并给予合理回应。
  2. 强大的功能集成
    • 智能家居控制:与巴法云等平台对接,用户可通过语音或文字指令控制家中的灯光、电器、窗帘等设备。如“打开客厅空调并设置为26度”“关闭卧室所有灯光”等指令,都能精准执行,让家居生活更加便捷舒适。
    • 电脑程序管理:轻松实现电脑程序的启动、关闭以及运行状态查看。用户只需说出“启动Photoshop”“关闭正在运行的音乐播放器”“查看当前后台运行程序”等指令,即可快速操作电脑程序,提高工作效率。
    • 在线信息检索:借助step_web_search工具和Kimi AI,用户能快速获取各类在线信息。无论是查询历史事件、科学知识,还是获取实时新闻、天气预报,OmniSteward都能迅速从互联网上搜索并呈现准确结果。
    • 文件管理:支持文件检索、读写、压缩文件夹和列出文件夹内容等操作。用户可以说“查找上个月修改的文档”“在文档中添加一段文字”“压缩工作文件夹”“列出下载文件夹中的所有文件”等,方便管理电脑中的文件资源。
    • 命令行操作:满足专业用户对命令行操作的需求,用户可通过语音或文字执行复杂的命令行任务,进一步拓展了系统的应用范围。
  3. 模型灵活性与拓展性
    • 支持多种大语言模型,用户可根据自身喜好和需求切换,以获取最佳的交互效果。同时,系统具有很强的拓展性,用户能够方便地自定义工具,还可以将其分享给其他用户,共同丰富OmniSteward的功能生态。

四、技术架构

语音处理技术采用pyaudio和sounddevice等技术进行语音处理。pyaudio负责音频的输入输出,能够精确采集用户语音信号;sounddevice则在音频设备管理方面发挥关键作用,两者协同确保语音交互的高效性和准确性。AI模型应用集成了Qwen2.5、BGE Reranker和Silero VAD等先进模型。Qwen2.5作为核心语言模型,具备强大的语言理解和生成能力;BGE Reranker用于优化搜索结果排序;Silero
VAD实现精准的语音活动检测,提高语音识别效率。Web服务架构后端基于Flask框架构建Web服务,利用zerorpc实现高效的远程过程调用,保障前后端之间的稳定通信,确保用户在不同设备上都能流畅使用OmniSteward。浏览器自动化技术运用Selenium实现浏览器自动化操作,能够模拟用户在浏览器中的行为,如自动打开网页、输入搜索关键词、提取信息等,为在线信息检索等功能提供支持。其他辅助技术requests用于发送HTTP请求,与外部Web服务交互数据;beautifulsoup4用于解析HTML和XML文档,从网页中精准提取所需信息,共同增强了系统的数据处理能力。

五、安装与使用

1、系统要求

确保您的设备已安装Python 3.8及以上版本,因为项目的运行依赖于该版本的Python环境。
需安装Chrome浏览器,这是用于实现Kimi AI功能的必要组件。需要注意的是,目前OmniSteward主要在Windows操作系统上进行了功能测试,Linux和Mac系统的部分功能兼容性尚未完全确定。

2、安装步骤

  1. 克隆仓库
    打开命令行终端(如CMD或PowerShell),输入以下命令克隆OmniSteward项目仓库到本地:
git clone https://github.com/OmniSteward/OmniSteward.git 

克隆完成后,使用cd命令进入项目目录:

cd OmniSteward 
  1. 安装依赖
    在项目目录中,执行以下命令安装项目所需的依赖项:
pip install-r requirements.txt 

3、环境变量配置

  1. 打开项目中的examples/env.cmd文件,您需要在该文件中配置一系列环境变量,具体如下:
OPENAI_API_BASE=your_api_base # OpenAI格式API基础URLOPENAI_API_KEY=your_api_key # OpenAI格式API密钥SILICON_FLOW_API_KEY=your_api_key # Silicon Flow API密钥,用于ASR, ReRank, 获取方式参见[大语言模型平台](docs/PLATFORM.md)BEMFA_UID=your_bemfa_uid # 巴法云平台UID(可选,用于巴法智能家居控制)BEMFA_TOPIC=your_bemfa_topic # 巴法云平台Topic(可选,用于巴法智能家居控制)KIMI_PROFILE_PATH=path_to_chrome_profile # Chrome用户数据目录(可选,用于Kimi AI功能,不填则使用默认路径)LOCATION=your_location # 你的地理位置(可选,用于系统提示词)LLM_MODEL=your_llm_model # 使用的LLM模型,可选,默认使用Qwen2.5-7B-Instruct

备注:获取OPENAI格式的API密钥和API基础URL参见大语言模型平台:
https://github.com/OmniSteward/OmniSteward/blob/main/docs/PLATFORM.md

4、启动方式

OmniSteward支持两种使用方式,即命令行模式(CLI)和Web模式,您可以根据实际需求选择合适的启动方式。

4.1 命令行模式(CLI)

  1. 环境变量配置(重要)
    在启动命令行模式之前,请务必先在examples/env.cmd文件中按照上述要求正确配置环境变量,确保系统能够正常运行所需的各项服务和功能。
  2. 麦克风语音输入模式
    首先,启动VAD(语音活动检测)服务,在命令行中输入:
python -m servers.vad_rpc 

启动VAD服务后,新开一个命令行窗口,执行以下命令使环境变量生效并运行CLI:

call examples\env.cmd python -m core.cli --config configs/cli.py 

更多关于麦克风语音输入模式的详细信息,可查看examples/cli_voice.cmd文件。

  1. 文字输入模式
    若您希望使用文字输入方式与OmniSteward交互,在配置好环境变量后,在命令行中输入:
call examples\env.cmd python -m core.cli --query"打开网易云音乐"--config configs/cli.py 

您可以将双引号中的指令替换为您实际需要执行的操作。例如,如果您想查询天气信息,可将指令改为“查询今天北京的天气”。

  1. 简单添加自定义工具
    如果您想要添加自定义工具,首先确保环境变量已生效,然后在命令行中输入:
call examples\env.cmd python -m core.cli --query"打印 你好"--config configs/cli_custom_tool.py 

此示例在configs/cli_custom_tool.py文件中添加了一个简单的打印工具,您可以查看该文件了解如何添加自定义工具。您可以根据自己的需求修改该文件,实现更复杂的自定义功能。例如,如果您想添加一个计算工具,可在该文件中编写相应的计算函数,并在命令行中使用类似的方式调用。

4.2 Web模式

  1. 环境变量配置(重要)
    同样,在使用Web模式之前,要先在examples/env.cmd文件中正确配置环境变量,尤其是Silicon Flow API密钥,否则系统将无法正常运行。
  2. 启动后端服务
    在项目根目录下,执行以下命令配置环境变量并启动后端服务:
call examples\env.cmd python -m servers.steward --config configs/backend.py 
  1. 启动前端服务
    前端服务的启动请详见OmniSteward - Frontend项目的相关说明。一般来说,您需要按照该项目提供的步骤进行安装和启动操作。
  2. 使用
    完成后端和前端服务的启动后,使用Chrome/Edge浏览器,打开http://localhost:8000,即可开始使用OmniSteward。如果您需要在外网使用,由于Chrome/Edge默认禁止HTTP下的麦克风,您需要进行额外的设置。具体操作是,在浏览器地址栏中输入chrome://flags/#unsafely - treat - insecure - origin - as - secure,将其值设置为http://ip:port(其中ip为您的服务器IP地址,port为端口号)。手机上使用时,同样可以使用Chrome或者Edge浏览器,打开http://ip:port,并按照上述方法进行设置后即可开始使用。

六、应用场景与未来展望

1、家庭生活场景
在家庭生活中,OmniSteward成为智能家居的控制中心。早晨,用户可通过语音指令让其打开窗帘、播放音乐,开启美好的一天;晚上,可控制灯光关闭、设置闹钟等。做家务时,能随时查询菜谱、获取清洁技巧。还可用于家庭账单查询、日程安排等,使家庭生活更加有序。

2、 办公学习场景
在办公场景下,帮助用户快速启动办公软件、查找资料、管理文件,如“打开PPT并切换到演示模式”“查找项目相关文档”“总结报告要点”等指令,有效提高办公效率。对于学生学习,可作为智能学习伙伴,解答学习问题、推荐学习资源,如“解释物理公式”“推荐数学学习网站”等,助力学习进步。

3、未来发展趋势
随着技术的不断进步,OmniSteward将在更多领域发挥重要作用。在智能家居方面,与更多设备深度集成,实现更个性化的家居控制;在智能健康领域,与健康监测设备结合提供健康建议;在智能交通领域,与车辆系统对接实现语音控制和交通信息查询。其模型将不断优化,功能持续拓展,为用户带来更加智能、便捷、舒适的生活体验。

七、结语

OmniSteward作为一款充满潜力的全能AI管家系统,以其丰富的功能、先进的技术架构和广阔的应用前景,为我们展示了智能生活的美好画卷。尽管目前仍处于积极开发阶段,部分功能有待完善,但它已经迈出了坚实的步伐。在未来,随着技术的持续创新和应用场景的不断拓展,OmniSteward有望成为智能生活领域的核心应用,彻底改变我们与智能设备的交互方式,让我们的生活更加智能化、便捷化。期待OmniSteward在不断发展中为我们带来更多的惊喜,引领我们走进一个更加智能的新时代。

项目地址:https://github.com/OmniSteward/OmniSteward

在这里插入图片描述

🎯🔖更多专栏系列文章:AI大模型提示工程完全指南AI大模型探索之路(零基础入门)AI大模型预训练微调进阶AI大模型开源精选实践AI大模型RAG应用探索实践🔥🔥🔥 其他专栏可以查看博客主页📑

😎 作者介绍:我是寻道AI小兵,资深程序老猿,从业10年+、互联网系统架构师,目前专注于AIGC的探索。
📖 技术交流:欢迎关注【小兵的AI视界】公众号或扫描下方👇二维码,加入技术交流群,开启编程探索之旅。
💘精心准备📚500本编程经典书籍、💎AI专业教程,以及高效AI工具。等你加入,与我们一同成长,共铸辉煌未来。
如果文章内容对您有所触动,别忘了点赞、⭐关注,收藏!加入我,让我们携手同行AI的探索之旅,一起开启智能时代的大门!

Read more

从零构建高效镜像加速网络:1Panel与Open-WebUI的实战优化指南

从零构建高效镜像加速网络:1Panel与Open-WebUI的实战优化指南 在混合云与容器化部署成为主流的今天,镜像下载速度直接决定了DevOps流程的效率。当团队需要频繁部署基于ghcr.io的AI应用(如Open-WebUI)时,跨国网络延迟可能使镜像拉取时间从几分钟延长至数小时。本文将揭示如何通过1Panel面板与Open-WebUI的深度整合,构建企业级镜像加速网络。 1. 镜像加速的核心架构设计 传统单点加速方案往往只解决表面问题,而真正的企业级加速需要三层架构支撑: 1. 边缘缓存层:利用地理位置最近的镜像站(如南京大学镜像站)作为第一跳 2. 智能路由层:根据实时网络质量自动选择最优链路 3. 本地缓存层:在集群内部建立持久化缓存减少重复下载 以Open-WebUI的3.39GB镜像为例,通过优化前后对比: 方案类型下载耗时带宽利用率失败率直连ghcr.io82分钟35%28%单镜像站加速15分钟68%5%三级加速架构6分钟92%0.1% 实现这一架构需要修改Docker的daemon.json配置: { "registry-mirrors

【Web开发】从入门到精通,全面解析 Web 开发的过去、现在与未来

【Web开发】从入门到精通,全面解析 Web 开发的过去、现在与未来

目录 一、Web 开发概述:重新理解 “构建互联网的技术” 1.1 Web 的诞生:一个改变世界的 “简单想法” 1.2 Web 开发的核心定义:不是 “写网页”,而是 “构建交互系统” 1.3 Web 开发的三大分支:前端、后端与全栈 1.3.1 前端开发:用户 “看得到、摸得着” 的层 1.3.2 后端开发:用户 “看不到,但离不开” 的层 1.3.3 全栈开发:“打通前后端” 的全能角色 1.4

UniApp + Dify 实战:详解 SSE 流式响应的解析与前端渲染

UniApp + Dify 实战:详解 SSE 流式响应的解析与前端渲染

1. 理解核心机制:拼接而非替换 Dify 的 streaming 模式下,服务器会不断推送形如 data: {"event": "message", "answer": "字"} 的数据包。 核心逻辑是: 收到一个包,解析出 answer 字段,将其**追加(Append)**到当前正在显示的对话变量后,而不是直接替换。 2. 关键数据解析逻辑 Dify 返回的数据流格式如下: data: {"event": "message", "answer": "我", ...}\n\

新手必看:用Qwen3Guard-Gen-WEB快速搭建AI内容过滤系统

新手必看:用Qwen3Guard-Gen-WEB快速搭建AI内容过滤系统 你是不是也遇到过这些问题: 刚上线的AI客服突然冒出一句不合时宜的回复; 用户上传的UGC内容里藏着谐音梗黑话,规则引擎完全识别不了; 团队想出海,结果发现每加一种语言就得重训一个审核模型,运维成本翻倍…… 别再靠人工盯屏、关键词黑名单和临时补丁硬扛了。今天带你用一行命令、三步操作、零代码基础,把阿里开源的安全审核能力直接“搬进”你的工作流——不是概念演示,不是本地跑通就完事,而是真正能立刻用起来、看得见效果、管得住风险的内容过滤系统。 这个镜像叫 Qwen3Guard-Gen-WEB,它不烧显卡、不调参数、不写API胶水代码,打开浏览器就能开始审核。哪怕你昨天才第一次听说“大模型安全”,今天也能亲手搭起一道靠谱的防线。 1. 这不是另一个“关键词过滤器”,而是一套会思考的审核大脑 1.1 它到底在做什么? 先说清楚:Qwen3Guard-Gen-WEB 不是传统意义上的“分类模型”。它背后运行的是 Qwen3Guard-Gen-8B —— 阿里云通义实验室专为内容安全打造的生成式审核模型。它的核心