Jetzt abonnieren, um Benachrichtigungen über neue Beiträge zu erhalten:

Workers AI: GPU-gestützte Serverless-Inferenz im globalen Netzwerk von Cloudflare

2023-09-27

Lesezeit: 8 Min.
Dieser Beitrag ist auch auf English, Français, 日本語, 한국어, Español, und 简体中文 verfügbar.

Wenn Sie auch nur im Entferntesten mit Entwicklern zu tun haben, ist es fast unmöglich, sich den Auswirkungen der jüngsten KI-Entwicklungen auf das Ökosystem zu entziehen. Ganz gleich, ob Sie KI zur Produktivitätssteigerung in Ihrem Workflow einsetzen oder Ihren Nutzern KI-basierte Funktionen zur Verfügung stellen – KI ist allgegenwärtig. Zurzeit liegt ein enorm starker Fokus auf Verbesserungen im Bereich KI und wir sind sehr gespannt auf die Chancen, die sich dadurch in Zukunft noch eröffnen werden. Doch das reicht uns noch nicht.

Vor noch nicht allzu langer Zeit musste man sich mit maschinellem Lernen auskennen und die dafür benötigte Infrastruktur verwalten können, wenn man sich KI zunutze machen wollte.

Als Entwicklerplattform mit mehr als einer Million aktiver Nutzer glauben wir, dass es noch sehr viel unausgeschöpftes Potenzial gibt. Deshalb werden wir KI künftig auf neue Art und Weise bereitstellen. Viele der aktuellen Lösungen sind zwar leistungsstark, beruhen aber auf geschlossenen, firmeneigenen Modellen und erfüllen nicht die von Entwicklungsteams und Nutzern verlangten Datenschutzanforderungen. Alternativ dazu entstehen in der Open-Source-Szene massenhaft leistungsstarke Modelle, doch diese sind einfach nicht zugänglich genug. Stellen Sie sich vor, Sie könnten ein Modell mit Ihrem Quellcode ausführen, wo auch immer dieses gehostet wird, und müssten niemals nach GPU suchen oder sich um die Einrichtung der zugrundeliegenden Infrastruktur kümmern.

In diesem Kontext freuen wir uns, Workers AI auf den Markt bringen zu können – eine As a Service-Plattform für KI-Inferenz, mit der Entwicklungsteams aufbauend auf unserem globalen GPU-Netzwerk KI-Modelle mit nur wenigen Zeilen Quellcode ausführen können. Unsere Lösung ist offen und zugänglich, datenschutzfreundlich, nutzt Serverless-Technologie, läuft in der Nähe Ihrer Nutzer, weist eine nutzungsabhängige Preisgestaltung auf und ist von vornherein für eine erstklassige Entwicklererfahrung konzipiert.

Workers AI – damit Inferenz einfach funktioniert

Wir bringen Workers AI auf den Markt, um allen Entwicklungsteams KI-Inferenz zur Verfügung zu stellen. Das kann nur gelingen, wenn eine solche Lösung direkt funktioniert. Doch wie lässt sich dafür sorgen?

  • Das Herzstück ist die richtige Infrastruktur, und zwar unser GPU-Netzwerk von Weltklasse.

  • Wir bieten Standardmodelle an, die sich nahtlos in unsere Infrastruktur einfügen.

  • Diese stellen wir so bereit, dass sie für Entwicklungsteams angenehm zu nutzen sind. Entwickler sollten in der Lage sein, ihre erste Workers AI-Anwendung innerhalb weniger Minuten zu erstellen und zu sagen: „Wow, das hat ja fast wie von Zauberhand geklappt!“

Was genau ist Workers AI? Es handelt sich um einen weiteren Baustein, den wir unserer Entwicklerplattform hinzufügen. Dieser macht es möglich, bekannte KI-Modelle auf Serverless-arbeitenden GPU über das vertrauenswürdige globale Netzwerk von Cloudflare auszuführen. Als eine der jüngsten Ergänzungen unserer Entwicklerplattform arbeitet die Lösung reibungslos mit Workers und Pages zusammen. Und damit sie auch wirklich gut zugänglich ist, haben wir sie plattformneutral gestaltet. Daher funktioniert sie auch überall sonst und ist über eine REST-API verfügbar.

Vertraute und liebgewonnene Modelle

Wir starten mit einer Auswahl an beliebten Open-Source-Modellen, die eine breite Palette von Inferenzaufgaben abdecken:

  • Textgenerierung (Large Language Model): meta/llama-2-7b-chat-int8

  • Automatische Spracherkennung: openai/whisper

  • Übersetzung: meta/m2m100-1.2

  • Textklassifikation: huggingface/distilbert-sst-2-int8

  • Bildklassifizierung: microsoft/resnet-50

  • Einbettungen: baai/bge-base-en-v1.5

Sie können alle verfügbaren Modelle in Ihrem Cloudflare-Dashboard durchsehen. Bald werden Sie auch die Möglichkeit haben, Protokolle und Analysen für die einzelnen Modelle einzusehen.

Und das ist erst der Anfang. Wir haben noch große Pläne. Nach der Einführung werden wir auf Grundlage des Feedbacks aus der Community weiter expandieren. Noch aufregender: Um unseren Katalog von Null auf Hundert zu bringen, kündigen wir eine Partnerschaft mit Hugging Face an, einer führenden KI-Community samt Hub. Die Partnerschaft ist vielschichtig und Sie können sich an dieser Stelle eingehender darüber informieren. In jedem Fall werden Sie bald einen Teil des Hugging Face-Katalogs direkt in Workers AI durchsuchen und ausführen können.

Zugänglich für alle

Unsere Entwicklerplattform hat unter anderem die Aufgabe, alle von Teams zur Erstellung der Anwendungen ihrer Träume benötigten Bausteine bereitzustellen. Ihnen die richtigen Bausteine zugänglich zu machen, ist jedoch nur ein Teilaspekt. Bei der Entwicklung geht es darum, diese Einzelbestandteile zu einer Applikation zusammenzufügen. Unser Ziel ist es, ihnen die Erfüllung dieser Aufgabe so leicht wie möglich zu machen.

Damit Sie Workers AI unabhängig von Ihrem Einstiegspunkt problemlos verwenden können, wollten wir den Zugriff über Workers oder Pages ermöglichen, um die Nutzung innerhalb des Cloudflare-Ökosystems zu vereinfachen. Auch ein Zugriff über REST-API soll ermöglicht werden, für den Fall, dass Sie Workers AI mit Ihrem aktuellen Stack nutzen möchten.

Hier ist ein kurzes CURL-Beispiel, bei dem ein Text vom Englischen ins Französische übersetzt wird:

Und so sieht die Antwort aus:

curl https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/run/@cf/meta/m2m100-1.2b \
-H "Authorization: Bearer {API_TOKEN}" \
	-d '{ "text": "I'll have an order of the moule frites", "target_lang": "french" }'

Dies kann mit jedem Stack und überall verwendet werden – mit Ihr bevorzugtes Jamstack-Framework, Python und Django/Flask, Node.js, Ruby on Rails … Die Möglichkeiten sind endlos. Sie brauchen dann nur noch die Implementierung vorzunehmen.

{
  "result": {
    "answer": "Je vais commander des moules frites"
  },
  "success": true,
  "errors":[],
  "messages":[]
}

Geschaffen für Entwicklungsteams

Die Erfahrung der Entwickler ist uns sehr wichtig. Ein Großteil dieses Beitrags beschäftigt sich mit diesem Thema. Wir wollen Dinge anbieten, die sofort einsatzbereit sind, und beliebte Modelle bereitstellen, die einfach funktionieren. Unser Ziel ist es, für alle zugänglich zu sein – unabhängig davon, ob die Entwicklung und Implementierung bei Cloudflare oder anderswo erfolgt. Aber es geht noch um mehr als das: Der Weg bis zur Produktionsreife sollte schnell zurückgelegt werden können und sich angenehm gestalten.

Wir wollen anhand eines weiteren Beispiels zeigen, wie leicht die Benutzung ist. Wir werden Llama 2, ein beliebtes, quellofenes Large Language Model von Meta, in einem Worker betreiben.

Wir gehen davon aus, dass Sie bereits über einige der Grundlagen verfügen (Cloudflare-Konto, Node, NPM usw.). Sollte das nicht der Fall sein, hilft Ihnen diese Anleitung bei der Einrichtung weiter.

1. Workers-Projekt erstellen

Erstellen Sie ein neues Projekt namens workers-ai, indem Sie Folgendes ausführen:

Beantworten Sie beim Einrichten Ihres workers-ai-Workers die Setup-Fragen wie folgt:

$ npm create cloudflare@latest
  • Geben Sie workers-ai als Anwendungsnamen ein

  • Wählen Sie das Hello World-Script als Art der Anwendung aus

  • Wählen Sie Ja bei der Verwendung von TypeScript aus

  • Wählen Sie Ja bei der Verwendung von Git aus

  • Wählen Sie Nein bei Implementierung aus

Rufen Sie abschließend Ihr neues Anwendungsverzeichnis auf:

2. Workers AI mit Ihrem Worker verbinden

cd workers-ai

Erstellen Sie eine Workers AI-Bindung, mit der Ihr Worker auf den Workers AI-Dienst zugreifen kann, ohne selbst einen API-Schlüssel verwalten zu müssen.

Um Workers AI an Ihren Worker zu binden, fügen Sie am Ende der Datei wrangler.toml Folgendes hinzu:

Sie können Workers AI auch an eine Pages-Funktion binden. Weitere Informationen dazu finden Sie unter „Functions Bindings“.

[ai]
binding = "AI" #available in your worker via env.AI

3. Die Workers AI Client-Bibliothek installieren

4. Eine Inferenzaufgabe in Ihrem Worker ausführen

npm install @cloudflare/ai

Aktualisieren Sie die Datei source/index.ts mit dem folgenden Code:

5. Lokal mit Wrangler entwickeln

import { Ai } from '@cloudflare/ai'
export default {
  async fetch(request, env) {
    const ai = new Ai(env.AI);
    const input = { prompt: "What's the origin of the phrase 'Hello, World'" };
    const output = await ai.run('@cf/meta/llama-2-7b-chat-int8', input );
    return new Response(JSON.stringify(output));
  },
};

Wenn Sie sich in Ihrem Projektverzeichnis befinden, testen Sie Workers AI lokal, indem Sie Folgendes ausführen:

Hinweis: Diese Modelle laufen derzeit nur auf dem Cloudflare-GPU-Netzwerk (und nicht lokal). Daher ist die Einstellung --remote oben ein Muss und Sie werden an dieser Stelle aufgefordert, sich anzumelden.

$ npx wrangler dev --remote

Wrangler gibt Ihnen eine URL aus (höchstwahrscheinlich localhost:8787). Wenn Sie diese URL aufrufen, sehen Sie eine Antwort wie diese:

6. Ihren Worker implementieren

{
  "response": "Hello, World is a common phrase used to test the output of a computer program, particularly in the early stages of programming. The phrase "Hello, World!" is often the first program that a beginner learns to write, and it is included in many programming language tutorials and textbooks as a way to introduce basic programming concepts. The origin of the phrase "Hello, World!" as a programming test is unclear, but it is believed to have originated in the 1970s. One of the earliest known references to the phrase is in a 1976 book called "The C Programming Language" by Brian Kernighan and Dennis Ritchie, which is considered one of the most influential books on the development of the C programming language.
}

Implementieren Sie zum Abschluss Ihren Worker, damit Ihr Projekt über das Internet zugänglich ist:

Das war es auch schon. Es dauert nur wenige Minuten, eine KI bereitzustellen. Das ist natürlich ein einfaches Beispiel. Doch es zeigt, wie leicht Workers AI in jedem Projekt ausgeführt werden kann.

$ npx wrangler deploy
# Outputs: https://workers-ai.<YOUR_SUBDOMAIN>.workers.dev

Datenschutz als Standard

Bei der Gründung von Cloudflare beruhte unser Wertversprechen auf drei Säulen: höhere Sicherheit, Zuverlässigkeit und Performance. Im Lauf der Zeit haben wir erkannt, dass ein besseres Internet auch ein Internet ist, in dem Daten immer geschützt sind. Und beim Aufbau dieses Internets wollen wir mitwirken.

Deshalb ist Datenschutz bei Workers AI Standard. Wir trainieren weder Large Language Models (LLM) noch unsere anderen Modelle mit Ihren Daten oder Unterhaltungen, und unsere Modelle lernen nicht aus Ihrem Nutzungsverhalten. Sie können Workers AI sowohl im privaten als auch im geschäftlichen Umfeld verwenden, ohne ein Datenleck befürchten zu müssen. Andere Provider bieten diese grundlegende Funktion nur für die Enterprise-Version an. Demgegenüber haben wir sie so integriert, dass sie jederman zur Verfügung steht.

Wir freuen uns, in Zukunft die Datenlokalisierung unterstützen zu können. Dazu haben wir einen ehrgeizigen GPU-Einführungsplan: Wir starten heute mit sieben Standorten, Ende 2023 werde es etwa hundert sein und Ende 2024 werden wir dies fast überall anbieten können. Letztendlich werden die Entwicklungsteams so in die Lage versetzt, weiterhin großartige Funktionen bereitstellen und gleichzeitig die Anforderungen der Endnutzer an die Datenlokalisierung erfüllen zu können.

Die Stärken der Plattform

Vektordatenbank – Vectorize

Bei Workers AI dreht sich alles um die möglichst unkomplizierte Nutzung von Inferenz, doch manchmal ist diese nur eine von mehreren Komponenten. LLM werden mit einem festen Datensatz trainiert. Es handelt sich dabei um eine Momentaufnahme zu einem bestimmten Zeitpunkt in der Vergangenheit und ihnen fehlt der Bezug zu Ihrer Geschäftstätigkeit oder Ihrem Anwendungsfall. Wenn Sie einen Prompt übermitteln, können Informationen, die speziell auf Sie zugeschnitten sind, die Qualität der Ergebnisse verbessern und sie nützlicher und relevanter machen. Aus diesem Grund führen wir auch unsere Vektordatenbank Vectorize ein, die reibungslos mit Workers AI zusammenarbeitet. Hier ein kurzer Überblick darüber, wie Sie Workers AI und Vectorize zusammen verwenden könnten.

Beispiel: Verwenden Sie Ihre Daten (Knowledge Base), um einem LLM zusätzlichen Kontext zu liefern, wenn Nutzer mit ihm chatten.

  1. Erste Einbettungen erzeugen: Lassen Sie Ihre Daten mithilfe eines Einbettungsmodells durch Workers AI laufen. Die Ausgabe sind Einbettungen, bei denen es sich um numerische Repräsentationen dieser Wörter handelt.

  2. Diese Einbettungen in Vectorize einfügen: So wird die Vektordatenbank mit Ihren Daten gefüttert, damit wir später Einbettungen abrufen können, die der Abfrage Ihres Nutzers ähneln.

  3. Einbettungen aus Fragen der Nutzer erzeugen: Wenn Nutzer eine Frage an Ihre KI-Anwendung senden, lassen Sie diese Frage zunächst mithilfe eines Einbettungsmodells durch Workers AI laufen.

  4. Kontext von Vectorize erhalten: Verwenden Sie diese Einbettung, um eine Abfrage bei Vectorize durchzuführen. Dies sollte zur Ausgabe von Einbettungen führen, die der Frage Ihres Nutzers ähneln.

  5. Kontextabhängigen Prompt erstellen: Nehmen Sie nun den Originaltext, der mit diesen Einbettungen verbunden ist, und erstellen Sie einen neuen Prompt, der den Text aus der Vektorsuche mit der Originalfrage kombiniert.

  6. Den Prompt ausführen: Lassen Sie diesen Prompt mit einem LLM durch Workers AI laufen, um Ihr endgültiges Ergebnis zu erhalten.

AI Gateway

Diese Funktion deckt einen anspruchsvolleren Anwendungsfall ab. Andererseits können Sie, wenn Sie Modelle anderswo betreiben, aber mehr aus der Erfahrung machen möchten, diese APIs über unser AI Gateway laufen lassen. Das erlaubt es Ihnen, Funktionen wie Caching, Durchsatzbegrenzung, Analysen und Protokollierung zu nutzen. Diese können zur Absicherung Ihres Endpunkts, zur Überwachung und Optimierung der Kosten und zum Schutz vor Datenlecks eingesetzt werden. Mehr zu AI Gateway erfahren Sie hier.

Jetzt loslegen

Probieren Sie es selbst aus und erzählen Sie uns, was Sie davon halten. Heute starten wir Workers AI als Open Beta-Version für alle Workers-Tarifoptionen – sowohl die kostenlosen als auch die kostenpflichtigen. Allerdings ist es noch sehr früh…

Warnung: Es handelt sich um eine frühe Beta-Version

Die Nutzung wird derzeit nicht für Anwendungen in der Produktion empfohlen. Die Begrenzungen und Zugangsmodalitäten werden unter Umständen noch angepasst.

Beschränkungen

Wir starten zunächst mit Begrenzungen auf Modellbasis.

  • @cf/meta/llama-2-7b-chat-int8: 50 reqs/min weltweit

In der Dokumentation finden Sie eine vollständige Übersicht über unsere Begrenzungen.

Tarifoptionen

Heute haben wir nur eine kleine Vorschau veröffentlicht, um Ihnen einen Vorgeschmack auf das kommende Produkt zu geben (wir konnten einfach nicht widerstehen). Doch wir freuen uns schon darauf, Ihnen die Vollversion von Workers AI bereitzustellen.

Uns ist klar, dass Sie vor der Entwicklung eines Produkts immer wissen möchten, was dabei für Kosten auf Sie zukommen – umso mehr, als diese bei KI sehr leicht aus dem Ruder laufen können. Deshalb möchten wir Ihnen die zukünftigen Preise für Workers AI bereits jetzt offenlegen.

Wir werden nicht gleich am ersten Tag Gebühren in Rechnung stellen. Doch wir geben bekannt, wie unsere Preise voraussichtlich aussehen werden.

Nutzer werden bei der Ausführung von Workers AI zwischen zwei Möglichkeiten wählen können:

  • Regular Twitch Neurons (RTN) – Läuft überall dort, wo Kapazität vorhanden ist, zu 0,01 $ / 1.000 Neuronen

  • Fast Twitch Neurons (FTN) – Läuft am nächstgelegenen Standort der Nutzer für 1,25 $ / 1.000 Neuronen

Sie fragen sich vielleicht: Was ist ein Neuron?

Neuronen sind eine Möglichkeit, den Output einer KI zu messen. Die Zahl der Neuronen skaliert immer herunter auf Null (wenn Sie keine Nutzung erhalten, werden Ihnen 0 Neuronen berechnet). Um Ihnen ein Gefühl dafür zu geben, was mit 1.000 Neuronen möglich ist: Sie können 130 LLM-Antworten, 830 Bildklassifizierungen oder 1.250 Einbettungen generieren.

Wir wollen dafür sorgen, dass unsere Kunden nur für das zahlen, was sie tatsächlich nutzen. Sie können den Preis wählen, der am besten zu ihrem Anwendungsfall passt – ganz gleich, ob für sie der Preis oder die Latenz im Vordergrund steht.

Was steht als Nächstes an?

Workers AI steckt noch in den Kinderschuhen. Wir brauchen Ihr Feedback, um die Lösung weiter zu optimieren. Und wir haben noch Spannendes vor.

Mehr Modelle, bitte

Wir starten mit einer soliden Auswahl von Modellen, die einfach funktionieren. Aber wir werden auch noch weitere Modelle auf Grundlage Ihres Feedbacks einführen. Wenn Sie sich ein bestimmtes Modell für Workers AI wünschen, können Sie uns das gern über unseren Discord-Kanal wissen lassen.

Außerdem kündigen wir eine Partnerschaft mit Hugging Face an. Schon bald werden Sie auf einen Teil des Hugging Face-Katalogs zugreifen und diesen direkt von Workers AI aus nutzen können.

Analysen und Beobachtbarkeit

Bis zu diesem Punkt lag unser Fokus vor allem darauf, es Entwicklungsteams wirklich leicht zu machen, leistungsstarke KI-Modelle mit nur wenigen Codezeilen auszuführen. Aber das ist nur ein Teil der Geschichte. Als Nächstes werden wir an Analyse- und Beobachtungsfunktionen arbeiten, um Ihnen Einblicke in Ihre Nutzung, Performance und Ausgaben auf Modellbasis zu geben und Ihnen einen Blick in Ihre Protokolle zu ermöglichen: Für denn Fall, dass Sie etwas genauer nachforschen möchten.

Ein Weg zur globalen GPU-Abdeckung

Unser Ziel ist es, zum besten Ort für Inferenz weltweit zu werden. Deshalb erweitern wir unsere Rechenzentren so schnell wie möglich um GPU.

Abdeckung von 100 Rechenzentren bis Jahresende geplant

Fast vollständige Abdeckung bis Ende 2024 vorgesehen

Wir freuen uns schon auf die von Ihnen entwickelten Produkte. Schauen Sie sich für den Einstieg Dokumentation an.

Wenn Sie Anregungen brauchen, uns Ihr Projekt vorstellen möchten oder eine Frage haben, besuchen Sie gern unseren Discord-Kanal für Entwickler und Entwicklerinnen.

Wir schützen komplette Firmennetzwerke, helfen Kunden dabei, Internetanwendungen effizient zu erstellen, jede Website oder Internetanwendung zu beschleunigen, DDoS-Angriffe abzuwehren, Hacker in Schach zu halten, und unterstützen Sie bei Ihrer Umstellung auf Zero Trust.

Greifen Sie von einem beliebigen Gerät auf 1.1.1.1 zu und nutzen Sie unsere kostenlose App, die Ihr Internet schneller und sicherer macht.

Wenn Sie mehr über unsere Mission, das Internet besser zu machen, erfahren möchten, beginnen Sie hier. Sie möchten sich beruflich neu orientieren? Dann werfen Sie doch einen Blick auf unsere offenen Stellen.
Birthday Week (DE)Cloudflare WorkersAIDeveloper PlatformDatabase (DE)Vectorize (DE)Entwickler

Folgen auf X

Phil Wittig|@pdwittig
Rita Kozlov|@ritakozlov_
Rebecca Weekly|@rebeccalipon
Celso Martinho|@celso
Cloudflare|@cloudflare

Verwandte Beiträge

31. Oktober 2024 um 13:00

Moving Baselime from AWS to Cloudflare: simpler architecture, improved performance, over 80% lower cloud costs

Post-acquisition, we migrated Baselime from AWS to the Cloudflare Developer Platform and in the process, we improved query times, simplified data ingestion, and now handle far more events, all while cutting costs. Here’s how we built a modern, high-performing observability platform on Cloudflare’s network....