视觉理解提示技巧 - Amazon Nova

视觉理解提示技巧

以下视觉提示技巧将帮助您为 Amazon Nova 创建效果更好的提示。

放置位置很重要

建议在添加任何文档之前先放置媒体文件(例如图像或视频),然后再放置用于指导模型的指令文本或提示。虽然图像放置在文本之后或图像穿插文本,也可以充分发挥作用,但如果应用场景允许,{media_file}-then-{text} 结构仍是首选方法。

在进行视觉理解时,可以使用以下模板将媒体文件放在文本之前。

{ "role": "user", "content": [ { "image": "..." }, { "video": "..." }, { "document": "..." }, { "text": "..." } ] }

未采用建议结构

优化后的提示

用户

解释图像中发生了什么 [Image1.png]

[Image1.png]

解释图像中发生了什么?

带有视觉组件的多个媒体文件

如果轮流提供多个媒体文件,请为每张图像添加带编号的标签。例如,若使用两张图像,请加上 Image 1:Image 2: 标签。若使用三个视频,请加上 Video 1: Video 2:Video 3: 标签。图像之间或图像与提示之间不需要换行符。

可按照以下模板放置多个媒体文件:

messages = [ { "role": "user", "content": [ {"text":"Image 1:"}, {"image": {"format": "jpeg", "source": {"bytes": img_1_base64}}}, {"text":"Image 2:"}, {"image": {"format": "jpeg", "source": {"bytes": img_2_base64}}}, {"text":"Image 3:"}, {"image": {"format": "jpeg", "source": {"bytes": img_3_base64}}}, {"text":"Image 4:"}, {"image": {"format": "jpeg", "source": {"bytes": img_4_base64}}}, {"text":"Image 5:"}, {"image": {"format": "jpeg", "source": {"bytes": img_5_base64}}}, {"text":user_prompt}, ], } ]

未优化的提示

优化后的提示

描述第二张图像中可以看到的内容。

[Image1.png] [Image2.png]

[Image1.png]

[Image2.png]

描述第二张图像中可以看到的内容。

随附的文档中是否描述了第二张图像?

[Image1.png] [Image2.png] [Document1.pdf]

[Image1.png]

[Image2.png]

[Document1.pdf]

随附的文档中是否描述了第二张图像?

媒体文件类型的上下文词元很长,因此在某些情况下,模型可能不会遵守提示开头所示的系统提示。在这种情况下,建议将所有系统指令移至用户回合,并按照 {media_file}-then-{text} 的一般指导进行操作。这不会影响使用 RAG、座席或“工具使用”的系统提示。

使用用户指令来改进视觉理解任务的指令遵循

对于视频理解,上下文中的词元数量使 放置位置很重要 中的推荐显得非常重要。将系统提示用于更通用的内容,例如语气和风格。建议将与视频相关的指令保留为用户提示的一部分,以便提高性能。

以下模板可用于改进指令:

{ "role": "user", "content": [ { "video": { "format": "mp4", "source": { ... } } }, { "text": "You are an expert in recipe videos. Describe this video in less than 200 words following these guidelines: ..." } ] }

就像文本一样,我们建议对图像和视频应用思维链来获得更好的性能。我们还建议您将思维链指令放在系统提示中,同时将其他指令放在用户提示中。

重要

Amazon Nova Premier 模型是 Amazon Nova 系列中智能程度更高的模型,能够处理更复杂的任务。如果任务需要高级思维链思维,建议使用让 Amazon Nova 有时间思考(思维链)中提供的提示模板。此方法可以帮助增强模型的分析和问题解决能力。

少量样本

与文本模型一样,建议提供图像示例以提高图像理解性能(由于每个推理单个视频的限制,无法提供视频样本)。建议将示例放在媒体文件之后的用户提示中,而不是在系统提示中提供。

0-Shot 2-Shot
User [Image 1]
Assistant The image 1 description
User [Image 2]
Assistant The image 2 description
User

[图像 3]

解释图像中发生了什么

[图像 3]

解释图像中发生了什么

边界框检测

如果需要识别对象的边界框坐标,则可使用 Amazon Nova 模型在 [0, 1000) 范围内输出边界框。获得这些坐标后,即可根据图像尺寸调整坐标的大小,作为一种后处理步骤。有关如何完成此后处理步骤的更多详细信息,请参阅 Amazon Nova Image Grounding notebook

以下是边界框检测的示例提示:

Detect bounding box of objects in the image, only detect {item_name} category objects with high confidence, output in a list of bounding box format. Output example: [ {"{item_name}": [x1, y1, x2, y2]}, ... ] Result:

更丰富的输出或风格

视频理解输出可能很短。如果想要更长的输出,建议为模型创建角色。您可以引导这个角色以您想要的方式做出回应,类似于使用系统角色。

可以通过单样本学习和少样本学习技术对回复进行进一步修改。举例说明一个好的回复应是怎样,模型可以在生成答案的同时模仿该回复的各个方面。

将文档内容提取到 Markdown 中

Amazon Nova Premier 展示了增强的理解文档中嵌入的图表的能力,以及阅读和理解科学论文等复杂领域内容的能力。此外,Amazon Nova Premier 在提取文档内容时表现出了更高的性能,并且可以将这些信息输出为 Markdown Table 和 Latex 格式。

以下示例提供了图像中的表格,并提示 Amazon Nova Premier 将图像内容转换为 Markdown 表格。Markdown(或 Latex 表示形式)创建完毕后,您可以使用工具将内容转换为 JSON 或其他结构化输出。

Make a table representation in Markdown of the image provided.
以图像而非文档形式提供的数据表

下面是模型提供的输出:

| No. | DATE | DESCRIPTION | AMOUNT | |-----|------------|-------------|--------| | 1 | 2021-04-19 | Guest room | $180 | | 2 | 2021-04-19 | Breakfast | $30 | | 3 | 2021-04-20 | Guest room | $180 | | 4 | 2021-04-20 | Laundry | $15 | | 5 | 2021-04-20 | Dinner | $70 | | 6 | 2021-04-20 | Breakfast | $30 | | 7 | 2021-04-21 | Guest room | $180 | | 8 | 2021-04-21 | Breakfast | $30 | | 9 | 2021-04-21 | Dinner | $70 | | 10 | 2021-04-21 | Laundry | $15 | | | | Subtotal | $800 | | | | Discounts | $24 | | | | Taxes | $68.9 | | | | Total | $844.9 |

此输出使用自定义表记法,其中 || 用作列分隔符,&& 用作行分隔符。

视觉理解的推理参数设置

对于视觉理解用例,建议首先将推理参数 temperature 设置为 0 并将 topK 设置为 1。观察模型的输出后,您可以根据用例调整推理参数。这些值通常取决于所需的任务和偏差,增加温度设置会导致答案产生更多变化。

视频分类

为了有效地将视频内容分类到适当的类别中,请提供模型可用于分类的类别。请考虑以下示例提示:

[Video] Which category would best fit this video? Choose an option from the list below: \Education\Film & Animation\Sports\Comedy\News & Politics\Travel & Events\Entertainment\Trailers\How-to & Style\Pets & Animals\Gaming\Nonprofits & Activism\People & Blogs\Music\Science & Technology\Autos & Vehicles
为视频添加标签

Amazon Nova Premier 展示了用于创建视频标签的改进功能。为了获得最佳效果,请使用以下要求用逗号分隔标签的指令“使用逗号分隔每个标签”。以下是一个示例提示:

[video] "Can you list the relevant tags for this video? Use commas to separate each tag."
视频的密集字幕

Amazon Nova Premier 展示了提供密集字幕的增强功能,即为视频中的多个片段生成的详细文本描述。以下是一个示例提示:

[Video] Generate a comprehensive caption that covers all major events and visual elements in the video.