AI Task (HA feature)¶
Feature nativa de HA (release ~2025-Q3) que permite invocar un LLM desde templates / scripts / automations con un schema de output estructurado. Es la base oficial de Q7 (LLM en runtime). Soporta cloud (Anthropic/OpenAI/Google) y local (Ollama). Output JSON validable.
Contexto¶
Antes de AI Task había que armar HTTP requests custom + parsear responses con templates fragiles. AI Task lo encapsula como service action. Es la pieza canónica para automation reasoning runtime.
Contenido¶
Service action¶
- service: ai_task.generate_data
data:
entity_id: ai_task.default
task: "<prompt en lenguaje natural>"
attachments:
- camera.living_snapshot
structure:
person_count: int
mood: string
response_variable: result
Soporta¶
- Plain text task (prompt).
- Attachments: imágenes (snapshots de cámaras), eventualmente más media.
- Structured output vía JSON schema (
structure:field). - Response variable capturable en el resto de la automation.
Backends configurables¶
| Provider | Cost | Latency | Privacy |
|---|---|---|---|
| Anthropic Claude | $$ | 1-3s | Cloud |
| OpenAI GPT | $$ | 1-3s | Cloud |
| Google Gemini | $$ | 1-3s | Cloud |
| OpenRouter | $-$$ | 1-4s | Cloud (multiple) |
| Ollama local | $ (electric) | 2-30s según GPU | Local |
Default entity recommended: configurar en Settings → General → AI Task preferences.
Use cases canónicos (del HA blog)¶
- Image classification: contar gallinas, detectar persona vs paquete.
- High-level decisions: HVAC recommendation given multi-variable context.
- Plan generation: schedule de riego semanal.
- Daily digest: resumen NLP de lo que pasó.
Use cases anti-patrones¶
- Motion → light (overkill, latency prohibitiva).
- Door → notify (trivial, no aporta).
- Cualquier essentials sin determinista en el camino (riesgo de alucinación).
Ver ../analysis/q7-llm-runtime-strategy-v1 para la guía completa.
Cómo se gatea para no quemar tokens¶
- Trigger por
time_pattern(cada N horas), no por evento. - Condition deterministic primero (filtra el 95% de invocaciones).
- Cache de results en
input_textsi el mismo prompt va a re-usarse.
Relaciones¶
- Implementado por: home-assistant (release 2025-Q3, ver ../sources/ha-ai-2025-09).
- Aplicado en: ../analysis/q7-llm-runtime-strategy-v1.
- Trigger opcional desde: cualquier automation o template entity.
Citas¶
-
"AI Tasks enable straightforward AI integration into templates, scripts, and automations without complex coding" — ../sources/ha-ai-2025-09.
Abierto / gaps¶
- ¿AI Task soporta tool use / function calling? El blog 2025-09 no lo menciona explícito; sería natural en próximos releases.
- Patrón de cost tracking (Prometheus metric de tokens consumed).
- Templates de tasks reusables (gap: blueprints AI Task compartibles).