What a Drupal AI module implementation involves for your team
A Drupal AI module implementation adds generative and search features to a Drupal site, such as field suggestions for editors, semantic search, or a question-answering assistant grounded in your own content. Teams usually take it on when editors ask for help drafting or tagging content, when visitors struggle to find information across a large library, or when leadership wants an AI capability without moving content to a separate product. The decision is whether your own developers and content owners can carry the work, or whether a partner should scope and build it with you.
The work spans more than installing a module. It starts with provider accounts: which model providers are approved, who holds the API keys, where requests are sent, and what data leaves your infrastructure. It continues with configuration decisions about which content fields, search indexes and assistant prompts are in scope, and with access decisions about which roles can run AI actions and which content an assistant may retrieve for a given user. Before any build starts, confirm that the AI module version you plan to use supports your installed Drupal core and PHP versions by checking its current documentation on Drupal.org, since supported combinations change between releases.
Editorial governance is the part most often underestimated. Your team needs written rules for what generated text may be published, who reviews it, how generated content is labeled, and how prompts are changed and tested over time. Ask any partner to show how review steps, logging and rollback will work with your existing workflow, and ask which costs recur after launch, such as provider usage, hosting for search infrastructure, and maintenance of prompts and module updates. A written scope should list each of these items so you can compare an in-house plan with a quote on equal terms.
What the Drupal AI module does, from its documentation
The Drupal AI module is a framework rather than a single feature, so the work splits into a few distinct areas that each need their own decisions. Provider connections sit underneath everything, while field automation, retrieval, assistants and editorial controls sit on top and depend on how the first layer is set up. Confirm the submodules and provider plugins available for your Drupal version before scoping, because they change between releases.
Connecting to AI providers
The module separates the Drupal site from the model providers it calls. Each provider is added through a plugin, and the site stores the credentials and chooses which model handles which task. The decision that matters most here is where requests go: a hosted commercial API, a provider under contract with your organization, or a model running inside your own network. Ask which provider plugins exist for your Drupal version, how keys are stored, and whether prompts and responses are logged outside your infrastructure.
AI Automators for fields
AI Automators generate or fill field values when content is saved or on demand, such as a summary, alt text, a taxonomy suggestion or a meta description. Each automator is configured per content type and field, so the prompt, the model and the trigger all need an owner. The main risk is silent overwriting of editor-written values. Plan which fields may be generated, which must stay manual, and how a rerun behaves when an editor has already changed the content.
AI Search for retrieval
AI Search builds vector indexes over site content so that queries match meaning rather than exact words, and it can supply retrieved passages to a model for retrieval-augmented generation. Embedding model choice, chunking of long content, and index rebuilds after large edits all affect answer quality and cost. Confirm which vector store backends the module supports for your version, and whether restricted content is filtered by the viewing user's permissions before it reaches a prompt.
Assistants and agents
Assistants answer questions or perform guided tasks inside Drupal, usually with a defined set of tools and instructions. Agents go further by choosing among tools across several steps, which widens what can go wrong. Scope each tool narrowly, decide which actions need a human confirmation, and test the assistant against prompts that try to reach content the user cannot see. Confirm which agent features your chosen release ships and which are experimental.
Editorial controls over output
Generated text is a draft until an editor accepts it, and the module's review steps should reflect that. Decide whether AI output passes through Content Moderation, which roles can run generators, and whether generated content is labeled so readers and auditors can tell it apart. Keep a record of which model and prompt produced each value. Confirm with your editorial team how these controls map to your existing approval workflow before the first automator goes live.
Hosted providers or self-hosted models: how the choice changes the build
A hosted provider runs the model and its serving stack on infrastructure you do not operate. In a Drupal build, the AI module calls the provider over HTTPS from your web servers, so the main design work is in credentials, outbound network paths and the contract. Each request sends prompt text and retrieved content to the provider, which makes data handling a procurement question as much as a technical one.
- Credentials: API keys or service accounts are stored in Drupal's configuration or environment, so plan rotation, per-environment keys and restricted scopes before the first build.
- Data residency: Ask in writing which regions process prompts, whether data is stored, for how long, and whether it is used for training.
- Network routing: Outbound traffic must reach the provider's endpoints through your egress rules, proxies and allow lists, and those endpoints can change.
- Logging: Your Drupal logs record requests and errors, while the provider keeps its own logs under its retention terms, so agree on what each party retains.
- Cost and maintenance: Usage is billed per request or token and recurs with traffic, while the provider maintains the model, its versions and uptime.
Before committing, request the provider's data processing terms, retention and training commitments, subprocessor list, and notice period for model deprecation in writing.
Self-hosted models run inside your cloud accounts, data centers or air-gapped networks on hardware you provision and patch. Drupal calls an internal endpoint instead of an external one, so the data never leaves your estate, but you take on the serving stack, capacity planning and model lifecycle. Tools such as Ollama, vLLM or LiteLLM are common in this pattern, and selecting one is a separate evaluation.
- Credentials: Internal endpoints still need authentication, so issue service credentials from your secrets store and restrict which Drupal environments can reach them.
- Data residency: Prompts and outputs stay in infrastructure you control, which simplifies residency questions but puts storage and backup of any logs under your own policies.
- Network routing: Place the model service on a private network segment, decide how Drupal reaches it, and size connections for peak editorial use.
- Logging: You own every log, so define what prompts are captured, how they are redacted and how long they are kept.
- Cost and maintenance: Hardware, accelerators, staff time and upgrades are largely one-time setup plus recurring operations, and you are responsible for keeping the endpoint available.
Before committing, confirm which model licenses permit your intended use, what hardware the model needs at your expected load, and who on your team owns patching and incident response for the endpoint.
Many sites do not choose one model path for everything. Some route low-risk tasks such as alt text suggestions to a hosted service and keep sensitive content or internal search on a self-hosted model. A mixed approach adds a routing layer, separate credentials and two sets of logs, so the decision should be made per use case rather than once for the whole site.
- Classify content first: Mark which fields, workflows and editors will send content to a model, and what each classification allows.
- Route by task: Configure which provider handles each AI Automator or AI Search function, so the policy is visible in configuration.
- Fallback behavior: Decide whether a failed provider call degrades to manual editing, queues the request, or switches to another endpoint, and document that rule.
- Evaluation parity: Test the same prompts against each option, because output quality and format can differ between models.
- Change control: A model swap changes outputs, so plan how it is reviewed and approved in the editorial workflow.
Before committing, ask your team which content types may leave your boundary, who approves changes to routing, and how a model change will be tested on staging first.
How editorial controls keep generated content under review
Generated text in Drupal becomes content that editors publish, so review has to be designed into the workflow before any automator runs. The first decision is where output lands: written directly to a field on the live entity, saved to a new draft revision, or held in a separate review queue. These options carry very different risk. Confirm for the AI module and AI Automators versions you install whether generation overwrites the current revision or creates a new one, and whether an automator can run only when an editor clicks a button. Test each content type with Content Moderation enabled so you can see exactly which state the generated value enters.
Next, separate the roles. Triggering generation, editing the output and accepting it for publication should be different permissions, and only the last should be able to move content to a published state. Map AI-assisted drafts to a review state in your Content Moderation workflow and confirm that automators running on save or on cron cannot bypass those transitions. For disclosure and audit, the core revision log records who saved each revision, but you should confirm whether the AI module also records the provider, model, timestamp or prompt for each generation. Agree the retention period for that data with your compliance team before launch.
Finally, check how generated content interacts with the rest of your publishing setup. If Scheduler is used for timed publishing, a generated draft in a scheduled state could go live without review, so confirm that scheduled transitions respect the review state. The same applies to Workbench Access restrictions and any multilingual workflow. Ask your implementation partner for a written test plan that covers each role, each automator and each publishing path, and rerun it after every module update, because the exact controls depend on the module version and should be confirmed against that version's documentation.
Configuration decisions to settle before the Drupal AI module build
This table lists the choices a team must make before configuring the Drupal AI module, with the options for each and the conditions that favor them. Read each row as a decision with an owner, and settle the rows in order, since provider and credential choices shape the rest.
| Decision | Options | When each option fits | Who should own it |
|---|---|---|---|
| Provider selection and credential ownership | Hosted provider keys held by the client, or a self-hosted model endpoint reached through an internal gateway | Hosted keys suit teams whose data terms are already approved; a self-hosted endpoint suits content that cannot leave your network | CISO or data protection lead, with platform engineering holding the keys |
| Fields and content types that get automation | Limited to low-risk fields such as summaries or alt text, or extended to body copy and taxonomy suggestions | Start with fields where an editor reviews every output before publishing; extend only after review rates are measured | Content owner with the editorial lead |
| Vector store for AI Search | Database-backed storage, or a dedicated vector database such as Qdrant | A dedicated store fits large or frequently updated corpora; smaller, mostly static sites may not need one | Platform engineering with the data architect |
| Where AI Search runs | Same infrastructure as the Drupal site, or a separate cluster with its own network path | Separate hosting fits when retrieval must be isolated from public traffic or sits in a different data zone | Infrastructure lead with the security architect |
| Embedding and chunking approach | Chunk by content entity, by heading section, or by Paragraph, with one embedding model | Section-based chunks suit long guides; entity-level chunks suit short product or news records. Changing the model later usually means re-indexing | Search lead with the content architect |
| Access model for retrieval | Index all published content, or index with per-user or per-role filters applied at query time | Filters are needed whenever drafts, internal pages or restricted groups exist in the same index | Security architect with the Drupal site owner |
| Assistants and agents taking actions | Read-only answers, drafting for human approval, or actions written back to Drupal or other systems | Read-only and drafting modes suit most first releases; write-back needs explicit approval steps and a scoped service account | Business owner of the workflow with the security team |
| Logging and retention of prompts and outputs | Log nothing, log metadata only, or log full prompts and outputs with a set retention period | Full logs help debugging but may hold personal data, so confirm legal basis and deletion rules before enabling them | Data protection officer with the compliance lead |
How AI Search and RAG depend on content modeling and permissions
Retrieval quality in a Drupal AI search or retrieval-augmented generation (RAG) setup is decided before the first question is asked. It depends on what gets indexed, how each item is chunked and tagged, and whether access rules are enforced at query time. Search API indexes, the embedding provider and the vector store only return what they were given, so a messy content model produces vague answers. Start by deciding which content types, fields, languages and workflow states belong in scope. Unpublished revisions, drafts in Content Moderation or Workspaces, and translations that editors have not reviewed should normally be excluded or tagged explicitly, and you should confirm how your chosen AI module release handles each of these in your own environment.
Access control has to hold at answer time, not only at indexing time. Each indexed chunk should carry the node access and role information the site already uses, so that a query made by an anonymous visitor or a restricted editor can only be answered from content that user may view. Confirm with your implementation team how the vector store filters on these values, how group or section membership is represented, and what happens to a user whose permissions change after the index was built. Lifecycle is equally important: unpublishing, deleting, moving content to another language or changing its access must trigger removal or re-indexing of the affected chunks, and you should test that stale or deleted content no longer appears in answers.
Before any visitor sees the assistant, test retrieval against a written set of real questions drawn from support tickets, site search logs and editor input. For each question, record which chunks were retrieved, whether they were permitted for the test user, and whether the generated answer cites the correct source. Repeat the test with accounts for each role and with a deliberately removed or unpublished item to confirm exclusion. Results from this exercise should decide chunking size, metadata fields and index scope, and they should become a regression suite that runs again after provider, model or Drupal upgrades.
Drupal AI module implementation sequence and what each step produces
This sequence moves an AI feature from version checks and provider decisions through a staged build, controlled editorial use and a handover, with a named output at every step. Each stage gives the owner a record or result to review before the next one starts.
Confirm Drupal, PHP and module compatibility
Check the Drupal core version in use, the PHP version your hosting supports, and whether the AI module and the provider modules you need support that core version. Drupal 11 requires PHP 8.3 or later, and Drupal 10 reaches end of life on December 9, 2026, so an upgrade may need to come first. The output is a compatibility record listing the core, PHP, module versions and any blocking upgrade work. The step is done when the record has been signed off by the platform owner.
Select providers and set up credentials
Compare the model providers your organization may approve, covering data handling terms, regional hosting, cost model and the capabilities each use case needs, such as text generation, embeddings or image work. Decide whether requests go to hosted services, private models or a gateway, and store API keys in a secrets store rather than in configuration files. The output is a provider decision record and a credential design showing who owns each key, how it is rotated and where it is stored. Confirm current provider terms with each vendor before signing off.
Define use cases and success checks
Write down each intended AI use case, such as suggesting field values with AI Automators, answering questions over approved content with AI Search, or drafting summaries for editors. For each use case, define what a correct result looks like, who reviews it, and what must never happen, such as publishing without review or exposing unpublished content. The output is a use case register with acceptance checks that the test phase will run against. Involve the editorial lead and the security owner in this step.
Configure AI Automators on a staging site
Build the automators on a staging copy of the site with a representative content sample. Map each automator to a specific field, define the prompt and input fields, set the output format and decide whether results are written to a draft state or to a review field. Keep prompts and automator configuration in version-controlled configuration so changes can be reviewed. The output is a configured staging environment and a test log that records sample inputs, outputs and any rejected results.
Build and test AI Search with a defined content scope
Set the content types, fields, languages and workflow states that AI Search may index, and exclude unpublished, restricted or personal content by default. Choose the vector storage and embedding approach with your infrastructure team, then test retrieval quality against the questions defined in the use case register. Check that answers cite the right sources and that access rules are respected for each user role. The output is a retrieval test report with the indexed scope, sample queries, results and known gaps.
Set editorial and access controls
Decide which roles can run automators, use assistants, accept generated text and view AI-generated content before publication. Connect those permissions to the editorial workflow, so generated output passes through the same review states as human-written content. Record how generated content is marked, how prompts are logged, and who can change provider settings. The output is a permissions matrix and a workflow diagram, both tested with test accounts for each role.
Pilot with a small editor group
Release the configured features to a small group of editors who work on real content, with a defined feedback channel and a named owner who reviews issues each week. Compare generated output against the acceptance checks, track rejected suggestions, and watch for privacy, accuracy and tone problems. Adjust prompts, scope and permissions based on what the pilot reveals. The output is a pilot report with the issues found, the changes made and a recommendation to proceed, hold or narrow the scope.
Roll out and hand over
Enable the approved features for the wider editorial team in stages, with monitoring of provider usage, error rates and content review outcomes. Deliver a runbook covering provider changes, key rotation, reindexing, prompt updates, incident response and how to retire a use case. Train the operations and editorial owners on the runbook and confirm who will handle module updates and security advisories. The output is a live configuration, the operations runbook and a signed handover record. Ongoing support can be arranged separately as a retainer.
What drives Drupal AI module effort and cost, and how to keep it down
This table lists the main drivers of effort and cost on a Drupal AI module project, why each one moves the total, and how to keep it contained. Read it as a scoping checklist: ask each partner to price every driver in writing, and mark which costs are one-time setup and which recur after launch.
| Driver | Why it changes effort or cost | How to keep it down |
|---|---|---|
| Number of AI use cases | Each use case needs its own prompt design, field or search mapping, permissions, evaluation set and review step, so effort grows with every addition. | Start with one or two use cases that have a clear editor benefit and defer the rest to a later phase in the written scope. |
| Content volume and reindexing | Embedding existing content for AI Search or vector search takes processing time, and changes to the embedding model or chunking rules can force a full reindex. | Index only published, relevant content types first, and agree the embedding model before the initial load so reindexing is not repeated. |
| Number of providers and model types | Each provider needs credentials, rate and quota handling, error handling, and separate evaluation. Chat, embedding and image models are configured and tested differently. | Standardize on one provider per model type where possible, and confirm which providers your data policy approves before the build starts. |
| Access rules and multilingual content | Retrieval must respect Drupal content access, so AI answers do not expose content a user cannot view. Each language may need its own prompts, indexes and review. | Document the access model first, test retrieval with users in different roles, and limit the first release to languages with reviewers available. |
| Editorial workflow complexity | Generated field values or drafts must pass through review states, moderation and audit logging. More states and approvers mean more configuration and testing. | Keep generated output as a draft that editors accept, and reuse existing Content Moderation states rather than creating new ones. |
| Security review of data sent to providers | Security and privacy teams need to confirm what content, user prompts and metadata leave your environment, where it is processed and how it is retained. This review often takes longer than the build. | Prepare a data flow diagram and provider terms summary early, and decide which content classes are excluded from external calls. |
| Evaluation time | Quality of answers, field suggestions and guardrails must be measured against a test set built from your own content. Results often need several tuning rounds. | Agree the evaluation criteria and sample size in the scope, and assign named editors to review results on a fixed schedule. |
| One-time costs | Configuration, provider setup, indexing, evaluation, editor training and security review are paid once per phase, although later phases reuse some of the work. | Ask the quote to separate setup, evaluation and training lines so each can be reviewed and reduced independently. |
| Recurring costs | Provider usage is billed by the provider, and hosting for search or vector stores, monitoring, and maintenance for AI module and provider updates continue after launch. | Ask for estimated usage by feature, set spending limits with each provider, and confirm who is responsible for module updates and security patches. |
How the AI module connects to search, identity and content workflows
The AI module touches more of a Drupal site than most teams expect. Each connection below needs a named decision and an owner on the client side before build work starts. Confirm every connection detail against the current documentation for the AI module and its sub-modules, since these integrations change between releases.
Search API and vector search backend
AI Search builds embeddings and retrieval on top of an index, so the vector store choice, embedding model and index fields must be settled alongside your existing Search API design. Decide which content is indexed for retrieval, how access filters are applied to results, and who approves changes to the index schema. Confirm the supported vector backends and their versions in the current module documentation before selecting one. Owner: search or platform lead.
Content moderation and workflow gates
Generated text, field suggestions and summaries should pass through the same review states that govern human-written content. Decide whether AI output lands in a draft revision, which moderation state it enters, and who may publish it. Check how AI Automators interact with Content Moderation and Workspaces so generated values do not bypass approval. Owner: editorial lead.
Identity and role mapping
Permissions for AI features are Drupal permissions, so they must map from the identity provider's groups or claims to Drupal roles. Decide which roles can run assistants, which can use agents that take actions, and which can view prompts and provider settings. Confirm how your SSO module passes roles at sign-in before relying on it for AI access. Owner: identity team with the Drupal product owner.
Model gateway and provider keys
Provider credentials and endpoint choices determine where prompts and content travel. If you route through a self-hosted gateway or private model, decide the base endpoint, key storage, rate limits and which providers are approved for which content classification. Store keys outside the database and confirm the provider configuration options in the module documentation. Owner: platform security.
Logging and monitoring of AI calls
Each prompt, response, token count and error should be traceable to a user and a content item. Decide what is logged, how long logs are kept, and whether prompt text containing personal data is masked before storage. Route these logs to the same monitoring stack used for the rest of the site so incidents are visible to operations. Owner: operations and privacy lead.
CRM and downstream data systems
Agents and automators that read or write to CRMs, product catalogs or other business systems need explicit scopes, field mappings and rollback rules. Decide which systems an assistant may query, which writes need human confirmation, and how failed actions are retried or reported. Map each integration to a named system owner so changes to the target schema are reviewed. Owner: integration lead for each target system.
Questions buyers ask before hiring a partner for Drupal AI module implementation
What drives the cost of a Drupal AI module implementation?
Scope drives cost more than the module itself. The main components are content modeling, the number of AI Automators and fields involved, the choice and count of model providers, the size of the content set indexed for AI Search, assistant and agent behavior, and the editorial review flow. Each component carries one-time build work, such as configuration, custom code and testing, and recurring work, such as provider usage charges you pay directly, hosting of vector storage, and maintenance as the AI module and providers change. Ask each quote to split build fees from recurring items, list which provider accounts are billed to you, and state what is excluded, such as content cleanup or prompt tuning after launch.
How long does a pilot of the Drupal AI module take, and what sets that duration?
The duration depends mainly on how many use cases the pilot covers and how quickly the client can make decisions. A narrow pilot, for example one AI Automator on one content type with human review, is much shorter than a pilot that includes vector search over several content sources plus an assistant. Other factors include provider account approval, data classification decisions, the availability of content owners for review, and whether an existing Drupal site is ready for the AI module. Request a written timeline that names the pilot's success criteria, the reviewers involved, and the point where a go or no-go decision is made.
What must our team supply for an AI module project to succeed?
Most delays come from client inputs, not from the Drupal work. Plan to supply named content owners who can judge output quality, provider accounts and billing ownership for each model service, and a data classification decision that states which content may be sent to which provider, including any private or self-hosted models. You will also need reviewers for generated content, a decision on who approves prompts, and access to a non-production environment. Ask the partner to list these inputs in the statement of work with an owner and a due date for each.
Can an in-house Drupal team build AI features without an outside partner?
Yes, a team with solid Drupal experience can build AI features in-house, particularly for a single provider and a limited set of fields. The harder parts are usually outside pure Drupal skills: deciding data handling rules, designing review workflows, evaluating output quality, setting up vector search infrastructure, and operating providers under security and compliance requirements. Assess your team on those areas, not only on module configuration. A partner is most useful when the scope spans several providers, regulated data, or agents that take actions, and when you want a written handover of prompts, configuration and tests.
How do we keep AI-generated content reviewed before it is published?
Generated content should pass through the same editorial controls as human-written content, with the AI output stored as a draft rather than written straight to published fields. Use Drupal's Content Moderation workflow so that a named reviewer approves each state change, and decide which fields may be auto-generated, which need mandatory review, and which must never be generated. Log which provider and prompt version produced each value, and define a process for rejected output and for prompt changes. Confirm during scoping how your editors will see the origin of each value, since the AI module's behavior around review should be verified against the version you deploy.
What happens to prompts, configuration and data after handover?
After handover, your organization should own the Drupal configuration, custom code, prompts, test cases and documentation, stored in your repository and under your access control. Ask for a written list of artifacts and where each lives, a record of provider accounts and who holds the credentials, and a plan for deleting any test data kept by the partner. Confirm how provider retention and training terms apply to the content you send, because those terms are set by each provider. Support after handover is a separate arrangement, so request its scope, response expectations and whether it covers AI module updates and prompt maintenance.
What should we check before signing a fixed-scope AI module engagement?
Check that the written scope names each AI Automator, search index, assistant or agent, the providers and models in use, the review workflow, and the acceptance tests. Deliverables should include configuration exported to code, test results on representative content, runbooks and training for editors. Confirm which items are fixed scope and which become change requests if you add a provider or a content type. Most engagements at DeployOpen are fixed-scope, so the written scope is the basis for the quote, and it should be agreed before work starts.
How DeployOpen scopes, delivers and supports Drupal AI module work
DeployOpen plans, builds, documents and supports Drupal AI module work inside your own infrastructure, from cloud accounts and data centers to air-gapped networks. Most engagements are fixed-scope, with scope, deliverables and timelines agreed in writing before work starts.
How we scope
- Written scope lists which AI features, providers and content types are in and out of the project.
- Provider choice, data handling and hosting location are agreed before any build begins.
- Quotes follow from the written scope, so ask which editorial controls and test cases are included.
How we build
- Custom code, AI Automators and AI Search configuration are built and tested in a non-production environment first.
- Prompts, provider settings and permissions are version-controlled so changes can be reviewed and rolled back.
- Generated content is tested against the editorial approval steps you specify before it reaches public pages.
How we hand over
- Handover includes configuration exports, custom module source, and runbooks for your administrators.
- Documentation covers provider credentials, rate limits, logging settings and who can change AI behavior.
- Your editors receive guidance on reviewing, editing and rejecting AI-generated content in the workflow.
How we support
- Ongoing support, Drupal core and module upgrades, and continuous testing are available as retainers.
- Support covers provider changes, module updates and review of new AI features before they reach production.
- Ask whether your retainer includes security testing of prompts, agents and retrieval pipelines.

