Method: models.generateAnswer

Generiert eine fundierte Antwort aus dem Modell anhand einer Eingabe-GenerateAnswerRequest.

HTTP-Anfrage

POST https://generativelanguage.googleapis.com/v1beta/{model=models/*}:generateAnswer

Die URL verwendet die Syntax der gRPC-Transcodierung.

Pfadparameter

Parameters
model

string

Erforderlich. Der Name des Model, der zum Generieren der geerdeten Antwort verwendet werden soll.

Format: model=models/{model}

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

JSON-Darstellung
{
  "contents": [
    {
      object (Content)
    }
  ],
  "answerStyle": enum (AnswerStyle),
  "safetySettings": [
    {
      object (SafetySetting)
    }
  ],

  // Union field grounding_source can be only one of the following:
  "inlinePassages": {
    object (GroundingPassages)
  },
  "semanticRetriever": {
    object (SemanticRetrieverConfig)
  }
  // End of list of possible types for union field grounding_source.
  "temperature": number
}
Felder
contents[]

object (Content)

Erforderlich. Der Inhalt der aktuellen Unterhaltung mit dem Modell. Für Abfragen mit einer einzigen Antwort ist nur eine einzige Frage zu beantworten. Bei Abfragen mit mehreren Antworten ist dies ein wiederkehrendes Feld, das den Unterhaltungsverlauf und das letzte Content in der Liste mit der Frage enthält.

Hinweis: model.generateAnswer unterstützt derzeit nur Anfragen auf Englisch.

answerStyle

enum (AnswerStyle)

Erforderlich. Stil, mit dem Antworten zurückgegeben werden sollen.

safetySettings[]

object (SafetySetting)

Optional. Eine Liste eindeutiger SafetySetting-Instanzen zum Blockieren unsicherer Inhalte.

Diese Änderung wird für GenerateAnswerRequest.contents und GenerateAnswerResponse.candidate erzwungen. Es sollte nicht mehr als eine Einstellung für jeden SafetyCategory-Typ vorhanden sein. Die API blockiert alle Inhalte und Antworten, die die in diesen Einstellungen festgelegten Grenzwerte nicht erreichen. Durch diese Liste werden die Standardeinstellungen für jeden SafetyCategory überschrieben, der in den safetySettings angegeben ist. Wenn für eine bestimmte SafetyCategory in der Liste keine SafetySetting vorhanden ist, verwendet die API die standardmäßige Sicherheitseinstellung für diese Kategorie. Die Schadenskategorien HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT und HARM_CATEGORY_HARASSMENT werden unterstützt.

Union-Feld grounding_source. Die Quellen, auf denen die Antwort begründet werden soll. Für grounding_source ist nur einer der folgenden Werte zulässig:
inlinePassages

object (GroundingPassages)

Passagen, die inline mit der Anfrage angegeben werden.

semanticRetriever

object (SemanticRetrieverConfig)

Inhalte, die aus Ressourcen abgerufen wurden, die mit der Semantic Retriever API erstellt wurden.

temperature

number

Optional. Steuert die Zufälligkeit der Ausgabe.

Die Werte können zwischen [0,0,1,0] (einschließlich) liegen. Ein Wert, der näher an 1,0 liegt, führt zu vielfältigeren und kreativen Antworten, während ein Wert näher an 0,0 in der Regel zu einfacheren Antworten des Modells führt. Eine niedrige Temperatur (ca.0,2) wird normalerweise für Anwendungsfälle mit zugeordneten Fragen empfohlen.

Antworttext

Antwort des Modells für eine fundierte Antwort.

Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:

JSON-Darstellung
{
  "answer": {
    object (Candidate)
  },
  "answerableProbability": number,
  "inputFeedback": {
    object (InputFeedback)
  }
}
Felder
answer

object (Candidate)

Kandidatenantwort anhand des Modells.

Hinweis: Das Modell versucht immer, eine fundierte Antwort zu geben, auch wenn es unwahrscheinlich ist, dass die Antwort anhand der gegebenen Absätze beantwortet werden kann. In diesem Fall können Sie eine minderwertige oder unbegründete Antwort und eine niedrige answerableProbability angeben.

answerableProbability

number

Nur Ausgabe Die Schätzung des Modells zur Wahrscheinlichkeit, dass seine Antwort richtig ist und auf den Eingabeabschnitten basiert.

Eine niedrige answerableProbability bedeutet, dass die Antwort möglicherweise nicht auf den Quellen beruht.

Wenn der answerableProbability niedrig ist, möchten einige Clients möglicherweise Folgendes tun:

  • Dem Nutzer wird die Meldung „Diese Frage konnte nicht beantwortet werden“ angezeigt.
  • Greife auf ein allgemeines LLM zurück, das die Frage aus Weltwissen beantwortet. Der Schwellenwert und die Art dieser Fallbacks hängen von den Anwendungsfällen der einzelnen Kunden ab. 0,5 ist ein guter Grenzwert für den Anfang.
inputFeedback

object (InputFeedback)

Nur Ausgabe Feedback zu den Eingabedaten, die zur Beantwortung der Frage verwendet wurden, im Gegensatz zu einer von einem Modell generierten Antwort auf die Frage.

Bei „Eingabedaten“ kann es sich um einen oder mehrere der folgenden Werte handeln:

  • Im letzten Eintrag in GenerateAnswerRequest.content angegebene Frage
  • Unterhaltungsverlauf, der durch die anderen Einträge in „GenerateAnswerRequest.content“ angegeben ist
  • Fundierungsquellen (GenerateAnswerRequest.semantic_retriever oder GenerateAnswerRequest.inline_passages)

Autorisierungsbereiche

Erfordert einen der folgenden OAuth-Bereiche:

  • https://www.googleapis.com/auth/generative-language
  • https://www.googleapis.com/auth/generative-language.retriever
  • https://www.googleapis.com/auth/generative-language.retriever.readonly
  • https://www.googleapis.com/auth/generative-language.tuning
  • https://www.googleapis.com/auth/generative-language.tuning.readonly

Weitere Informationen finden Sie in der Authentifizierungsübersicht.

GroundingPassages

Eine wiederholte Liste von Passagen.

JSON-Darstellung
{
  "passages": [
    {
      object (GroundingPassage)
    }
  ]
}
Felder
passages[]

object (GroundingPassage)

Liste mit Textabschnitten.

GroundingPassage

Passage in einer Erdungskonfiguration enthalten.

JSON-Darstellung
{
  "id": string,
  "content": {
    object (Content)
  }
}
Felder
id

string

ID für den Abschnitt, mit dem dieser Abschnitt bei begründeten Antworten zugeordnet wird.

content

object (Content)

Inhalt des Abschnitts.

SemanticRetrieverConfig

Konfiguration zum Abrufen von Grounding-Inhalten aus einem Corpus oder Document, der mit der Semantic Retriever API erstellt wurde.

JSON-Darstellung
{
  "source": string,
  "query": {
    object (Content)
  },
  "metadataFilters": [
    {
      object (MetadataFilter)
    }
  ],
  "maxChunksCount": integer,
  "minimumRelevanceScore": number
}
Felder
source

string

Erforderlich. Name der abzurufenden Ressource, z.B. corpora/123 oder corpora/123/documents/abc.

query

object (Content)

Erforderlich. Abfrage, die für Ähnlichkeitsabgleiche Chunks in der angegebenen Ressource verwendet werden soll.

metadataFilters[]

object (MetadataFilter)

Optional. Filter zur Auswahl von Document und/oder Chunks aus der Ressource.

maxChunksCount

integer

Optional. Maximale Anzahl der abzurufenden relevanten Chunks.

minimumRelevanceScore

number

Optional. Minimaler Relevanzwert für abgerufene relevante Chunks.

AnswerStyle

Stil für begründete Antworten.

Enums
ANSWER_STYLE_UNSPECIFIED Antwortstil nicht angegeben.
ABSTRACTIVE Abstrakt, aber fröhlich.
EXTRACTIVE Sehr knapper, extravaganter Stil.
VERBOSE Ausführlicher Stil mit zusätzlichen Details. Die Antwort kann als Satz, Absatz, mehrere Absätze, Aufzählungspunkte usw. formatiert sein.

InputFeedback

Feedback zu den Eingabedaten, die zur Beantwortung der Frage verwendet wurden, im Gegensatz zu einer von einem Modell generierten Antwort auf die Frage.

JSON-Darstellung
{
  "safetyRatings": [
    {
      object (SafetyRating)
    }
  ],
  "blockReason": enum (BlockReason)
}
Felder
safetyRatings[]

object (SafetyRating)

Bewertungen zur Sicherheit der Eingabe. Pro Kategorie ist maximal eine Bewertung vorhanden.

blockReason

enum (BlockReason)

Optional. Wenn festgelegt, wurde die Eingabe blockiert und es werden keine Kandidaten zurückgegeben. Formulieren Sie Ihre Eingabe um.

BlockReason

Gibt an, warum die Eingabe blockiert wurde.

Enums
BLOCK_REASON_UNSPECIFIED Standardwert Dieser Wert wird nicht verwendet.
SAFETY Eingabe wurde aus Sicherheitsgründen blockiert. Sie können safetyRatings untersuchen, um herauszufinden, welche Sicherheitskategorie sie blockiert hat.
OTHER Die Eingabe wurde aus anderen Gründen blockiert.