Cloudflare lanza AutoRAG: el servicio RAG gestionado simplifica la integración de aplicaciones de IA

Cloudflare Recientemente ha anunciado el lanzamiento de AutoRAG Beta abierta del servicio. Este servicio de Generación Mejorada de Recuperación (RAG) totalmente alojado es el primero de su clase en el mundo. RAGLa tecnología RAG mejora la precisión de las respuestas de la IA recuperando información de los datos propiedad del desarrollador e introduciéndola en el Large Language Model (LLM) para generar respuestas más fiables y basadas en hechos.

Construir un pipeline RAG supone a menudo una tarea tediosa para muchos desarrolladores. Requiere la integración de múltiples herramientas y servicios, como almacenes de datos, bases de datos vectoriales, modelos integrados, grandes modelos lingüísticos y lógica de indexación, recuperación y generación personalizada. Sólo para poner en marcha el proyecto hay que dar muchas "puntadas", y el mantenimiento posterior es aún más difícil. Cuando los datos cambiaban, había que volver a indexarlos manualmente y generar vectores de incrustación para que el sistema siguiera siendo relevante y rindiendo. La esperada experiencia de "hacer una pregunta y obtener una respuesta inteligente" se convierte a menudo en un complejo sistema de frágiles integraciones, código pegajoso y mantenimiento continuo.

AutoRAG El objetivo es eliminar esta complejidad. Con unos pocos clics, los desarrolladores obtienen una canalización RAG de extremo a extremo totalmente gestionada. El servicio lo cubre todo, desde el acceso a los datos, el chunking automatizado y la incrustación, hasta el almacenamiento de vectores en la Cloudflare (utilizado como expresión nominal) Vectorize en la base de datos y, a continuación, realizar búsquedas semánticas y utilizar la Workers AI Todo el proceso de generación de una respuesta de alta calidad.AutoRAG Las fuentes de datos se supervisan continuamente y se indexan en busca de actualizaciones en segundo plano, lo que permite que las aplicaciones de IA se mantengan actualizadas automáticamente sin intervención humana. Esta abstracción ofrece a los desarrolladores la posibilidad de centrarse más en construir sobre la base de los datos. Cloudflare para crear aplicaciones más inteligentes y rápidas en la plataforma de desarrollo del

El valor de las solicitudes RAG

Los grandes modelos lingüísticos (como los introducidos por Meta Llama 3.3) son potentes, pero sus conocimientos se limitan a los datos de formación. Cuando se les pide información nueva, propia o específica de un dominio, suelen tener dificultades para dar respuestas precisas. A ello puede contribuir el hecho de que el sistema proporcione información pertinente, pero esto aumenta el tamaño de la entrada y está limitado por la longitud de la ventana contextual. Otro método consiste en afinar el modelo, pero es costoso y requiere un reentrenamiento continuo para mantenerse al día de las actualizaciones de la información.

El GAR recupera información relevante de una fuente de datos especificada en el momento de la consulta, la combina con la consulta introducida por el usuario y, a continuación, proporciona ambas al LLM para generar una respuesta. Este enfoque permite al LLM basar su respuesta en los datos proporcionados por el desarrollador, garantizando que la información es precisa y está actualizada. Como resultado, la RAG es muy adecuada para crear robots de atención al cliente basados en IA, asistentes de bases de conocimiento internas, búsqueda semántica de documentos y otros escenarios de aplicación que requieren fuentes de información continuamente actualizadas. En comparación con el ajuste fino, RAG es más rentable y flexible en el manejo de datos actualizados dinámicamente.

Cloudflare 推出 AutoRAG:托管式 RAG 服务简化 AI 应用集成

Explicación del mecanismo de funcionamiento del AutoRAG

AutoRAG utilice Cloudflare Los componentes existentes de la plataforma para desarrolladores configuran automáticamente la canalización RAG para el usuario. Los desarrolladores no necesitan escribir su propio código para combinar Workers AIyVectorize responder cantando AI Gateway y otros servicios, basta con crear un AutoRAG y apuntarla a una fuente de datos (como la base de datos R2 Cubo de almacenamiento) es suficiente.

AutoRAG El núcleo de todo esto lo impulsan dos procesos:Indexación responder cantando Consulta de.

  • indexación es un proceso asíncrono que se ejecuta en segundo plano. Se ejecuta en el AutoRAG Las instancias se inician inmediatamente después de su creación y se ejecutan automáticamente de forma rotatoria, procesando los archivos nuevos o actualizados una vez finalizado cada trabajo. Durante el proceso de indexación, los contenidos se convierten en vectores optimizados para la búsqueda semántica.
  • consultar (un documento, etc.) es un proceso sincronizado, desencadenado por el envío de una solicitud de búsqueda por parte del usuario.AutoRAG Al recibir una consulta, se recupera el contenido más relevante de la base de datos vectorial y se genera una respuesta adaptada al contexto utilizando este contenido y el LLM.

Explicación del proceso de indexación

Cuando la fuente de datos está conectada, elAutoRAG Los siguientes pasos se realizan automáticamente para extraer, transformar y almacenar los datos como vectores, optimizados para la búsqueda semántica en posteriores consultas:

  1. Extraer archivos de fuentes de datos: AutoRAG Leer archivos directamente desde fuentes de datos configuradas. Actualmente admite el uso de Cloudflare R2 Integración para manejar documentos en PDF, imagen, texto, HTML, CSV y muchos otros formatos.
  2. Conversión a Markdown: utilizar Workers AI La función de conversión Markdown convierte todos los archivos a un formato Markdown estructurado, lo que garantiza la coherencia entre distintos tipos de archivos. Para los archivos de imagen, la funciónWorkers AI Se detecta el objeto y, a continuación, se describe su contenido como texto Markdown mediante conversión visual a verbal.
  3. Agrupamiento: El texto extraído se divide en trozos más pequeños para mejorar la granularidad de la recuperación.
  4. Incrustación: Cada bloque de texto utiliza el Workers AI El modelo de incrustación se procesa para convertir el contenido en una representación vectorial.
  5. Almacenamiento de vectores: Los vectores generados, junto con metadatos como la ubicación de la fuente, el nombre del archivo, etc., se almacenan en el archivo de creación automática Cloudflare Vectorize En la base de datos.
Cloudflare 推出 AutoRAG:托管式 RAG 服务简化 AI 应用集成

Detalles del proceso de consulta

Cuando un usuario final inicia una solicitud, elAutoRAG Coordinará las siguientes operaciones:

  1. Recibir solicitudes de consulta: El flujo de trabajo de consulta comienza con AutoRAG AI Search o Search API endpoint para enviar una solicitud.
  2. Reescritura de consultas (opcional): AutoRAG Ofrece la opción de utilizar Workers AI El LLM reescribe la consulta de entrada original para transformarla en una consulta de búsqueda más eficiente que mejore la calidad de la recuperación.
  3. Incrustación de consultas: La consulta reescrita (u original) se convierte en un vector mediante el mismo modelo que en el momento de incrustar los datos, con el fin de permitir comparaciones de similitud con los datos vectoriales almacenados.
  4. Vectorizar Búsqueda vectorial: Los vectores de consulta concuerdan con la AutoRAG asociado Vectorize Se busca en la base de datos para encontrar los vectores más relevantes.
  5. Metadatos y recuperación de contenidos: Vectorize Devuelve los bloques de texto más relevantes y sus metadatos. Al mismo tiempo, devuelve una lista de los bloques de texto más relevantes y sus metadatos de la sección R2 El contenido en bruto correspondiente se recupera del cubo de almacenamiento. Esta información se pasa al modelo de generación de texto.
  6. Generación de respuestas: Workers AI El modelo de generación de texto en utiliza el contenido recuperado y la consulta original del usuario para generar la respuesta final.

El resultado final es una respuesta basada en IA, precisa y actualizada, basada en datos privados de los usuarios.

Cloudflare 推出 AutoRAG:托管式 RAG 服务简化 AI 应用集成

Práctica: Creación rápida de aplicaciones RAG con la API de renderizado del navegador

Normalmente, la puesta en marcha AutoRAG Basta con apuntar a un R2 Cubo de almacenamiento. Pero, ¿qué ocurre si la fuente de contenido es una página web dinámica que necesita ser renderizada antes de poder ser recuperada?Cloudflare ofrecido API de renderizado del navegador (ya disponible oficialmente) resuelve este problema. La API permite a los desarrolladores controlar mediante programación instancias de navegadores sin cabeza para realizar acciones comunes como rastrear contenidos HTML, tomar capturas de pantalla, generar PDF, etc.

Los siguientes pasos describen cómo utilizar la función Browser Rendering API Rastreo de contenidos de sitios web, depósito R2y conectarlo al AutoRAG para habilitar la función de preguntas y respuestas basadas en el contenido del sitio.

Paso 1: Crear un Worker para capturar páginas web y subirlas a R2

En primer lugar, cree un Cloudflare WorkerUtilice Puppeteer accede a la URL especificada, renderiza la página y almacena el contenido HTML completo en el archivo R2 Cubo de almacenamiento. Si ya existe un R2 se puede omitir este paso.

  1. Inicializar un nuevo proyecto de trabajador (p. ej. browser-r2-worker):
    npm create cloudflare@latest browser-r2-worker
    

    opción Hello World Starter(matemáticas) géneroWorker onlypaz TypeScript.

  2. montaje @cloudflare/puppeteer::
    npm i @cloudflare/puppeteer
    
  3. Cree un archivo llamado html-bucket Cubo de almacenamiento R2:
    npx wrangler r2 bucket create html-bucket
    
  4. existe wrangler.toml (o wrangler.json) Archivo de configuración para añadir la renderización del navegador y los enlaces de cubo R2:
    # wrangler.toml
    compatibility_flags = ["nodejs_compat"]
    [browser]
    binding = "MY_BROWSER"
    [[r2_buckets]]
    binding = "HTML_BUCKET"
    bucket_name = "html-bucket"
    
  5. Sustitúyalo por el siguiente script src/index.ts El script toma la URL de la petición POST, utiliza Puppeteer para obtener el HTML de la página y lo almacena en R2:
    import puppeteer from "@cloudflare/puppeteer";
    interface Env {
    MY_BROWSER: puppeteer.BrowserWorker; // Correct typing if available, otherwise 'any'
    HTML_BUCKET: R2Bucket;
    }
    interface RequestBody {
    url: string;
    }
    export default {
    async fetch(request: Request, env: Env): Promise<Response> {
    if (request.method !== 'POST') {
    return new Response('Please send a POST request with a target URL', { status: 405 });
    }
    try {
    const body = await request.json() as RequestBody;
    // Basic validation, consider adding more robust checks
    if (!body.url) {
    return new Response('Missing "url" in request body', { status: 400 });
    }
    const targetUrl = new URL(body.url); // Use URL constructor for parsing and validation
    const browser = await puppeteer.launch(env.MY_BROWSER);
    const page = await browser.newPage();
    await page.goto(targetUrl.href, { waitUntil: 'networkidle0' }); // Wait for network activity to cease
    const htmlPage = await page.content();
    // Generate a unique key for the R2 object
    const key = `${targetUrl.hostname}_${Date.now()}.html`;
    await env.HTML_BUCKET.put(key, htmlPage, {
    httpMetadata: { contentType: 'text/html' } // Set content type
    });
    await browser.close();
    return new Response(JSON.stringify({
    success: true,
    message: 'Page rendered and stored successfully',
    key: key
    }), {
    headers: { 'Content-Type': 'application/json' }
    });
    } catch (error) {
    console.error("Error processing request:", error);
    // Return a generic error message to the client
    return new Response(JSON.stringify({ success: false, message: 'Failed to process request' }), {
    status: 500,
    headers: { 'Content-Type': 'application/json' }
    });
    }
    }
    } satisfies ExportedHandler<Env>;
    
  6. Desplegar trabajador:
    npx wrangler deploy
    
  7. Prueba Trabajador, por ejemplo, captura Cloudflare de esta entrada del blog:
    curl -X POST https://browser-r2-worker.<YOUR_SUBDOMAIN>.workers.dev \
    -H "Content-Type: application/json" \
    -d '{"url": "https://blog.cloudflare.com/introducing-autorag-on-cloudflare"}'
    

    comandante en jefe (militar) <YOUR_SUBDOMAIN> Sustituya su Cloudflare Workers Subdominios.

Paso 2: Crear Instancia AutoRAG y Monitorizar Índices

Rellenar el contenido del R2 Una vez creado el cubo, el AutoRAG Ejemplo:

  1. existe Cloudflare En el panel de control, vaya a AI > AutoRAG.
  2. Seleccione "Crear AutoRAG" y complete la configuración:
    • Seleccione la base de conocimientos que contiene el R2 Cubo de almacenamiento (en este caso html-bucket).
    • Seleccione el modelo de incrustación (recomendado por defecto).
    • Seleccione el LLM utilizado para generar la respuesta (recomendado por defecto).
    • Seleccione o cree un AI Gateway para controlar el uso del modelo.
    • debido a AutoRAG Denominación de instancias (por ejemplo my-rag).
    • Seleccione o cree un token de API de servicio que autorice el AutoRAG Cree recursos en su cuenta y acceda a ellos.
  3. Seleccione "Crear" para iniciar el AutoRAG Ejemplo.

Tras la creación, elAutoRAG creará automáticamente un Vectorize base de datos y empezar a indexar los datos. Es posible crear una base de datos en el AutoRAG s para ver el progreso de la indexación. El tiempo de indexación depende del número y tipo de archivos de la fuente de datos.

Cloudflare 推出 AutoRAG:托管式 RAG 服务简化 AI 应用集成

Paso 3: Probar e integrar en la aplicación

Una vez finalizada la indexación, puede comenzar la consulta. La indexación puede realizarse en el AutoRAG instancia Parque infantil En las pestañas, haz preguntas basadas en el contenido cargado, por ejemplo: "¿Qué es AutoRAG?".

Una vez que la prueba sea satisfactoria, el AutoRAG integrado directamente en la aplicación. Si utiliza el Cloudflare Workers Cree aplicaciones que puedan invocarse directamente a través de los enlaces de IA. AutoRAG::

existe wrangler.toml Añade la encuadernación:

# wrangler.toml
[ai]
binding = "AI"

A continuación, en el código del trabajador, llame a aiSearch() (para obtener la respuesta generada por la IA) o el método Search() (para obtener sólo una lista de resultados de búsqueda):

// Example in a Worker using the AI binding
export default {
async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise<Response> {
// Assuming 'env' includes the AI binding: interface Env { AI: Ai }
if (!env.AI) {
return new Response("AI binding not configured.", { status: 500 });
}
try {
const answer = await env.AI.run('@cf/meta/llama-3.1-8b-instruct', { // Example model, replace if needed
prompt: 'What is AutoRAG?', // Simple prompt example
rag: { // Use the RAG configuration via the binding
autorag_id: 'my-rag' // Specify your AutoRAG instance name
}
});
// Or using the specific AutoRAG methods if available via the binding
// const searchResults = await env.AI.autorag('my-rag').Search({ query: 'What is AutoRAG?' });
// const aiAnswer = await env.AI.autorag('my-rag').aiSearch({ query: 'What is AutoRAG?' });
return new Response(JSON.stringify(answer), { headers: { 'Content-Type': 'application/json' }});
} catch (error) {
console.error("Error querying AutoRAG:", error);
return new Response("Failed to query AutoRAG", { status: 500 });
}
}
}

Nota: El ejemplo de código del Trabajador anterior se basa en la integración genérica de la funcionalidad AI bindings y RAG, concretamente en AutoRAG Para la invocación vinculante, consulte la página Cloudflare Documentación oficial para el uso más reciente y preciso.

Para más detalles sobre la integración, consulte AutoRAG Utilice la sección "AutoRAG" del ejemplo o consulte la documentación para desarrolladores.

Importancia estratégica y valor para el promotor

AutoRAG El lanzamiento marca el Cloudflare Profundizar en la integración de las capacidades de IA en su plataforma para desarrolladores. Mediante la integración de componentes clave de la canalización RAG (R2VectorizeWorkers AIAI Gateway) encapsulado como servicio alojado.Cloudflare Reduce significativamente las barreras para que los desarrolladores creen aplicaciones inteligentes con sus propios datos.

Para desarrolladoresAutoRAG El principal valor delcomodidadElimina la carga de configurar y mantener manualmente una compleja infraestructura de GAR. Elimina la carga de configurar y mantener manualmente una compleja infraestructura de GAR, y es especialmente adecuado para equipos que necesitan crear prototipos rápidamente o carecen de recursos MLOps dedicados. En comparación con la construcción de su propio RAG por completo, es un compromiso: sacrificar parte del control subyacente y la flexibilidad de personalización para un desarrollo más rápido y una menor sobrecarga de gestión.

Al mismo tiempo, esto refleja la Cloudflare Una extensión de la estrategia de plataforma: ofrecer servicios de computación, almacenamiento e IA cada vez más completos en el extremo de su red global, formando un ecosistema estrechamente integrado. Los desarrolladores utilizan AutoRAG Significa una integración más profunda Cloudflare pila tecnológica, lo que puede aportarBloqueo de proveedoressino también gracias a la integración optimizada entre servicios dentro de la ecología.

Durante el periodo de pruebas públicas, elAutoRAG lanzamiento gratuitopero las operaciones de cálculo como la indexación, la recuperación y la mejora consumen Workers AI responder cantando Vectorize El uso de servicios subyacentes como el desarrollador debe preocuparse por estos costes asociados. Actualmente cada cuenta está limitada a crear 10 AutoRAG cada una de las cuales gestiona hasta 100.000 documentosEstas restricciones podrán modificarse en el futuro.

Hoja de ruta para el desarrollo futuro

Cloudflare indique AutoRAG seguirá ampliándose, con planes para introducir más funciones en 2025, por ejemplo:

  • Más integración de fuentes de datos: aparte de R2El plan admite el análisis directo de las URL de los sitios web (mediante la tecnología de renderización del navegador) y el acceso a Cloudflare D1 y otras fuentes de datos estructurados.
  • Mejorar la calidad de la respuesta: Explore técnicas integradas como el reranking y el chunking recursivo para mejorar la relevancia y la calidad de las respuestas generadas.

AutoRAG La dirección de desarrollo se ajustará continuamente según los comentarios de los usuarios y los escenarios de aplicación.

Experiencia instantánea

derecha AutoRAG Los promotores interesados pueden visitar Cloudflare La sección AI > AutoRAG del panel de control para empezar a crear y probar. Tanto si estás creando una experiencia de búsqueda con IA, un asistente de conocimiento interno o simplemente probando una aplicación LLM.AutoRAG Ambas ofrecen una forma de marcar la diferencia en la Cloudflare Una forma de iniciar rápidamente un proyecto GAR en una red global. Encontrará información más detallada en Documentación para desarrolladores. Mientras tanto, el API de renderizado del navegador También de interés.

© declaración de copyright

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...