What do you call the core things in AI Interpolator

Created on 1 July 2024, 3 months ago
Updated 9 September 2024, 12 days ago

Problem/Motivation

There is confusion with calling "Rules", "Rules". They are more like a "Type of Rule" where the rule is using OpenAI to use a specific prompt on these fields. We're also calling everything Automators but what is an automator exactly?

Rules are a little confusing because there used to be the Rules module but its kinda obvious that these are in the context of AI given the module name.

Proposed resolution

There seem to be two approaches we can take:

1) The whole "entity" is an Automator. The entirely application. Each field has 1 or many "automator Rules". An Automator is like a complete program that will do something useful for you using AI automation.
2) The entity is something like an Automator chain. Each field has a maybe config entity attached to it which is the Automator. It's like a tiny little bot that does one thing and passes it onto another. We will then have "Automator Types" or "Automator plugins"

Below is a picture of the different "Things" we are trying to name and alternative namings.

Current

  • Red - Content type
  • Green - Third Party Field Config (AI interpolator)
  • Purple - Rule
    • AIAutomatorFieldRules
  • Yellow - AI Interpolator Settings
    • One is : AI Interpolator Setting

Could move to

  • Red 
    • What it is:
      • A collection of AI interpolator settings that combine together to create a specific use-case. At the moment it is always an entity that has one field with AI Interpolator turned on.
      • If there is a disposable version - It can probably have the same name but with β€œDisposable” on it.
      • If there isn’t we need a name for something to refer to, but not necessarily something we build. It will probably only exist in documentation as they are just normal entities.
    • Possible Names
      • Automator Chain
      • Automation
      • Workflow
      • Complete process
      • Automators - (Bad idea, the automators in an entity are all working towards one goal)
      • Collection of Automators
      • Factory (Has lots of meaning and also in real life factories can have many workflows within it, but this thing is one specific chain
  • Green 
    • What is it
      • A collection of Field settings that are linked to a single process that will be applied to the field. (That single process is conceptually 1 but it might have lots of actions especially in the prompt). 
      • This is applied to the field config. (Could always see it as a very advanced default value)
    • Possible Names
      • Rule
      • Automator
      • AI Automator Settings
  • Purple 
    • What is it
      • It is a plugin and type of way that a rule or automator can be applied. It’s collection of code, settings, external services that allows a user to fill in what a specific rule should do.
    • Possible Names
      • Automator Type
      • Rule Type
      • Automator Plugin
      • Rule Plugin
      • Instruction Set
      • Cartridge 
  • Yellow 
    • What is it?
      • This is a single piece of field configuration. However the prompt field(s) are likely to be a special one especially if we use a prompt entity here.
    • Name
      • AI Automator Setting
🌱 Plan
Status

Fixed

Version

1.0

Component

AI Automators

Created by

πŸ‡¬πŸ‡§United Kingdom yautja_cetanu

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

Comments & Activities

  • Issue created by @yautja_cetanu
  • πŸ‡±πŸ‡ΉLithuania mindaugasd

    Red - automator entity
    Green - automator
    Purple - automator type
    Yellow - automator setting

    But red and purple mix, because there is "entity type".

  • πŸ‡±πŸ‡ΉLithuania mindaugasd

    Red - automation
    Green - automator
    Purple - automator type
    Yellow - automator setting

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

    Yeah so red is the whole entity that the fields with "Ai automator enabled" are attached to. So in some of the demos, the "Recipe Content Type" is the Red entity and then purple is the collection of automator settings on maybe the "Summary field" so thats why they don't mix.

    Do you think we should do away with "Rules" as a word entirely then?

  • πŸ‡±πŸ‡ΉLithuania mindaugasd

    Do you think we should do away with "Rules" as a word entirely then?

    As from someone who is not too familiar with interpolator, word "rules" does not say or mean much.
    While "Automator type" is immediately clear that is a type of automator, while "rule" is meaningless.

    Except that "entity type" exist within Drupal, so a little confusion exists still.

  • πŸ‡±πŸ‡ΉLithuania mindaugasd

    How it would look like rewording this issue πŸ“Œ First Version of AI Automator Active

    Move over AI Interpolator to AI Automator

    * Make it possible to create multiple rules per field.
    * Make the rules work with the AI abstraction layer for all generative AI stuff.
    * Build those rules into the core module.
    * Make it possible to fill meta values (summary on text with summary, alt text on images etc.)

    Renamed:

    Move over AI Interpolator to AI Automator

    * Make it possible to create multiple automators per field.
    * Make automators work with the AI abstraction layer for all generative AI stuff.
    * Build those automators into the core module.
    * Make it possible to fill meta values (summary on text with summary, alt text on images etc.)

    So rule would be automator.
    And specific rule type would be automator type.

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

    So I'm wondering if we simplify things a bit. Do away with "Rule" and "Type" and just have "Automator"

    Red: Automation or Blueprint
    Green: Automator Instructions
    Purple: Automator
    Yellow: Config

    https://aiarchives.org/id/3mVOro617RhBlVCqNyis

    I had a chat with Claude to come up with names.

    It means the thing called "Rule Types" become the automators themselves. So an Automator is the "LLM automator text long" for example. or the "Web scraping Automator".

    The config entity is just the instructions for that specific automator.

    It's like if you had a "Chef Robot" with instructions to make lasagne and another was a "Carpenter Robot" with instructions to make a table.

  • πŸ‡©πŸ‡ͺGermany Marcus_Johansson

    @yautja_cetanu - I'm at the stage where we need to start setting these in stone in development and where refactoring soon starts becoming a time consuming chore, since I started generating the plugin modules/automator modules/automator extensions (we should name these as well at some stage).

    I think your last example would be good - the question is if its Automator or Automator Type. Rule is not a good word anyway.

    Also for Config, I think it should always be prepended with Automator, like Automator Config or even AI Automator Config.

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

    Ok so Lets go with this unless people disagree:

    Red: Automation
    (We then have disposable Automation Entities)
    Green: Automator Instructions
    (We then have Automator Instruction Config Entities)
    Purple: Automator
    These are now modules. I think we can call them Automators and then maybe in code they are "AI_Automator.Types". or something
    Where a single Automator such as the "LLM Text Lond" automator uses the singular.
    Yellow: AI_Automator_Config

    (Yellow doesn't matter really I think)

    ---

    If anyone else thinks "Blueprint" is better than "Automation" then go ahead, but I think most people won't see the word "Automation" as usually the Red thing is a content type that you're applying Automators to.

    ----

    The modules you download can be called "Automator Providers" and each what used to be called a Rule is now an Automator.

  • πŸ‡±πŸ‡ΉLithuania mindaugasd

    Red - automation
    Green - automator
    Purple - automator type
    Yellow - automator setting

    looks complete from my side and I don't have further opinion, because my understanding of interpolator architecture and improvements is patchy.

  • πŸ‡±πŸ‡ΉLithuania mindaugasd

    Automator Instruction Config Entities

    or just "automator".

    and then maybe in code they are "AI_Automator.Types". or something

    Code and reality preferably has to match.

    In reality, people will just call automations and automators, like I demonstrated in #7 comment. So are additional words like "instruction" needed?

  • πŸ‡©πŸ‡ͺGermany Marcus_Johansson

    So the plugin system is AiAutomatorType for the folder. We could refactor this still to for instance AutomatorType, but I think Automator or Automators might be to generic - at the same time Views has views :)

    Also for naming - it would be good at some stage, mostly for documentation what we call a 3rd party module that add automators to your system. Like ScrapingBot. Is that just a module or a plugin module, extension module etc?

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

    Chatted to a UX person, This is where we thought

    "Clear or straightforward vs branded" terms

    Red - Automator Chain
    Green - Automator Instructions
    Purple - Automator (automator type)
    Yellow - Automator config

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

    Automator Chain [Disposable Entity, Automator Chain Disposable Entity] - This is the entity that stores all the fields that have automators on it in one chain. Often this is just a Content Type and this term is only a label on a tab alongside manage fields (Manage Automator Chain). As a result this won't appear in code often. However when we have disposable entities it will be called an Automator Chain Disposable Entity.

    Automator [Machine name:automator type] - These are like the plugins or "Rules" you can download and install for the Automators module. They are the things that have to be written by code in order to do a specific thing. For example there will be an LLM Text Long Automator - it has the ability to call an LLM with a prompt and then put the output of that LLM into the feild. There may be a web scraping automator, that can scrap a website.

    Automator Instructions [Machine name Automatator.Config] - This is the list of settings you see on a field when you click "Enable AI Automator/s". These settings tell the Automator what to do at that step in the chain (For example the prompt, the temperature, how many lines deep does the webscraper scrape). They are call Instructions conceptually in the UI as they are more than just config but in code we'll call it config as it behave much like config throughout Drupal.

    Automator config - Doesn't matter as much, its just a single field on the config.

  • Status changed to Fixed 26 days ago
  • Automatically closed - issue fixed for 2 weeks with no activity.

Production build 0.71.5 2024