View a markdown version of this page

API-Referenz - Amazon Nova

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

API-Referenz

Amazon Nova-Modelle SageMaker verwenden die SageMaker Standard-Runtime-API für Inferenz. Eine vollständige API-Dokumentation finden Sie unter Testen eines bereitgestellten Modells.

Aufruf eines Endpunkts

Amazon Nova-Modelle SageMaker unterstützen zwei Aufrufmethoden:

Anforderungsformat

Amazon Nova-Modelle unterstützen zwei Anforderungsformate:

Format für den Abschluss des Chats

Verwenden Sie dieses Format für Konversationsinteraktionen:

{ "messages": [ {"role": "user", "content": "string"} ], "max_tokens": integer, "max_completion_tokens": integer, "stream": boolean, "temperature": float, "top_p": float, "top_k": integer, "logprobs": boolean, "top_logprobs": integer, "allowed_token_ids": [integer], "truncate_prompt_tokens": integer, "stream_options": { "include_usage": boolean } }

Format der Textvervollständigung

Verwenden Sie dieses Format für die einfache Textgenerierung:

{ "prompt": "string", "max_tokens": integer, "stream": boolean, "temperature": float, "top_p": float, "top_k": integer, "logprobs": integer, "allowed_token_ids": [integer], "truncate_prompt_tokens": integer, "stream_options": { "include_usage": boolean } }

Multimodales Format für den Abschluss von Chats

Verwenden Sie dieses Format für Bild- und Texteingaben:

{ "messages": [ { "role": "user", "content": [ {"type": "text", "text": "What's in this image?"}, {"type": "image_url", "image_url": {"url": "data:image/jpeg;base64,..."}} ] } ], "max_tokens": integer, "temperature": float, "top_p": float, "stream": boolean }

Anfrageparameter

  • messages(array): Für das Format zum Abschluss von Chats. Array von Nachrichtenobjekten mit role und content -Feldern. Der Inhalt kann eine Zeichenfolge für reinen Text oder ein Array für multimodale Eingaben sein.

  • prompt(Zeichenfolge): Für das Format der Textvervollständigung. Der Eingabetext, aus dem generiert werden soll.

  • max_tokens(Ganzzahl): Maximale Anzahl von Token, die in der Antwort generiert werden sollen. Bereich: 1 oder größer.

  • max_completion_tokens(Integer): Alternative zu max_tokens für Chat-Abschlüsse. Maximale Anzahl von Abschluss-Token, die generiert werden sollen.

  • temperature(float): Steuert die Zufälligkeit bei der Generierung. Bereich: 0,0 bis 2,0 (0,0 = deterministisch, 2,0 = maximale Zufälligkeit).

  • top_p(float): Schwellenwert für die Nucleus-Probenahme. Bereich: 1e-10 bis 1,0.

  • top_k(Ganzzahl): Beschränkt die Token-Auswahl auf die K der wahrscheinlichsten Tokens. Bereich: -1 oder größer (-1 = kein Limit).

  • stream(boolean): Ob die Antwort gestreamt werden soll. Auf für Streaming gesetzt, true false für Nicht-Streaming.

  • logprobs(boolean/integer): Verwenden Sie für Chat-Abschlüsse einen booleschen Wert. Verwenden Sie für Textvervollständigungen eine Ganzzahl für die Anzahl der Log-Wahrscheinlichkeiten, die zurückgegeben werden. Bereich: 1 bis 20.

  • top_logprobs(Ganzzahl): Anzahl der Tokens, für die die Wahrscheinlichkeit am wahrscheinlichsten ist, dass Log-Wahrscheinlichkeiten zurückgegeben werden (nur Chat-Abschlüsse).

  • allowed_token_ids(Array): Liste der Token-IDs, die generiert werden dürfen. Beschränkt die Ausgabe auf bestimmte Token.

  • truncate_prompt_tokens(Ganzzahl): Kürzen Sie die Eingabeaufforderung auf so viele Token, wenn sie das Limit überschreitet.

  • stream_options(Objekt): Optionen für das Streamen von Antworten. Enthält einen include_usage booleschen Wert, um die Verwendung von Token in Streaming-Antworten einzubeziehen.

Reaktionsformat

Das Antwortformat hängt von der Aufrufmethode und dem Anforderungstyp ab:

Antwort auf Abschluss des Chats (kein Streaming)

Für synchrone Anfragen zum Abschluss eines Chats:

{ "id": "chatcmpl-123e4567-e89b-12d3-a456-426614174000", "object": "chat.completion", "created": 1677652288, "model": "nova-micro-custom", "choices": [ { "index": 0, "message": { "role": "assistant", "content": "Hello! I'm doing well, thank you for asking. How can I help you today?", "refusal": null, "reasoning": null, "reasoning_content": null }, "logprobs": { "content": [ { "token": "Hello", "logprob": -0.31725305, "bytes": [72, 101, 108, 108, 111], "top_logprobs": [ { "token": "Hello", "logprob": -0.31725305, "bytes": [72, 101, 108, 108, 111] }, { "token": "Hi", "logprob": -1.3190403, "bytes": [72, 105] } ] } ] }, "finish_reason": "stop", "stop_reason": null, "token_ids": [9906, 0, 358, 2157, 1049, 11, 1309, 345, 369, 6464, 13] } ], "usage": { "prompt_tokens": 9, "completion_tokens": 12, "total_tokens": 21, "prompt_tokens_details": { "cached_tokens": 0 } }, "prompt_token_ids": [9906, 0, 358] }

Antwort auf Textvervollständigung (kein Streaming)

Für synchrone Textvervollständigungsanfragen:

{ "id": "cmpl-123e4567-e89b-12d3-a456-426614174000", "object": "text_completion", "created": 1677652288, "model": "nova-micro-custom", "choices": [ { "index": 0, "text": "Paris, the capital and most populous city of France.", "logprobs": { "tokens": ["Paris", ",", " the", " capital"], "token_logprobs": [-0.31725305, -0.07918124, -0.12345678, -0.23456789], "top_logprobs": [ { "Paris": -0.31725305, "London": -1.3190403, "Rome": -2.1234567 }, { ",": -0.07918124, " is": -1.2345678 } ] }, "finish_reason": "stop", "stop_reason": null, "prompt_token_ids": [464, 6864, 315, 4881, 374], "token_ids": [3915, 11, 279, 6864, 323, 1455, 95551, 3363, 315, 4881, 13] } ], "usage": { "prompt_tokens": 5, "completion_tokens": 11, "total_tokens": 16, "prompt_tokens_details": { "cached_tokens": 0 } } }

Streaming-Antwort zum Abschluss des Chats

Bei Anfragen zum Abschluss eines Streaming-Chats werden die Antworten als Server-Sent Ereignisse (SSE) gesendet:

data: { "id": "chatcmpl-123e4567-e89b-12d3-a456-426614174000", "object": "chat.completion.chunk", "created": 1677652288, "model": "nova-micro-custom", "choices": [ { "index": 0, "delta": { "role": "assistant", "content": "Hello", "refusal": null, "reasoning": null, "reasoning_content": null }, "logprobs": { "content": [ { "token": "Hello", "logprob": -0.31725305, "bytes": [72, 101, 108, 108, 111], "top_logprobs": [ { "token": "Hello", "logprob": -0.31725305, "bytes": [72, 101, 108, 108, 111] } ] } ] }, "finish_reason": null, "stop_reason": null } ], "usage": null, "prompt_token_ids": null } data: { "id": "chatcmpl-123e4567-e89b-12d3-a456-426614174000", "object": "chat.completion.chunk", "created": 1677652288, "model": "nova-micro-custom", "choices": [ { "index": 0, "delta": { "content": "! I'm" }, "logprobs": null, "finish_reason": null, "stop_reason": null } ], "usage": null } data: { "id": "chatcmpl-123e4567-e89b-12d3-a456-426614174000", "object": "chat.completion.chunk", "created": 1677652288, "model": "nova-micro-custom", "choices": [ { "index": 0, "delta": {}, "finish_reason": "stop", "stop_reason": null } ], "usage": { "prompt_tokens": 9, "completion_tokens": 12, "total_tokens": 21, "prompt_tokens_details": { "cached_tokens": 0 } } } data: [DONE]

Streaming-Antwort zur Textvervollständigung

Für Streaming-Anfragen zur Textvervollständigung:

data: { "id": "cmpl-123e4567-e89b-12d3-a456-426614174000", "object": "text_completion", "created": 1677652288, "model": "nova-micro-custom", "choices": [ { "index": 0, "text": "Paris", "logprobs": { "tokens": ["Paris"], "token_logprobs": [-0.31725305], "top_logprobs": [ { "Paris": -0.31725305, "London": -1.3190403 } ] }, "finish_reason": null, "stop_reason": null } ], "usage": null } data: { "id": "cmpl-123e4567-e89b-12d3-a456-426614174000", "object": "text_completion", "created": 1677652288, "model": "nova-micro-custom", "choices": [ { "index": 0, "text": ", the capital", "logprobs": null, "finish_reason": null, "stop_reason": null } ], "usage": null } data: { "id": "cmpl-123e4567-e89b-12d3-a456-426614174000", "object": "text_completion", "created": 1677652288, "model": "nova-micro-custom", "choices": [ { "index": 0, "text": "", "finish_reason": "stop", "stop_reason": null } ], "usage": { "prompt_tokens": 5, "completion_tokens": 11, "total_tokens": 16 } } data: [DONE]

Erklärung der Antwortfelder

  • id: Eindeutige Kennung für den Abschluss

  • object: Typ des zurückgegebenen Objekts („chat.completion“, „text_completion“, „chat.completion.chunk“)

  • created: Unix-Zeitstempel, wann die Fertigstellung erstellt wurde

  • model: Für die Fertigstellung verwendetes Modell

  • choices: Eine Reihe von Optionen für die Fertigstellung

  • usage: Informationen zur Token-Nutzung, einschließlich Aufforderung, Abschluss und Gesamtzahl der Tokens

  • logprobs: Protokollieren Sie die Wahrscheinlichkeitsinformationen für Tokens (wenn angefordert)

  • finish_reason: Grund, warum das Modell aufgehört hat zu generieren („stop“, „length“, „content_filter“)

  • delta: Inkrementeller Inhalt in Streaming-Antworten

  • reasoning: Inhalt zur Begründung, wenn reasoning_effort verwendet wird

  • token_ids: Array von Token-IDs für den generierten Text

Eine vollständige API-Dokumentation finden Sie unter InvokeEndpoint API-Referenz und InvokeEndpointWithResponseStream API-Referenz.