zJoule is an Open Source AI assistant plugin for Eclipse designed to integrate the SAP AI Core Generative AI Hub foundation-models into your development environment.
- SAP AI Core with the
Extended
service plan (for the Generative AI Hub enablement). - Eclipse 2024-09 (4.33.0) or latest. Compatibility with older versions is not guaranteed.
The following table outlines the Generative AI models currently compatible with this plugin, as well as the next models that will soon be available:
Executable ID | Model | Version | Compatibility |
---|---|---|---|
azure-openai | gpt-35-turbo |
0613 | ✅ |
azure-openai | gpt-35-turbo |
1106 (latest) | ✅ |
azure-openai | gpt-35-turbo-16k |
0613 (latest) | ✅ |
azure-openai | gpt-4 |
0613 | ✅ |
azure-openai | gpt-4-32k |
0613 (latest) | ✅ |
azure-openai | gpt-4o |
2024-05-13 | 🚧 |
azure-openai | gpt-4o |
2024-08-06 (latest) | 🚧 |
azure-openai | gpt-4o-mini |
2024-07-18 | 🚧 |
azure-openai | gpt-4 |
turbo-2024-04-09 (latest) | 🚧 |
aws-bedrock | anthropic--claude-3-haiku |
1 (latest) | 🚧 |
aws-bedrock | anthropic--claude-3-sonnet |
1 (latest) | 🚧 |
aws-bedrock | anthropic--claude-3.5-sonnet |
1 | 🚧 |
aws-bedrock | anthropic--claude-3.5-sonnet |
2 (latest) | 🚧 |
LLM models that are not compatible may be selected during the login process; however, their functionality cannot be guaranteed, and errors may occur.
Additional model compatibilities may be introduced in the near future :)
Privacy Information
We know how privacy is important and ensure that all communication handled by the plugin is secure is a must. Here's how your data is managed:
- Data Flow: All communication facilitated by the plugin occurs exclusively between Eclipse and the SAP AI Core model APIs. No external intermediaries are involved.
- Data Storage: Any data processed or generated during plugin usage is stored locally within Eclipse's memory mechanism, ensuring it remains private and confined to your development environment.
By keeping all operations local and secure, the plugin should provide a trustworthy and seamless experience.
The official Joule version for ADT is being rolled out exclusively for S/4HANA Private Cloud and SAP BTP, ABAP Environment at the end of Q1 of 2025. But don’t worry, this plugin was created to bridges the gap! It introduces an AI-powered chat interface that seamlessly connects other types of SAP systems to large language models (LLMs) through SAP AI Core.
The idea is to open the door to integrate SAP ABAP development with new models and innovative features that could emerge from the expanding possibilities of AI.
All from the cozy confines of your Eclipse ADT =)
- Answer coding-related questions.
- Provide real-time suggestions and explanations for code.
- Assist in debugging by analyzing error messages and suggesting fixes.
- Summarize or explain code snippets and concepts.
- Fetch and clarify information on APIs, libraries, or frameworks.
- Reduce context switching by enabling developers to query information directly within Eclipse.
- Automate repetitive tasks through scripting and custom commands.
- Access advanced AI capabilities, potentially tailored to SAP-specific development workflows.
- Offer insights into test cases or suggest ways to optimize testing processes.
- Simplify complex development tasks by allowing users to describe their needs in plain language.
- Enable faster learning for beginners or new team members.
- Provide a smoother workflow for experienced developers needing quick solutions.
-
Download and install zJoule in your Eclipse instance following the procedure described right here.
-
Login using your SAP AI Core
Service Key
.
You can find it in the Instances an Subscriptions area of your SAP BTP subaccount.
- Select the
resource group
and thedeployment
model you want to use.
Resource Groups are essentially a project workspace in the context of SAP AI Core, and contains all components a specific ML or AI solution might use to attend a specific requirement. More Information.
Deployment is the component that will enable a LLM to be consumed. More Information.
zJoule offers code snippets and on-the-go assistance, helping you learn or recall information without ever leaving your development environment.
When the user opens a new component, such as a class or a CDS view, zJoule will retrieve its content and include it as context for the user prompt. A small tag will appear above the input box, indicating the content being used as context.
As the chat progresses, additional information will be collected and shared with the AI assistant to enhance personalization. However, the user can clear the chat history at any time if the accumulated messages are no longer relevant to the conversation.
Logging out will erase the chat history and any login data used during the LLM communication process, enabling users to establish new connections entirely independent of previous interactions.
Contributions are welcome! Here's how you can get involved:
- Report Issues: Found a bug or have a feature request? Open an issue.
- Submit Pull Requests: Fork the repository, create a new branch, make your changes, and submit a PR.
- Improve Documentation: Help us improve the README or add examples to make setup easier.
- Test & Feedback: Try this Eclipse AI Assistant and give us feedback to improve them.
Please follow the contribution guidelines for more details.
How this project consumes generative AI models.
SAP Note: 3437766 (Availability of Generative AI Models)
zJoule - ABAP Copilot website repository
The spinner "Ellipsis" is provided by loading.io
Copyright (c) 2024 Nicholas Coutinho Checan.
Licensed under the MIT License. See LICENSE.