使用 AI 扩大 ABAP 开发

学习目标

  • 介绍 ABAP AI 功能如何在应用程序开发期间帮助 ABAP 开发人员。

  • 简要描述如何使用 ABAP AI SDK 将 AI 功能添加到业务应用程序。

面向开发人员的 Joule:您的 AI 助手

简介

假设您是项目的新 ABAP 开发人员。您需要了解现有代码、生成 ABAP 代码的初始版本或实施新功能。您无需花费大量时间手动分析代码或从头开始编写所有内容,您可以使用 ABAP AI 功能帮助您加快开发速度,并从头开始提高代码的质量。

生成式 AI 通过提供可帮助开发人员提高生产力并创建更智能业务应用程序的工具来改变 ABAP 开发。本课将向您介绍如何在 ABAP 项目中使用这些 AI 功能。

AI 编码帮助 - Joule 的主要功能

面向开发人员的 Joule 是一组基于 AI 的工具,内置在 Eclipse 的 ABAP 开发工具中。它就像您的助手,可帮助您执行不同的开发任务,从而提高您的效率。

你可以用自然语言与 Joule 聊天对话,询问与开发有关的任何问题和任务。

您可以与 AI 聊天以获取有关开发相关问题的帮助。使用简单语言提出问题、请求解释或生成代码示例。要打开 Joule 聊天视图,请选择窗口显示视图其他...Joule

当您输入 ABAP 代码时,AI 会建议代码来完成您正在编写的内容。

您可以在写入过程中将虚拟文本合并到源代码中。虚化文本根据光标位置和 ABAP 源代码编辑器中的内容进行预测。预测代码完整化当前支持以下对象类型:

  • 接口

  • 程序

缺省情况下,启用预测代码完整化,但您可以根据需要手动将其禁用。启用后,虚拟文本将在编码过程中连续显示,并在 ABAP 源代码编辑器中显示为灰色。

从面向 Eclipse 的 ABAP 开发工具工具栏中选择切换自动触发预测代码完成以启用或禁用预测代码完整化。

开始在源代码编辑器中进行键入并短暂休息。如果启用预测代码完整化,则在暂停处的 ABAP 源代码编辑器中显示虚拟文本。然后,您可以将其合并到代码中。

要使用“解释”功能,您可以在编辑器中选择代码行,然后从上下文菜单中选择 Joule → 解释。

解释功能使您能够获取所选开发对象或源代码行的详细说明。

要打开解释功能,请从项目浏览器、源代码编辑器(通过选择代码行)或其他视图(例如概要视图)中选择一个开发对象。

然后从上下文菜单中选择 Joule说明,或打开 Joule 聊天视图并选择位于视图底部输入字段中的 /explain

使用 Explain 功能是一个协作流程。您可以以自然语言向"解释"功能指定应如何生成说明,例如,应详细还是简洁,无论是否有示例。

解释的答案将显示在 Joule 聊天视图中,所选开发对象在已使用对象下列出。

解释的答案将显示在 Joule 聊天视图中,所选开发对象在已使用对象下列出。解释标记为 /explain,以将其与缺省 Joule 聊天答案区分开来。通过 Joule 聊天视图,您可以选择跟进问题。对于某些开发对象类型,您甚至可以选择通过快速回复来指导会话获得特定结果。这些快速回复将显示在 Joule 聊天视图中"解释"回复的末尾。例如,您可以选择使用此类快速回复生成更详细或更易于理解的解释。

此外,面向开发人员的 SAP Joule 提供以下 ABAP AI 功能:

  • ABAP 单元测试生成 AI 可帮助您生成 ABAP 单元测试。这使您可以创建测试以更轻松地检查代码。

  • CDS 测试生成 AI 可帮助您为 CDS 实体创建测试类。这确保 CDS 视图的质量和正确性。

  • 从头开始的 OData UI 服务 借助 Joule 聊天,从头开始创建所有 RAP 服务相关的资源库对象。

  • RAP 业务逻辑预测 在行为定义的实施类中实施确定或验证。

  • 使用 生成 OData 请求和 ABAP 代码,以便通过 OData 客户端代理使用相应的 OData 调用。

  • GenAI 驱动的可扩展性助手 可扩展性助手可以回答与字段可扩展性和字段逻辑相关的问题。它可以帮助您执行与字段可扩展性相关的各种任务,包括创建自定义字段和查找值帮助视图。

警告

需要记住的重要事项:

  • AI 结果可能不同。

  • 始终检查 AI 生成的代码是否正确。

  • 确保 AI 生成的代码满足您的要求。

构建自己的启用 AI 的应用程序

ABAP AI SDK

虽然 Joule 在开发环境中提供 AI 帮助,但 ABAP AI SDK(软件开发工具包)允许您直接将 AI 功能添加到自己的业务应用程序中。

ABAP AI SDK 提供允许您使用大语言模型 (LLM) 的 ABAP 库。

使用 ABAP AI SDK,您可以:

  • 使用 ABAP 代码中的 LLM。

  • 将 GenAI 功能添加到您的应用或服务。

  • 利用提示完成和函数调用等功能。

ABAP AI SDK 使您能够使用以下功能:

  • 完成 API 此 API 提供对 LLM 的完成 API 功能的访问,这意味着它使用 LLM 根据提示生成文本响应。

  • 提示库 API 使用提示库 API,您可以使用预定义的提示模板生成新提示。

  • 跟踪 如果在调用 API 时遇到问题,则可以启动 ABAP 交叉跟踪。例如,您可以使用完成 API 来检验调用堆栈,以确定错误原因。

设置 ABAP AI SDK

要使用 ABAP AI SDK,系统管理员需要设置与生成式 AI 中心的系统连接。作为开发人员,您将定义要使用的 LLM 并创建智能场景和模型。

总结

  • ABAP AI 功能通过在 ABAP 开发环境中提供 AI 辅助来帮助开发人员提高工作效率。

  • Joule 的主要功能包括 Joule 聊天、预测代码完整化和解释,可简化开发任务。

  • ABAP AI SDK 允许开发人员使用大型语言模型构建启用自定义 AI 的业务应用程序。

进一步阅读

  • 面向开发人员的 SAP Joule, ABAP AI 功能 | SAP Help Portal

  • 开发自己的启用 AI 的应用程序 | SAP Help Portal

  • 研讨会 RAP120 - 使用 ABAP Cloud 和 SAP Joule 为开发人员构建 SAP Fiori 应用