Cloudflare запускает AutoRAG: управляемый сервис RAG упрощает интеграцию приложений искусственного интеллекта

Новости ИИОпубликовано 5 месяцев назад Круг обмена ИИ
7.6K 00

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 более экономичен и гибок в работе с динамически обновляемыми данными.

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

Объяснение механизма работы AutoRAG

AutoRAG использовать Cloudflare Существующие компоненты платформы для разработчиков автоматически настраивают конвейер RAG для пользователя. Разработчикам не нужно писать собственный код для объединения Workers AI, иVectorize ответить пением AI Gateway и другие услуги, просто создайте AutoRAG экземпляр и укажите ему на источник данных (например, на R2 Ведро для хранения) достаточно.

AutoRAG В основе этого лежат два процесса:Индексирование ответить пением Запрос.

  • индексирование это асинхронный процесс, работающий в фоновом режиме. Он запускается в AutoRAG Экземпляры запускаются сразу после создания и работают в автоматическом режиме по кругу, обрабатывая новые или обновленные файлы после завершения каждого задания. В процессе индексирования контент преобразуется в векторы, оптимизированные для семантического поиска.
  • проконсультироваться (с документом и т.д.) это синхронизированный процесс, запускаемый пользователем, отправившим поисковый запрос.AutoRAG При получении запроса из базы данных векторов извлекается наиболее релевантный контент, и на основе этого контента и LLM генерируется ответ с учетом контекста.

Объяснение процесса индексирования

Когда источник данных подключен, на экране появляетсяAutoRAG Следующие шаги выполняются автоматически для извлечения, преобразования и хранения данных в виде векторов, оптимизированных для семантического поиска при последующих запросах:

  1. Извлечение файлов из источников данных: AutoRAG Чтение файлов непосредственно из сконфигурированных источников данных. В настоящее время поддерживает использование Cloudflare R2 Интеграция для работы с документами в форматах PDF, изображений, текста, HTML, CSV и многих других.
  2. Преобразование уцененных материалов: пользоваться Workers AI Функция преобразования Markdown конвертирует все файлы в структурированный формат Markdown, обеспечивая согласованность различных типов файлов. Для файлов изображений используется функцияWorkers AI Объект обнаруживается, а затем его содержимое описывается в виде текста в формате Markdown путем визуально-вербального преобразования.
  3. Чанкинг: Извлеченный текст разбивается на более мелкие фрагменты, чтобы улучшить детализацию поиска.
  4. Встраивание: В каждом текстовом блоке используется Workers AI Модель встраивания обрабатывается для преобразования содержимого в векторное представление.
  5. Векторное хранение: Сгенерированные векторы вместе с метаданными, такими как местоположение источника, имя файла и т. д., сохраняются в автоматически создаваемом Cloudflare Vectorize В базе данных.
Cloudflare 推出 AutoRAG:托管式 RAG 服务简化 AI 应用集成

Подробности процесса запроса

Когда конечный пользователь инициирует запрос, вAutoRAG Будет координировать следующие операции:

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

В итоге вы получаете точный и актуальный ответ, управляемый искусственным интеллектом и основанный на частных данных пользователя.

Cloudflare 推出 AutoRAG:托管式 RAG 服务简化 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 Ведро, этот шаг можно пропустить.

  1. Инициализируйте новый рабочий проект (например. browser-r2-worker):
    npm create cloudflare@latest browser-r2-worker
    

    опция Hello World Starter(математика) родWorker onlyмир TypeScript.

  2. монтаж @cloudflare/puppeteer::
    npm i @cloudflare/puppeteer
    
  3. Создайте файл с именем html-bucket ведро хранения R2:
    npx wrangler r2 bucket create html-bucket
    
  4. существовать 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"
    
  5. Замените его следующим скриптом 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>;
    
  6. Развертывание рабочего:
    npx wrangler deploy
    
  7. Рабочий-испытатель, например, захват 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 Пример:

  1. существовать Cloudflare На панели управления перейдите в раздел AI > AutoRAG.
  2. Выберите "Создать AutoRAG" и завершите настройку:
    • Выберите базу знаний, которая содержит R2 Ведро для хранения (в данном случае html-bucket).
    • Выберите модель встраивания (рекомендуется по умолчанию).
    • Выберите LLM, используемый для генерации ответа (рекомендуется по умолчанию).
    • Выберите или создайте AI Gateway чтобы следить за использованием модели.
    • из-за AutoRAG Именование экземпляров (например. my-rag).
    • Выберите или создайте API-токен службы, который авторизует AutoRAG Создавайте и получайте доступ к ресурсам в своей учетной записи.
  3. Выберите "Создать", чтобы начать AutoRAG Пример.

После созданияAutoRAG автоматически создаст Vectorize базу данных и начать индексировать данные. Можно создать базу данных в AutoRAG s на странице Обзор, чтобы просмотреть ход индексирования. Время индексирования зависит от количества и типа файлов в источнике данных.

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

Шаг 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 (R2VectorizeWorkers AIAI 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 рендеринга браузера Также интересны.

© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...