Modos y funcionalidades de IA de AI-Kit para WordPress
AI‑Kit puede ejecutar cada función desde uno de estos dos orígenes:
- en el dispositivo — las API de IA integradas en Chrome (Gemini Nano) en el navegador del usuario
- backend — su propio backend de AI‑Kit alojado en AWS (plantilla de SAR)
Preferencia de modo
La preferencia global puede ser una de estas:
local-only— solo en el dispositivo, nunca en el backendbackend-fallback— da prioridad al dispositivo y recurre al backend como alternativabackend-only— solo el backend; omite el dispositivo
Estos valores están representados por AiModePreference.
Funciones compatibles
AI‑Kit registra la capacidad de cada función de IA integrada:
promptsummarizerwriterrewriterproofreaderlanguage-detectortranslator
Comprobaciones programáticas de capacidades
Use estas funciones auxiliares cuando necesite tomar una decisión antes de representar una interfaz:
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?) reproduce la lógica de tiempo de ejecución que AI‑Kit usa internamente.
availabilityOptions debe coincidir con las opciones create() de la API de Chrome para la función solicitada (por ejemplo, Translator requiere sourceLanguage y targetLanguage). modeOverride permite forzar temporalmente "local-only", "backend-fallback" o "backend-only" sin modificar la configuración global.
Configuración del backend (cuando está activado)
Cuando se permite el uso del backend, AI‑Kit necesita:
backendTransport:"fetch"o"gatey"
(gateysignifica «usar el transporte firmado de Gatey» cuando Gatey está presente)backendBaseUrl: URL base completa de la API del backend (opción habitual)backendApiName: nombre de la API si el transporte lo necesita
En la mayoría de las instalaciones solo tendrás que configurar backendBaseUrl.
AI‑Kit distingue context: "admin" | "frontend" en las llamadas al backend. Algunas implementaciones pueden exponer prefijos de ruta separados (por ejemplo, /admin/* y /frontend/*) con políticas de seguridad diferentes.
