Communitygithub.com

yunusovt983-art/ainl-rust

一种类Karpathy的图规范化语言,用于构建确定性的多步骤AI工作流,可视为AI的“第二大脑”。

ainl-rust 是什么?

ainl-rust 是一种受 Karpathy 风格启发、基于图规范的语言及工具,专为构建确定性的多步骤 AI 工作流而设计。它允许开发者以声明式的方式定义工作流中的各个步骤、依赖关系以及数据流转,从而构建可预测、可重复执行的智能体流程。该工具天然支持与 Rust 生态集成,并能够标准化常见的 AI 任务编排,如 RAG(检索增强生成)、多轮对话控制、条件分支与并行执行。它的核心价值在于将复杂的非确定性 LLM 调用组织成结构化的有向无环图,提升工作流的稳定性与可调试性。该项目支持使用 `.ainl` 文件定义工作流,并通过 CLI 或 API 运行,适用于需要高可靠性和低延迟的 AI 应用场景。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add yunusovt983-art/ainl-rust

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

ainl-rust 是做什么的?

「第二大脑」(Karpathy 风格)图规范语言,用于确定性的多步骤 AI 工作流

概述

ainl-rust 是一种受 Andrej Karpathy 理念启发的图规范语言及运行时。它将 AI 工作流建模为有向无环图,每个节点代表一个确定的步骤(例如提示词调用、数据转换、条件判断),边则定义了步骤之间的依赖与数据流向。这种设计使得原本难以预测的多步骤 LLM 调用变得结构化、可测试且可重复执行。

核心特性

  • 图规范(Graph Canonical):工作流被定义为一个图,节点是原子操作,边是数据依赖。
  • 确定性执行:通过显式的步骤编排与暂停机制,避免非预期的行为。
  • 多步骤工作流:支持复杂的条件分支、循环与并行执行。
  • Rust 原生:提供高性能的 Rust 实现,可与现有 Rust 项目无缝集成。

使用方法

安装

通过 Cargo 安装:

cargo install ainl

定义工作流

创建一个 .ainl 文件:

nodes:
  - id: extract_text
    type: prompt
    system: "你是一个文档提取助手。"
    prompt: "从以下文本中提取关键信息:{{input}}"

  - id: summarize
    type: prompt
    depends_on: [extract_text]
    system: "你是总结专家。"
    prompt: "根据提取的内容:{{extract_text.output}},生成一段摘要。"

  - id: classify
    type: branch
    depends_on: [summarize]
    condition: "{{summarize.output.length > 200}}"
    branches:
      short: "..."
      long: "..."

运行工作流

ainl run my_workflow.ainl --input "长篇文章内容..."

原理

  1. 解析 .ainl 文件,构建有向无环图。
  2. 根据依赖拓扑顺序,依次执行节点。
  3. 每个节点执行时可访问之前节点的输出。
  4. 支持条件跳转与循环,直到所有路径执行完毕。

环境变量

  • AINL_OPENAI_API_KEY:OpenAI API 密钥。
  • AINL_MODEL:默认使用的模型(例如 gpt-4)。
  • AINL_LOG_LEVEL:日志级别(info / debug / error)。

许可证

MIT License

相关技能