Aufrufen von Amazon-Nova-Verständnismodellen
Die multimodalen Verständnismodelle von Amazon Nova können für Inferenzzwecke über die Invoke-API (InvokeModel, InvokeModelWithResponseStream) und die Converse-API (Converse und ConverseStream) genutzt werden. Um Konversationsanwendungen zu erstellen, führen Sie eine Konversation mit den Converse-API-Operationen durch. Beide API-Methoden (Invoke und Converse) folgen einem sehr ähnlichen Anforderungsmuster, wie unten beschrieben
Die wichtigsten Unterschiede zwischen der Invoke-API und der Converse-API sind wie folgt:
-
Inferenzparameter wie topK werden in Converse nicht unterstützt und müssen an
additionalModelRequestFieldsübergeben werden, während sie in der Invoke-API direkt in den Inferenzparametern übergeben werden können. -
Die Dokumentenunterstützung ist nur auf die Converse-API beschränkt und wird in der Invoke-API nicht unterstützt.
-
Die Formate für die Antwortanalyse unterscheiden sich zwischen den Konstrukten der Invoke-API und der Convserse-API.
-
Das Antwort-Streaming unterscheidet sich zwischen
ConverseStreamundInvokeModelWithStreaming.
Um die Amazon-Nova-Modelle aufzurufen, müssen Sie in jeder Region, in der Sie die Modelle verwenden möchten, Zugriff auf ein Amazon-Bedrock-Grundlagenmodell anfordern.
Themen
Messages-API-Übersicht
Die Amazon-Nova-Verständnismodelle nutzen die Messages-API, welche die Übermittlung strukturierter Listen von Eingabenachrichten mit Text, Bildern, Videos und Dokumenten ermöglicht. Das Modell generiert dann die nächste Nachricht in der Konversation. Die Messages-API unterstützt sowohl einzelne Abfragen als auch statuslose Multi-Turn-Konversationen und ermöglicht so die Erstellung von Chatbots und Anwendungen für virtuelle Assistenten. Die API verwaltet den Konversationsaustausch zwischen einem Benutzer und einem Amazon-Nova-Modell (Assistent).
Amazon Nova-Modelle sind so trainiert, dass abwechselnd Benutzer und Assistent sprechen. Wenn Sie eine neue Nachricht erstellen, geben Sie mit dem Nachrichtenparameter die vorherigen Gesprächsrunden an. Das Modell generiert dann die nächsten Nachrichten in der Konversation.
Jede Eingabenachricht muss ein Objekt sein, das eine Rolle und einen Inhalt enthält. Benutzer können eine einzelne Nachricht mit der Benutzerrolle angeben oder mehrere Nachrichten mit Benutzer- und Assistentenrollen einfügen. In der ersten Nachricht muss jedoch immer die Benutzerrolle verwendet werden. Wenn die Methode des Vorausfüllens der Antwort von Amazon Nova verwendet wird (durch Einfügen einer abschließenden Nachricht mit der Assistentenrolle), setzt das Modell seine Antwort anhand der bereitgestellten Inhalte fort. Dieser Ansatz wird immer noch zu einer Antwort mit der Assistentenrolle führen.
Das Folgende stellt eine einzelne Benutzernachricht dar:
[{ "role": "user", "content": [{"text":"Hello, Nova"}] }]
Hier ist ein Beispiel mit mehreren Konversationsrunden:
[ {"role": "user", "content": [{"text": "Hello there."}]}, {"role": "assistant", "content": [{"text": "Hi, I'm Chatbot trained to answer your questions. How can I help you?"}]}, {"role": "user", "content": [{"text": "Can you explain LLMs in plain English?"}]} ]
Hier ist ein Beispiel mit einer teilweise ausgefüllten Antwort von Amazon Nova:
[ {"role": "user", "content": [{"text":"Please describe yourself using only JSON"}]}, {"role": "assistant", "content": [{"text":"Here is my JSON description:\n{"}]} ]
Weitere Informationen zum Erstellen von Prompts für Amazon-Nova-Modelle finden Sie unter Bewährte Methoden zu Textverständnis-Prompts.
Verwenden des System-Prompts
Sie können der Anfrage einen System-Prompt hinzufügen. Mit einem System-Prompt können Sie Amazon Nova Kontextinformationen und Anweisungen bereitstellen, wie etwa die Angabe eines bestimmten Ziels oder einer bestimmten Rolle. Geben Sie im system-Feld einen System-Prompt an, wie im folgenden Beispiel dargestellt:
[ {"text": "You are an expert SaS analyst......"} ]
In den folgenden Abschnitten finden Sie Beispiele zum Einfügen eines System-Prompts: