lux
用 Elixir BEAM 模型编排多 AI 智能体,语言无关、支持 Claude API、Web3
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
用 Elixir BEAM 模型编排多 AI 智能体,语言无关、支持 Claude API、Web3
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
Spectral Finance 推出的 Lux 是一个用 Elixir 编写的多智能体(Multi-Agent)编排框架,主打语言无关性和结构化通信。在 AI Agent 浪潮中,大多数框架绑定了 Python 生态,而 Lux 选择了一条不同的路——用 Elixir 的 Actor 模型天然处理并发和容错,用 Signal 协议保证跨语言类型安全。

图1:Spectral Finance 组织头像
Spectral Labs 团队发现,在复杂的 AI 工作流中,容错和并发 是两个核心挑战。Python 的 GIL 限制了真正的并行,而 asyncio 只是协程级别的并发。Elixir 基于 BEAM 虚拟机(Erlang 虚拟机),天然支持百万级轻量进程,每个 Agent 都可以是一个独立的进程,崩溃不会影响其他 Agent。
2024 年底,他们正式开源了 Lux,定位是"语言无关的多智能体编排框架",不仅支持 Elixir 原生 Agent,还通过 ErlPort/NIF 集成 Python 和 Node.js,让不同语言写的 Agent 可以互相通信。
Agent 是 Lux 的核心执行单元。每个 Agent 是一个自主实体,可以:
Agent 的设计哲学强调反射能力(即将支持)和持续改进,类似 AutoGPT 的自我反思机制,但架构上更模块化。
Signal 是 Agent 之间的通信协议,基于预定义 Schema 提供类型安全的结构化数据流。与 JSON over HTTP 不同,Signal 要求通信双方都遵循同一 Schema 定义,支持版本控制和跨语言边界。简单理解:Signal = Protocol Buffer 的 Elixir 实现 + LLM 友好的语义层。
Prism 是纯函数式组件,用于封装特定任务逻辑。它们:
Beam 是 Lux 的工作流编排器,类似于剧本或 DAG(有向无环图)。开发者通过 Beam 定义:
Beam 的组合性是其核心优势——小 Beam 可以组合成大 Beam,实现复杂业务流程的模块化管理。
| 层次 | 技术 | 说明 |
|---|---|---|
| 核心语言 | Elixir 1.18+ | 基于 BEAM VM,天生并发容错 |
| Web 框架 | Phoenix 1.7 + LiveView | 实时 Web UI |
| 数据库 | PostgreSQL | 通过 Ecto/Phoenix.Ecto 持久化 |
| 前端 | Tailwind CSS + Heroicons | 现代 CSS 工具类方案 |
| LLM 集成 | Anthropic (Claude) | 通过 req 库调用 Claude API |
| 区块链 | ethers.js + ex_secp256k1 | Web3 智能合约交互,Hyperliquid DEX |
| 外部集成 | Python / Node.js | 通过 ErlPort/NIF 实现跨语言调用 |
| 文档 | Livebook | Elixir 生态的 Jupyter 风格 notebook |
Lux 的 AI 能力主要体现在:
req HTTP 库与 Anthropic API 通信,支持高级提示词管理和上下文管理test/unit/ 和 test/integration/,使用 ExCoveralls 覆盖率统计Lux 提供两种部署路径:
Docker 部署(推荐):
cd lux_app
docker-compose up -d
lux_app 的 Dockerfile 使用多阶段构建,alpine 精简镜像,包含:
开发环境: 支持 GitHub Codespaces 一键启动,包含 Elixir + Python + Node.js 完整环境,VS Code 预配置 Livebook。
无需 GPU。Lux 是纯 Elixir 框架,LLM 调用通过 HTTP API 完成,不在本地运行推理。最低配置:
Lux 的 Trading System 指南展示了完整的加密货币交易 Agent 实现,集成 Hyperliquid DEX,可以:
"Running a Company" 指南演示了如何用 Beam 构建多 Agent 内容创作流水线:
集成 Etherscan API,可以自动查询链上数据、合约事件,配合 LLM 做链上数据分析。
erlport 方式调用 Python 有进程间通信开销,高频调用场景需注意Lux 代表了一个值得关注的方向:用函数式语言解决 AI Agent 的并发和容错问题。在 Python 一统天下的 Agent 生态中,Lux 的语言无关设计和 Beam 编排理念提供了差异化竞争力。
其 Web3 背景也值得关注——区块链场景下的多 Agent 协作(交易、风控、监控)天然适合 Lux 的架构。对于想探索 Elixir + AI 融合的开发者,Lux 是一个值得深入研究的前沿项目。
# 安装 Elixir + Erlang
# 推荐使用 asdf(见 .tool-versions)
# 克隆项目
git clone https://github.com/Spectral-Finance/lux.git
cd lux
# 安装依赖
cd lux && mix deps.get
cd ../lux_app && mix setup
# 启动开发服务器
mix phx.server
# 访问 http://localhost:4000