DEV Community

Cover image for RAG on Azure OpenAI
Enrique Aguilar Martinez
Enrique Aguilar Martinez

Posted on • Edited on

RAG on Azure OpenAI

Implementación de RAG en Azure OpenAI

  1. Introducción

Propósito del artículo: Explicar cómo construir un modelo RAG (Retrieval Augmented Generation) utilizando Azure OpenAI.

Contexto: RAG combina recuperación de información con generación de texto para mejorar la precisión de respuestas en modelos de lenguaje.

Importancia de Azure: Plataforma segura y escalable que integra servicios como Azure Cognitive Search y Azure OpenAI.

  1. Objetivos

Explicar el funcionamiento de RAG en Azure OpenAI.

Demostrar la implementación práctica de una solución RAG.

Discutir ventajas y casos de uso del enfoque RAG.

  1. ¿Qué es RAG?

Definición: Técnica que combina dos componentes:

Recuperador: Busca información relevante en bases de datos o documentos.

Generador: Modelo de lenguaje (como GPT-4) que genera respuestas usando la información recuperada.

Flujo de trabajo:

Consulta del usuario.

Recuperación de fragmentos relevantes.

Generación de respuesta contextualizada.

  1. Azure OpenAI y su Papel en RAG

Componentes clave:

Azure OpenAI: Proporciona modelos generativos (GPT-4, Codex, etc.).

Azure Cognitive Search: Servicio para indexar y buscar en documentos.

Ventajas de Azure:

Escalabilidad para manejar grandes volúmenes de datos.

Cumplimiento de normativas de seguridad.

Integración sencilla entre servicios mediante SDKs y APIs.

Nota regional: Crear recursos en la región Suecia Central (disponibilidad de servicios y menor saturación).

  1. Implementación Práctica 5.1 Creación de Recursos en Azure

Grupo de recursos:

az group create -n rg-openai-course2 -l swedencentral
Servicio de Azure Cognitive Search:

bash
az search service create -n ai-search-swc-demo2 -g rg-openai-course2 --sku free
Clave de administrador:

bash
az search admin-key show --service-name ai-search-swc-demo2 -g rg-openai-course2
5.2 Configuración de Azure AI Services

Creación del recurso:

bash
az cognitiveservices account create -n ai-services-swc-demo2 -g rg-openai-course2 --kind AIServices --sku S0 --location swedencentral
Obtención de credenciales:

URL del endpoint:

Image description

bash
az cognitiveservices account show -n ai-services-swc-demo2 -g rg-openai-course2 --query properties.endpoint

Claves de API:

bash
az cognitiveservices account keys list -n ai-services-swc-demo2 -g rg-openai-course2

5.3 Despliegue de Modelos

Modelo GPT-4o:

Image description

bash

az cognitiveservices account deployment create -n ai-services-swc-demo2 -g rg-openai-course2 --deployment-name gpt-4o --model-name gpt-4o --model-version "2024-05-13" --model-format OpenAI --sku-capacity "148" --sku-name "Standard"
Modelo de embeddings (text-embedding-3-large):

bash

az cognitiveservices account deployment create -n ai-services-swc-demo2 -g rg-openai-course2 --deployment-name text-embedding-3-large --model-name text-embedding-3-large --model-version "1" --model-format OpenAI --sku-capacity "227" --sku-name "Standard"
5.4 Creación de Hub y Proyecto en Azure AI Studio

Hub:

Image description

bash
az ml workspace create --kind hub -g rg-openai-course2 -n hub-demo
Proyecto:

Crear manualmente desde Azure AI Studio (no soportado vía CLI).

5.5 Configuración de Conexiones

Archivo connection.yml:

yaml
Copy
name: ai-service-connection
type: azure_ai_services
endpoint: https://swedencentral.api.cognitive.microsoft.com/
api_key: [API_KEY]
ai_services_resource_id: [RESOURCE_ID]
Implementación de la conexión:

bash
az ml connection create --file connection.yml -g rg-openai-course2 --workspace-name hub-demo

6. Confirmación de Recursos

Verificar en Azure Portal la creación de los 6 recursos:

Image description
Grupo de recursos.

Servicio de Azure Cognitive Search.

Recurso de Azure AI Services.

Modelos desplegados (GPT-4o y text-embedding-3-large).

Hub y proyecto en Azure AI Studio.

  1. Conclusión

RAG en Azure OpenAI permite construir soluciones avanzadas con acceso a información en tiempo real.

La integración con servicios de Azure garantiza escalabilidad, seguridad y facilidad de uso.

Pasos siguientes: Probar consultas y personalizar el índice de búsqueda según necesidades específicas.

Image description

repo:
https://github.com/EnriqueAguila/RAG-en-Azure-Openai

Enrique Aguilar Martinez
AI Engineer

Top comments (0)