Chirp AI Photo Alt Text
Chirp AI Photo Alt Text adds AI-assisted alt text for photos attached to Chirp posts. When a member leaves the alt-text field blank while attaching a photo, an AI vision provider generates a real, one-sentence description instead of forcing the upload to fail.
Features
- Lets a member skip the alt-text field when attaching a photo to a chirp, without weakening accessibility for anyone who doesn't install this module.
- Generates a real, one-sentence AI-written description of the photo itself — not a generic placeholder — using whichever AI Core provider the site has already configured.
- Fails open by design: if no provider is configured, the configured model isn't vision-capable, or the provider call errors, the upload still succeeds. No error is shown to the member; the photo is attached immediately.
- Adds no configuration, fields, or routes of its own. Installing it registers one tagged service that Chirp's own photo gallery submodule discovers automatically.
- Entirely optional at every level. Chirp core, its photo gallery submodule, and User Media Library all have zero dependency on this module — a site can skip installing it entirely and photo uploads keep requiring real, user-supplied alt text exactly as they do today.
Post-Installation
Installing this module adds no config, fields, or routes to configure. There is no settings page for this module specifically.
Go to Configuration » AI » Providers and set a default provider for the "Chat with image vision" operation type. The provider's underlying model must itself be vision-capable — a text-only model will not work, even if the provider integration is listed as supporting this operation type generically. Check your chosen provider's own documentation for which of its models support vision input.
No provider configured, or an unsuitable model, is not an error. Generation simply fails open, and the upload falls back to a placeholder alt text (the original filename) rather than blocking the member from posting.
Once a provider is configured, the effect is invisible to members: leaving the photo's alt-text field blank at compose time is now allowed, and the real description appears automatically moments after the photo is attached, with no extra step on their part.
Additional Requirements
- Chirp and its
chirp_photo_gallerysubmodule (bundled with Chirp core) — defines theAltTextGeneratorInterfaceextension point this module implements. - AI (AI Core) — no specific AI provider module is a hard dependency of this module; whichever provider is configured for the "Chat with image vision" operation type is used at runtime.
- An AI provider module compatible with AI Core, configured with a vision-capable model.
Recommended modules/libraries
Any AI Core provider module that supports the "Chat with image vision" operation type with a vision-capable model.
Similar projects
AI Automators (part of AI Core) can backfill image alt text on a normal Form API-driven image field, and is the right choice for that case. This module exists because Chirp's own photo-upload flow deliberately bypasses Form API entirely (see Chirp's own developer documentation), so the usual "attach an automator rule to the field" pattern has nothing to hook into. This module calls AI Core's provider API directly against the already-saved Media entity instead, specifically to fit that flow — it is not a general-purpose alt-text automator and doesn't attempt to replace AI Automators for other fields or content types.
Supporting this Module
This module is supported by Lisa Harrison (lisa.rae), an individual contributor and long-time member of the Drupal community.
Community Documentation
See this module's own README (in its repository) for the full technical write-up: how the "placeholder, then correct" upload sequencing works, why AI Automators doesn't fit this flow, the exact extension point Chirp's photo gallery submodule exposes, and the test coverage for every fail-open path.
Part of the Chirp ecosystem — see also Chirp, Chirp Moderation, and Chirp AI Moderation.