检索提示

查看如何使用 Portkey 的提示模板与 OpenAI(或任何其他提供者)SDK

您可以使用 /prompts/$PROMPT_ID/render 端点在 Portkey 上检索已保存的提示。Portkey 返回一个 JSON,其中包含您的提示或消息正文以及所有可直接在任何请求中使用的保存参数。

如果您需要使用提供商的 SDK 并且无法在生产环境中使用 Portkey SDK,这将非常有帮助。 (如何在 OpenAI SDK 中使用 Portkey 提示模板的示例

使用 Render 端点/方法

  1. 发送请求到 https://api.portkey.ai/v1/prompts/$PROMPT_ID/render,并附上您的提示 ID

  2. 在请求头中通过 x-portkey-api-key 传递您的 Portkey API 密钥

  3. 在负载中发送变量,格式为 { "variables": { "VARIABLE_NAME": "VARIABLE_VALUE" } }

就这样!看看实际效果:

curl -X POST "https://api.portkey.ai/v1/prompts/$PROMPT_ID/render" \
-H "Content-Type: application/json" \
-H "x-portkey-api-key: $PORTKEY_API_KEY" \
-d '{
  "variables": {"movie":"Dune 2"}
}'

输出:

{
    "success": true,
    "data": {
        "model": "gpt-4",
        "n": 1,
        "top_p": 1,
        "max_tokens": 256,
        "temperature": 0,
        "presence_penalty": 0,
        "frequency_penalty": 0,
        "messages": [
            {
                "role": "system",
                "content": "You're a helpful assistant."
            },
            {
                "role": "user",
                "content": "Who directed Dune 2?"
            }
        ]
    }
}

更新提示参数同时检索提示

如果您想在从 Portkey 检索提示时更改任何模型参数(如 temperaturemessages body 等),可以在您的 render 负载中发送覆盖参数。

Portkey 将返回带有覆盖参数的提示,会对 Portkey 上保存的提示进行任何更改。

根据上述代码段,检索到的提示中的 modeltemperature 参数将被 覆盖 为新传递的值。

新输出:

使用 render 输出进行新请求

以下是如何从 render API 获取输出并用于发起调用的方法。我们将以 OpenAI SDK 为例,但您也可以类似地使用任何其他提供商的 SDK。

Last updated