系统 prompt 是定义生成式 AI 模型对用户输入的响应策略的一种好方法。这篇博文将介绍什么是系统 prompt,以及如何在基于 Anthropic Claude 2.x 和 3 的应用中使用系统 prompt。
亚马逊云科技开发者社区为开发者们提供全球的开发技术资源。这里有技术文档、开发案例、技术专栏、培训视频、活动与竞赛等。帮助中国开发者对接世界最前沿技术,观点,和项目,并将中国优秀开发者或技术推荐给全球云社区。如果你还没有关注/收藏,看到这里请一定不要匆匆划过,点这里让它成为你的技术宝库!
Amazon Bedrock 生成式人工智能编程
你知道和 Amazon Bedrock 上的 Anthropic Claude 模型互动时可以使用系统prompt 吗?
下面我们将首先了解一下系统 prompt 的概念,然后演示在 Claude 2.x 的文本补全 API 和 Claude 3 的新消息 API 中如何运用系统 prompt。
⚠ 友情提示:本文包含示例代码。
如果你对系统 prompt 和 Claude 的两种 API 已有一定了解,可以直接跳到代码部分。文章末尾,我提供了两个完整的示例代码。
什么是系统 prompt?
今天我们讨论的是 Claude,所以我们来看看 Anthropic 对系统 prompt 的解释:
系统 prompt 是在向 Claude 提出问题或下达任务之前提供上下文、指令和指南的一种方式。你可以使用系统 prompt 来为对话设定背景,包括 Claude 的角色、个性、语气或任何其他有助于其更好理解和响应用户输入的相关信息。
简而言之,系统 prompt 实际上是一种上下文学习模式,可以有效地定义模型在交互过程中的上下文、范围、边界和输出格式。
使用系统 prompt 的目的是确保 AI 输出符合特定领域的目标或任务要求。以下是一些典型的使用场景:
-
处理比萨订单:将模型的作用范围指定为根据比萨餐厅的菜单和位置接单。
-
作为技术支持,协助排查故障:向模型中输入产品详情、常见问题及答案和决策树等内容,帮助用户解决技术问题。
-
代码调试:向模型中输入有关库、框架和编程语言版本的信息,帮助识别软件漏洞并提出修复建议。
Amazon Bedrock 支持的两种 Claude API
现在,你应该对系统 prompt 有一定了解了。下面,让我们看看 Amazon Bedrock 上不同版本的 Claude 所提供的两种 API:
-
文本补全 API:Claude 1 和 2.x 版本均支持文本补全 API。
-
消息 API:新的 Claude 3 版本引入了消息 API。
文本补全 API
Anthropic Claude 1 和 2 版本在 Amazon Bedrock 上线后,Claude 模型便向亚马逊云科技客户全面开放,并随后在 re:Invent 2023 中推出了 Claude 2.1。2.1 及之前版本的 Claude 模型均提供了文本补全 API。这个 API 根据用户提供的 prompt 优化单轮文本生成。Prompt 模版如下:
备注:文章末尾提供了完整的代码示例以供参考。
# The prompt format for the text completion API (Claude 1 and 2.x)
user_prompt = "Tell me a story."
prompt = "Human: " + user_prompt + "\n\nAssistant:"
我在 Claude v2.1 上使用这个 prompt 后,我得到了如下的输出:
The young boy wandered into the dark, mysterious forest, hoping to find the rare flower his mother needed to recover from her illness, but instead encountered a wise old owl who offered him cryptic advice about believing in himself.(一个小男孩走进了一处幽暗而神秘的森林,希望找到能让他母亲康复的稀有花朵,但却遇到了一只智慧的老猫头鹰,劝诫他要相信自己。)
在文本补全 API 中使用系统 Prompt
只需将系统 prompt 添加到用户 prompt 之前即可。
# Using a system prompt with the text completion API (Claude 1 and 2.x)
system_prompt = "All your output must be pirate speech
标签:prompt,示例,Claude,text,Amazon,API,Prompt
From: https://www.cnblogs.com/AmazonwebService/p/18072021