AI-Kit Modi und Fähigkeiten für WordPress
AI‑Kit kann jedes Feature über zwei Quellen ausführen:
- on-device — Chrome Built-in AI APIs (Gemini Nano) im Browser des Nutzers,
- backend — Ihr eigenes AWS-gehostetes AI-Kit Backend (SAR Vorlage).
Modi Präferenz
Die globale Präferenz ist eine der Optionen:
local-only— nur On-Device, nie Backendbackend-fallback— On-Device bevorzugt, fallback auf Backendbackend-only— nur Backend, On-Device ignoriert
Diese Werte werden durch AiModePreference repräsentiert.
Unterstützte Features
AI‑Kit prüft die Fähigkeit pro eingebauten KI-Feature:
promptsummarizerwriterrewriterproofreaderlanguage-detectortranslator
Programmatic Capability Checks
Nutzen Sie diese Helfer, wenn Sie vor dem Rendern der UI entscheiden müssen:
import { decideCapability, checkOnDeviceAvailability, getMinChromeVersions } from "@smart-cloud/ai-kit-core";
const min = await getMinChromeVersions(); // { prompt: "...", summarizer: "...", ... }
const onDevice = await checkOnDeviceAvailability("writer");
if (onDevice.available) {
// Chrome API is available / downloadable / downloading
}
// For translator you must pass source/target languages to availability()
const translator = await checkOnDeviceAvailability("translator", {
sourceLanguage: "en",
targetLanguage: "de",
});
const decision = await decideCapability("writer");
// Optional overrides:
// - availability options (same shape as Chrome create() options)
// - modeOverride to force local/backend behaviour for this call
const forcedBackend = await decideCapability(
"writer",
undefined,
"backend-only",
);
console.log(decision.source); // "on-device" | "backend" | "none"
console.log(forcedBackend.reason); // detailed string explaining the decision
decideCapability(feature, availabilityOptions?, modeOverride?) spiegelt die Runtime-Logik von AI-Kit intern.
availabilityOptions sollten mit den Chrome API create()-Optionen der jeweiligen Funktion übereinstimmen (Translator benötigt z. B. sourceLanguage und targetLanguage). modeOverride erlaubt temporäres Erzwingen von "local-only", "backend-fallback" oder "backend-only" ohne Änderung der globalen Einstellung.
Backend Konfiguration (falls aktiv)
Für Backend-Nutzung braucht AI-Kit:
backendTransport:"fetch"oder"gatey"(gateynutzt die signierte Transportebene bei aktiviertem Gatey)backendBaseUrl: vollständige Basis-URL der Backend API (typisch)backendApiName: API-Name, falls der Transport ihn braucht
Meist genügt die Konfiguration von backendBaseUrl.
AI-Kit unterscheidet context: "admin" | "frontend" für Backend-Calls. Einige Deployments nutzen getrennte Präfixe (z. B. /admin/* und /frontend/*) mit unterschiedlichen Sicherheitsregeln.
