En esta página, se explica cómo usar el analizador de LLM de Vertex AI RAG Engine.
Introducción
Vertex AI RAG Engine usa LLM para analizar documentos. Los LLM tienen la capacidad de procesar documentos de manera eficaz de las siguientes maneras:
- Comprender e interpretar contenido semántico en varios formatos
- Recuperar fragmentos de documentos pertinentes
- Extraer información significativa de los documentos
- Identificar secciones pertinentes en los documentos
- Resumir con precisión documentos complejos
- Comprender elementos visuales e interactuar con ellos
- Extraer datos de gráficos y diagramas
- Describir imágenes
- Comprender las relaciones entre gráficos y texto
- Proporcionar respuestas más precisas y ricas en contexto
Las capacidades de Vertex AI RAG Engine mejoran significativamente la calidad de las respuestas generadas.
Modelos compatibles
Los siguientes modelos admiten el analizador de LLM de Vertex AI RAG Engine:
- Gemini 3.1 Pro
- Gemini 2.5 Pro
- Gemini 2.5 Flash
- Versión preliminar de
- Gemini 2.5 Flash
- Gemini 2.5 Flash-Lite
Tipos de archivos admitidos
El analizador de LLM admite los siguientes tipos de archivos:
application/pdfimage/pngimage/jpegimage/webpimage/heicimage/heif
Precios y cuotas
Para obtener detalles sobre los precios, consulta Precios de Vertex AI.
Para conocer las cuotas que se aplican, consulta Cuotas de frecuencia.
El analizador de LLM llama a los modelos de Gemini para analizar tus documentos. Esto genera costos adicionales, que se cobran a tu proyecto. El costo se puede estimar aproximadamente con esta fórmula:
cost = number_of_document_files * average_pages_per_document * (average_input_tokens * input_token_pricing_of_selected_model + average_output_tokens * output_token_pricing_of_selected_model)
Por ejemplo, tienes 1,000 archivos PDF y cada uno tiene 50 páginas. La página promedio de PDF tiene 500 tokens y necesitamos 100 tokens adicionales para las instrucciones. El resultado promedio es de 100 tokens.
Gemini 2.0 Flash-Lite se usa en tu configuración para el análisis, y cuesta USD 0.075 por 1 millón de tokens de entrada y USD 0.3 por tokens de texto de salida.
cost = 1,000 * 50 * (600 * 0.075 / 1M + 100 * 0.3 / 1M) = 3.75
El costo es de USD 3.75.
Importa archivos con LlmParser habilitado
Reemplaza los valores de las siguientes variables que se usan en los ejemplos de código:
- PROJECT_ID: Es el ID de tu Google Cloud proyecto.
- LOCATION: Es la región en la que se procesa tu solicitud.
- RAG_CORPUS_RESOURCE: Es el ID de tu corpus.
- GCS_URI: Es el URI de Cloud Storage de los archivos que deseas importar.
- GOOGLE_DRIVE_URI: Es el URI de Google Drive de los archivos que deseas importar.
- MODEL_NAME: Es el nombre de recurso del modelo que se usa para
el análisis.
Formato:
projects/{project_id}/locations/{location}/publishers/google/models/{model_id} - CUSTOM_PARSING_PROMPT: (Opcional) Es una instrucción personalizada que configura el cliente para que el analizador de LLM la use para analizar documentos.
MAX_PARSING_REQUESTS_PER_MIN: (Opcional) Es la cantidad máxima de solicitudes que el trabajo puede realizar al modelo de Vertex AI por minuto. Para obtener más información, consulta Límites de frecuencia de IA generativa en Vertex AI y la página Cuotas y límites del sistema de tu proyecto para establecer un valor adecuado.
REST
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_RESOURCE/ragFiles:import" -d '{
"import_rag_files_config": {
"gcs_source": {
"uris": ["GCS_URI", "GOOGLE_DRIVE_URI"]
},
"rag_file_chunking_config": {
"chunk_size": 512,
"chunk_overlap": 102
},
"rag_file_parsing_config": {
"llm_parser": {
"model_name": "MODEL_NAME",
"custom_parsing_prompt": "CUSTOM_PARSING_PROMPT"
"max_parsing_requests_per_min": "MAX_PARSING_REQUESTS_PER_MIN"
}
}
}
}'
Python
Si deseas obtener información para instalar o actualizar el SDK de Vertex AI para Python, consulta Instala el SDK de Vertex AI para Python. Si deseas obtener más información, consulta la documentación de referencia de la API de Python.
from vertexai import rag
import vertexai
PROJECT_ID = "PROJECT_ID"
CORPUS_NAME = "RAG_CORPUS_RESOURCE"
LOCATION = "LOCATION"
MODEL_ID = "MODEL_ID"
MODEL_NAME = "projects/{PROJECT_ID}/locations/{LOCATION}/publishers/google/models/{MODEL_ID}"
MAX_PARSING_REQUESTS_PER_MIN = MAX_PARSING_REQUESTS_PER_MIN # Optional
CUSTOM_PARSING_PROMPT = "Your custom prompt" # Optional
PATHS = ["https://drive.google.com/file/123", "gs://my_bucket/my_files_dir"]
# Initialize Vertex AI API once per session
vertexai.init(project={PROJECT_ID}, location={LOCATION})
transformation_config = rag.TransformationConfig(
chunking_config=rag.ChunkingConfig(
chunk_size=1024, # Optional
chunk_overlap=200, # Optional
),
)
llm_parser_config = rag.LlmParserConfig(
model_name = MODEL_NAME,
max_parsing_requests_per_min=MAX_PARSING_REQUESTS_PER_MIN, # Optional
custom_parsing_prompt=CUSTOM_PARSING_PROMPT, # Optional
)
rag.import_files(
CORPUS_NAME,
PATHS,
llm_parser=llm_parser_config,
transformation_config=transformation_config,
)
Instrucciones
El analizador de LLM de Vertex AI RAG Engine usa una instrucción predefinida y ajustada para analizar documentos. Sin embargo, si tienes documentos especializados que podrían no ser adecuados para una instrucción general, tienes la opción de especificar tu instrucción de análisis personalizada cuando usas la API. Cuando solicitas a Gemini que analice tus documentos, Vertex AI RAG Engine agrega una instrucción a tu instrucción predeterminada del sistema.
Tabla de plantillas de instrucciones
Para ayudar con el análisis de documentos, en la siguiente tabla, se proporciona un ejemplo de plantilla de instrucciones para guiarte en la creación de instrucciones que Vertex AI RAG Engine puede usar para analizar tus documentos:
| Capacitación | Declaración de plantilla | Ejemplo |
|---|---|---|
| Especifica la función. | Eres un/una [Especifica la función, como un extractor de datos fácticos o un recuperador de información]. | Eres un recuperador de información. |
| Especifica la tarea. | Extrae [Especifica el tipo de información, como declaraciones factuales , datos clave o detalles específicos] de [Especifica la fuente del documento , como un documento, texto, artículo, imagen, tabla]. | Extrae datos clave del archivo sample.txt. |
| Explica cómo quieres que el LLM genere el resultado según tus documentos. | Presenta cada hecho en un [Especifica el formato de salida, como una lista estructurada o un formato de texto] y crea un vínculo a su [Especifica la ubicación de la fuente, como una página, un párrafo, una tabla o una fila]. | Presenta cada hecho en una lista estructurada y crea un vínculo a su página de muestra. |
| Destaca en qué debe enfocarse el LLM. | Extrae [Especifica los tipos de datos clave, como los nombres, las fechas, los números, los atributos o las relaciones] tal como se indica. | Extrae nombres y fechas. |
| Destaca lo que quieres que evite el LLM. | [Enumera las acciones que se deben evitar, como el análisis, la interpretación, el resumen, la inferencia o la emisión de opiniones]. Extrae solo lo que dice el documento de forma explícita. | No emitas opiniones. Extrae solo lo que dice el documento de forma explícita. |
Guía general
Sigue estas instrucciones para escribir la instrucción que se enviará al analizador de LLM.
- Específica: Define claramente la tarea y el tipo de información que se extraerá.
- Detallada: Proporciona instrucciones detalladas sobre el formato de salida, la atribución de la fuente y el manejo de diferentes estructuras de datos.
- Restrictiva: Indica explícitamente lo que no debe hacer la IA, como el análisis o la interpretación.
- Clara: Usa un lenguaje claro y directivo.
- Estructurada: Organiza las instrucciones de forma lógica con listas numeradas o viñetas para mejorar la legibilidad.
Análisis de la calidad del análisis
En esta tabla, se enumeran los resultados de las situaciones que los clientes ejecutaron con Vertex AI RAG Engine. Los comentarios muestran que el analizador de LLM mejora la calidad del análisis de documentos.
| Situación | Resultado | |
|---|---|---|
| Análisis de información en diapositivas y vinculación de secciones | El analizador de LLM vinculó correctamente los títulos de las secciones de una diapositiva con la información detallada que se presenta en las diapositivas posteriores. | |
| Comprensión y extracción de información de tablas | El analizador de LLM relacionó correctamente las columnas y los encabezados dentro de una tabla grande para responder preguntas específicas. | |
| Interpretación de diagramas de flujo | El analizador de LLM pudo seguir la lógica de un diagrama de flujo y extraer la secuencia correcta de acciones y la información correspondiente. | |
| Extracción de datos de gráficos | El analizador de LLM pudo interpretar diferentes tipos de gráficos, como gráficos de líneas, y extraer puntos de datos específicos según la consulta. | |
| Captura de relaciones entre encabezados y texto | El analizador de LLM, guiado por la instrucción, prestó atención a las estructuras de encabezado y pudo recuperar toda la información pertinente asociada con un tema o sección en particular. | |
| Potencial para superar las limitaciones de incorporación con la ingeniería de instrucciones | Si bien inicialmente se vio obstaculizado por las limitaciones del modelo de incorporación en algunos casos de uso, experimentos adicionales demostraron que una instrucción de analizador de LLM bien diseñada podría mitigar estos problemas y recuperar la información correcta, incluso cuando la comprensión semántica es un desafío para el modelo de incorporación por sí solo. |
El analizador de LLM mejora la capacidad del LLM para comprender y razonar sobre el contexto dentro de un documento, lo que genera respuestas más precisas y completas.
Consulta de recuperación
Después de ingresar una instrucción que se envía a un modelo de IA generativa, el componente de recuperación en RAG busca en su base de conocimiento la información pertinente para la consulta. Para ver un ejemplo de recuperación de archivos RAG de un corpus basado en un texto de consulta, consulta Consulta de recuperación.
¿Qué sigue?
- Para obtener más información sobre Vertex AI RAG Engine, consulta Descripción general de Vertex AI RAG Engine.
- Para obtener más información sobre Vertex AI RAG Engine, consulta la API de Vertex AI RAG Engine.