Glosario de IA generativa
En este glosario se definen los términos de la inteligencia artificial (IA) generativa.
Agentes de IA
Un agente de IA es una aplicación que consigue un objetivo procesando entradas, razonando con las herramientas disponibles y tomando medidas en función de sus decisiones. Los agentes de IA usan la llamada a funciones para dar formato a las entradas y asegurar interacciones precisas con herramientas externas. En el siguiente diagrama se muestran los componentes de un agente de IA:
Como se muestra en el diagrama anterior, los agentes de IA constan de los siguientes componentes:
- Orquestación: la capa de orquestación de un agente gestiona la memoria, el estado y la toma de decisiones controlando el plan, el uso de herramientas y el flujo de datos. La orquestación incluye los siguientes componentes:
- Perfil e instrucciones: el agente adopta un rol o un perfil específicos para dirigir sus acciones y su toma de decisiones.
- Memoria: para mantener el contexto y el estado, el agente conserva la memoria a corto plazo y la memoria a largo plazo. La memoria a corto plazo contiene el contexto y la información inmediatos necesarios para la tarea actual. La memoria a largo plazo conserva el historial de conversaciones completo.
- Razonamiento y planificación: el agente usa el modelo para descomponer tareas y reflexionar sobre ellas, y luego crea un plan. En primer lugar, el agente separa la petición del usuario en subcomponentes para gestionar tareas complejas llamando a una o varias funciones. A continuación, el agente reflexiona sobre los resultados de la función usando el razonamiento y los comentarios para mejorar la respuesta.
- Modelo: cualquier modelo de lenguaje generativo que procese objetivos, cree planes y genere respuestas. Para que un modelo funcione de forma óptima, debe admitir llamadas a funciones y entrenarse con firmas de datos de herramientas o pasos de razonamiento.
- Herramientas: conjunto de herramientas que incluyen APIs, servicios o funciones que obtienen datos y realizan acciones o transacciones. Las herramientas permiten a los agentes interactuar con datos y servicios externos.
En el caso de las aplicaciones que requieren toma de decisiones autónoma, gestión de flujos de trabajo complejos de varios pasos o experiencias adaptativas, los agentes de IA funcionan mejor que los modelos básicos estándar. Los agentes son expertos en resolver problemas en tiempo real mediante el uso de datos externos y en automatizar tareas que requieren muchos conocimientos. Estas funciones permiten que un agente proporcione resultados más sólidos que las funciones de generación de texto pasivas de los modelos fundacionales.
Para obtener más información sobre los agentes de IA, consulta el artículo ¿Qué es un agente de IA?
ventana de contexto
Una ventana de contexto es el número de tokens que un modelo fundacional puede procesar en una petición determinada. Una ventana de contexto más grande permite al modelo acceder y procesar más información, lo que da lugar a respuestas más coherentes, relevantes y completas.
Los modelos de Gemini se han diseñado específicamente con ventanas de contexto amplias para gestionar estas grandes cantidades de información. Para hacernos una idea de la escala, un modelo con una ventana de contexto de 1 millón de tokens puede procesar cualquiera de las siguientes entradas:
- 50.000 líneas de código (con el estándar de 80 caracteres por línea)
- Todos los mensajes de texto que has enviado en los últimos 5 años
- 8 novelas de longitud media en inglés
- Transcripciones de más de 200 episodios de pódcasts de duración media
- 1 hora de vídeo sin audio
- Aproximadamente 45 minutos de vídeo con audio
- 9,5 horas de audio
Para obtener más información sobre las prácticas recomendadas para las peticiones con contexto largo, consulta Contexto largo.
embedding
Una incrustación es una representación numérica de datos, como texto, imágenes o vídeos, que refleja las relaciones entre diferentes entradas. Las incrustaciones se generan durante la fase de entrenamiento de un modelo. Para ello, se convierte texto, imágenes y vídeos en matrices de números de coma flotante, que se denominan vectores. Las inserciones suelen reducir la dimensionalidad de los datos, lo que ayuda a mejorar la eficiencia computacional y a procesar grandes conjuntos de datos. Esta reducción de la dimensionalidad es crucial para entrenar e implementar modelos complejos.
Los modelos de aprendizaje automático (ML) requieren que los datos se expresen en un formato que puedan procesar. Las incrustaciones cumplen este requisito asignando datos a un espacio vectorial continuo en el que la proximidad refleja puntos de datos que tienen significados similares. Las inserciones permiten que los modelos distingan patrones y relaciones sutiles que quedarían ocultos en los datos sin procesar.
Por ejemplo, los modelos de lenguaje extensos (LLMs) se basan en las inserciones para comprender el contexto y el significado del texto. Esa comprensión permite al LLM generar respuestas coherentes y relevantes. En la generación de imágenes, las incrustaciones capturan las características visuales de las imágenes, lo que permite a los modelos crear resultados realistas y diversos.
Los sistemas que usan la generación aumentada por recuperación (RAG) se basan en las inserciones para asociar las consultas de los usuarios con el conocimiento pertinente. Cuando se hace una consulta, se convierte en una incrustación, que se compara con las incrustaciones de los documentos que se encuentran en la base de conocimientos. Esta comparación, que se facilita mediante búsquedas de similitud en el espacio vectorial, permite al sistema obtener la información más relevante desde el punto de vista semántico.
Para obtener más información sobre los modelos de inserción y los casos prácticos, consulta la descripción general de las APIs Embedding.
modelo fundacional
Los modelos fundacionales son modelos grandes y potentes que se entrenan con grandes cantidades de datos, que a menudo abarcan varias modalidades, como texto, imágenes, vídeo y audio. Estos modelos usan modelos estadísticos para predecir las respuestas probables a las peticiones y generar contenido nuevo. Aprenden patrones de sus datos de entrenamiento, como patrones de lenguaje para la generación de texto y técnicas de difusión para la generación de imágenes.
Google ofrece una variedad de modelos básicos de IA generativa a los que se puede acceder a través de una API gestionada. Para acceder a los modelos fundacionales que están disponibles en Google Cloud, usa Model Garden de Vertex AI.
llamada de función
La llamada a funciones es una función que conecta modelos de lenguaje extensos (LLMs) con herramientas externas, como APIs y funciones, para mejorar las respuestas del LLM. Esta función permite a los LLMs ir más allá del conocimiento estático y mejorar las respuestas con información y servicios en tiempo real, como bases de datos, sistemas de gestión de relaciones con los clientes y repositorios de documentos.
Para usar la llamada de función, debes proporcionar al modelo un conjunto de funciones. Después, cuando le pidas algo al modelo, este podrá seleccionar y llamar a las funciones en función de tu solicitud. El modelo analiza la petición y, a continuación, genera datos estructurados que especifican qué función se debe llamar y los valores de los parámetros. La salida de datos estructurados llama a la función y, a continuación, devuelve los resultados al modelo. El modelo incorpora los resultados a su razonamiento para generar una respuesta. Este proceso permite que el modelo acceda y utilice información que va más allá de sus conocimientos internos, lo que le permite realizar tareas que requieren datos o procesamiento externos.
La llamada a funciones es un componente fundamental de la arquitectura de los agentes de IA. La llamada a funciones proporciona al modelo una forma estructurada de especificar qué herramienta debe usar y cómo debe dar formato a la entrada, lo que ayuda a asegurar interacciones precisas con sistemas externos.
Para obtener más información sobre la llamada a funciones en Gemini, consulta el artículo Introducción a la llamada a funciones.
IA generativa
La IA generativa es un tipo de IA que va más allá de la IA tradicional, que se centra en la clasificación y la predicción. Los modelos de IA tradicionales aprenden de los datos disponibles para clasificar información o predecir resultados futuros en función de patrones históricos. La IA generativa usa modelos fundacionales para generar contenido nuevo, como texto, imágenes, audio o vídeos. Este nuevo contenido se genera aprendiendo los patrones y el estilo subyacentes de los datos de entrenamiento, lo que permite al modelo crear resultados que se asemejan a los datos con los que se ha entrenado.
Consulta más información sobre cuándo usar la IA generativa y los casos prácticos de la IA generativa en las empresas.
fundamentación
La fundamentación es el proceso de conectar la salida de un modelo con fuentes de información verificables. Estas fuentes pueden proporcionar información práctica y específica del contexto, como documentación interna de la empresa, datos específicos de un proyecto o registros de comunicaciones. La fundamentación ayuda a mejorar la precisión, la fiabilidad y la utilidad de los resultados de la IA, ya que proporciona al modelo acceso a fuentes de datos específicas. La fundamentación reduce la probabilidad de que se produzcan alucinaciones, es decir, casos en los que el modelo genera contenido que no es objetivo. Un tipo habitual de fundamentación es la generación aumentada por recuperación (RAG), que consiste en obtener información externa pertinente para mejorar las respuestas del modelo.
Para obtener más información sobre cómo utilizar la Búsqueda de Google, consulta el artículo Descripción general de la función de grounding.
modelo de lenguaje extenso (LLM)
Un modelo de lenguaje extenso (LLM) es un modelo fundacional basado en texto que se ha entrenado con una gran cantidad de datos. Los LLMs se utilizan para llevar a cabo tareas de procesamiento del lenguaje natural (PLN), como la generación de texto, la traducción automática, el resumen de textos y la respuesta a preguntas. El término LLM se usa a veces indistintamente con modelos fundacionales. Sin embargo, los LLMs se basan en texto, mientras que los modelos fundacionales se pueden entrenar con varias modalidades y recibir entradas de ellas, como texto, imágenes, audio y vídeo.
Para aprender los patrones y las relaciones del lenguaje, los LLMs usan técnicas como el aprendizaje por refuerzo y el ajuste fino de instrucciones. Cuando diseñas peticiones, es importante tener en cuenta los distintos factores que pueden influir en las respuestas del modelo.
latencia
La latencia es el tiempo que tarda un modelo en procesar una petición y generar una respuesta. Cuando examines la latencia de un modelo, ten en cuenta lo siguiente:
- Tiempo hasta el primer token (TTFT): el tiempo que tarda el modelo en generar el primer token de la respuesta después de recibir la petición. El TTFT es importante para las aplicaciones de streaming en las que quieres recibir comentarios inmediatos.
- Tiempo hasta el último token (TTLT): tiempo total que tarda el modelo en procesar la petición y generar la respuesta completa.
Para obtener información sobre cómo reducir la latencia, consulta las prácticas recomendadas para usar modelos de lenguaje extensos (LLMs).
Ingeniería de peticiones
La ingeniería de peticiones es el proceso iterativo de crear una petición y acceder a la respuesta del modelo para obtener la respuesta que quieres. Escribir peticiones bien estructuradas puede ser fundamental para obtener respuestas precisas y de alta calidad de un modelo de lenguaje.
A continuación se indican algunas técnicas habituales que puede usar para mejorar las respuestas:
- Peticiones sin ejemplos: proporciona una petición sin ejemplos y confía en los conocimientos preexistentes del modelo.
- Peticiones de un solo intento: proporciona un solo ejemplo en la petición para guiar la respuesta del modelo.
- Peticiones con pocos ejemplos: proporciona varios ejemplos en la petición para demostrar el patrón o la tarea que quieres.
Cuando proporcionas ejemplos a un modelo, le ayudas a controlar aspectos de su respuesta, como el formato, la redacción, el alcance y los patrones generales. Las peticiones eficaces con pocos ejemplos combinan instrucciones claras con ejemplos específicos y variados. Es importante experimentar para determinar el número óptimo de ejemplos. Si hay muy pocos, es posible que no se proporcione suficiente información, pero si hay demasiados, el modelo puede ajustarse en exceso a los ejemplos y no generalizar bien.
Para obtener más información sobre las prácticas recomendadas para crear peticiones, consulta el artículo Descripción general de las estrategias de peticiones.
peticiones
Una petición es una solicitud en lenguaje natural que se envía a un modelo de IA generativa para obtener una respuesta. En función del modelo, una petición puede contener texto, imágenes, vídeos, audio, documentos y otras modalidades, o incluso varias modalidades (multimodal).
Una petición eficaz consta de contenido y estructura. El contenido proporciona toda la información relevante de la tarea, como instrucciones, ejemplos y contexto. La estructura asegura un análisis eficiente a través de la organización, incluido el orden, el etiquetado y los delimitadores. En función del resultado que quieras obtener, puedes plantearte añadir componentes adicionales.
Parámetros del modelo
Los parámetros del modelo son variables internas que un modelo usa para determinar cómo procesa los datos de entrada y cómo genera las salidas. Durante el entrenamiento, puedes ajustar los parámetros del modelo, como el peso y el sesgo, para optimizar su rendimiento. Durante la inferencia, puedes influir en la salida del modelo mediante varios parámetros de peticiones, lo que no cambia directamente los parámetros del modelo aprendido.
Estos son algunos de los parámetros de las peticiones que afectan a la generación de contenido en la API de Gemini en Vertex AI:
temperature
: La temperatura cambia la aleatoriedad de la selección de tokens durante la generación de respuestas, lo que influye en la creatividad y la predictibilidad del resultado. El valor detemperature
va de0
a1
. Las temperaturas más bajas (más cercanas a0
) producen resultados más deterministas y predecibles. Las temperaturas más altas (más cercanas a1
) generan textos más diversos y creativos, pero los resultados pueden ser menos coherentes.topP
: Top-P cambia la forma en que el modelo toma muestras y selecciona tokens para la salida. Top-P selecciona el conjunto más pequeño de tokens cuya probabilidad acumulada supera un umbral, op
, y, a continuación, toma muestras de esa distribución. El valor detopP
va de0
a1
. Por ejemplo, si los tokens A, B y C tienen una probabilidad de 0, 3, 0, 2 y 0, 1, y el valor detopP
es0.5
, el modelo seleccionará A o B como el siguiente token mediante la temperatura y excluirá C como candidato.topK
: Top-K cambia la forma en que el modelo toma muestras y selecciona tokens para la salida. Top-K selecciona los tokens con mayor probabilidad estadística para generar una respuesta. El valor detopK
representa un número de tokens de1
a40
, entre los que elegirá el modelo antes de generar una respuesta. Por ejemplo, si los tokens A, B, C y D tienen una probabilidad de 0,6, 0,5, 0,2 y 0,1, y el valor de K superior es3
, el modelo seleccionará A, B o C como el siguiente token mediante la temperatura y excluirá D como candidato.maxOutputTokens
: el ajustemaxOutputTokens
cambia el número máximo de tokens que se pueden generar en la respuesta. Si el valor es bajo, se generarán respuestas más cortas, mientras que si es alto, se generarán respuestas más largas.
Para obtener más información sobre los parámetros de muestreo de la API de Gemini en Vertex AI, consulta Parámetros de generación de contenido.
Generación aumentada por recuperación (RAG)
La generación aumentada por recuperación (RAG) es una técnica para mejorar la calidad y la precisión de los resultados de los modelos de lenguaje extenso (LLMs) fundamentándolos con fuentes de conocimiento que se obtienen después de que se haya entrenado el modelo. La RAG aborda las limitaciones de los LLMs, como las imprecisiones en los hechos, la falta de acceso a información actualizada o especializada y la incapacidad de citar fuentes. Al proporcionar acceso a información extraída de bases de conocimientos o documentos de confianza (incluidos datos con los que no se ha entrenado el modelo, datos propietarios o datos sensibles específicos de los usuarios), RAG permite que los LLMs generen respuestas más fiables y contextualmente relevantes.
Cuando un modelo que usa RAG recibe tu petición, el proceso de RAG completa estas fases:
- Recuperar: busca datos que sean relevantes para la petición.
- Aumentar: añade los datos obtenidos a la petición.
- Generar:
- Indica al LLM que cree un resumen o una respuesta basada en la petición aumentada.
- Devuelve la respuesta.
Para obtener más información sobre Vertex AI y RAG, consulta la descripción general del motor de RAG de Vertex AI.
tokens
Un token es una unidad básica de datos que procesa un modelo fundacional. Los modelos separan los datos de una petición en tokens para procesarlos. El conjunto de todos los tokens que utiliza un modelo se denomina vocabulario. Los tokens pueden ser caracteres únicos, como z
, palabras completas, como cat
, o partes de palabras más largas.
Los tokenizadores separan las palabras largas (como los términos complejos o técnicos, las palabras compuestas o las palabras con signos de puntuación y caracteres especiales) en varios tokens. El proceso de dividir el texto en tokens se denomina tokenización. El objetivo de la tokenización es crear tokens con significado semántico que se puedan recombinar para entender la palabra original. Por ejemplo, la palabra "predefinido" se puede dividir en los siguientes tokens: "pre", "define" y "ido".
Los tokens pueden representar entradas multimodales, como imágenes, vídeos y audio. Las técnicas de embedding transforman las entradas multimodales en representaciones numéricas que el modelo puede procesar como tokens. A continuación, se muestran los cálculos aproximados de tokens para un ejemplo de entrada multimodal, independientemente del tamaño de la pantalla o del archivo:
- Imágenes: 258 tokens en total
- Vídeo: 263 tokens por segundo
- Audio: 32 tokens por segundo
Cada modelo tiene un límite en el número de tokens que puede gestionar en una petición y una respuesta. Además, los costes de uso del modelo se calculan en función del número de tokens de entrada y salida. Para obtener información sobre cómo obtener el recuento de tokens de una petición que se ha enviado a un modelo de Gemini, consulta Listar y contar tokens. Para obtener información sobre el coste de los modelos de IA generativa en Vertex AI, consulta los precios de Vertex AI.
Ajuste
El ajuste es el proceso de adaptar un modelo base para que realice tareas específicas con mayor precisión. El ajuste se consigue modificando algunos o todos los parámetros del modelo o entrenando un modelo con un conjunto de datos que contenga ejemplos que repliquen las tareas y los resultados que quieras. La optimización es un proceso iterativo que puede ser complejo y costoso, pero que puede dar lugar a mejoras significativas en el rendimiento. El ajuste es más eficaz cuando tienes un conjunto de datos etiquetado con más de 100 ejemplos y quieres realizar tareas complejas o únicas para las que las técnicas de peticiones no son suficientes.
Estas son las técnicas de ajuste que admite Vertex AI:
- Afinamiento completo: técnica que actualiza todos los parámetros del modelo durante el proceso de ajuste. El ajuste fino completo puede ser costoso desde el punto de vista computacional y puede requerir muchos datos, pero también tiene el potencial de alcanzar los niveles más altos de rendimiento, especialmente en tareas complejas.
- Ajuste eficiente de parámetros: técnica que también se conoce como ajuste de adaptadores. El ajuste eficiente de parámetros actualiza algunos de los parámetros del modelo durante el proceso de ajuste. El ajuste eficiente de parámetros es más eficiente en cuanto a recursos y más rentable que el ajuste fino completo.
- Afinamiento supervisado: técnica que entrena el modelo con pares de entrada y salida etiquetados. El ajuste fino supervisado se suele usar en tareas que implican clasificación, traducción y resumen.
Para obtener más información sobre la optimización, consulta la introducción a la optimización.