Cloudflare lance AutoRAG : le service RAG géré simplifie l'intégration des applications d'IA
Cloudflare
La Commission a récemment annoncé le lancement de AutoRAG
Bêta ouverte du service. Ce service RAG (Retrieval-Augmented Generation), entièrement hébergé, est le premier du genre au monde. RAGLa technologie RAG améliore la précision des réponses de l'IA en récupérant des informations à partir de données appartenant au développeur et en les introduisant dans le grand modèle linguistique (LLM) afin de générer des réponses plus fiables et basées sur des faits.
La construction d'un pipeline RAG est souvent une tâche fastidieuse pour de nombreux développeurs. Elle nécessite l'intégration de multiples outils et services tels que des magasins de données, des bases de données vectorielles, des modèles intégrés, de grands modèles de langage et une logique d'indexation, de récupération et de génération personnalisée. Un grand nombre de "coutures" sont nécessaires rien que pour lancer le projet, et la maintenance ultérieure est encore plus difficile. Lorsque les données ont changé, elles ont dû être réindexées manuellement et des vecteurs d'intégration ont été générés pour que le système reste pertinent et performant. L'expérience attendue "poser une question et obtenir une réponse intelligente" se transforme souvent en un système complexe d'intégrations fragiles, de code collant et de maintenance continue.
AutoRAG
L'objectif est d'éliminer cette complexité. En quelques clics, les développeurs obtiennent un pipeline RAG entièrement géré de bout en bout. Le service couvre tout, de l'accès aux données au stockage des vecteurs dans la base de données RAG, en passant par le découpage et l'intégration automatisés. Cloudflare
(utilisé comme expression nominale) Vectorize
dans la base de données, puis d'effectuer des recherches sémantiques et d'utiliser la base de données. Workers AI
L'ensemble du processus de génération d'une réponse de haute qualité.AutoRAG
Les sources de données sont continuellement contrôlées et indexées pour les mises à jour en arrière-plan, ce qui permet aux applications d'IA d'être mises à jour automatiquement sans intervention humaine. Cette abstraction permet aux développeurs de se concentrer davantage sur la construction des applications d'IA. Cloudflare
pour créer des applications plus intelligentes et plus rapides sur la plateforme de développement de la
La valeur des demandes RAG
Les grands modèles linguistiques (tels que ceux introduits par Meta Llama 3.3
) sont puissants, mais leurs connaissances se limitent aux données de formation. Lorsqu'on leur demande des informations nouvelles, exclusives ou spécifiques à un domaine, ils ont souvent du mal à donner des réponses précises. Il est possible d'y remédier en fournissant des informations pertinentes par le biais d'invites du système, mais cela augmente la taille de l'entrée et est limité par la longueur de la fenêtre contextuelle. Une autre approche consiste à affiner le modèle, mais cela est coûteux et nécessite un réentraînement continu pour suivre les mises à jour des informations.
Le RAG extrait les informations pertinentes d'une source de données spécifiée au moment de la requête, les combine avec la requête de l'utilisateur, puis les transmet au LLM pour qu'il génère une réponse. Cette approche permet au LLM de baser sa réponse sur les données fournies par le développeur, en s'assurant que les informations sont exactes et à jour. Par conséquent, RAG est bien adapté à la construction de robots de service à la clientèle pilotés par l'IA, d'assistants de base de connaissances internes, de recherche sémantique de documents et d'autres scénarios d'application qui nécessitent des sources d'information continuellement mises à jour. Par rapport au réglage fin, RAG est plus rentable et plus souple dans le traitement des données mises à jour de manière dynamique.

Explication du mécanisme de fonctionnement d'AutoRAG
AutoRAG
utiliser Cloudflare
Les composants existants de la plateforme de développement configurent automatiquement le pipeline RAG pour l'utilisateur. Les développeurs n'ont pas besoin d'écrire leur propre code pour combiner les éléments suivants Workers AI
,Vectorize
répondre en chantant AI Gateway
et d'autres services, il suffit de créer un AutoRAG
et la diriger vers une source de données (telle que la base de données R2
(seau de stockage) suffit.
AutoRAG
Deux processus en constituent le cœur :Indexation répondre en chantant Interrogation.
- indexation est un processus asynchrone qui s'exécute en arrière-plan. Il s'exécute dans la fenêtre
AutoRAG
Les instances sont lancées immédiatement après leur création et s'exécutent automatiquement en mode "round-robin" - en traitant les fichiers nouveaux ou mis à jour après l'achèvement de chaque tâche. Au cours du processus d'indexation, le contenu est converti en vecteurs optimisés pour la recherche sémantique. - consulter (un document, etc.) est un processus synchronisé, déclenché par l'envoi d'une demande de recherche par l'utilisateur.
AutoRAG
Lors de la réception d'une requête, le contenu le plus pertinent est extrait de la base de données vectorielle et une réponse contextuelle est générée à l'aide de ce contenu et du LLM.
Le processus d'indexation expliqué
Lorsque la source de données est connectée, la fenêtreAutoRAG
Les étapes suivantes sont automatiquement exécutées pour extraire, transformer et stocker les données sous forme de vecteurs, optimisés pour la recherche sémantique lors de requêtes ultérieures :
- Extraire des fichiers à partir de sources de données :
AutoRAG
Lire des fichiers directement à partir de sources de données configurées. Prend actuellement en charge l'utilisation de l'optionCloudflare R2
Intégration pour traiter les documents aux formats PDF, image, texte, HTML, CSV et bien d'autres. - Conversion Markdown : utiliser
Workers AI
La fonction de conversion Markdown convertit tous les fichiers dans un format Markdown structuré, ce qui garantit la cohérence entre les différents types de fichiers. Pour les fichiers images, la fonctionWorkers AI
L'objet est détecté, puis son contenu est décrit sous forme de texte Markdown grâce à une conversion visuelle/verbale. - Chunking : Le texte extrait est divisé en petits morceaux afin d'améliorer la granularité de la recherche.
- Intégration : Chaque bloc de texte utilise le
Workers AI
Le modèle d'intégration est traité pour convertir le contenu en une représentation vectorielle. - Stockage vectoriel : Les vecteurs générés, ainsi que les métadonnées telles que l'emplacement de la source, le nom du fichier, etc.
Cloudflare Vectorize
Dans la base de données.

Détails de la procédure de demande de renseignements
Lorsqu'un utilisateur final introduit une demande, le systèmeAutoRAG
Il coordonnera les opérations suivantes :
- Recevoir des demandes de renseignements : Le processus d'interrogation commence par
AutoRAG
AI Search ou Search API pour envoyer une demande. - Réécriture de la requête (facultatif) :
AutoRAG
Offre la possibilité d'utiliserWorkers AI
Le LLM réécrit la requête d'origine et la transforme en une requête de recherche plus efficace afin d'améliorer la qualité de la recherche. - Intégration des requêtes : La requête réécrite (ou originale) est convertie en vecteur par le même modèle qu'au moment de l'intégration des données afin de permettre des comparaisons de similarité avec les données vectorielles stockées.
- Vectoriser Recherche vectorielle : Les vecteurs d'interrogation sont en accord avec les
AutoRAG
associéVectorize
La base de données est consultée pour trouver les vecteurs les plus pertinents. - Métadonnées et recherche de contenu :
Vectorize
Renvoie les blocs de texte les plus pertinents et leurs métadonnées. En même temps, une liste des blocs de texte les plus pertinents et de leurs métadonnées provenant de la base de données desR2
Le contenu brut correspondant est extrait du réservoir de stockage. Ces informations sont transmises au modèle de génération de texte. - Génération de réponses :
Workers AI
Le modèle de génération de texte utilise le contenu récupéré et la requête originale de l'utilisateur pour générer la réponse finale.
Le résultat final est une réponse pilotée par l'IA, précise et actualisée, basée sur les données privées de l'utilisateur.

Travaux pratiques : Construction rapide d'applications RAG avec l'API de rendu du navigateur
En règle générale, le démarrage AutoRAG
Il suffit de le faire pointer vers un R2
Storage Bucket. Mais qu'en est-il si la source de contenu est une page web dynamique qui doit être rendue avant d'être récupérée ?Cloudflare
proposé API de rendu du navigateur (désormais officiellement disponible) résout ce problème. L'API permet aux développeurs de contrôler de manière programmatique les instances de navigateurs sans tête afin d'effectuer des actions courantes telles que l'exploration de contenu HTML, la réalisation de captures d'écran, la génération de PDF, etc.
Les étapes suivantes décrivent comment utiliser le Browser Rendering API
Exploration du contenu d'un site web, dépôt R2
et le connecter au AutoRAG
pour activer la fonctionnalité Q&A basée sur le contenu du site.
Étape 1 : Créer un Worker pour capturer des pages web et les télécharger vers R2
Tout d'abord, créez un Cloudflare Worker
Utilisation Puppeteer
accède à l'URL spécifiée, rend la page et stocke le contenu HTML complet dans le fichier R2
Seau de stockage. S'il existe déjà un R2
cette étape peut être sautée.
- Initialiser un nouveau projet de travailleur (par ex.
browser-r2-worker
) :npm create cloudflare@latest browser-r2-worker
option
Hello World Starter
(math.) genreWorker only
la paixTypeScript
. - montage
@cloudflare/puppeteer
: :npm i @cloudflare/puppeteer
- Créer un fichier nommé
html-bucket
de l'unité de stockage R2 :npx wrangler r2 bucket create html-bucket
- existent
wrangler.toml
(ouwrangler.json
) Fichier de configuration pour ajouter le rendu du navigateur et les liens avec le seau R2 :# wrangler.toml compatibility_flags = ["nodejs_compat"] [browser] binding = "MY_BROWSER" [[r2_buckets]] binding = "HTML_BUCKET" bucket_name = "html-bucket"
- Remplacez-le par le script suivant
src/index.ts
Ce script prend l'URL de la requête POST, utilise Puppeteer pour récupérer la page HTML et la stocke dans 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>;
- Déployer un travailleur :
npx wrangler deploy
- Test Worker, par exemple capture
Cloudflare
de cet article de 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"}'
commandant en chef (militaire)
<YOUR_SUBDOMAIN>
Remplacez votreCloudflare Workers
Sous-domaines.
Étape 2 : Création d'une instance AutoRAG et surveillance des index
Remplir le contenu du fichier R2
Après la création du seau, la fonction AutoRAG
Exemple :
- existent
Cloudflare
Dans le panneau de configuration, naviguez vers AI > AutoRAG. - Sélectionnez "Create AutoRAG" et terminez la configuration :
- Sélectionnez la base de connaissances qui contient le
R2
Seau de stockage (dans ce cashtml-bucket
). - Sélectionnez le modèle d'intégration (recommandé par défaut).
- Sélectionnez le LLM utilisé pour générer la réponse (valeur par défaut recommandée).
- Sélectionner ou créer un
AI Gateway
pour contrôler l'utilisation du modèle. - en raison de
AutoRAG
Le nom de l'instance (par exemplemy-rag
). - Sélectionnez ou créez un jeton d'API de service qui autorise l'utilisation de la fonction
AutoRAG
Créez et accédez aux ressources de votre compte.
- Sélectionnez la base de connaissances qui contient le
- Sélectionnez "Créer" pour lancer le
AutoRAG
Exemple.
Après la création, leAutoRAG
créera automatiquement un Vectorize
et commencer à indexer les données. Il est possible de créer une base de données dans le AutoRAG
pour visualiser la progression de l'indexation. La durée de l'indexation dépend du nombre et du type de fichiers contenus dans la source de données.

Étape 3 : Test et intégration dans l'application
Une fois l'indexation terminée, l'interrogation peut commencer. L'indexation peut être effectuée dans la base de données AutoRAG
instance Terrain de jeux Dans les onglets, posez des questions basées sur le contenu téléchargé, par exemple "Qu'est-ce que l'AutoRAG ?
Lorsque le test est satisfaisant, le AutoRAG
directement dans l'application. Si vous utilisez l'application Cloudflare Workers
Créer des applications qui peuvent être appelées directement par le biais des liens d'IA AutoRAG
: :
existent wrangler.toml
Ajouter la reliure :
# wrangler.toml
[ai]
binding = "AI"
Ensuite, dans le code du travailleur, appelez aiSearch()
(pour obtenir la réponse générée par l'IA) ou la méthode Search()
(pour obtenir une liste de résultats de recherche uniquement) :
// 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 });
}
}
}
Note : L'exemple de code Worker ci-dessus est basé sur l'intégration générique des liens AI et des fonctionnalités RAG, en particulier AutoRAG
Pour l'invocation de la liaison, veuillez vous référer à Cloudflare
Documentation officielle pour l'utilisation la plus récente et la plus précise.
Pour plus de détails sur l'intégration, consultez AutoRAG
Utiliser AutoRAG" de l'exemple ou se référer à la documentation du développeur.
Importance stratégique et valeur pour le développeur
AutoRAG
Ce lancement marque l'entrée en vigueur de l'accord de libre-échange entre l'Union européenne et l'Union européenne. Cloudflare
Approfondir l'intégration des capacités d'IA sur sa plateforme de développement. En intégrant des éléments clés du pipeline RAG (R2
, Vectorize
, Workers AI
, AI Gateway
) encapsulé dans un service hébergé.Cloudflare
Réduit considérablement les obstacles qui empêchent les développeurs de créer des applications intelligentes à partir de leurs propres données.
Pour les développeursAutoRAG
La principale valeur de lacommoditéIl élimine le fardeau de la configuration manuelle et de la maintenance d'une infrastructure RAG complexe. Elle élimine le fardeau de la configuration et de la maintenance manuelles d'une infrastructure RAG complexe et convient particulièrement aux équipes qui ont besoin de prototyper rapidement ou qui ne disposent pas de ressources MLOps dédiées. Par rapport à la construction de votre propre RAG, il s'agit d'un compromis : sacrifier une partie du contrôle sous-jacent et de la flexibilité de personnalisation pour un développement plus rapide et une réduction des frais généraux de gestion.
En même temps, cela reflète la Cloudflare
Une extension de la stratégie de plateforme : fournir des services de calcul, de stockage et d'IA de plus en plus complets à la périphérie de son réseau mondial, formant un écosystème étroitement intégré. Les développeurs utilisent AutoRAG
Une intégration plus profonde Cloudflare
qui peut apporter une certaine souplesse dans la mise en œuvre de laVerrouillage des fournisseursmais aussi grâce à l'intégration optimisée des services au sein de l'écologie.
Pendant la période de test public, leAutoRAG
lancement gratuitmais les opérations de calcul telles que l'indexation, la recherche et l'amélioration consomment de l'argent. Workers AI
répondre en chantant Vectorize
L'utilisation de services sous-jacents tels que le développeur doit se préoccuper de ces coûts associés. Actuellement, chaque compte est limité à la création de 10 AutoRAG Chacune de ces instances gère jusqu'à 100 000 documentsCes restrictions peuvent être modifiées à l'avenir.
Feuille de route pour le développement futur
Cloudflare
indiquer AutoRAG
continuera à se développer, avec des plans pour introduire plus de fonctionnalités en 2025, par exemple :
- Plus d'intégration des sources de données : en dehors de
R2
Le plan prend en charge l'analyse directe des URL des sites web (en utilisant la technologie de rendu des navigateurs) et l'accès aux informations suivantesCloudflare D1
et d'autres sources de données structurées. - Améliorer la qualité de la réponse : Explorez les techniques intégrées telles que le reranking et le chunking récursif pour améliorer la pertinence et la qualité des réponses générées.
AutoRAG
L'orientation du développement sera continuellement ajustée en fonction des réactions des utilisateurs et des scénarios d'application.
Expérience instantanée
droit AutoRAG
Les développeurs intéressés peuvent visiter le site Cloudflare
La section AI > AutoRAG du panneau de contrôle pour commencer à créer et à tester. Que vous construisiez une expérience de recherche AI, un assistant de connaissance interne ou que vous essayiez simplement une application LLM.AutoRAG
Tous deux permettent de faire la différence dans le domaine de l'éducation et de la formation. Cloudflare
Un moyen de lancer rapidement un projet RAG sur un réseau mondial. Des informations plus détaillées peuvent être trouvées dans le Documentation pour les développeurs. Entre-temps, la version officielle de la API de rendu du navigateur Également intéressant.
© déclaration de droits d'auteur
L'article est protégé par le droit d'auteur et ne doit pas être reproduit sans autorisation.
Articles connexes
Pas de commentaires...