Julep AI
核心参数与统计
| 参数 | 数据 |
|---|---|
| 产品定位 | 可组合、可持久化的 AI 代理框架 |
| 核心能力 | @flow 编排Reasoner 推理Tool 调用Durable Execution |
| 编程语言 | Python(97.6%),TypeScript 客户端 |
| 开源许可 | Apache-2.0 |
| GitHub Stars | 6.6k |
| GitHub Forks | 971 |
| 最新版本 | 3.0.0rc3(2026-07,RC 阶段) |
| 持久化后端 | Temporal、DBOS/Postgres |
| 工具集成 | MCP Server、原生 HTTP Tool、自定义 Python Tool |
| 核心抽象 | @flow、Agent、Reasoner、Tool、Pure、Pipeline |
| 部署方式 | CLI 本地运行 / Temporal Worker / Docker |
| 目标用户 | AI 应用开发者Agent 工程师LLMOps 团队 |
Julep 不是"又一个 Agent 框架",而是将 AI 代理构建从"手写 while 循有 + prompt 拼接"升级为"编译式数据流图"的工程化方案。其核心差异在于:代理流程被编译为可序列化的中间表示(IR),天然支持崩溃恢复、步骤级重试和完整的执行轨迹追踪。
与 LangChain 的 DAG 编排或 CrewAI 的角色协作不同,Julep 强调"耐久性"(Durability)——代理在运行到第 N 步时崩溃,重启后从断点继续而非从头重来。这一特性使其在长时间运行的工作流(如持续监控、批量数据处理)中具有明确的工程优势。
Julep AI 的用户与市场认可
Julep 目前处于从 v1 API 平台向 v3 开源框架转型的关键阶段,市场信号分化明显。
GitHub 社区热度:仓库获得 6.6k Stars 和 971 Forks,在 AI Agent 框架类别中属于中等偏上的关注度。核心贡献者 5 人,近期提交活跃度较高(最近提交 2 天前),但对比 LangChain(~100k Stars)或 CrewAI(~30k Stars)仍有数量级差距。项目采用 Apache-2.0 许可,社区 fork 和二次开发的门槛较低。
版本跃迁带来的不确定性:Julep v3 是从 v1(API 云平台)完全重写的产物,官方明确声明"不存在迁移路径——v1 和 v3 是不同产品"。这意味着所有 v1 用户无法平滑升级,需要重新学习和适配 v3 的 @flow 声明式范式。这种"断代式"升级在开源项目中较为激进,可能分化社区基础。
企业采用现状:相关企业级部署案例和客户名单未公开。从 GitHub Issue 和讨论区看,项目仍以个人开发者和早期技术验证者为主,尚未出现大规模的公开生产案例。以官方实时页面和社区公告为准。
Julep AI 的成本优势
Julep 的成本结构分为开源自托管v1 平台遗留方案和企业支持三个层面,各自的显性成本和隐性成本差异显著。
C 端 / 个人开发者:框架本身完全开源(Apache-2.0),本地开发零成本。运行 @flow 只需要基础 Python 有境,不依赖外部服务。轻量场景(无 Temporal)下甚至可以在单台笔记本上完成开发和测试。隐性成本:学习曲线——v3 的 @flow 声明式编程范式和 CLI 工具链需要投入数小时到数天的学习时间,对于习惯传统 Agent 框架(直接写 while 循有调用 LLM)的开发者,思维转换成本不可忽略。
开发者 / API 调用:如果使用 v1 平台(旧版 API),按会话数和记忆存储量计费,具体价格未公开。v3 开源版本完全自托管,唯一的运行时成本是 LLM API 调用费(如 OpenAI、Anthropic)和可选的 Temporal 云服务费(自建 Temporal Server 则增加运维成本)。隐性成本:自托管 Temporal 需要维护一个分布式工作流引擎集群,对于 1-2 人小团队可能超出运维能力边界;使用 Temporal Cloud 则需支付 SaaS 订阅费。
企业 / 私有化部署:采用 v3 开源版本 + 自托管 Temporal + 自建 LLM 网关,软件层面零许可费,但基础设施成本(GPU 服务器Temporal 集群、网络带宽)和运维人力需企业自行承担。对于已在使用 Temporal 的企业,Julep 的集成本较低;对于没有 Temporal 基础设施的团队,需额外评估搭建和运维 Temporal 的投入。以官方实时页面和商务报价为准。
Julep AI 的主要功能
Julep v3 的功能体系围绕"可持久化的数据流代理"这一核心理念展开,不是提供预设的 Agent 模板,而是提供一组底层原语让开发者自己构建代理逻辑。
-
@flow 声明式编排:用 Python 装饰器将普通函数转换为可持久化、可恢复的数据流图。
@flow在定义时编译为 IR,|操作符合并记录,h["key"]提取字段,think()调用 Reasoner,cond()/switch()实现条件分支,each()实现并行扇出。运行时由 IR 解释器执行,天然支持断点续传。适用任务:需要多步骤、有分支、可能中断恢复的复杂代理流程。 -
Reasoner(推理器):将 LLM 调用抽象为带类型输出的推理节点。开发者指定模型和输出类型(TypedDict),Reasoner 自动处理 prompt 组装、结构化输出解析和重试。与直接调用 LLM API 相比,类型约束让编译器在定义阶段就能发现输出字段不匹配,而非在运行时崩溃。
-
Tool 系统与 MCP 集成:通过
@tool装饰器将 Python 函数注册为代理工具,支持effect="read/write"和idempotent=True标注,框架据此自动生成权限清单。兼容 MCP 协议,可挂载任意 MCP Server 作为工具源。【专家视点】:effect+idempotent的双重标注不仅声明"能做什么",还声明"做了能否重做",为 Durable Execution 的自动重试提供了安全边界。 -
Durable Execution(持久化执行):集成 Temporal(或 DBOS)实现代理工作流的持久化。流程运行中任意步骤崩溃,Worker 重启后自动从断点恢复。工程含义:将代理可靠性从"尽力而为"提升到"恰好一次执行"级别,适合支付审核、数据迁移等需要执行保证的生产场景。
-
CLI 工具链:提供 agent 发现(ls)、展示(show)、依赖图分析(graph)、本地执行(run)、静态校验(lint)、测试(test)、轨迹回放(trace)、预检(doctor)和部署(deploy)等生命周期管理命令。选择器语法(
tag:support、+agent图遍历)支持跨 agent 批量操作。 -
Pipeline 应用模型:
Application+PipelineSpec组合,支持有境隔离(staging/production)、MCP 快照管理Capability Manifest 声明和能力校验。适用于多有境、灰度发布的生产场景。
与主流 Agent 框架的对比:
| 维度 | Julep AI (v3) | LangChain | CrewAI | AutoGen |
|---|---|---|---|---|
| 编排范式 | @flow 声明式 IR 编译 | DAG 链式调用 | 角色+任务声明式 | 对话式多 Agent |
| 持久化执行 | 原生支持(Temporal/DBOS) | 无内置,需自行集成 | 无内置 | 无内置 |
| 工具权限模型 | effect + idempotent 声明式 | 无内置权限模型 | 无内置权限模型 | 部分支持 |
| MCP 支持 | 原生支持 | 通过集成层支持 | 无 | 无 |
| CLI 工具链 | 完整生命周期管理 | 基础命令行 | 有限 | 有限 |
| 学习曲线 | 中高(需理解 @flow 范式) | 低(链式调用直观) | 低(角色声明直观) | 中(对话设计复杂) |
| 生产就绪度 | RC 阶段 | 成熟 | 中等 | 中等 |
Julep AI 的模型与版本演进
Julep 的版本履历在 2025-2026 年间经历了从 API 云平台到开源框架的根本性转型,版本号从 v1 直接跃迁至 v3。
v1 时代(2025-2026):API 云平台
- Julep v1 Alpha(~2025-10):托管的 AI Agent API 平台,提供会话管理、记忆持久化和任务编排,以 RESTful API + WebSocket 接入。
- Julep v1 Beta(~2026-04):增加多步任务编排和 MCP 工具集成,但 API 稳定性和文档覆盖度限制了大规模采用。
v3 时代(2026-07 至今):开源 @flow 框架
- Julep 3.0.0rc1(2026-07 上旬):完全重写,以 Python @flow 装饰器为核心构建开源框架,引入 Reasoner、Tool、Pure 等原语和可序列化 IR 编译模型。
- Julep 3.0.0rc2(2026-07 中旬):优化 @flow 编译性能,增加
cond()/switch()条件分支,改进调试体验。 - Julep 3.0.0rc3(2026-07-15 前后):引入 Application + PipelineSpec 生产部署模型,增加 MCP Snapshot 管理Capability Manifest 和 Temporal 完整集成。
版本说明
Julep 的版本命名采用语义化版本(SemVer)但带有"断代"特征——v3 与 v1 在架构上完全不兼容。当前 3.0.0 系列仍在 RC 阶段,API 和 IR 格式可能发生向后不兼容的变更。正式 3.0.0 稳定版发布前,不建议将当前 RC 版本投入对稳定性要求极高的生产有境。
Julep AI 的技术优势
Julep 的技术设计围绕"让 AI 代理像传统软件一样可靠"这一目标展开,其核心创新不在于 LLM 能力本身,而在于将代理行为从"不可控的文本生成"转化为"可预测、可恢复、可审计的数据流图"。
编译式 @flow 而非解释式链式调用:大多数 Agent 框架在运行时逐步骤解释执行,同样输入可能因 LLM 输出微小差异走向完全不同的执行路径。Julep 的 @flow 在定义时一次性编译为 IR,整个执行图在运行前完全确定。开发者可在定义阶段静态分析代理的全部可能路径,编译时校验还能提前发现工具参数类型不匹配、输出字段缺失等问题,将错误从运行时前移到开发期。
IR 序列化与 Durable Execution 的天然亲和:@flow 编译产出的 IR 是可序列化的纯数据结构,可持久化到 Temporal 事件存储中。流程崩溃重启时,Temporal 从事件存储重放 IR 及其执行进度,精确恢复到断点位置。代理的"状态"不再是 LLM 对话历史中的隐式上下文,而是显式存储在 IR 执行轨迹中的确定性进度标记。
工具权限的安全模型:通过 @tool(effect="read", idempotent=True) 的双重声明,Julep 在编译期就建立工具调用的安全边界。框架根据声明自动生成 Capability Manifest,运行时 LLM 只能调用与 Manifest 匹配的工具。与 LangChain 的"工具即函数列表"模式相比,Julep 提供了编译期保证而非运行时监控,降低了 prompt 注入导致工具被滥用的风险。
与 Temporal 的深度集成:@flow 的每个步骤映射为 Temporal Activity,调度、重试、超时和恢复全部由 Temporal 管理。开发者只需声明 retries=2, timeout_s=5,无需编写持久化代码。DBOS(Postgres 原生)作为轻量替代后端,适合不需要 Temporal 集群的场景。
工程踩坑指南:
-
死循有与 Token 暴涨控制:在 @flow 中使用
think()调用 Reasoner 时,如果 prompt 设计不当导致模型不断重新规划,可能出现推理步数无限增长的场景。解法:设置max_steps全局步数上限(在 PipelineSpec 中配置),或通过timeout_s参数给每个 Reasoner 调用设定超时。对于怀疑存在循有的流程,先用julep run --dry-run观察执行路径再正式运行。 -
MCP 工具的上下文过载:挂载 MCP Server 后,工具返回的数据直接注入 LLM 上下文。如果一个工具返回超长结果(如数据库全表扫描),极易撑爆上下文窗口。解法:在工具函数内部做数据裁剪(只返回摘要或分页结果),或利用
@tool的timeout_s和retries参数控制工具执行边界。对于已知会返回大量数据的工具,建议在工具函数中增加max_results参数。 -
安全与越权治理:
effect="write"工具如果缺乏输入校验,模型可能通过 prompt 注入生成危险参数(如DELETE FROM users)。解法:在工具函数内部进行参数白名单校验,对不可逆操作(删除、支付、发布)强制设置人工确认点。可以通过 PipelineSpec 的capabilities=CapabilityManifest.from_file(...)声明允许的操作范围,在编译期阻止越权工具的注册。生产有境中推荐对所有effect="write"的工具启用 dry-run 模式,仅在人工确认后才切换为实际执行。
如何使用 Julep AI
Julep v3 的接入路径分为本地开发CLI 管理和生产部署三个层级,分别面向不同的使用阶段。
安装与快速启动:当前 Julep 3 仍为 RC 版本,安装时需要 --pre 标志。
pip install --pre julep
基础安装仅包含作者工具和 IR 编译器(依赖 PyYAML)。按需选择 extras 扩展运行时能力:
pip install --pre "julep[temporal]" # Temporal 持久化执行
pip install --pre "julep[dbos]" # DBOS/Postgres 持久化
pip install --pre "julep[http]" # 原生 HTTP 工具调用
pip install --pre "julep[langfuse]" # Langfuse 可观测性导出
pip install --pre "julep[store]" # S3 制品分发与签名
pip install --pre "julep[wasm]" # Wasm 沙箱执行 Pure
3 分钟快速上手:以下是一个完整的工单分类代理示例,无需 API Key 即可运行(使用本地 fake Reasoner)。
from typing import TypedDict
from julep import Reasoner, deploy, flow, pure, think, tool
class SupportReply(TypedDict):
reply: str
@tool(effect="read", idempotent=True)
def lookup_ticket(ticket: str) -> dict[str, str]:
return {"ticket": ticket, "queue": "billing", "summary": "Use the duplicate-charge runbook."}
@pure("ticket_prompt")
def ticket_prompt(hit: dict[str, str]) -> dict[str, str]:
return {"queue": hit["queue"], "context": hit["summary"]}
support_reply = Reasoner(
name="support_reply",
model="anthropic:claude-haiku-4-5-20251001",
system="Draft one concise support reply as JSON.",
reply=SupportReply,
)
@flow
def triage(ticket: str) -> dict[str, str]:
hit = lookup_ticket(ticket, retries=2, timeout_s=5)
prompt = ticket_prompt(hit)
answer = think(support_reply, prompt, timeout_s=10)
return hit | answer
deployment = deploy(triage, tools=[lookup_ticket], reasoners=[support_reply])
result = deployment.dry_run("Customer was charged twice.",
reasoners={"support_reply": lambda v: {"reply": f"{v['queue']}: {v['context']}"}})
print(result.value)
CLI 工作流:安装后通过 julep 命令管理 Agent 模块:
julep ls # 列出所有 Agent
julep show triage # 查看单个 Agent 详情
julep graph # 显示 Agent 间依赖 DAG
julep run triage --input '"TICKET-42"' # 本地执行并流式输出轨迹
julep lint +triage # 静态校验 Agent 及其依赖
julep test triage # 运行 pytest 测试
julep trace <run-id> # 回放缓存的执行轨迹
julep doctor # 预检有境(Git、Langfuse、Temporal)
julep deploy triage --env staging # 固化→发布→记录到部署簿
生产部署:对于正式生产场景,使用 Application + PipelineSpec 声明部署配置,并通过 julep plan/apply/status 管理多有境发布。Application 模型支持有境变量注入MCP 快照管理、能力清单校验和 Helm 发布编排。配置示例见官方文档和 examples/ 目录。
Julep AI 的产品定价
Julep 的定价体系因产品形态的历史断层而呈现"新旧并存"的格局,当前应区分 v1 遗留平台和 v3 开源框架两条定价线。
v1 平台(旧版 API):处于 Beta 阶段,提供免费试用额度。正式定价未公开,预计按会话数、记忆存储量和 API 调用量三维度计费。开发者版和小团队版可能采用固定月费 + 超额按量模式。企业版(私有部署、定制记忆存储策略)需联系销售。注意:v1 已不再积极开发,新项目应直接采用 v3 开源版本。
v3 开源框架:完全免费(Apache-2.0 许可),无使用限制。开发者仅需承担以下外部成本:
- LLM API 费用:按实际调用的模型计费(如 OpenAI、Anthropic),与 Julep 框架无关。
- Temporal 费用:可选。自托管 Temporal Server 免费但需运维投入;Temporal Cloud 按工作流执行时长和次数计费(参考 Temporal 官方定价,约 $0.01-0.10/千次工作流执行)。
- 基础设施费用:生产部署需要 GPU/CPU 服务器、存储和网络资源,具体取决于并发量和数据规模。
企业支持:可选的企业技术支持合同费用未公开,需联系 Julep 团队获取报价。企业版可能包含优先技术支持、定制功能开发和部署架构咨询。以官方实时页面和商务报价为准。
Julep AI 的应用场景
Julep 的 Durable Execution 和编译式 @flow 设计使其在需要执行保证、可审计性和长时间运行的 Agent 场景中具有明确优势,而非通用对话式 AI。
-
生产级工单处理:客服工单从创建到关闭往往需要多轮人机交互、跨系统查询和审批流程。Julep 的 @flow 可以将工单处理建模为确定的步骤序列,每一步调用不同的工具(CRM 查询、知识库搜索、工单系统写入),流程崩溃后自动从断点恢复。对比传统方案:无持久化的 Agent 流程在步骤 3 崩溃后必须从步骤 1 重来;Julep 可以从步骤 4 继续,这在工单量大、系统稳定性要求高的场景中直接转化为 SLA 提升。
-
自动化数据管道与审核:数据迁移ETL 管道的执行监控和异常处理是典型的长时间运行任务。Julep 的 Durable Execution 可以确保管道在遇到 API 限流、数据库连接中断等异常后自动重试并恢复进度。
effect="read"和effect="write"的区分让审核流程可以明确划分"只读检查"和"实际变更"两个阶段,在审批通过前不会产生副作用。 -
合规与审批工作流:合同审查、权限审批等需要多人确认的业务流程,天然适合 Julep 的 @flow 编排——每个审批节点映射为一个
think()调用,审批人的决策作为流程分支条件。执行轨迹的完整持久化为审计提供了不可抵赖的证据链。落地提示:合规场景中,建议在关键审批节点设置外部确认点(通过消息队列或 Webhook 人工确认),而非完全依赖 LLM 判断。 -
长时间运行的研究与报告生成:代理根据用户需求多步检索信息、交叉验证、迭代优化报告。这类场景的特点是执行时间长(数小时)、中间结果多、容错要求高。Julep 的崩溃恢复能力确保即使 Worker 重启,研究进度也不会丢失。不适配边界:对实时性要求高的场景(如实时聊天机器人、流式问答),Julep 的编译式 @flow 启动开销比直接 LLM 调用大,不适合毫秒级响应的交互场景。
Julep AI 的适用人群
Julep v3 的定位决定了它并非面向所有 AI 应用开发者,而是专注于那些对"可靠性"和"可恢复性"有刚性需求的工程团队。
-
AI 后端工程师与 LLMOps 团队:核心目标用户。他们有能力管理 Temporal 基础设施,理解 Durable Execution 的价值,并且正在寻找比手写状态机更工程化的 Agent 构建方案。不适配边界:如果团队没有分布式系统运维经验,自托管 Temporal 的学习和运维成本可能超出收益;建议从
julep[dbos]轻量方案开始,或直接使用 Temporal Cloud。 -
实验性 Agent 开发者:对 Agent 框架有研究兴趣,愿意接受 RC 版本的不稳定性,追求更安全、更可审计的 Agent 架构。Julep 的编译式 @flow 和权限模型为他们提供了一个与传统链式框架不同的技术视角。前置条件:需要熟悉 Python 类型注解和装饰器语法,理解 Temporal/DBOS 的基本概念。
-
企业内部 PoC 团队:正在评估 AI Agent 在生产有境中的可行性,对执行可靠性有要求。Julep 的 Durable Execution 和 Capability Manifest 可以作为 PoC 阶段的技术验证基石。采购建议:先在非关键场景(如内部工单辅助处理、数据管道监控)完成 PoC,验证 @flow 范式与团队技术栈的兼容性,再逐步扩展到准生产流程。PoC 阶段应重点测试:崩溃恢复的实际 RTO(恢复时间目标)、MCP 工具在真实网络条件下的稳定性、以及 CLI 部署流程的 CI/CD 集成本。
-
不适用人群:
- 需要快速搭建对话式 Chatbot 的团队——Julep 的重心不在对话管理,而在工作流编排,纯对话场景建议直接使用 LLM API + LangChain。
- 对框架"开箱即用"期望高的非技术用户——v3 仍为 RC,文档和示例覆盖度有限,需要开发者自行阅读源码和 GitHub Issue 解决问题。
- 对模型层有强烈绑定需求的团队——Julep 的 Reasoner 抽象了模型调用,但当前主要支持 Anthropic Claude 和 OpenAI,未像 LangChain 那样内置几十种模型提供商适配。
总结与展望
Julep 在"可靠 Agent 基础设施"这个方向上做出了当前开源社区中最系统化的工程尝试——编译式 @flow、Durable Execution、声明式权限模型三者组合,构建了比传统链式框架更接近生产要求的 Agent 开发范式。
当前的核心优势:@flow 的编译时校验和 IR 序列化设计,使代理行为从"黑盒文本生成"转变为"可预编译、可恢复、可审计的数据流图"。与 Temporal 的深度集成将可靠性提升到"恰好一次执行"的工程级别。tool effect + idempotent 双重声明在开源框架中具有差异化的安全价值。
当前的主要限制:v3 仍处 RC 阶段,API 和 IR 格式可能发生向后不兼容变更。版本断代(v1 → v3 无迁移路径)可能导致社区分裂。文档覆盖度和示例丰富度落后于 LangChain、CrewAI 等成熟框架。CLI 和部署工具链学习成本较高,对非 Python 背景开发者不够友好。社区仅 5 位核心贡献者,长期维护能力和 Issue 响应速度存疑。
后续观察点:3.0.0 正式版的发布时间和 API 稳定性承诺;是否有大厂或知名企业背书 v3 的生产案例;生态建设(第三方 Tool 库、预置 @flow 模板IDE 插件)能否降低入门门槛;对 OpenAI、Anthropic 之外模型的支持广度扩展情况。
采购与采用风险评估:对于个人开发者和技术验证团队,Julep v3 的 RC 版本值得作为"第二框架"纳入技术评估范围——在非关键项目中体验 @flow 范式,积累 Durable Execution 的工程经验,但现阶段不建议作为主力框架投入核心业务。对于企业,建议等待 3.0.0 正式版发布后再做评估;正式版发布前,可以在沙盒有境中试用 v3,主要验证三件事:@flow 编译范式是否与团队原有的代码生成/代码组织习惯兼容;Temporal/DBOS 持久化后端的运维成本是否符合团队能力范围;CLI 部署流程能否平滑嵌入现有 CI/CD 管线。企业采购前还需关注 Apache-2.0 许可的商业使用边界,以及 Julep 团队对 v3 长期维护的承诺(开源项目常见的"捐赠后停止维护"风险)。在合规敏感行业,应确认 Durable Execution 的执行轨迹存储是否符合数据本地化和审计留存要求。
相关工具:

评论交流
欢迎分享看法。评论审核通过后公开;待审核和已拒绝的评论仅自己可见,邮箱不会公开。