提示模板
使用提示模板,您可以在一个地方无缝创建和管理您的LLM提示,并仅通过API调用进行部署。Portkey上的提示模板旨在具备生产就绪状态 - Portkey会自动跟踪更改,维护版本,并为开发者和提示工程师提供极大的灵活性,以便快速实验而不影响生产环境。
如何使用提示模板
在 Portkey 应用中,只需点击左侧的“Prompts”按钮,然后点击“Create”,一个新的空白操作区就会打开。
在这里,您可以选择您所需的提供者和模型 - Portkey 支持来自 20 多个提供者的
vision、chat和completions模型。此处的提供者选择与 虚拟密钥 相关,因此根据您拥有的虚拟密钥数量,您可能会看到同一提供者的多个选项。您可以编写用户/助手消息,并配置所有模型参数,如
top_p、max_tokens、logit_bias等 - 直接通过用户界面进行设置。Portkey 提示还支持启用
JSON Mode,以及编写Tools/Functions调用链。

模板引擎
Portkey 使用 Mustache 作为底层支持来驱动提示模板。
使用 Mustache,提示模板变得更加可扩展,允许您在提示模板中包含各种 {{tags}} 并轻松传递您的数据。
Mustache 模板最常见的用法是 {{variables}},用于在运行时传递值。
使用变量
让我们看一下以下模板:

如您所见,{{customer_data}} 和 {{chat_query}} 在模板中被定义为变量,您可以在运行时传递它们的值:
使用变量只是开始!Portkey 支持多种 Mustache 标签,让您扩展模板功能:
支持的标签
{{variable}}
变量
模板:
嗨!我的名字是 {{name}}。我在 {{company}} 工作。
数据:
输出: 嗨!我的名字是 Chris。我在 Github 工作。
{{#variable}} <string> {{/variable}}
仅当变量为 true 或 非空 时渲染 <string>
模板: 你好,我是特斯拉机器人。 {{#chat_mode_pleasant}} 很高兴能和你聊天! {{/chat_mode_pleasant}}
我能帮你什么? 数据:
输出: 你好,我是特斯拉机器人。我能帮你什么?
{{^variable}} <string>
{{/variable}}
仅当变量为 false 或 空 时渲染 <string>
模板: 你好,我是特斯拉机器人。 {{^chat_mode_pleasant}} 很高兴能和你聊天! {{/chat_mode_pleasant}}
我能帮你什么? 数据:
输出: 你好,我是特斯拉机器人。很高兴能和你聊天!我能帮你什么?
{{#variable}} {{sub_variable}} {{/variable}}
如果变量为 true 或 非空,则迭代渲染所有 sub_variable 的值
模板: 给出以下元素的原子符号: {{#variable}} - {{sub_variable}} {{/variable}}
数据:
输出: 给出以下元素的原子符号: - Gold - Carbon - Zinc
{{! Comment}}
被忽略的注释
模板: 你好,我是特斯拉机器人。 {{! 标签是如何工作的?}}
我能帮你什么? 数据:
输出: 你好,我是特斯拉机器人。我能帮你什么?
{{>Partials}}
可以在运行时调用的“迷你模板”。
在 Portkey 上,您可以单独保存部分模板,并通过输入 {{> 在您的提示模板中调用它们。
模板: 你好,我是特斯拉机器人。 {{>pp-tesla-template}}
我能帮你什么?
数据在pp-tesla-template中:
输出: 你好,我是特斯拉机器人。从 {{context}} 获取上下文。并回答用户问题。我能帮你什么?
{{>>Partial Variables}}
通过创建带有双 >> 的标签,将您私下保存的部分传递给 Portkey
例如: {{>> }}
如果您不想将部分保存在 Portkey 中,而是在其他地方维护它们,这将很有帮助
模板: 你好,我是特斯拉机器人。 {{>>My Private Partial}}
我能帮你什么?
使用标签
您可以直接将包含所有变量/标签信息的数据对象(以 JSON 格式)传递给 Portkey 的 prompts.completions 方法,并使用 variables 属性。
例如,这里是一个包含 AI 支持机器人关键指令的提示部分:

提示模板使用部分如下:

我们可以将数据对象传递到变量中:
版本控制提示
每当您对提示模板进行更改时,Portkey 会在浏览器中保存您的更改 但 这些更改 不会推送 到 Portkey。您可以点击右上角的 更新 按钮,将最新版本的提示保存到 Portkey。

您可以在游乐场的右侧列中查看 所有 提示版本:

您可以通过点击省略号来 恢复 或 发布 任何以前的版本。
发布提示
更新提示不会自动更新您在生产中的提示。在更新时,您可以勾选 发布提示更改,这也将把您的提示部署更新到最新版本。

Last updated