ax

用 TypeScript 写 DSPy,让 LLM 应用开发更工程化

ax 是 TypeScript 生态中一个备受关注的 DSPy 框架实现,旨在将 DSPy 的声明式编程范式引入 TypeScript 世界。它解决的是在构建复杂语言模型应用时,如何以模块化、可组合的方式管理提示、模型调用和优化流程的问题。核心能力包括:提供类似 DSPy 的签名(Signature)和模块(Module)抽象,支持定义输入输出规范并自动生成提示;内置优化器,可自动调整提示或模型参数以提升任务表现;与主流 LLM 提供商(如 OpenAI、Anthropic)无缝集成,并提供类型安全的开发体验。ax 让 TypeScript 开发者能够以更工程化、可维护的方式构建可靠的 LLM 应用,减少手动提示工程的繁琐和脆弱性。

开源 free 搜索知识
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 2946
维护状态 活跃
是否开源 是
定价模式 free

项目数据

分类搜索知识
开发团队ax-llm
所属国家
官网地址http://axllm.dev
定价模式free
价格说明开源框架,Apache-2.0 许可证,完全免费,可自行部署使用。
访问状态
是否开源是
开源协议Apache-2.0
主要语言TypeScript
技术栈/模型agents,ai,anthropic,claude,cohere,dspy,gemini,google,google-gemini,grok,javascript,large-language-models,llm,nodejs,ollama,openai,opensource,rlm,typescript
GitHub 星标★ 2946
30天Star增速
HF 下载量
上线时间2023-02-23 00:00:00
最近更新2026-09-23 00:00:00
维护状态活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数6

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 6 步

环境要求

  • Node.js 运行环境(README 提到 Node 20+ 会自动启用 OS Permission Model)
  • npm 包管理器(README 中的安装与示例命令均基于 npm)
  • 一个 LLM 提供商的 API Key(示例从环境变量或 .env 读取,如 OPENAI_APIKEY)
  • Go 1.23+(仅在使用 Go 实时音频包时需要)

安装与启动步骤

  1. 1安装核心包

    在 TypeScript/JavaScript 项目中安装 Ax 主包 @ax-llm/ax,Ax 是 TypeScript 优先的。

    npm install @ax-llm/ax
  2. 2按需安装扩展包

    Bedrock provider、Vercel AI SDK v7 集成、MCP stdio 与 JS 运行时扩展都是可选包,用到再装。

    npm install @ax-llm/ax-ai-aws-bedrock
    npm install @ax-llm/ax-ai-sdk-provider
    npm install @ax-llm/ax-tools
  3. 3其他语言包(可选)

    若使用编译生成的 Python/Rust/Go 库,用各自包管理器安装;Java 用 Maven Central 的 dev.axllm:ax,C++ 用 CMake FetchContent。

    pip install axllm
    cargo add axllm
    go get github.com/ax-llm/ax/packages/go
  4. 4克隆示例仓库

    公开示例和运行脚本都在仓库内,需克隆后才能执行 npm run example 系列命令。

    git clone https://github.com/ax-llm/ax.git
    cd ax
  5. 5查看示例列表

    列出 TS、Python、Java、C++、Go、Rust 的公开示例,加 --json 可输出结构化结果。

    npm run example -- list
  6. 6配置密钥并运行示例

    示例会调用真实提供商,密钥从环境变量或 .env 读取;这里以 OpenAI 生成示例为例。

    OPENAI_APIKEY=your-key npm run example -- ts src/examples/typescript/generation/axgen-openai.ts

关键配置

配置项必填说明示例
OPENAI_APIKEY是运行 OpenAI 相关示例时使用的 API 密钥your-key

如何确认成功

执行 npm run example -- list 能列出各语言示例,或带 OPENAI_APIKEY 运行任一示例后看到模型返回结果。

常见问题

Q:ax 只支持 TypeScript 吗?

A:不是。Ax 以 TypeScript 优先,但同一套签名、provider 映射、agents、flows 和优化器也会编译成 Python、Java、C++、Go、Rust 库。

Q:运行示例需要什么凭证?

A:示例调用真实提供商,会从 .env 或环境变量读取凭证,例如 OPENAI_APIKEY。请先配置好对应提供商的密钥。

Q:AxJSRuntime 是安全沙箱吗?

A:它是针对 LLM 生成代码的纵深防御,不是容器或 VM 边界。宿主回调和授予的权限仍是信任边界,密钥应留在宿主侧。

Q:如何切换不同的模型提供商?

A:通过命名部署配置(deployment profiles)选择,部署名决定线路行为,模型 ID 只在该部署内部解析。

注意事项

  • 实时音频需额外依赖:Python 用 pip install axllm[realtime],Rust 加 --features realtime,C++ 用 -DAXLLM_ENABLE_REALTIME=ON。
  • memories 的生命周期只有一次 .forward(),要跨调用保留必须自行外部持久化。
  • 默认沙箱已冻结 intrinsics、锁定 ShadowRealm 与 worker IPC,并阻止 import(),只在需要时授予 NETWORK、FILESYSTEM 等权限。
  • 所有生成的 Python、Java、C++、Go、Rust 库均为 Apache-2.0 许可。

核心亮点

  • 提供类型安全的 DSPy 风格 API,减少运行时错误
  • 内置优化器,自动改进提示和模型行为
  • 与主流 LLM 提供商集成,上手快

不足之处

  • 项目较新,文档和社区生态仍在完善
  • 相比 Python 版 DSPy,功能覆盖可能不全

适用场景

  • 构建需要多步骤推理的复杂 LLM 应用
  • 希望以声明式方式管理提示和模型调用的 TypeScript 项目
  • 需要自动优化提示以提升模型输出质量的场景

替代项目

DSPy (Python)、LangChain.js、Vercel AI SDK

项目介绍

ax 是开发框架领域的开源项目,由 ax-llm 开发,2023 年首次发布。

在全站 13,090 个收录项目中,它的 GitHub 星标数(2,946)位列前 30%,在开发框架分类中处于中上游。

近 42 天,它的 GitHub 星标从 2,868 增加到 2,946,净增 78。

项目目前处于活跃维护状态,最近一次代码更新于 2026-09-23。Apache-2.0 许可证,完全免费,可自行部署使用。

它主要面向的使用场景是:构建需要多步骤推理的复杂LLM应用。同类可对比的替代方案包括 DSPy (Python)、LangChain.js、Vercel AI SDK。

上一篇:Hyper-Extract

下一篇:hamilton

同类项目推荐

langchain 开源

组装 AI 应用的乐高积木,从想法到上线不换工具

The agent engineering platform.

★ 146874 2026-08-09
transformers 开源

全球最大的模型仓库全家桶,想用的模型一把抓

Transformers: the model-definition framework for state-of-the-art machine learning m···

★ 166529 2026-08-09
pi 开源

一套 TypeScript 工具包,快速搭出能写代码的 AI agent

AI agent toolkit: unified LLM API, agent loop, TUI, coding agent CLI

★ 108504 2026-09-12