/composum-AI

Artificial intelligence services for the Composum Pages CMS and Adobe AEM : content creation and analysis, translation, suggestions, ...

Primary LanguageJavaMIT LicenseMIT

Composum AI - AI-powered content creation integrated in Adobe Experience Manager and Composum Pages

Fast and flexible,
Composum empowers you,
Content blooms with ease.
-- ChatGPT

We provide several content creation assistants that are tightly integrated into Composum Pages or Adobe Experience Manager (AEM) putting the power of AI supported content creation at your fingertips. For a quick overview - here are two 2.5min demonstrations, one for AEM and one for Composum Pages. You'll find a more detailed demonstration for the AEM version on youtube.

ComposumAIforAEMQuickDemo.mp4
ComposumAIinPagesQuickDemo.mp4

Basic idea

With the advent of large language models (LLM) like ChatGPT, content creation in content management systems like Composum Pages or the Adobe Experience Manager can become considerably easier with the new support by AI systems. While OpenAI's ChatGPT was and is probably the most noteable forerunner, there is quite number of commercial systems like Anthropic Claude (UK), Google's Bard, Aleph's Luminous (Germany) in development, to name only a few, and increasingly also models you can run on local machines. All of there provide APIs that allow them to be used very flexibly in a lot of ways that are useful for supporting a CMS - for translation, content creation, review, summarizing, chat, you name it. Optionally it is possible to use the vision capabilities on images as well, e.g. to generate alt texts for images.

Composum AI provides AI services for Composum Pages and Adobe Experience Manager. Both share quite some commonality through being based on the Apache Sling platform. Where possible and appropriate, components will remain platform-agnostic. Since OpenAI's chat completion API, also available through as Microsoft Azure OpenAI service is already commercially available at scale, competitively priced and arguably the most powerful system at the moment, we currently use it as backend. Since various open source LLM can be run with a similar interface it's also possible to use these, e.g. with LM Studio or ollama. If you need alternative backends, please contact us

  • normally that will need only small changes. It's recommendable, though, to use a model with >= GPT 3.5 performance.

For AEM, there is also an automatic translation for sites or page trees implemented that integrates transparently into the rollout process for live copies - see here for more documentation.

Functionality

For a quick view of the Composum Pages variant, please compare the Composum blog entry about it and the more detailed documentation; for the AEM variant there is also a blog entry presenting the functionality.

There are the following dialogs that help with editing in Composum Pages. For the AEM version we omit the translation dialog (as AEM has it's own frequently used mechanisms) and the page category dialog, as AEM tags work quite differently.

  • a translation dialog that can be opened on any edited textfield in multilingual websites and suggests translations of the text of a component into other languages the text of page descriptions and summaries, keywords, navigation title
  • a multi purpose content creation dialog that can support you by creating text for any edited text fields. The text can be created either from a user supplied prompt, or by applying a (user supplied or predefined) ChatGPT prompt to the existing text of the page / component. That way, one could create summaries of the page, or extracts wrt. a topic, overviews, orjust request suggestions to reformulate or expand user supplied text fragments, ... Your imagination is the limit.
  • a side panel AI that you can chat with and use to analyze the text content of the current page and get suggestions.
  • a page category dialog with suggestions for page categories (that are used as SEO keywords)

Try it out!

The easiest way to try it is the Composum Cloud where Composum-AI is deployed. You can get a free account there, create a site and test it. Second there is the Composum Sling starter (a JAR you can execute locally) or the docker image composum/featurelauncher-composum available through the Composum Launcher project - see there for description. You will need an OpenAI API key secret key to run it, and configure that in the Felix Console configuration tab at "GPT Chat Completion Service".

For AEM, there is a package on maven central to deploy. You will need to configure an OpenAI API key as well.

Please compare the release notes of the latest release for more instructions.

Development with ChatGPT and Github Copilot

Part of the intention of the project is to evaluate the use of AI services, in particular ChatGPT and the Github Copilot IntelliJ plugin, for speeding up development. Some outcomes of that:

More project documentation

Architecture contains a description of the chosen project architecture and records architectural decisions.

Project structure describes the module structure of the project.

ChatGPT API Analysis contains a discussion of the ChatGPT API wrt. our project.

Next steps contains a sketch of the next steps to be taken.

Thanks

Thanks to OPAX for many ideas for prompts.