La API de Gemini admite la generación de contenido con imágenes, audio, código, herramientas y mucho más. Para obtener detalles sobre cada una de estas funciones, sigue leyendo y consulta el código de muestra centrado en tareas o lee las guías integrales.
- Generación de texto
- Vision
- Audio
- Embeddings
- Contexto largo
- Ejecución de código
- Modo JSON
- Llamada a función
- Instrucciones del sistema
Método: models.generateContent
- Extremo
- Parámetros de ruta de acceso
- Cuerpo de la solicitud
- Cuerpo de la respuesta
- Permisos de autorización
- Ejemplo de solicitud
Genera una respuesta del modelo a partir de una entrada GenerateContentRequest
. Consulta la guía de generación de texto para obtener información detallada sobre el uso. Las capacidades de entrada difieren entre los modelos, incluidos los modelos ajustados. Consulta la guía del modelo y la guía de ajuste para obtener más detalles.
Extremo
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:generateContent
Parámetros de ruta
model
string
Obligatorio. Es el nombre del Model
que se usará para generar la finalización.
Formato: models/{model}
. Toma la forma models/{model}
.
Cuerpo de la solicitud
El cuerpo de la solicitud contiene datos con la siguiente estructura:
contents[]
object (Content
)
Obligatorio. El contenido de la conversación actual con el modelo.
Para consultas de un solo turno, esta es una instancia única. Para las consultas de varios turnos, como chat, este es un campo repetido que contiene el historial de conversaciones y la solicitud más reciente.
tools[]
object (Tool
)
Opcional. Es una lista de Tools
que el Model
puede usar para generar la siguiente respuesta.
Una Tool
es un fragmento de código que permite que el sistema interactúe con sistemas externos para realizar una acción, o un conjunto de acciones, fuera del conocimiento y del alcance del Model
. Los Tool
admitidos son Function
y codeExecution
. Consulta las guías de Llamada a función y Ejecución de código para obtener más información.
toolConfig
object (ToolConfig
)
Opcional. Es la configuración de la herramienta para cualquier Tool
especificado en la solicitud. Consulta la guía de llamadas a funciones para ver un ejemplo de uso.
safetySettings[]
object (SafetySetting
)
Opcional. Es una lista de instancias SafetySetting
únicas para bloquear contenido no seguro.
Esto se aplicará en GenerateContentRequest.contents
y GenerateContentResponse.candidates
. No debe haber más de un parámetro de configuración para cada tipo de SafetyCategory
. La API bloqueará todo el contenido y las respuestas que no cumplan con los umbrales establecidos por estos parámetros de configuración. Esta lista anula la configuración predeterminada de cada SafetyCategory
especificado en safetySettings. Si no hay un SafetySetting
para un SafetyCategory
determinado proporcionado en la lista, la API usará el parámetro de configuración de seguridad predeterminado para esa categoría. Se admiten las categorías de daño HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT y HARM_CATEGORY_CIVIC_INTEGRITY. Consulta la guía para obtener información detallada sobre los parámetros de configuración de seguridad disponibles. También consulta la Guía de seguridad para obtener información sobre cómo incorporar consideraciones de seguridad en tus aplicaciones de IA.
systemInstruction
object (Content
)
Opcional. El desarrollador establece instrucciones del sistema. Actualmente, solo texto.
generationConfig
object (GenerationConfig
)
Opcional. Son las opciones de configuración para la generación y los resultados del modelo.
cachedContent
string
Opcional. Nombre del contenido almacenado en caché que se usará como contexto para entregar la predicción. Formato: cachedContents/{cachedContent}
Ejemplo de solicitud
Texto
Python
Node.js
Go
Almeja
Kotlin
Swift
Dart
Java
Imagen
Python
Node.js
Go
Almeja
Kotlin
Swift
Dart
Java
Audio
Python
Node.js
Go
Almeja
Video
Python
Node.js
Go
Almeja
Python
Go
Almeja
Chat
Python
Node.js
Go
Almeja
Kotlin
Swift
Dart
Java
Caché
Python
Node.js
Go
Modelo ajustado
Python
Modo JSON
Python
Node.js
Go
Almeja
Kotlin
Swift
Dart
Java
Ejecución de código
Python
Go
Kotlin
Java
Llamadas a funciones
Python
Go
Node.js
Almeja
Kotlin
Swift
Dart
Java
Configuración de generación
Python
Node.js
Go
Almeja
Kotlin
Swift
Dart
Java
Configuración de seguridad
Python
Node.js
Go
Almeja
Kotlin
Swift
Dart
Java
Instrucción del sistema
Python
Node.js
Go
Almeja
Kotlin
Swift
Dart
Java
Cuerpo de la respuesta
Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de GenerateContentResponse
.
Método: models.streamGenerateContent
- Extremo
- Parámetros de ruta de acceso
- Cuerpo de la solicitud
- Cuerpo de la respuesta
- Permisos de autorización
- Ejemplo de solicitud
Genera una respuesta transmitida del modelo a partir de una entrada GenerateContentRequest
.
Extremo
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:streamGenerateContent
Parámetros de ruta
model
string
Obligatorio. Es el nombre del Model
que se usará para generar la finalización.
Formato: models/{model}
. Toma la forma models/{model}
.
Cuerpo de la solicitud
El cuerpo de la solicitud contiene datos con la siguiente estructura:
contents[]
object (Content
)
Obligatorio. El contenido de la conversación actual con el modelo.
Para consultas de un solo turno, esta es una instancia única. Para las consultas de varios turnos, como chat, este es un campo repetido que contiene el historial de conversaciones y la solicitud más reciente.
tools[]
object (Tool
)
Opcional. Es una lista de Tools
que el Model
puede usar para generar la siguiente respuesta.
Una Tool
es un fragmento de código que permite que el sistema interactúe con sistemas externos para realizar una acción, o un conjunto de acciones, fuera del conocimiento y del alcance del Model
. Los Tool
admitidos son Function
y codeExecution
. Consulta las guías de Llamada a función y Ejecución de código para obtener más información.
toolConfig
object (ToolConfig
)
Opcional. Es la configuración de la herramienta para cualquier Tool
especificado en la solicitud. Consulta la guía de llamadas a funciones para ver un ejemplo de uso.
safetySettings[]
object (SafetySetting
)
Opcional. Es una lista de instancias SafetySetting
únicas para bloquear contenido no seguro.
Esto se aplicará en GenerateContentRequest.contents
y GenerateContentResponse.candidates
. No debe haber más de un parámetro de configuración para cada tipo de SafetyCategory
. La API bloqueará todo el contenido y las respuestas que no cumplan con los umbrales establecidos por estos parámetros de configuración. Esta lista anula la configuración predeterminada de cada SafetyCategory
especificado en safetySettings. Si no hay un SafetySetting
para un SafetyCategory
determinado proporcionado en la lista, la API usará el parámetro de configuración de seguridad predeterminado para esa categoría. Se admiten las categorías de daño HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT y HARM_CATEGORY_CIVIC_INTEGRITY. Consulta la guía para obtener información detallada sobre los parámetros de configuración de seguridad disponibles. También consulta la Guía de seguridad para obtener información sobre cómo incorporar consideraciones de seguridad en tus aplicaciones de IA.
systemInstruction
object (Content
)
Opcional. El desarrollador establece instrucciones del sistema. Actualmente, solo texto.
generationConfig
object (GenerationConfig
)
Opcional. Son las opciones de configuración para la generación y los resultados del modelo.
cachedContent
string
Opcional. Nombre del contenido almacenado en caché que se usará como contexto para entregar la predicción. Formato: cachedContents/{cachedContent}
Ejemplo de solicitud
Texto
Python
Node.js
Go
Almeja
Kotlin
Swift
Dart
Java
Imagen
Python
Node.js
Go
Almeja
Kotlin
Swift
Dart
Java
Audio
Python
Go
Almeja
Video
Python
Node.js
Go
Almeja
Python
Go
Almeja
Chat
Python
Node.js
Go
Almeja
Kotlin
Swift
Dart
Java
Cuerpo de la respuesta
Si se ejecuta correctamente, el cuerpo de la respuesta contiene un flujo de instancias de GenerateContentResponse
.
GenerateContentResponse
Es la respuesta del modelo que admite varias respuestas candidatas.
Las clasificaciones de seguridad y el filtrado de contenido se informan para la instrucción en GenerateContentResponse.prompt_feedback
y para cada candidato en finishReason
y en safetyRatings
. La API: - Muestra todos los candidatos solicitados o ninguno de ellos. - No muestra ningún candidato solo si hubo algún problema con la instrucción (consulta promptFeedback
). - Informa comentarios sobre cada candidato en finishReason
y safetyRatings
.
candidates[]
object (Candidate
)
Son las respuestas candidatas del modelo.
promptFeedback
object (PromptFeedback
)
Devuelve los comentarios de la instrucción relacionados con los filtros de contenido.
usageMetadata
object (UsageMetadata
)
Solo salida. Son los metadatos sobre el uso de tokens de las solicitudes de generación.
modelVersion
string
Solo salida. Es la versión del modelo que se usó para generar la respuesta.
responseId
string
Solo salida. El campo responseId se usa para identificar cada respuesta.
Representación JSON |
---|
{ "candidates": [ { object ( |
PromptFeedback
Es un conjunto de metadatos de comentarios que la instrucción especificó en GenerateContentRequest.content
.
blockReason
enum (BlockReason
)
Opcional. Si se configura, la instrucción se bloqueó y no se devolvió ningún candidato. Reformula la instrucción.
safetyRatings[]
object (SafetyRating
)
Son las calificaciones de seguridad de la instrucción. Hay, como máximo, una clasificación por categoría.
Representación JSON |
---|
{ "blockReason": enum ( |
BlockReason
Especifica el motivo por el que se bloqueó la instrucción.
Enumeraciones | |
---|---|
BLOCK_REASON_UNSPECIFIED |
Valor predeterminado Este valor no se usa. |
SAFETY |
Se bloqueó la instrucción por motivos de seguridad. Inspecciona safetyRatings para comprender qué categoría de seguridad lo bloqueó. |
OTHER |
Se bloqueó la instrucción por motivos desconocidos. |
BLOCKLIST |
Se bloqueó la instrucción debido a los términos incluidos en la lista de términos bloqueados. |
PROHIBITED_CONTENT |
Se bloqueó la instrucción debido a contenido prohibido. |
IMAGE_SAFETY |
Se bloquearon los candidatos debido a contenido no seguro para la generación de imágenes. |
UsageMetadata
Son los metadatos sobre el uso de tokens de la solicitud de generación.
promptTokenCount
integer
Cantidad de tokens en la instrucción. Cuando se establece cachedContent
, este sigue siendo el tamaño total efectivo de la instrucción, lo que significa que incluye la cantidad de tokens en el contenido almacenado en caché.
cachedContentTokenCount
integer
Cantidad de tokens en la parte almacenada en caché de la instrucción (el contenido almacenado en caché)
candidatesTokenCount
integer
Es la cantidad total de tokens en todos los candidatos de respuesta generados.
toolUsePromptTokenCount
integer
Solo salida. Cantidad de tokens presentes en las instrucciones de uso de herramientas.
thoughtsTokenCount
integer
Solo salida. Cantidad de tokens de pensamientos para los modelos de pensamiento.
totalTokenCount
integer
Es el recuento total de tokens para la solicitud de generación (instrucción + candidatos de respuesta).
promptTokensDetails[]
object (ModalityTokenCount
)
Solo salida. Es la lista de modalidades que se procesaron en la entrada de la solicitud.
cacheTokensDetails[]
object (ModalityTokenCount
)
Solo salida. Es la lista de modalidades del contenido almacenado en caché en la entrada de la solicitud.
candidatesTokensDetails[]
object (ModalityTokenCount
)
Solo salida. Es la lista de modalidades que se devolvieron en la respuesta.
toolUsePromptTokensDetails[]
object (ModalityTokenCount
)
Solo salida. Es la lista de modalidades que se procesaron para las entradas de la solicitud de uso de herramientas.
Representación JSON |
---|
{ "promptTokenCount": integer, "cachedContentTokenCount": integer, "candidatesTokenCount": integer, "toolUsePromptTokenCount": integer, "thoughtsTokenCount": integer, "totalTokenCount": integer, "promptTokensDetails": [ { object ( |
Candidato
- Representación JSON
- FinishReason
- GroundingAttribution
- AttributionSourceId
- GroundingPassageId
- SemanticRetrieverChunk
- GroundingMetadata
- SearchEntryPoint
- GroundingChunk
- Web
- GroundingSupport
- Segmento
- RetrievalMetadata
- LogprobsResult
- TopCandidates
- Candidato
- UrlContextMetadata
- UrlMetadata
- UrlRetrievalStatus
Es un candidato de respuesta generado a partir del modelo.
content
object (Content
)
Solo salida. Es el contenido generado que devolvió el modelo.
finishReason
enum (FinishReason
)
Opcional. Solo salida. El motivo por el que el modelo dejó de generar tokens.
Si está vacío, el modelo no dejó de generar tokens.
safetyRatings[]
object (SafetyRating
)
Es una lista de calificaciones sobre la seguridad de un candidato de respuesta.
Hay, como máximo, una clasificación por categoría.
citationMetadata
object (CitationMetadata
)
Solo salida. Es la información de la cita del candidato generado por el modelo.
Es posible que este campo se complete con información de recitación para cualquier texto incluido en content
. Son pasajes que se "recitan" a partir de material protegido por derechos de autor en los datos de entrenamiento del LLM fundamental.
tokenCount
integer
Solo salida. Es el recuento de tokens para este candidato.
groundingAttributions[]
object (GroundingAttribution
)
Solo salida. Es la información de atribución de las fuentes que contribuyeron a una respuesta fundamentada.
Este campo se propaga para las llamadas a GenerateAnswer
.
groundingMetadata
object (GroundingMetadata
)
Solo salida. Son los metadatos de fundamentación del candidato.
Este campo se propaga para las llamadas a GenerateContent
.
avgLogprobs
number
Solo salida. Es la puntuación promedio de probabilidad logarítmica del candidato.
logprobsResult
object (LogprobsResult
)
Solo salida. Puntuaciones de verosimilitud del registro para los tokens de respuesta y los tokens principales
urlContextMetadata
object (UrlContextMetadata
)
Solo salida. Son los metadatos relacionados con la herramienta de recuperación del contexto de la URL.
index
integer
Solo salida. Índice del candidato en la lista de candidatos de respuesta.
Representación JSON |
---|
{ "content": { object ( |
FinishReason
Define el motivo por el que el modelo dejó de generar tokens.
Enumeraciones | |
---|---|
FINISH_REASON_UNSPECIFIED |
Valor predeterminado Este valor no se usa. |
STOP |
Punto de detención natural del modelo o secuencia de detención proporcionada. |
MAX_TOKENS |
Se alcanzó la cantidad máxima de tokens especificada en la solicitud. |
SAFETY |
El contenido del candidato de respuesta se marcó por motivos de seguridad. |
RECITATION |
El contenido de la respuesta candidata se marcó por motivos de recitación. |
LANGUAGE |
Se marcó el contenido de la respuesta candidata por usar un idioma no admitido. |
OTHER |
Motivo desconocido. |
BLOCKLIST |
La generación de tokens se detuvo porque el contenido incluye términos prohibidos. |
PROHIBITED_CONTENT |
Se detuvo la generación de tokens porque es posible que contenga contenido prohibido. |
SPII |
Se detuvo la generación de tokens porque es posible que el contenido incluya información de identificación personal sensible (IIPS). |
MALFORMED_FUNCTION_CALL |
La llamada a la función que generó el modelo no es válida. |
IMAGE_SAFETY |
Se detuvo la generación de tokens porque las imágenes generadas contienen incumplimientos de seguridad. |
UNEXPECTED_TOOL_CALL |
El modelo generó una llamada a la herramienta, pero no se habilitó ninguna herramienta en la solicitud. |
GroundingAttribution
Es la atribución de una fuente que contribuyó a una respuesta.
sourceId
object (AttributionSourceId
)
Solo salida. Es el identificador de la fuente que contribuye a esta atribución.
content
object (Content
)
Es el contenido de la fuente de fundamentación que compone esta atribución.
Representación JSON |
---|
{ "sourceId": { object ( |
AttributionSourceId
Es el identificador de la fuente que contribuye a esta atribución.
source
Union type
source
puede ser una de las siguientes opciones:groundingPassage
object (GroundingPassageId
)
Es el identificador de un pasaje intercalado.
semanticRetrieverChunk
object (SemanticRetrieverChunk
)
Es el identificador de un Chunk
recuperado a través de Semantic Retriever.
Representación JSON |
---|
{ // source "groundingPassage": { object ( |
GroundingPassageId
Es el identificador de una parte dentro de un GroundingPassage
.
passageId
string
Solo salida. Es el ID del pasaje que coincide con el GroundingPassage.id
del GenerateAnswerRequest
.
partIndex
integer
Solo salida. Índice de la parte dentro del GroundingPassage.content
de GenerateAnswerRequest
.
Representación JSON |
---|
{ "passageId": string, "partIndex": integer } |
SemanticRetrieverChunk
Es el identificador de un Chunk
recuperado a través de Semantic Retriever especificado en GenerateAnswerRequest
con SemanticRetrieverConfig
.
source
string
Solo salida. Nombre de la fuente que coincide con el SemanticRetrieverConfig.source
de la solicitud. Ejemplo: corpora/123
o corpora/123/documents/abc
chunk
string
Solo salida. Nombre del Chunk
que contiene el texto atribuido. Ejemplo: corpora/123/documents/abc/chunks/xyz
Representación JSON |
---|
{ "source": string, "chunk": string } |
GroundingMetadata
Son los metadatos que se devuelven al cliente cuando se habilita la fundamentación.
groundingChunks[]
object (GroundingChunk
)
Lista de referencias de respaldo recuperadas de la fuente de fundamentación especificada.
groundingSupports[]
object (GroundingSupport
)
Lista de compatibilidad con la fundamentación.
webSearchQueries[]
string
Son las búsquedas web para la búsqueda web de seguimiento.
searchEntryPoint
object (SearchEntryPoint
)
Opcional. Entrada de la Búsqueda de Google para las búsquedas web de seguimiento.
retrievalMetadata
object (RetrievalMetadata
)
Son metadatos relacionados con la recuperación en el flujo de fundamentación.
Representación JSON |
---|
{ "groundingChunks": [ { object ( |
SearchEntryPoint
Es el punto de entrada de la Búsqueda de Google.
renderedContent
string
Opcional. Es un fragmento de contenido web que se puede incorporar en una página web o en un WebView de una app.
sdkBlob
string (bytes format)
Opcional. Es un JSON codificado en Base64 que representa un array de tuplas <término de búsqueda, URL de búsqueda>.
String codificada en base64.
Representación JSON |
---|
{ "renderedContent": string, "sdkBlob": string } |
GroundingChunk
Fragmento de fundamentación.
chunk_type
Union type
chunk_type
puede ser una de las siguientes opciones:web
object (Web
)
Es un fragmento fundamentado de la Web.
Representación JSON |
---|
{
// chunk_type
"web": {
object ( |
Web
Fragmento de la Web.
uri
string
Es la referencia de URI del fragmento.
title
string
Es el título del fragmento.
Representación JSON |
---|
{ "uri": string, "title": string } |
GroundingSupport
Compatibilidad con la fundamentación.
groundingChunkIndices[]
integer
Es una lista de índices (en "grounding_chunk") que especifican las citas asociadas con la afirmación. Por ejemplo, [1,3,4] significa que grounding_chunk[1], grounding_chunk[3] y grounding_chunk[4] son el contenido recuperado que se atribuye a la afirmación.
confidenceScores[]
number
Es la puntuación de confianza de las referencias de asistencia. El rango varía de 0 a 1. El 1 indica la mayor confianza. Esta lista debe tener el mismo tamaño que groundingChunkIndices.
segment
object (Segment
)
Es el segmento del contenido al que pertenece esta asistencia.
Representación JSON |
---|
{
"groundingChunkIndices": [
integer
],
"confidenceScores": [
number
],
"segment": {
object ( |
Segmentar
Es el segmento del contenido.
partIndex
integer
Solo salida. Índice de un objeto Part dentro de su objeto Content principal.
startIndex
integer
Solo salida. Índice de inicio en la parte determinada, medido en bytes. Es el desplazamiento desde el inicio de la parte, incluido, a partir de cero.
endIndex
integer
Solo salida. Índice final de la parte determinada, medido en bytes. Es el desplazamiento desde el inicio de la parte, exclusivo, a partir de cero.
text
string
Solo salida. Es el texto correspondiente al segmento de la respuesta.
Representación JSON |
---|
{ "partIndex": integer, "startIndex": integer, "endIndex": integer, "text": string } |
RetrievalMetadata
Son metadatos relacionados con la recuperación en el flujo de fundamentación.
googleSearchDynamicRetrievalScore
number
Opcional. Es una puntuación que indica la probabilidad de que la información de la Búsqueda de Google pueda ayudar a responder la instrucción. La puntuación se encuentra en el rango [0, 1], donde 0 es la probabilidad más baja y 1 es la probabilidad más alta. Esta puntuación solo se completa cuando se habilitan la fundamentación de la Búsqueda de Google y la recuperación dinámica. Se comparará con el umbral para determinar si se debe activar la Búsqueda de Google.
Representación JSON |
---|
{ "googleSearchDynamicRetrievalScore": number } |
LogprobsResult
Resultado de Logprobs
topCandidates[]
object (TopCandidates
)
La longitud es igual a la cantidad total de pasos de decodificación.
chosenCandidates[]
object (Candidate
)
La longitud es igual a la cantidad total de pasos de decodificación. Los candidatos elegidos pueden estar o no en topCandidates.
Representación JSON |
---|
{ "topCandidates": [ { object ( |
TopCandidates
Son los candidatos con las probabilidades de registro más altas en cada paso de decodificación.
candidates[]
object (Candidate
)
Se ordena por probabilidad logarítmica en orden descendente.
Representación JSON |
---|
{
"candidates": [
{
object ( |
Candidato
Es el candidato para el token y la puntuación de logprobs.
token
string
Es el valor de cadena del token del candidato.
tokenId
integer
Es el valor del ID del token del candidato.
logProbability
number
Es la probabilidad de registro del candidato.
Representación JSON |
---|
{ "token": string, "tokenId": integer, "logProbability": number } |
UrlContextMetadata
Son los metadatos relacionados con la herramienta de recuperación del contexto de la URL.
urlMetadata[]
object (UrlMetadata
)
Es la lista del contexto de URL.
Representación JSON |
---|
{
"urlMetadata": [
{
object ( |
UrlMetadata
Es el contexto de la recuperación de una sola URL.
retrievedUrl
string
Es la URL recuperada por la herramienta.
urlRetrievalStatus
enum (UrlRetrievalStatus
)
Es el estado de la recuperación de la URL.
Representación JSON |
---|
{
"retrievedUrl": string,
"urlRetrievalStatus": enum ( |
UrlRetrievalStatus
Es el estado de la recuperación de la URL.
Enumeraciones | |
---|---|
URL_RETRIEVAL_STATUS_UNSPECIFIED |
Valor predeterminado Este valor no se usa. |
URL_RETRIEVAL_STATUS_SUCCESS |
Se recuperó la URL correctamente. |
URL_RETRIEVAL_STATUS_ERROR |
No se pudo recuperar la URL debido a un error. |
CitationMetadata
Es una colección de atribuciones de fuentes para un fragmento de contenido.
citationSources[]
object (CitationSource
)
Son las citas de las fuentes para una respuesta específica.
Representación JSON |
---|
{
"citationSources": [
{
object ( |
CitationSource
Es una cita de una fuente para una parte de una respuesta específica.
startIndex
integer
Opcional. Es el inicio del segmento de la respuesta que se atribuye a esta fuente.
El índice indica el inicio del segmento, medido en bytes.
endIndex
integer
Opcional. Es el final del segmento atribuido, exclusivo.
uri
string
Opcional. Es el URI que se atribuye como fuente de una parte del texto.
license
string
Opcional. Es la licencia del proyecto de GitHub que se atribuye como fuente del segmento.
Se requiere información de la licencia para las citas de código.
Representación JSON |
---|
{ "startIndex": integer, "endIndex": integer, "uri": string, "license": string } |
GenerationConfig
- Representación JSON
- Modalidad
- SpeechConfig
- VoiceConfig
- PrebuiltVoiceConfig
- MultiSpeakerVoiceConfig
- SpeakerVoiceConfig
- ThinkingConfig
- MediaResolution
Son las opciones de configuración para la generación y los resultados del modelo. No todos los parámetros se pueden configurar para todos los modelos.
stopSequences[]
string
Opcional. Es el conjunto de secuencias de caracteres (hasta 5) que detendrán la generación de resultados. Si se especifica, la API se detendrá en la primera aparición de un stop_sequence
. La secuencia de detención no se incluirá como parte de la respuesta.
responseMimeType
string
Opcional. Tipo de MIME del texto candidato generado. Los tipos de MIME admitidos son los siguientes: text/plain
: (predeterminado) Es la salida de texto. application/json
: La respuesta JSON en los candidatos de respuesta. text/x.enum
: ENUM como respuesta de cadena en los candidatos de respuesta. Consulta los documentos para obtener una lista de todos los tipos de MIME de texto admitidos.
responseSchema
object (Schema
)
Opcional. Es el esquema de salida del texto candidato generado. Los esquemas deben ser un subconjunto del esquema de OpenAPI y pueden ser objetos, primitivos o arrays.
Si se establece, también se debe establecer un responseMimeType
compatible. Tipos de MIME compatibles: application/json
: Esquema para la respuesta JSON. Consulta la guía de generación de texto en JSON para obtener más detalles.
responseJsonSchema
value (Value
format)
Opcional. Esquema de salida de la respuesta generada. Esta es una alternativa a responseSchema
que acepta esquemas JSON.
Si se configura, se debe omitir responseSchema
, pero se requiere responseMimeType
.
Si bien se puede enviar el esquema JSON completo, no se admiten todas las funciones. Específicamente, solo se admiten las siguientes propiedades:
$id
$defs
$ref
$anchor
type
format
title
description
enum
(para cadenas y números)items
prefixItems
minItems
maxItems
minimum
maximum
anyOf
oneOf
(se interpreta igual queanyOf
)properties
additionalProperties
required
También se puede establecer la propiedad no estándar propertyOrdering
.
Las referencias cíclicas se despliegan hasta un cierto punto y, como tales, solo se pueden usar dentro de propiedades no obligatorias. (Las propiedades que admiten valores nulos no son suficientes). Si $ref
se establece en un subesquema, no se pueden establecer otras propiedades, excepto las que comienzan con $
.
responseModalities[]
enum (Modality
)
Opcional. Son las modalidades solicitadas de la respuesta. Representa el conjunto de modalidades que el modelo puede devolver y que se deben esperar en la respuesta. Esta es una coincidencia exacta con las modalidades de la respuesta.
Un modelo puede tener varias combinaciones de modalidades admitidas. Si las modalidades solicitadas no coinciden con ninguna de las combinaciones admitidas, se devolverá un error.
Una lista vacía equivale a solicitar solo texto.
candidateCount
integer
Opcional. Cantidad de respuestas generadas que se devolverán. Si no se configura, el valor predeterminado será 1. Ten en cuenta que esto no funciona para los modelos de generaciones anteriores (familia de Gemini 1.0).
maxOutputTokens
integer
Opcional. Es la cantidad máxima de tokens que se pueden incluir en un candidato de respuesta.
Nota: El valor predeterminado varía según el modelo. Consulta el atributo Model.output_token_limit
del objeto Model
que se devuelve de la función getModel
.
temperature
number
Opcional. Controla la aleatoriedad del resultado.
Nota: El valor predeterminado varía según el modelo. Consulta el atributo Model.temperature
del objeto Model
que se devuelve de la función getModel
.
Los valores pueden variar de [0.0, 2.0].
topP
number
Opcional. Es la probabilidad acumulativa máxima de los tokens que se deben tener en cuenta durante el muestreo.
El modelo usa un muestreo combinado de Top-k y Top-p (núcleo).
Los tokens se ordenan según las probabilidades asignadas para que solo se tengan en cuenta los tokens más probables. El muestreo Top-k limita directamente la cantidad máxima de tokens que se deben considerar, mientras que el muestreo de Nucleus limita la cantidad de tokens según la probabilidad acumulativa.
Nota: El valor predeterminado varía según Model
y se especifica con el atributo Model.top_p
que devuelve la función getModel
. Un atributo topK
vacío indica que el modelo no aplica el muestreo top-k y no permite establecer topK
en las solicitudes.
topK
integer
Opcional. Es la cantidad máxima de tokens que se deben tener en cuenta al realizar el muestreo.
Los modelos de Gemini usan el muestreo Top-p (núcleo) o una combinación de muestreo Top-k y de núcleo. El muestreo Top-k considera el conjunto de los topK
tokens más probables. Los modelos que se ejecutan con el muestreo de núcleo no permiten el parámetro de configuración topK.
Nota: El valor predeterminado varía según Model
y se especifica con el atributo Model.top_p
que devuelve la función getModel
. Un atributo topK
vacío indica que el modelo no aplica el muestreo top-k y no permite establecer topK
en las solicitudes.
seed
integer
Opcional. Es la semilla que se usa en la decodificación. Si no se establece, la solicitud usa una semilla generada de forma aleatoria.
presencePenalty
number
Opcional. Es la penalización de presencia que se aplica a las probabilidades de registro del siguiente token si ya se vio en la respuesta.
Esta penalización es binaria (activada o desactivada) y no depende de la cantidad de veces que se usa el token (después de la primera). Usa frequencyPenalty
para una penalización que aumenta con cada uso.
Una penalización positiva desalentará el uso de tokens que ya se usaron en la respuesta, lo que aumentará el vocabulario.
Una penalización negativa fomentará el uso de tokens que ya se usaron en la respuesta, lo que reducirá el vocabulario.
frequencyPenalty
number
Opcional. Es la penalización de frecuencia aplicada a las probabilidades logarítmicas del siguiente token, multiplicada por la cantidad de veces que se vio cada token en la respuesta hasta el momento.
Una penalización positiva desalentará el uso de tokens que ya se usaron, de forma proporcional a la cantidad de veces que se usó el token: Cuanto más se use un token, más difícil será para el modelo volver a usarlo, lo que aumentará el vocabulario de las respuestas.
Precaución: Una penalización negativa alentará al modelo a reutilizar tokens de forma proporcional a la cantidad de veces que se usó el token. Los valores negativos pequeños reducirán el vocabulario de una respuesta. Los valores negativos más grandes harán que el modelo comience a repetir un token común hasta que alcance el límite de maxOutputTokens
.
responseLogprobs
boolean
Opcional. Si es verdadero, exporta los resultados de logprobs en la respuesta.
logprobs
integer
Opcional. Solo es válido si responseLogprobs=True
. Esto establece la cantidad de probabilidades de registro principales que se devolverán en cada paso de decodificación en Candidate.logprobs_result
.
enableEnhancedCivicAnswers
boolean
Opcional. Habilita las respuestas cívicas mejoradas. Es posible que no esté disponible para todos los modelos.
speechConfig
object (SpeechConfig
)
Opcional. Es la configuración de generación de voz.
thinkingConfig
object (ThinkingConfig
)
Opcional. Es la configuración de las funciones de pensamiento. Se mostrará un error si este campo se configura para modelos que no admiten el pensamiento.
mediaResolution
enum (MediaResolution
)
Opcional. Si se especifica, se usará la resolución de medios especificada.
Representación JSON |
---|
{ "stopSequences": [ string ], "responseMimeType": string, "responseSchema": { object ( |
Modalidad
Son las modalidades admitidas de la respuesta.
Enumeraciones | |
---|---|
MODALITY_UNSPECIFIED |
Valor predeterminado |
TEXT |
Indica que el modelo debe devolver texto. |
IMAGE |
Indica que el modelo debe devolver imágenes. |
AUDIO |
Indica que el modelo debe devolver audio. |
SpeechConfig
Es la configuración de generación de voz.
voiceConfig
object (VoiceConfig
)
Es la configuración en caso de salida de una sola voz.
multiSpeakerVoiceConfig
object (MultiSpeakerVoiceConfig
)
Opcional. Es la configuración del sistema de varios altavoces. Se excluye mutuamente con el campo voiceConfig.
languageCode
string
Opcional. Es el código de idioma (en formato BCP 47, p.ej., "en-US") para la síntesis de voz.
Los valores válidos son: de-DE, en-AU, en-GB, en-IN, en-US, es-US, fr-FR, hi-IN, pt-BR, ar-XA, es-ES, fr-CA, id-ID, it-IT, ja-JP, tr-TR, vi-VN, bn-IN, gu-IN, kn-IN, ml-IN, mr-IN, ta-IN, te-IN, nl-NL, ko-KR, cmn-CN, pl-PL, ru-RU y th-TH.
Representación JSON |
---|
{ "voiceConfig": { object ( |
VoiceConfig
Es la configuración de la voz que se usará.
voice_config
Union type
voice_config
puede ser una de las siguientes opciones:prebuiltVoiceConfig
object (PrebuiltVoiceConfig
)
Es la configuración de la voz prediseñada que se usará.
Representación JSON |
---|
{
// voice_config
"prebuiltVoiceConfig": {
object ( |
PrebuiltVoiceConfig
Es la configuración del altavoz prediseñado que se usará.
voiceName
string
Es el nombre de la voz predeterminada que se usará.
Representación JSON |
---|
{ "voiceName": string } |
MultiSpeakerVoiceConfig
Es la configuración del sistema de varios altavoces.
speakerVoiceConfigs[]
object (SpeakerVoiceConfig
)
Obligatorio. Son todas las voces de bocina habilitadas.
Representación JSON |
---|
{
"speakerVoiceConfigs": [
{
object ( |
SpeakerVoiceConfig
Es la configuración de una sola bocina en una configuración de varias bocinas.
speaker
string
Obligatorio. Es el nombre del orador que se usará. Debe ser igual que en la instrucción.
voiceConfig
object (VoiceConfig
)
Obligatorio. Es la configuración de la voz que se usará.
Representación JSON |
---|
{
"speaker": string,
"voiceConfig": {
object ( |
ThinkingConfig
Es la configuración de las funciones de pensamiento.
includeThoughts
boolean
Indica si se deben incluir pensamientos en la respuesta. Si es verdadero, los pensamientos solo se devuelven cuando están disponibles.
thinkingBudget
integer
Es la cantidad de tokens de pensamientos que debe generar el modelo.
Representación JSON |
---|
{ "includeThoughts": boolean, "thinkingBudget": integer } |
MediaResolution
Resolución de los medios de entrada.
Enumeraciones | |
---|---|
MEDIA_RESOLUTION_UNSPECIFIED |
No se estableció la resolución del contenido multimedia. |
MEDIA_RESOLUTION_LOW |
La resolución de los medios se estableció en baja (64 tokens). |
MEDIA_RESOLUTION_MEDIUM |
La resolución de los medios se establece en media (256 tokens). |
MEDIA_RESOLUTION_HIGH |
La resolución de los medios se establece en alta (reencuadre con zoom con 256 tokens). |
HarmCategory
Es la categoría de una clasificación.
Estas categorías abarcan varios tipos de daños que los desarrolladores pueden querer ajustar.
Enumeraciones | |
---|---|
HARM_CATEGORY_UNSPECIFIED |
La categoría no se especifica. |
HARM_CATEGORY_DEROGATORY |
PaLM: Comentarios negativos o dañinos que se orientan a la identidad o los atributos protegidos. |
HARM_CATEGORY_TOXICITY |
PaLM: Contenido grosero, irrespetuoso u obsceno |
HARM_CATEGORY_VIOLENCE |
PaLM: Describe situaciones que representen violencia contra una persona o un grupo, o descripciones generales de imágenes sangrientas. |
HARM_CATEGORY_SEXUAL |
PaLM: Contiene referencias a actos sexuales o a otro contenido obsceno. |
HARM_CATEGORY_MEDICAL |
PaLM: Promociona consejos médicos no verificados. |
HARM_CATEGORY_DANGEROUS |
PaLM: Contenido peligroso que promueve, facilita o fomenta actividades perjudiciales |
HARM_CATEGORY_HARASSMENT |
Gemini: Contenido de hostigamiento. |
HARM_CATEGORY_HATE_SPEECH |
Gemini: Incitación al odio o a la violencia y contenido |
HARM_CATEGORY_SEXUALLY_EXPLICIT |
Gemini: Contenido sexual explícito |
HARM_CATEGORY_DANGEROUS_CONTENT |
Gemini: Contenido peligroso. |
HARM_CATEGORY_CIVIC_INTEGRITY |
Gemini: Contenido que se puede usar para dañar la integridad cívica. |
ModalityTokenCount
Representa la información del recuento de tokens para una sola modalidad.
modality
enum (Modality
)
Es la modalidad asociada a este recuento de tokens.
tokenCount
integer
Cantidad de tokens.
Representación JSON |
---|
{
"modality": enum ( |
Modalidad
Modalidad de parte de contenido
Enumeraciones | |
---|---|
MODALITY_UNSPECIFIED |
Modalidad sin especificar. |
TEXT |
Texto sin formato |
IMAGE |
Imagen. |
VIDEO |
Video. |
AUDIO |
Audio. |
DOCUMENT |
Documento, p.ej., PDF. |
SafetyRating
Es la clasificación de seguridad de un contenido.
La clasificación de seguridad contiene la categoría de daño y el nivel de probabilidad de daño en esa categoría para un fragmento de contenido. El contenido se clasifica para la seguridad en varias categorías de daño, y aquí se incluye la probabilidad de la clasificación del daño.
category
enum (HarmCategory
)
Obligatorio. Es la categoría de esta calificación.
probability
enum (HarmProbability
)
Obligatorio. Es la probabilidad de daño de este contenido.
blocked
boolean
¿Se bloqueó este contenido debido a esta clasificación?
Representación JSON |
---|
{ "category": enum ( |
HarmProbability
Es la probabilidad de que un elemento de contenido sea dañino.
El sistema de clasificación proporciona la probabilidad de que el contenido no sea seguro. Esto no indica la gravedad del daño que puede causar un contenido.
Enumeraciones | |
---|---|
HARM_PROBABILITY_UNSPECIFIED |
No se especifica la probabilidad. |
NEGLIGIBLE |
El contenido tiene una probabilidad insignificante de no ser seguro. |
LOW |
El contenido tiene una probabilidad baja de no ser seguro. |
MEDIUM |
El contenido tiene una probabilidad media de no ser seguro. |
HIGH |
El contenido tiene una alta probabilidad de no ser seguro. |
SafetySetting
Es un parámetro de configuración de seguridad que afecta el comportamiento de bloqueo de seguridad.
Si se pasa un parámetro de configuración de seguridad para una categoría, cambia la probabilidad permitida de que se bloquee el contenido.
category
enum (HarmCategory
)
Obligatorio. Es la categoría de este parámetro de configuración.
threshold
enum (HarmBlockThreshold
)
Obligatorio. Controla el umbral de probabilidad en el que se bloquea el daño.
Representación JSON |
---|
{ "category": enum ( |
HarmBlockThreshold
Bloquea en un nivel de probabilidad de daño especificado y más allá.
Enumeraciones | |
---|---|
HARM_BLOCK_THRESHOLD_UNSPECIFIED |
No se especifica el umbral. |
BLOCK_LOW_AND_ABOVE |
Se permitirá el contenido con NEGLIGIBLE. |
BLOCK_MEDIUM_AND_ABOVE |
Se permitirá el contenido con niveles de negligencia y bajo. |
BLOCK_ONLY_HIGH |
Se permitirá el contenido con niveles de impacto NEGLIGIBLE, LOW y MEDIUM. |
BLOCK_NONE |
Se permitirá todo el contenido. |
OFF |
Desactiva el filtro de seguridad. |