PromptEngine是Microsoft开源的一款NPM工具库,专为开发者构建和维护大型语言模型(LLM)的提示词而设计。它通过结构化方式组合描述、示例和对话历史,减少手动字符串拼接,提升提示工程效率。该库提供PromptEngine、CodeEngine和ChatEngine等核心类,支持自动管理提示长度(通过maxTokens移除最早交互),并兼容YAML格式,便于版本控制和团队协作。CodeEngine适用于自然语言转代码场景,ChatEngine则专注于多轮对话管理。其模型无关设计可兼容GPT-3、Codex等LLM,帮助开发者将提示模式代码化,实现可维护、可复用的提示构建流程。
PromptEngine是什么?
PromptEngine 是 Microsoft 开源的一款 NPM 工具库,专为开发者构建和维护大型语言模型(LLM)的提示词而设计。它通过结构化方式帮助用户组合描述、示例和对话历史,减少手动字符串拼接,提升提示工程效率。
该库采用 TypeScript 开发,主要提供 PromptEngine、CodeEngine 和 ChatEngine 等核心类。CodeEngine 适用于自然语言转代码场景,ChatEngine 则专注于多轮对话管理,支持用户与机器人角色配置。PromptEngine 可处理提示溢出问题,通过配置 maxTokens 自动移除最早的交互记录。
技术结构上,PromptEngine 基于模块化设计,支持 YAML 格式表示提示,便于版本控制和快速切换。提示构建模式通常为:描述 + 示例 + 对话历史 + 当前查询。它独立于具体 LLM 模型,可兼容 GPT-3、Codex 等。
安装与运行
npm install prompt-engine
安装后即可在 TypeScript 或 JavaScript 项目中使用:
import { CodeEngine } from "prompt-engine";
const description = "Natural Language Commands to JavaScript Math Code...";
const examples = [
{ input: "what's 10 plus 18", response: "console.log(10 + 18)" }
];
const codeEngine = new CodeEngine(description, examples);
const prompt = codeEngine.buildPrompt("What's 2 + 2?");
多轮对话时可通过 addInteraction(query, response) 维护上下文。
PromptEngine 采用 MIT 许可协议开源。当前仓库拥有约 2700+ stars、120+ forks,贡献者包括 Microsoft 团队成员。仓库最后主要更新于 2022 年,包含完整示例、测试和 YAML 支持文件。
作为 AI 提示词领域的实用工具,PromptEngine 适合开发者将提示模式代码化,实现可维护、可复用的提示构建流程。

核心能力与技术结构
PromptEngine 是 Microsoft 开发的开源 NPM 工具库,用于帮助开发者构建和管理大型语言模型(LLM)的提示词。它通过结构化方式将提示工程中的常见模式进行编码,特别适用于 few-shot 学习、自然语言转代码以及多轮对话场景。
该库的核心能力包括创建包含描述、示例和对话历史的结构化提示,支持提示溢出时自动移除最早的交互记录以控制 token 数量,并提供 YAML 格式的提示配置支持,便于外部管理和版本控制。主要引擎有三个:通用 **PromptEngine**、专注于自然语言到代码生成的 **CodeEngine**,以及处理对话场景的 **ChatEngine**。这些引擎均继承自基础 PromptEngine 类,通过配置对象自定义行为,如起始序列、换行结束符以及用户/机器人标识。
在技术结构上,PromptEngine 采用 TypeScript 实现(代码占比 99.6%),设计模块化。提示组成主要包含三部分:任务描述(description)、输入输出示例对(examples)以及持续对话历史(dialog)。开发者可通过 `buildPrompt()` 方法生成最终提示字符串,使用 `addInteraction()` 添加新交互,`removeFirstInteraction()` 处理溢出,或 `resetContext()` 重置上下文。该架构有效管理 LLM 输入长度限制,适用于 GPT-3、Codex 等模型,但保持模型无关性。
安装与运行非常简便。使用以下命令通过 NPM 安装:
npm install prompt-engine
安装后,在 TypeScript 或 JavaScript 项目中导入使用,例如:
import { CodeEngine } from "prompt-engine";
无需额外运行命令,直接在代码中实例化引擎并调用方法即可。仓库中提供了丰富的示例,包括 YAML 加载方式,位于 examples 目录下。
当前仓库版本为 0.0.3(2022 年发布),许可协议采用宽松的 MIT License。社区方面,仓库拥有约 2700 个 Star 和 120 个 Fork,贡献者包括 Abhishek Masand、Ryan Volum 等共 4 人。最后一次提交记录于 2022 年 10 月,整体维护活动已暂停,但代码结构清晰、文档完整,仍适合参考和学习提示工程模式。
PromptEngine 的设计理念是将提示工程最佳实践固化为可复用代码组件,帮助开发者高效构建可靠的 LLM 应用提示模板。其 YAML 支持进一步提升了提示的配置化和可移植性,适合团队协作场景。
(本章节基于 GitHub 仓库公开信息撰写,聚焦开源技术细节与实用结构。)
安装与运行
PromptEngine 是微软开源的 NPM 工具库,用于帮助开发者结构化构建和维护大型语言模型(LLM)的提示词。它提供通用 PromptEngine 基类,以及专用于代码生成场景的 CodeEngine 和对话场景的 ChatEngine。
该库采用 TypeScript 开发(源代码占比 99.6%),核心技术结构围绕提示词的模块化组成:描述(Description)、示例(Examples)和多轮对话历史(Dialog)。它支持自动管理提示词长度,当超过 maxTokens 限制时会自动移除最早的交互记录,同时提供 YAML 格式的提示词表示,便于版本控制和模块化管理。
安装
确保已安装 Node.js 和 npm 环境,然后在项目目录下执行以下命令:
npm install prompt-engine
基本引入与使用
安装完成后,在 TypeScript 或 JavaScript 文件中引入所需引擎:
import { CodeEngine, ChatEngine } from "prompt-engine";
通用 PromptEngine 示例:
let promptEngine = new PromptEngine(
description,
examples,
flowResetText,
{ modelConfig: { maxTokens: 1000 } }
);
CodeEngine(自然语言转代码)示例:
const description = "Natural Language Commands to JavaScript Math Code. The code should log the result of the command to the console.";
const examples = [
{ input: "what's 10 plus 18", response: "console.log(10 + 18)" },
{ input: "what's 10 times 18", response: "console.log(10 * 18)" }
];
const codeEngine = new CodeEngine(description, examples);
const query = "What's 1018 times the ninth power of four?";
const prompt = codeEngine.buildPrompt(query);
ChatEngine(对话场景)支持自定义用户与机器人标识,并通过 addInteraction(query, response) 方法维护多轮上下文。
运行与核心方法
库无独立 CLI,主要以编程方式集成使用。核心方法包括:
buildPrompt(prompt: string):构建完整提示词addInteraction(query, response):添加对话交互记录buildContext()/buildDialog():分别构建上下文和对话部分resetContext():重置上下文
支持自定义语言配置,例如 Python 注释符号:
const pythonConfig = { commentOperator: "#" };
const codeEngine = new CodeEngine(description, examples, flowResetText, pythonConfig);
许可与版本信息
PromptEngine 采用 MIT License 开源协议,允许自由使用、修改和分发。仓库当前无正式发布的版本包(No releases published),建议直接通过 npm 安装最新主分支代码。项目最后一次主要更新在 2022 年 10 月,包含约 80 次提交,由微软及社区贡献者共同维护。
社区情况
该仓库拥有超过 2700 个 Star 和 120 个 Fork,属于微软开源项目。贡献者需签署 Contributor License Agreement(CLA),并遵守 Microsoft Open Source Code of Conduct。仓库提供 SECURITY.md 和 SUPPORT.md 文件,社区问题可通过 opencode@microsoft.com 联系。示例代码位于 examples/ 目录,包括 YAML 提示词示例,适合开发者快速上手结构化提示词工程实践。
作为 AI 提示词领域的开源工具,PromptEngine 强调模型无关性,可与 GPT-3、Codex 等任意 LLM 配合使用,帮助开发者将提示词模式化、版本化和可维护化。

许可、版本与社区
PromptEngine 是微软开源的 NPM 工具库,用于帮助开发者构建和维护大型语言模型(LLM)的提示词。其核心技术结构包括 PromptEngine、CodeEngine 和 ChatEngine 三个主要类,支持通过 buildPrompt、addInteraction、buildContext 等方法管理提示上下文、多轮对话历史,并可结合描述、示例和对话模式构建提示。
安装运行方式简单,通过 npm 即可完成:
npm install prompt-engine
在 TypeScript 项目中使用时,可按以下方式导入:
import { CodeEngine } from "prompt-engine";
该库支持 YAML 格式的提示表示,示例文件位于仓库 examples/yaml-examples 目录下。项目还提供 maxTokens 配置以控制提示长度,避免溢出时自动移除最早的交互记录。
**许可协议**:本项目采用 MIT License,允许自由使用、修改和分发,仅需保留版权和许可声明。
**版本信息**:当前版本为 0.0.3(基于 package.json 记录),仓库暂无正式发布版本(No releases published),最后主要更新于 2022 年。
**社区情况**:项目遵循 Microsoft Open Source Code of Conduct,贡献者需签署 Contributor License Agreement (CLA)。仓库拥有约 2.7k stars 和 120 forks,贡献者包括 Abhishek Masand 等 4 人。如需支持或联系,可发送邮件至 opencode@microsoft.com。仓库同时提供 CODE_OF_CONDUCT.md、SECURITY.md 和 SUPPORT.md 文件指导社区参与。
适合谁?
PromptEngine 是 Microsoft 推出的开源工具库,主要以 NPM 包形式提供,用于帮助开发者构建和管理大型语言模型(LLM)的提示词(prompt)。
该项目的技术结构聚焦于提供可重用的提示词构建接口,支持结构化 prompt 的创建、维护和优化,适用于各种 LLM 应用场景。其核心代码基于 JavaScript/TypeScript 生态,便于集成到 Node.js 或前端项目中。
适合谁?
- 前端与后端开发者,需要在应用中动态构造复杂提示词的工程师;
- AI 应用集成者,希望通过程序化方式管理 prompt 模板的技术人员;
- 开源贡献者或研究者,对 LLM prompt 工程感兴趣并希望基于成熟库进行二次开发的个人或团队。
安装与运行方式简单,通过 npm 即可快速引入:
npm install prompt-engine
项目采用开源许可协议(具体以仓库 LICENSE 文件为准),支持社区自由使用、修改与分发。目前仓库位于 GitHub microsoft/prompt-engine,社区活跃度以 stars、forks 及贡献者数量体现,开发者可直接参与 issue 与 pull request。
无论你是构建聊天机器人、代码辅助工具还是其他 LLM 驱动的产品,PromptEngine 都能从技术层面提供结构化的提示词管理能力。
优势与局限
PromptEngine 是 Microsoft 推出的开源 NPM 工具库,主要用于帮助开发者结构化构建大型语言模型(LLM)的提示词。它以 TypeScript 实现,包含 PromptEngine 基础类以及专用的 CodeEngine 和 ChatEngine,通过标准化描述、示例和对话历史来简化提示词工程。
从技术结构上看,该库将提示词分解为描述部分、少样本示例和多轮对话上下文,支持 buildPrompt、buildContext、addExample、addInteraction 等方法,并内置对话历史管理机制。当提示长度超过 maxTokens 时,会自动移除最早的交互记录,避免上下文溢出。同时支持 YAML 格式的独立提示词文件,便于版本管理和复用。
安装过程简单,通过以下命令即可完成:
npm install prompt-engine
使用示例中,CodeEngine 可快速生成代码相关提示:
import { CodeEngine } from "prompt-engine";
const description = "Natural Language Commands to JavaScript Math Code...";
const examples = [{ input: "what's 10 plus 18", response: "console.log(10 + 18)" }, ...];
const codeEngine = new CodeEngine(description, examples);
const prompt = codeEngine.buildPrompt("What's 1018 times the ninth power of four?");
ChatEngine 则适用于维护多轮对话场景,支持自定义用户/机器人标识和流重置文本。该库采用 MIT 许可协议,仓库位于 GitHub,目前拥有约 2.7k stars、120 forks,贡献者 4 人,最后一次主要更新在 2022 年 10 月。
优势:
- 将提示词最佳实践代码化,减少手动字符串拼接和维护成本;
- 原生支持多轮对话上下文管理,适合构建对话式 AI 应用;
- 与具体 LLM 无关,可灵活对接 GPT-3、Codex 等模型;
- YAML 支持便于提示词的版本控制和团队共享;
- 轻量级设计,易于集成到 Node.js 项目中。
局限:
- 仅负责提示词构建,不包含 LLM 调用逻辑,需要开发者自行对接模型 API;
- 仓库活跃度较低,近年缺乏更新,可能在新兴 LLM 特性支持上存在滞后;
- 对话历史增长仍可能导致提示长度超限,虽有自动清理机制但需合理配置
maxTokens; - 当前无正式发布的 NPM 版本包,主要依赖源码安装或历史提交。
总体而言,PromptEngine 适合希望将提示工程结构化、复用化的开发者,尤其在代码生成和多轮聊天场景中能显著提升开发效率。但对于需要持续维护或集成最新模型特性的项目,建议结合社区最新实践或自行 fork 扩展。
结论
PromptEngine 是 Microsoft 推出的开源 NPM 工具库,用于帮助开发者结构化构建和维护大型语言模型(LLM)的提示词。它通过封装描述、少样本示例和多轮对话等常见模式,简化提示工程流程,使提示词更易于管理和复用。
该库的核心技术结构包括三个主要类:**PromptEngine**(通用提示构建)、**CodeEngine**(自然语言转代码场景)和**ChatEngine**(对话场景)。它们支持通过 `buildPrompt()` 方法组合上下文与查询,并使用 `addInteraction()` 维护多轮对话历史,同时可通过 `maxTokens` 限制自动处理提示溢出。库还提供 YAML 格式的提示配置支持,适用于各种 LLM,无特定模型绑定。
安装方式简单,在项目目录下执行以下命令即可:
npm install prompt-engine
使用时可直接导入对应类并实例化,例如 CodeEngine 或 ChatEngine,结合描述和示例快速生成结构化提示。项目采用 **MIT 许可**,代码主要基于 TypeScript 编写。
目前仓库拥有约 2.7k stars 和 120 forks,贡献者 4 人,最后更新于 2022 年 10 月,整体处于存档状态。社区遵循 Microsoft 开源行为准则,贡献需签署 CLA,相关支持可联系 opencode@microsoft.com。
作为 AI 提示词领域的早期开源尝试,PromptEngine 为开发者提供了可编程的提示管理思路,尽管更新较少,仍可作为学习提示结构化和多轮上下文处理的参考实现。
本文采用 CC BY-NC 4.0 许可协议。商业转载、引用请联系本站获得授权,非商业转载、引用须注明出处。
链接:https://appmark.cn/sites/promptengine.html -APPMARK

元素法典是国内 AI 绘画提示词汇总,含模型参数及社群资源。