Adopting AI into future Plone releases

every one is adopting AI. Can't we adopt AI into our core to enhance user experience?

some of my ideas that can be easily implemented into the plone are:-

  1. Natural Language Processing (NLP) for Content Analysis and SEO optimisation using AI
  2. Predictive Analytics and Forecasting thatt analyzes content based on site user data
  3. Automated Content Generation using GPT or other models having API key provided by user

there may be various other use cases.... anyways opinions are welcomed!

I will be integrating Nuclia search—which allows visitors to ask questions and get responses—into the Plone Sphinx Theme for all Plone documentation during the Buschenschanksprint.

The greatest concern about AI is privacy, and the Plone community takes security and privacy very seriously.

Beyond opinions and ideas, you could draft a Plone Improvement Proposal (PLIP) or create an add-on in the Collective organization.

1 Like

Too many usecases, too many different options regarding privacy, too many short-lived APIs..such a functionality belongs into add-ons in order to mature properly.

1 Like

I understand

but if i made a add-on, then how will it integrate with Plone.. Any documentation on it? some of the features need to be integrated directly into Plone... Like Automated Content Generation and Content Analysis for SEO Optimization.

For Plone 6 add-ons for the backend and Classic UI, the developer story is under development this weekend and next week at the Buschenschanksprint.

For Volto, see Development – Frontend — Plone Documentation v6.0.

I see AI being useful with search results. There is a plan to use Nuclia search on plone.org as well.

AI for anything else...? meh. Content generation always requires human review, unless you want to put glue on your pizza to make the cheese stick, or eat rocks for essential vitamins and minerals.

1 Like

In my opinion there might be various other usecase of implementing AI into Plone...
We can make AI reveiew the overall blog according to site metrics, Integrate NLP models to automatically categorize, tag, and summarize content based on semantic analysis, and also we can provide users to use initially ai generated content based on their selection like claude, chatgpt, etc. We can also use it

As said: this belongs into an extension for now, not into the core.

3 Likes

One of the Current GSOC project is " AI image description/alt text generator" this is being created as an add-on rather than a core so integrators can choose to use it or not depending on their priorities. the project is progressing very well (it is using google gemini other implementation may be possible in the future). this addon should/will be release at the end of the GSOC.

Another suggestion for GSOC was to generate the page content from title and description, It also got a lot of interest but there are only so many mentors and it was not selected this year. this was pretty much in line with your item 3.

4 Likes
2 Likes

You also have to ask yourself if you want to support only Classic UI or Volto or both frontends. If you want to support Volto and Classic UI (recommended), you can implement some Rest-API services, serializers aso. This way the Volto frontend could use it in an frontend (addon) addon and Classic UI templates you be delivered with the backend addon directly.
If you only need support for one of the frondends, leave either the UI for classic UI out or the Volto addon.

I plan to support both.. but unable to get my hands on due to lack of documentation upon how to integrate the codes and all...

Thanks for speaking up. It's true, developing an add-on for Plone core is not well-documented for Plone 6 (and it was questionable in Plone 5), and this story will improve soon in the open PR at integrate coredev.buildout (was PR #1670) by stevepiercy · Pull Request #1671 · plone/documentation · GitHub which you can preview at Contribute to Plone 6 core – Contributing to Plone — Plone Documentation v6.0. Volto documentation does a much better job of guiding newcomers to develop and contribute an add-on, so I would recommend starting there.

1 Like

that worked for me...
but how to structure the addon and related info are not mentioned...

lets say, i am creating an addon that takes the whole text of the page or a custom text and perform some actions and return user with suggestions or similar actions. i cant find those documentations @stevepiercy

Also take a look here: 8. Extending Plone with add-on packages – Mastering Plone 6 development — Plone Training 2024 documentation and following chapters of the Mastering Plone Development training

You would probably use a package like GitHub - plone/plonecli: Plone Command Line Client - for creating and working with custom add-ons and themes in combination with GitHub - plone/bobtemplates.plone: Python Code Templates for Plone Projects with mr.bob and GitHub - collective/mr.bob: Mister Bob (the builder) is filesystem template renderer to set up your scaffolding.

Edit/add see also this comment for a practical approach: Testing an addon in a pip instance - #7 by 1letter

Last but not least :wink: Maik's blog: Plone command line interface - plonecli

2 Likes

thanks @mtrebron ...
will reply if that worked... but thanks for the resources!

I’ve worked as a SaaS PM for the last 5 years, largely focusing on AI the last two years or so (open to new challenges btw :wink:

Some thoughts.

Aspects of content mgmt that come to mind that are relevant for use cases where AI could be used:

  • generation of content
  • analysis and reporting of content
  • content augmentation
  • search & retrieval

New content generation is something that mostly happens between the user and the genai system so there is relatively little added value the CMS can provide.

Otherwise, it’s largely about what only the CMS can provide: accessing existing content in it for use in various kinds of RAG pipelines. There’s at least three ways in which you can get content from a CMS:

  • via framework / platform APIs or feeds
  • accessing the DB or search engine index directly
  • via rendered page & metadata

In practice, direct DB / search engine access is rarely the best option or even possible. And while customers frequently expect you to ”just get it from the site, fetch the HTML”, it is rarely a good way for real enterprise solutions either.

For plone to shine as part of enterprise solutions utilizing AI, great APIs and extensive indexing, metadata, search and content feed support are what is needed - and afaik plone has them all. Many things should and could be improved of course and the devil is in the details: Once you actually try to e.g. just sync all content from plone for generating & storing vector embeddings, you’ll find out what needs improvement. Lack of metadata has always been a major problem in CMSes and still is so using genai to add that automatically might potentially help things a lot.

Overall, semantic web tech is having a renaissance thanks to AI. Generating an ontology and a ”knowledge graph” and linking the pages to it is something very interesting that might even make sense to add to the core, although it could be done via an external system as well, if such system is used anyway (to feed a vector db etc).

A lot depends on the site content to be used: To what extent it’s mostly text, or audiovisual, or structured ecommerce product data etc. and how will it be used in the application.

So, real use cases and true customer needs (hidden behind what customers say they want) are key.

What kind of AI related use cases have actually come up in conversations with customers and users of plone that plone should / could help support?

2 Likes

For me the part of completing metadata like an ALT-Tag for images, sounds the most interesting. Content creation is hyped, but not of interest to me so much. But yea, a make my text a bit nicer option, could e nice to have.

Currently i have the need in a document managed system based on Plone, to classify documents uploaded or imported by email. This could be also of broader interest.

1 Like

For me the part of completing metadata like an ALT-Tag for images, sounds the most interesting.

actually there might be various other ideas that can be looked into... as it is the hot thing of today's world... so now or in future need to adopt into the systems