Drupal Developer Shares Custom AI Helper Module for Chat Integration
Jo Fitzgerald has released a new Drupal module called AI Helper, aimed at streamlining the integration of chat-based AI functionality using the Drupal AI module. Designed to eliminate repetitive boilerplate code, the module provides a cleaner, more efficient service structure for developers working with AI chat operations.
The AI Helper module organizes the chat request process into three stages: pre-processing, processing, and post-processing. During pre-processing, user input is converted into a structured format required by the `chat()` function, including the creation of `ChatMessage`
and `ChatInput`
objects. The module automatically retrieves the default provider and model, throwing an exception if these are not set.
The processing stage executes the actual AI call using the defined provider and model, while post-processing extracts and returns the normalized AI response as plain text. For flexibility, the module uses an `AiInterface`
to accommodate different types of AI operations, paving the way for future extensions such as `textToImage()`
support.
The main function, `makeAiRequest()`
, consolidates these stages, offering a single entry point for AI chat operations. Common logic has been abstracted into an `AiBase`
class, allowing for scalable and reusable service design.
Developers can access the full source code and contribute to the project via GitHub. For more information and updates, visit https://github.com/jofitz81/ai_helper/tree/bc70b7f7030a2b8943b1e2170d7203cdca5317bd