Cloudflare запускает AutoRAG: управляемый сервис RAG упрощает интеграцию приложений искусственного интеллекта
Cloudflare
Недавно было объявлено о запуске AutoRAG
Открытая бета-версия сервиса. Этот полностью хостинговый сервис Retrieval-Augmented Generation (RAG) является первым в своем роде в мире. RAGТехнология RAG повышает точность ответов ИИ, получая информацию из данных, принадлежащих разработчику, и передавая ее в большую языковую модель (LLM) для создания более надежных, основанных на фактах ответов.
Построение конвейера RAG для многих разработчиков часто оказывается утомительной задачей. Она требует интеграции множества инструментов и сервисов, таких как хранилища данных, векторные базы данных, встроенные модели, большие языковые модели, а также пользовательская логика индексирования, поиска и генерации. Много "сшивок" требуется только для того, чтобы начать проект, а последующее сопровождение еще сложнее. Когда данные менялись, их приходилось вручную переиндексировать и генерировать векторы встраивания, чтобы система оставалась актуальной и работоспособной. Ожидаемый опыт "задай вопрос и получи интеллектуальный ответ" часто превращается в сложную систему хрупких интеграций, "клеящегося" кода и постоянного обслуживания.
AutoRAG
Цель состоит в том, чтобы устранить эту сложность. Всего за несколько кликов разработчики получают сквозной полностью управляемый конвейер RAG. Сервис охватывает все, начиная с доступа к данным, автоматизированной разбивки на части и встраивания, и заканчивая хранением векторов в Cloudflare
(используется в форме номинального выражения) Vectorize
в базе данных, а затем выполнять семантический поиск и использовать Workers AI
Весь процесс создания высококачественного ответа.AutoRAG
Источники данных постоянно отслеживаются и индексируются на предмет обновлений в фоновом режиме, что позволяет автоматически обновлять приложения ИИ без вмешательства человека. Такая абстракция позволяет разработчикам сосредоточиться на создании Cloudflare
создавать более интеллектуальные и быстрые приложения на платформе разработки
Значение приложений RAG
Большие языковые модели (такие, как представленные в Meta Llama 3.3
) являются мощными, но их знания ограничены учебными данными. Когда их просят предоставить новую, собственную или специфическую для данной области информацию, они часто не могут дать точные ответы. Этому можно способствовать, предоставляя соответствующую информацию с помощью системных подсказок, но это увеличивает размер вводимых данных и ограничивается длиной контекстного окна. Другой подход заключается в точной настройке модели, но это дорого и требует постоянного переобучения, чтобы успевать за обновлением информации.
RAG извлекает релевантную информацию из указанного источника данных на момент запроса, объединяет ее с введенным пользователем запросом, а затем предоставляет их LLM для формирования ответа. Такой подход позволяет LLM основывать свой ответ на данных, предоставленных разработчиком, обеспечивая точность и актуальность информации. В результате RAG хорошо подходит для создания управляемых искусственным интеллектом роботов для обслуживания клиентов, внутренних помощников по базам знаний, семантического поиска по документам и других сценариев применения, требующих постоянно обновляемых источников информации. По сравнению с тонкой настройкой, RAG более экономичен и гибок в работе с динамически обновляемыми данными.

Объяснение механизма работы AutoRAG
AutoRAG
использовать Cloudflare
Существующие компоненты платформы для разработчиков автоматически настраивают конвейер RAG для пользователя. Разработчикам не нужно писать собственный код для объединения Workers AI
, иVectorize
ответить пением AI Gateway
и другие услуги, просто создайте AutoRAG
экземпляр и укажите ему на источник данных (например, на R2
Ведро для хранения) достаточно.
AutoRAG
В основе этого лежат два процесса:Индексирование ответить пением Запрос.
- индексирование это асинхронный процесс, работающий в фоновом режиме. Он запускается в
AutoRAG
Экземпляры запускаются сразу после создания и работают в автоматическом режиме по кругу, обрабатывая новые или обновленные файлы после завершения каждого задания. В процессе индексирования контент преобразуется в векторы, оптимизированные для семантического поиска. - проконсультироваться (с документом и т.д.) это синхронизированный процесс, запускаемый пользователем, отправившим поисковый запрос.
AutoRAG
При получении запроса из базы данных векторов извлекается наиболее релевантный контент, и на основе этого контента и LLM генерируется ответ с учетом контекста.
Объяснение процесса индексирования
Когда источник данных подключен, на экране появляетсяAutoRAG
Следующие шаги выполняются автоматически для извлечения, преобразования и хранения данных в виде векторов, оптимизированных для семантического поиска при последующих запросах:
- Извлечение файлов из источников данных:
AutoRAG
Чтение файлов непосредственно из сконфигурированных источников данных. В настоящее время поддерживает использованиеCloudflare R2
Интеграция для работы с документами в форматах PDF, изображений, текста, HTML, CSV и многих других. - Преобразование уцененных материалов: пользоваться
Workers AI
Функция преобразования Markdown конвертирует все файлы в структурированный формат Markdown, обеспечивая согласованность различных типов файлов. Для файлов изображений используется функцияWorkers AI
Объект обнаруживается, а затем его содержимое описывается в виде текста в формате Markdown путем визуально-вербального преобразования. - Чанкинг: Извлеченный текст разбивается на более мелкие фрагменты, чтобы улучшить детализацию поиска.
- Встраивание: В каждом текстовом блоке используется
Workers AI
Модель встраивания обрабатывается для преобразования содержимого в векторное представление. - Векторное хранение: Сгенерированные векторы вместе с метаданными, такими как местоположение источника, имя файла и т. д., сохраняются в автоматически создаваемом
Cloudflare Vectorize
В базе данных.

Подробности процесса запроса
Когда конечный пользователь инициирует запрос, вAutoRAG
Будет координировать следующие операции:
- Получение запросов: Работа с запросами начинается с
AutoRAG
Конечная точка AI Search или Search API для отправки запроса. - Перезапись запросов (необязательно):
AutoRAG
Предоставляет возможность использоватьWorkers AI
LLM переписывает исходный запрос, преобразуя его в более эффективный поисковый запрос, чтобы улучшить качество поиска. - Встраивание запросов: Переписанный (или оригинальный) запрос преобразуется в вектор с помощью той же модели, что и при встраивании данных, чтобы можно было сравнивать сходство с хранящимися векторными данными.
- Векторизация Векторный поиск: Векторы запросов согласуются с
AutoRAG
связанныйVectorize
В базе данных производится поиск наиболее подходящих векторов. - Метаданные и поиск по содержанию:
Vectorize
Возвращает наиболее релевантные блоки текста и их метаданные. В то же время список наиболее релевантных текстовых блоков и их метаданных из спискаR2
Соответствующий необработанный контент извлекается из ведра хранения. Эта информация передается в модель генерации текста. - Генерация ответов:
Workers AI
Модель генерации текста использует полученный контент и исходный запрос пользователя для создания окончательного ответа.
В итоге вы получаете точный и актуальный ответ, управляемый искусственным интеллектом и основанный на частных данных пользователя.

Практическое занятие: быстрое создание приложений RAG с помощью API рендеринга браузера
Как правило, стартап AutoRAG
Просто укажите его на существующий R2
Хранилище Bucket. Но что делать, если источник контента - динамическая веб-страница, которую нужно отрендерить, прежде чем ее можно будет извлечь?Cloudflare
предлагает API рендеринга браузера (уже официально доступный) решает эту проблему. API позволяет разработчикам программно управлять экземплярами безголовых браузеров для выполнения таких распространенных действий, как просмотр HTML-контента, создание скриншотов, генерация PDF-файлов и т. д.
В следующих шагах описано, как использовать Browser Rendering API
Перехват содержимого веб-сайта, депонирование R2
и подключите его к AutoRAG
для обеспечения функциональности вопросов и ответов на основе содержимого сайта.
Шаг 1: Создайте рабочий модуль для захвата веб-страниц и загрузки их на R2
Сначала создайте Cloudflare Worker
Используйте Puppeteer
получает доступ к указанному URL, отображает страницу и сохраняет ее полное HTML-содержимое в файле R2
Ведро для хранения. Если уже существует R2
Ведро, этот шаг можно пропустить.
- Инициализируйте новый рабочий проект (например.
browser-r2-worker
):npm create cloudflare@latest browser-r2-worker
опция
Hello World Starter
(математика) родWorker only
мирTypeScript
. - монтаж
@cloudflare/puppeteer
::npm i @cloudflare/puppeteer
- Создайте файл с именем
html-bucket
ведро хранения R2:npx wrangler r2 bucket create html-bucket
- существовать
wrangler.toml
(илиwrangler.json
) Файл конфигурации для добавления привязок для рендеринга браузера и R2 bucket:# wrangler.toml compatibility_flags = ["nodejs_compat"] [browser] binding = "MY_BROWSER" [[r2_buckets]] binding = "HTML_BUCKET" bucket_name = "html-bucket"
- Замените его следующим скриптом
src/index.ts
Этот скрипт получает URL из POST-запроса, использует Puppeteer для получения HTML-страницы и сохраняет ее в 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>;
- Развертывание рабочего:
npx wrangler deploy
- Рабочий-испытатель, например, захват
Cloudflare
этой записи в блоге: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"}'
главнокомандующий (военный)
<YOUR_SUBDOMAIN>
Замените свойCloudflare Workers
Субдомены.
Шаг 2: Создание экземпляра AutoRAG и мониторинг индексов
Заполните содержимое R2
После того как ведро будет создано, на экране появится AutoRAG
Пример:
- существовать
Cloudflare
На панели управления перейдите в раздел AI > AutoRAG. - Выберите "Создать AutoRAG" и завершите настройку:
- Выберите базу знаний, которая содержит
R2
Ведро для хранения (в данном случаеhtml-bucket
). - Выберите модель встраивания (рекомендуется по умолчанию).
- Выберите LLM, используемый для генерации ответа (рекомендуется по умолчанию).
- Выберите или создайте
AI Gateway
чтобы следить за использованием модели. - из-за
AutoRAG
Именование экземпляров (например.my-rag
). - Выберите или создайте API-токен службы, который авторизует
AutoRAG
Создавайте и получайте доступ к ресурсам в своей учетной записи.
- Выберите базу знаний, которая содержит
- Выберите "Создать", чтобы начать
AutoRAG
Пример.
После созданияAutoRAG
автоматически создаст Vectorize
базу данных и начать индексировать данные. Можно создать базу данных в AutoRAG
s на странице Обзор, чтобы просмотреть ход индексирования. Время индексирования зависит от количества и типа файлов в источнике данных.

Шаг 3: Тестирование и интеграция в приложение
После завершения индексации можно приступать к выполнению запроса. Индексирование может быть выполнено в AutoRAG
экземпляр Игровая площадка На вкладках задавайте вопросы, основанные на загрузке, например, "Что такое AutoRAG?".
Если тест прошел успешно, то AutoRAG
интегрированы непосредственно в приложение. Если вы используете Cloudflare Workers
Создавайте приложения, которые можно вызывать непосредственно через привязку AI AutoRAG
::
существовать wrangler.toml
Добавьте переплет:
# wrangler.toml
[ai]
binding = "AI"
Затем в коде рабочего вызовите aiSearch()
(чтобы получить ответ, сгенерированный искусственным интеллектом) или Search()
(чтобы получить только список результатов поиска):
// 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 });
}
}
}
Примечание: Приведенный выше пример кода Worker основан на общих привязках AI и интеграции функциональности RAG, а именно AutoRAG
Для получения информации о вызове привязки, пожалуйста, обратитесь к Cloudflare
Официальная документация для наиболее точного использования.
Более подробную информацию об интеграции можно найти на сайте AutoRAG
Используйте AutoRAG" в разделе примера или обратитесь к документации разработчика.
Стратегическое значение и ценность для застройщиков
AutoRAG
Запуск знаменует собой Cloudflare
Дальнейшая интеграция возможностей искусственного интеллекта в платформу для разработчиков. Благодаря интеграции ключевых компонентов конвейера RAG (R2
, Vectorize
, Workers AI
, AI Gateway
), инкапсулированный в виде размещенной службы.Cloudflare
Значительно снижает барьеры для разработчиков при создании интеллектуальных приложений на основе собственных данных.
Для разработчиковAutoRAG
Главная ценностьудобствоОн избавляет от необходимости вручную настраивать и поддерживать сложную инфраструктуру RAG. Она избавляет от необходимости вручную настраивать и поддерживать сложную инфраструктуру RAG и особенно подходит для команд, которым нужно быстро создавать прототипы или не хватает выделенных ресурсов MLOps. По сравнению с полным созданием собственной RAG это компромисс: пожертвовать некоторыми базовыми возможностями управления и гибкостью настройки ради ускорения разработки и снижения затрат на управление.
В то же время это отражает Cloudflare
Расширение стратегии платформы: предоставление все более комплексных услуг по вычислению, хранению данных и искусственному интеллекту на границе глобальной сети, образуя тесно интегрированную экосистему. Разработчики используют AutoRAG
Означает более глубокую интеграцию Cloudflare
технологический стек, который может принести определеннуюБлокировка поставщиковно и благодаря оптимизированной интеграции между службами в рамках экологии.
В период публичного тестированияAutoRAG
бесплатный запускНо такие вычислительные операции, как индексирование, поиск и расширение, требуют больших затрат. Workers AI
ответить пением Vectorize
Использование базовых сервисов, таких как разработчик, должно быть связано с этими сопутствующими расходами. В настоящее время каждая учетная запись ограничена созданием 10 AutoRAG экземпляров, каждый из которых обрабатывает до 100 000 документовЭти ограничения могут быть скорректированы в будущем.
Дорожная карта для будущего развития
Cloudflare
указать AutoRAG
будет продолжать расширяться, например, в 2025 году планируется ввести дополнительные функции:
- Больше интеграции источников данных: помимо
R2
План поддерживает прямой разбор URL-адресов веб-сайтов (с использованием технологии рендеринга браузера) и доступ кCloudflare D1
и другие источники структурированных данных. - Улучшить качество ответа: Изучите встроенные методы, такие как реранкинг и рекурсивный кусок, чтобы повысить релевантность и качество генерируемых ответов.
AutoRAG
Направление развития будет постоянно корректироваться в соответствии с отзывами пользователей и сценариями применения.
Мгновенный опыт
справа AutoRAG
Заинтересованные разработчики могут посетить Cloudflare
Раздел AI > AutoRAG на панели управления, чтобы начать создавать и тестировать. Неважно, создаете ли вы поисковую систему с искусственным интеллектом, внутренний ассистент знаний или просто пробуете приложение LLM.AutoRAG
И то, и другое дает возможность изменить жизнь к лучшему. Cloudflare
Способ быстро запустить проект RAG в глобальной сети. Более подробную информацию можно найти в разделе Документация для разработчиков. Между тем, теперь официально доступна API рендеринга браузера Также интересны.
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...