susi_server
susi_server 是开源智能个人助手 SUSI.AI 的核心后端服务,相当于整个系统的“大脑”。它负责存储和处理助手的“智慧”与“个性”,通过 API 支持聊天和语音交互,帮助用户完成播放音乐、设置闹钟、查询天气交通等实时任务,并能根据上下文主动追问以提供更精准的服务。
这一工具主要解决了开发者构建自定义智能助手时缺乏可控后端的问题。不同于依赖封闭云服务的商业方案,susi_server 允许用户完全掌控数据与逻辑,轻松集成外部 API 以扩展功能,实现真正私有化、可定制的 AI 助理部署。
susi_server 特别适合开发者、研究人员及技术爱好者使用。如果你希望深入理解对话式 AI 的运作机制,或打算为特定场景(如智能家居、企业客服)打造专属助手,它将提供坚实的基础架构。普通用户若具备一定技术背景,也可尝试在本地服务器或树莓派等设备上搭建属于自己的智能伙伴。
技术亮点方面,susi_server 采用 Java 编写,支持跨平台运行,并提供 Docker 一键部署及自动升级机制。其架构设计灵活,既能作为独立服务运行,也能轻松对接 Android 和 Web 前端,是探索开源人工智能领域的优质起点。
使用场景
一家初创团队希望为视障用户打造一款完全自主可控的离线语音助手,需集成天气查询、待办事项管理及音乐播放功能。
没有 susi_server 时
- 团队必须分别对接多个第三方商业 API,导致数据隐私难以保障且高昂的调用费用超出预算。
- 缺乏统一的上下文理解核心,助手无法在多轮对话中记忆用户意图,每次交互都需重新输入完整指令。
- 功能扩展极其僵化,每新增一项服务(如播客流媒体)都需要重写大量后端胶水代码,开发周期漫长。
- 部署依赖复杂,难以在树莓派等低功耗边缘设备上运行完整的智能逻辑,限制了离线场景的应用。
使用 susi_server 后
- 利用 susi_server 内置的智能核心统一处理所有请求,数据完全本地化或私有云部署,彻底消除隐私泄露风险并节省成本。
- 借助其原生的上下文感知能力,助手能主动追问缺失信息(如“你想听哪里的天气?”),实现自然流畅的多轮交互。
- 通过简单的控制台服务配置即可接入外部 API,快速扩展音乐播放、闹钟设置等功能,无需重构底层架构。
- 支持基于 Java 的轻量级编译与跨平台部署,轻松运行在 Armv6 架构的树莓派上,让离线智能助手成为现实。
susi_server 将分散的接口整合为具有“人格”的智能中枢,让开发者能以极低门槛构建隐私安全且功能丰富的个人助理。
运行环境要求
- Linux
- macOS
- Windows
未说明
最低 200MB (启动参数 -Xmx200m)

快速开始
################## SUSI.AI 服务器 ##################
|加入聊天室:https://gitter.im/fossasia/susi_server| |Docker 拉取次数| |构建状态| |未解决问题占比| |平均问题解决时间| |Twitter| |Twitter 关注|
SUSI.AI 是一款智能的开源个人助理。它能够通过 API 进行聊天和语音交互,执行诸如播放音乐、创建待办事项清单、设置闹钟、收听播客、播放有声读物以及提供天气、交通等实时信息等操作。此外,还可以利用外部 API 将其他功能作为控制台服务添加进来。SUSI.AI 能够回答问题,并根据上下文请求更多信息以完成用户所需的操作。该助理的核心是 SUSI.AI 服务器,它承载着 SUSI.AI 的“智能”和“个性”。Android 和 Web 应用程序则通过 API 从托管服务器获取信息。
部署
开发环境: GitHub 开发分支的自动部署可用于测试,地址为 https://susi-server.herokuapp.com
主分支: 计划将主分支部署到 https://api.susi.ai。目前,部署每小时在 xx.45 分钟使用开发分支进行。我们计划很快切换到主分支用于生产环境。
部署分支
有两个分支用于部署:“dev-dist”和“stable-dist”。前者旨在与“susi_linux”的开发版本配合使用,而后者则与来自“master”分支的稳定版本一起使用。这两个分支目前仍需手动从“susi_server_binary_latest.tar.gz”更新(见下文),但未来的集成将定期更新“dev-dist”。
沟通
请加入我们的邮件列表讨论项目相关问题:https://groups.google.com/forum/#!forum/opntec-dev/
我们的聊天频道在 gitter 上:https://gitter.im/fossasia/susi_server
如何安装 Susi:下载、构建、运行
.. note::
- 您必须登录 Docker Cloud 才能使按钮正常工作。如果您未登录,将会看到 404 错误。
|在 Scalingo 上部署| |在 Docker Cloud 上部署| |在 Azure 上部署|
目前,SUSI.AI 尚未提供编译好的形式,您可以轻松自行构建。这并不困难,只需一分钟即可完成!源代码托管在 https://github.com/fossasia/susi_server,您可以下载并运行 SUSI.AI(在安装之前,您需要在 http://openjdk.java.net/install/ 安装最新版本的“Java 开发工具包”,并在 https://gradle.org/install/ 安装最新版本的“Gradle”):
.. note:: - 对于 Armv6 处理器(例如 Raspberry Pi Zero / Zero W/ Zero WH/ 1A / 1B),请确保您的系统使用 Java 8(Oracle 或 OpenJDK),因为 Armv6 处理器存在一些兼容性问题。 - 您可以使用以下命令安装 OpenJDK 的 Java 8 JRE 和 JDK:
::
> sudo apt install openjdk-8-jdk-headless
::
> git clone https://github.com/fossasia/susi_server.git
> cd susi_server
> ./gradlew build
> bin/start.sh
对于 Windows 用户(使用 GitBash/Cygwin 或任何终端):
::
> git clone https://github.com/fossasia/susi_server.git
> cd susi_server
> git checkout master
> ant jar
> java -jar dist/susiserver.jar
> git checkout development
> ant jar
> java -jar dist/susiserver.jar
::
停止:
> 按 Ctrl+C
所有服务器进程启动后,SUSI.AI 会尝试自动打开浏览器页面。如果未自动打开,请手动访问 http://localhost:4000;如果您是在无头或远程服务器上安装的,则需将“localhost”替换为您的服务器名称。
要停止 SUSI.AI,请运行:(此命令会阻塞,直到服务器完全停止)
::
> bin/stop.sh
还有一个自动升级流程,需通过 shell 命令触发。只需运行:
::
> bin/upgrade.sh
在哪里可以下载 SUSI.AI 的预编译版本?
最新的二进制文件可以从以下链接下载: http://download.susi.ai/susi_server/susi_server_binary_latest.tar.gz
运行 Susi 的步骤如下: tar xfz susi_server_binary_latest.tar.gz cd susi_server_binary_latest java -server -Xmx200m -jar build/libs/susi_server-all.jar
如何在 Google Cloud 上使用 Docker 安装 SUSI.AI?
要在 Google Cloud 上使用 Docker 安装 SUSI.AI,请参阅 Susi Docker 安装说明 </docs/installation/installation_docker_gcloud.md>__。
如何在 AWS 上使用 Docker 安装 SUSI.AI?
要在 AWS 上使用 Docker 安装 SUSI.AI,请参阅 Susi Docker 安装说明 </docs/installation/installation_docker_aws.md>__。
如何在 Bluemix 上使用 Docker 安装 SUSI.AI?
要在 Bluemix 上使用 Docker 安装 SUSI.AI,请参阅 Susi Docker 安装说明 </docs/installation/installation_docker_bluemix.md>__。
如何在 Microsoft Azure 上使用 Docker 安装 SUSI.AI?
要在 Azure 上使用 Docker 安装 SUSI.AI,请参阅 Susi Docker 安装说明 </docs/installation/installation_docker_azure.md>__。
如何在 Digital Ocean 上使用 Docker 安装 SUSI.AI?
要在 Digital Ocean 上使用 Docker 安装 SUSI.AI,请参阅 Susi Docker 安装说明 </docs/installation/installation_docker_digitalocean.md>__。
如何使用 Heroku 部署 SUSI.AI?
您可以通过点击上方的“Deploy to Heroku”按钮轻松部署到 Heroku。要使用 Heroku Toolbelt 安装 SUSI.AI,请参阅 Susi Heroku 安装说明 </docs/installation/installation_heroku.md>__。
如何使用 cloud9 部署 SUSI.AI?
要使用 cloud9 安装 SUSI.AI,请参阅 Susi cloud9 安装说明 </docs/installation/installation_cloud9.md>__。
如何在 Eclipse 上设置 SUSI.AI?
要在 Eclipse 上安装 SUSI.AI,请参阅 Susi Eclipse 安装说明 </docs/installation/eclipseSetup.md>__。
如何使用 Travis 自动部署到 VPS?
要使用 Travis 自动部署 SUSI.AI 到 VPS,请参阅 readme 文件 </docs/installation/auto_deploy_to_vps_with_travis.md>__。
如何运行 SUSI.AI?
- 构建 Susi(只需执行一次,详见上文)
- 运行
bin/start.sh - 在浏览器中打开
http://localhost:4000 - 要关闭 Susi,运行
bin/stop.sh
如何配置 SUSI.AI?
基础配置文件位于 conf/config.properties。要自定义这些设置,请将 customized_config.properties 文件放置在 data/settings/ 路径下。
如何使用 Gradle 编译?
在 Ubuntu 上安装 Gradle: ::
$ sudo add-apt-repository ppa:cwchien/gradle $ sudo apt-get update $ sudo apt-get install gradle在 Mac OS X 上使用 Homebrew 安装 Gradle ::
brew install gradle要编译,首先创建 Gradle 所需的目录 ::
./gradle_init.sh将源代码编译成类文件和 JAR 文件 ::
gradle assemble编译后的文件可以在 build 目录中找到。最后,清理一下,以便我们仍然可以使用 Ant 构建项目。 :: ./gradle_clean.sh
如何为 SUSI.AI 开发技能(AI 对话规则)?
SUSI.AI 的技能语言在 技能开发教程 <https://github.com/fossasia/susi_skill_cms/blob/master/docs/Skill_Tutorial.md>__ 中有详细说明。
如何在 SUSI.AI 服务器中使用 Susi 技能数据?
如果您只是想将您的技能添加到 SUSI.AI 在线服务中,请访问 https://skills.susi.ai 并添加您的技能。
对于您自己的部署:Susi 技能数据 <https://github.com/fossasia/susi_skill_data>__ 是存储 Susi 技能的地方。要让 Susi 服务器使用这些技能,需要将 Susi 技能数据与 Susi 服务器一起克隆:
::
git clone https://github.com/fossasia/susi_skill_data.git
如果您想在本地服务器上创建私有技能,应该在 Susi 服务器旁边创建一个本地 Git 仓库 susi_private_skill_data。然后您必须创建一个本地 Git 仓库托管:
::
> cd <上述 susi 主目录>
> mkdir susi_private_skill_data_host
> cd susi_private_skill_data_host
> git init —bare
> cd ../susi_private_skill_data
> git remote add origin <susi_private_skill_data_host 的路径>
> git push --set-upstream origin master
为什么我应该使用 SUSI.AI?
如果您想创建属于自己的 AI,那么您可以考虑使用 SUSI.AI。
在哪里可以找到 API 文档?
文档可以在这里找到:API 文档 <https://github.com/fossasia/susi_server/tree/development/docs/api/api.md>__。
在哪里可以找到 JavaDoc?
您可以通过运行 'ant javadoc' 来生成它们。
我在哪里可以报告 bug 并提出功能请求?
该项目被视为社区协作项目。开发团队也包括您。我们非常感谢您的拉取请求。因此,如果您发现某些地方可以改进,请您自己动手修复并提交拉取请求。如果您发现了 bug,请尝试自行修复。如果您向我们报告 bug,我们可能会考虑它,但那通常会是在大量不断增长的工作之后才会被处理。让您能够推动问题解决的最佳方式就是您亲自尝试解决。我们的 问题跟踪器在此 <https://github.com/fossasia/susi_server/issues>__。
开发工作流程是怎样的?
修复问题
步骤 1:选择一个要修复的问题
选择问题后:
- 在问题中留言,说明您正在处理该问题。
- 我们希望您通过评论或在 Gitter 聊天中讨论解决方案。
- 建议定期更新问题的状态或进展。
步骤 2:分支策略
从您的 development 分支开始,并确保它与提交者仓库的 development 分支保持最新。请务必只在 development 分支上工作。执行命令:git pull upstream development
如果您尚未添加上游仓库,请按照 此处 <https://help.github.com/articles/configuring-a-remote-for-a-fork/>__ 的步骤操作。
步骤 3:编码规范
- 请帮助我们遵循最佳实践,以便于审查者和贡献者的工作。我们更关注代码质量,而不是管理拉取请求的流程。
- 每个拉取请求只提交一次。
- 提交信息应遵循
提交风格指南 <docs/commitStyle.md>__。 - 遵循统一的设计规范。整个应用的设计语言必须保持一致。
- 只有在提交被压缩合并后,拉取请求才会被合并。如果拉取请求中有多个提交,提交者需要自行压缩合并,而不是由维护者挑选并合并。
- 如果您不了解什么是提交压缩合并,请参阅
此处 <http://stackoverflow.com/a/35704829/6181189>__。 - 如果拉取请求涉及前端更改,请在拉取请求描述中附上相关的截图。
步骤 4:提交拉取请求
一旦打开拉取请求,尽量在两周内完成,或者至少保持积极的参与。长时间不活动可能导致拉取请求被关闭。如前所述,定期更新状态是有帮助的。
步骤 5:代码审查
您的代码将按以下顺序被审查:
- Travis CI:通过构建和运行测试。如果有测试失败,构建将被标记为失败。您可以查看 CI 日志以确定哪些测试失败。请确保所有测试都通过后再触发下一次构建。
- CI 日志还将包含允许您在本地运行失败测试的命令。
- 审查者:核心团队成员将被指定为该拉取请求的审查者,他将批准您的拉取请求或提出修改建议。
软件许可证是什么?
LGPL 2.1 <LICENSE>__
.. |加入聊天室 https://gitter.im/fossasia/susi_server| image:: https://badges.gitter.im/fossasia/susi_server.svg :target: https://gitter.im/fossasia/susi_server?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge .. |Docker 拉取次数| image:: https://img.shields.io/docker/pulls/fossasia/susi_server.svg?maxAge=2592000?style=flat-square :target: https://hub.docker.com/r/fossasia/susi_server .. |构建状态| image:: https://travis-ci.org/fossasia/susi_server.svg?branch=development :target: https://travis-ci.org/fossasia/susi_server .. |仍未解决的问题百分比| image:: http://isitmaintained.com/badge/open/fossasia/susi_server.svg :target: http://isitmaintained.com/project/fossasia/susi_server .. |平均问题解决时间| image:: http://isitmaintained.com/badge/resolution/fossasia/susi_server.svg :target: http://isitmaintained.com/project/fossasia/susi_server .. |Twitter| image:: https://img.shields.io/twitter/url/http/shields.io.svg?style=social :target: https://twitter.com/intent/tweet?text=Wow%20Check%20Susi%20on%20@gitHub%20@susiai_:%20https://github.com/fossasia/susi_server%20&url=%5Bobject%20Object%5D .. |Twitter 关注| image:: https://img.shields.io/twitter/follow/susiai_.svg?style=social&label=关注&maxAge=2592000?style=flat-square :target: https://twitter.com/susiai_ .. |部署| image:: https://www.herokucdn.com/deploy/button.svg :target: https://heroku.com/deploy?template=https://github.com/fossasia/susi_server/tree/development .. |在 Scalingo 部署| image:: https://cdn.scalingo.com/deploy/button.svg :target: https://my.scalingo.com/deploy?source=https://github.com/fossasia/susi_server .. |部署到 Docker Cloud| image:: https://files.cloud.docker.com/images/deploy-to-dockercloud.svg :target: https://cloud.docker.com/stack/deploy/ .. |部署到 Azure| image:: https://azuredeploy.net/deploybutton.svg :target: https://deploy.azure.com/?repository=https://github.com/fossasia/susi_server
版本历史
v0.12018/10/31相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
gemini-cli
gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。
LLMs-from-scratch
LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备