Servicio de Azure que proporciona acceso a los modelos de GPT-3 de OpenAI con funcionalidad para empresas.
Hola Ameth Ordoñez Erazo,
Un sistema RAG de 2 TB es una implementación significativa y potente. Intentaré proporcionarte la arquitectura recomendada y una metodología clara para calcular tus costes.
Para un proyecto de esta magnitud, el despliegue más óptimo, escalable y automatizado en Azure se compone de dos servicios principales:
1.Azure AI Search: Este será el motor de tu sistema RAG. Lo utilizarás para conectarte a tu Blob Storage, procesar tus documentos, dividirlos en fragmentos, vectorizarlos y almacenarlos en un índice vectorial consultable. Necesitarás un nivel Estándar (S1, S2 o S3) para manejar este volumen de datos.
2.Azure OpenAI: Este servicio alojará ambos modelos:
- Un modelo de embeddings (por ejemplo, text-embedding-3-large) para realizar la vectorización.
- Tu modelo generativo (gpt-4o) para proporcionar las respuestas finales.
Esta combinación es ideal porque el indexador de Azure AI Search puede conectarse directamente a tu Blob Storage. Posee habilidades integradas para analizar archivos PDF, correos electrónicos y otros formatos, lo que automatiza las partes más difíciles del flujo RAG (extracción y fragmentación de datos).
Estrategia Óptima de Coste y Compresión
Tienes razón al centrarte en la compresión; con 2 TB de vectores, esto es fundamental. El “modelo de compresión” no es un modelo aparte, sino una característica de tu modelo de embeddings y de tu índice en AI Search.
Aquí tienes las dos mejores formas de reducir costes:
- Usa un modelo de embeddings moderno: Utiliza text-embedding-3-large. A diferencia de los modelos antiguos, puedes especificar la dimensión de salida (por ejemplo, 256 o 1024 en lugar de 3072). Menores dimensiones vectoriales implican un índice mucho más pequeño, menores costes de almacenamiento y búsquedas más rápidas.
- Habilita la compresión vectorial: En la definición de tu índice en Azure AI Search, activa la Cuantificación Escalar (Scalar Quantization). Esto comprimirá los vectores almacenados, sacrificando una cantidad mínima —y a menudo imperceptible— de precisión de búsqueda a cambio de una gran reducción en el tamaño y coste del índice.
Cómo Calcular el Precio de tu Vectorización
La vectorización (embeddings) es un coste único de ingestión, no una tarifa mensual. Se te factura en función del número total de tokens que envíes a la API del modelo de embeddings.
Es importante destacar que 2 TB de archivos (PDF, etc.) no equivalen a 2 TB de texto. El tamaño del archivo incluye imágenes, formato y otros datos no textuales. Debes estimar el contenido de texto real.
Aquí tienes el proceso en 4 pasos para calcular tu coste aproximado:
Paso 1: Obtener una muestra representativa Crea una muestra pequeña de tus datos (por ejemplo, 1 GB) que contenga una mezcla similar de PDFs, correos electrónicos y notas a tu conjunto completo de 2 TB.
Paso 2: Extraer el texto plano Usa un script en Python (con bibliotecas como pypdf para-PDFs o beautifulsoup4 para correos HTML) para extraer todo el texto plano de tu muestra de 1 GB. Guárdalo como un archivo .txt y revisa su tamaño.
Paso 3: Contar los tokens en tu muestra Utiliza una biblioteca como tiktoken (el tokenizador oficial de OpenAI) para contar el número real de tokens en ese archivo de texto extraído.
Paso 4: Extrapolar y calcular Ahora puedes calcular tu coste total. Supongamos este ejemplo hipotético:
- Tu muestra de 1 GB de archivos resultó en 100 MB de texto plano.
- Al ejecutar tiktoken, descubres que 100 MB de texto equivalen a 25 millones de tokens.
- Tu conjunto total es de 2 TB, es decir, 2048 GB (2 × 1024).
- Total de tokens: 2048 (GB) × 25 000 000 (tokens/GB) = 51 200 000 000 (51,2 mil millones de tokens).
- Precio: El modelo text-embedding-ada-002 (una opción común) cuesta 0,0001 USD por cada 1 000 tokens.
- Coste total = (51 200 000 000 / 1 000) × 0,0001 USD = 5 120 USD
Este sería tu coste aproximado único para vectorizar el conjunto de datos completo de 2 TB.
Documentación de referencia de Microsoft:
- https://azure.microsoft.com/en-gb/pricing/calculator/
- https://learn.microsoft.com/en-us/azure/search/search-capacity-planning
- https://azure.microsoft.com/en-us/pricing/details/cognitive-services/openai-service/
- https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/announcing-cost-effective-rag-at-scale-with-azure-ai-search/4104961
Nota: Tenga en cuenta que el mayor costo continuo (mensual) no será la vectorización, sino el servicio Azure AI Search. Almacenar miles de millones de vectores requiere un servicio Estándar de alto nivel, que se factura por hora según el almacenamiento y las réplicas que utilice. Puede consultar esta información en la página de precios de Azure AI Search pricing page.
Además, esto es solo una estimación aproximada o una recomendación para calcular el costo y puede variar según su caso de uso.
Acepte la respuesta y vote a favor para que otros miembros de la comunidad la vean.
apologies for any mistake as i have converted english to spanish using bing translator