>_ DevTrendszh

语言

首页

语言

板块

前端 后端 移动端 DevOps AI / ML 游戏开发 区块链 嵌入式 安全
Rust

为什么要为神经网络编排创建一门完整的编程语言

当你尝试使用 Python 或 TypeScript 构建复杂的基于 LLM 的系统时,代码很快就会被基础设施的样板代码所淹没。你需要手动设置消息队列、编写重试逻辑、将中间状态持久化到数据库,还要想出各种变通方案来等待用户响应。通用编程语言对调用语言模型的具体细节一无所知,更不知道如何让一个进程暂停数天等待。

WeaveMind 的开发者决定从根本上解决这个问题。他们正在构建 Weft——一门成熟的编程语言,将 LLM、外部 API、数据库和人工介入作为语言的一等公民。

为什么需要一门新语言

Weft 的核心理念是让工程师从编写服务脚手架中解放出来。模型、数据库和逻辑之间的连接在程序运行前就由编译器进行验证。

该项目目前正在积极重写以符合 MVP 概念,正式发布时间定于 2026 年 8 月。尽管如此,源代码是开放的,你可以现在就探索这个方案。

主要架构特性

无需额外服务的人工介入

如果业务逻辑需要经理审批或操作员数据录入,流程会在相关指令处停止。无需启动数据库来存储状态、配置 Webhook 或定时轮询 API。等待用户点击三秒的程序与等待三天的场景写法完全相同。

双重表示形式

Weft 代码同时也是基于文本的场景和可视化图形。这不仅仅是配置文件上的图形化外壳。修改图表上的节点会改变源代码文本,反之亦然。工程师可以用文本方式工作,而分析师则可以查看清晰的过程图。

通过 Restate 实现可靠执行

底层使用 Restate 引擎。如果服务器在 LLM 调用期间发生错误、重启或断网,执行会从失败点恢复,不会丢失累积的上下文。

端到端类型检查

编译器会检查整个链路的数据类型。如果一个节点输出特定结构的对象,而下一个节点期望接收纯字符串,构建器会立即标记错误。这有助于在代码编写阶段捕获 JSON 字段的拼写错误。

Weft 场景示例

该语言的语法是声明式的,专注于链接各个模块:

topic = Text { label: "Topic" value: "the silence between stars" } llm_config = LlmConfig { label: "Config" model: "anthropic/claude-sonnet-4.6" systemPrompt: "Write a short, beautiful poem (4-6 lines) about the given topic." temperature: "0.8" } poet = LlmInference -> (response: String) { label: "Poet" } poet.prompt = topic.value poet.config = llm_config.config output = Debug { label: "Poem" } output.data = poet.response

在这个小示例中,声明了四个节点:文本、模型配置、LLM 推理本身和调试输出。它们之间的连接通过显式传递字段来建立。

底层实现

编译器核心、编排器和执行器使用 Rust 编写。仪表盘 Web 界面使用 SvelteKit(Svelte 5)构建。

所有可用的模块都位于 catalog/ 目录中。每个新模块由一个独立文件夹中的两个文件描述:

  • backend.rs 用 Rust 定义服务器端逻辑
  • frontend.ts 在 UI 中指定节点渲染、端口和配置字段

一个特殊的脚本会自动将它们链接到仪表盘和运行时。添加自定义节点的过程相当简单。

当前目录已包含用于处理 LLM、执行 Python 代码、发送消息到 Telegram、Discord、Slack 和 WhatsApp、处理 Postgres 以及网络搜索的模块。

当前状态与许可证

该项目处于早期开发阶段。作者在 README 中明确表示架构仍在形成中,因此可能会有破坏性变更。

Weft 采用 O'Saasy 许可证(修改后的 MIT)分发。它允许免费使用、修改和自托管,但禁止基于此代码运行与作者竞争的商业付费服务。

谁应该关注这个项目

Weft 作为一种重新思考神经网络智能体编排方式的尝试值得关注。如果你厌倦了在通用编程语言中处理复杂的调用图,并且正在寻找内置容错机制的工具,这个仓库绝对值得收藏。

相关项目