AI Provider wizard should provide option to skip

Created on 20 January 2025, 3 months ago

Problem/Motivation

Setting up the AI functionality via its recipe presents a form where the user appears to only be able to select from Open Ai and Anthropic AI Providers and provide a valid key before they can progress. Other AI Provider modules are available, and any user wanting to use one of these in conjunction with the AI Chatbot set up by the recipe may not know that they can do.

Proposed resolution

The section of the wizard that asks for an AI Provider and key to be selected should include a "skip" submit, and have text added explaining where to find other providers in Open Ai and/or Anthropic are not suitable. When the skip button is pressed, the recipe should continue installing but not set up an AI Provider, providing a valid message about next steps if none is available.

✨ Feature request
Status

Active

Component

Track: AI

Created by

πŸ‡¬πŸ‡§United Kingdom MrDaleSmith

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @MrDaleSmith
  • πŸ‡ΊπŸ‡ΈUnited States phenaproxima Massachusetts

    The problem with this idea is that the "wizard" is actually a generic part of Project Browser and the core recipe system. It's not specific to the AI module.

    By design, all recipes that require inputs, require all their inputs to have a value. But also by design, all recipe inputs need to have a default value associated with them.

    So this would probably be a feature request in Project Browser -- allowing the recipe input step to be skipped, and accept the default values implicitly. Having said that, this would not be a good idea for all recipes -- things like AI or Google Analytics need an API key in order to work properly, so if they are applied and not configured, weird errors will happen.

    Nonetheless, moving to Project Browser's issue queue for further discussion.

  • πŸ‡¬πŸ‡§United Kingdom MrDaleSmith

    If the AI recipe was only setting up the AI Provider then I'd agree, but it also sets up the configuration for the chatbot. Given how complicated and difficult it is to get the prompts right for the chatbot, there will be cases where people want that configuration but don't want to use the two providers configured. The only options I can see are to allow people to set up a provider separately afterward (the request made here) or to have the wizard show every possible provider, which will add a lot of modules users don't need (given that as I understand it the recipes are intended to enable every module included in the recipe regardless of whether they are needed).

    So this is different to GA - a recipe that has no additional configuration you might want if you aren't also using the mandatory GA key - and may well be something that only applies to the AI recipe. But it does apply, and represents a barrier to a section of people being able to use the recipe.

    It would be good if we could come up with a solution that works for all cases, but I'm not seeing how making some stages of the wizard option would be that much of a breaking change.

  • πŸ‡ΊπŸ‡ΈUnited States chrisfromredfin Portland, Maine

    I just want to consider if the solution is architectural - as in, should there be two different AI recipes, one for the chatbot, one for the other... I'm not 100% sure I'm understanding the use case, but I'm not sure that skipping the config is smart. I would honestly rather a user get confused and abandon applying the recipe rather than end up in a weird state. If we wanted to do an "accept defaults" button, that would be good, and we could maybe have recipes provide that as an option where it makes sense??

  • πŸ‡¬πŸ‡§United Kingdom MrDaleSmith

    I'd be happy with two separate recipes, but I suspect that would go against the ethos behind them: a chatbot recipe would necessarily require the "basic AI" recipe so you'd end up with a confusing UX, I think. The use case of this specific issue is fairly straight forward: if you want to use the recipe to put an AI chatbot on your site but you want it to use the new DeepL AI instead of OpenAI, you currently can't. You'd have to pretend you were going to use OpenAi or Anthropic, and then manually disable those providers after you'd got the chatbot configuration you wanted. This seems to go against the idea of people being able to set up Drupal to do things without having to know how.

    I don't see the issue with some stages of configuration being optional - many modules have features that are optional, so why can't recipes reflect that? But perhaps this is just a limitation of the recipes idea in general: ideally what you'd be able to do is pick your modules and have them downloaded and configured through the recipe, but the reliance on composer require means - in this specific instance - you will probably get at least one module downloaded and enabled that you don't want.

  • Assigned to lyntechi
  • πŸ‡ΊπŸ‡ΈUnited States lyntechi Pennsylvania
Production build 0.71.5 2024