ABAP에서 LLM 호출하기: ABAP AI SDK와 ISLM 시나리오 개요
3줄 요약
ABAP AI SDK는 ABAP Cloud에서 대규모 언어 모델(LLM)을 부르는 릴리스된 ABAP 클래스 묶음이고, ISLM(Intelligent Scenario Lifecycle Management)과 연동돼요.
사용하려면 먼저 관리 작업, 지능형 시나리오(intelligent scenario), 시나리오 모델(사용할 LLM을 지정)을 만들어야 해요.
코드는
create_instance→execute_for_string→get_completion순서이고, 매개변수 설정, 메시지 목록, 프롬프트 템플릿도 쓸 수 있어요.
어떤 상황에서 쓰나요
ABAP 애플리케이션에 요약이나 번역 같은 LLM 기능을 연결하려면 호출 코드 외에도 관리 설정이 필요해요. 이번 글에서는 ABAP AI SDK와 ISLM의 관계, 사전 준비, 기본 호출 순서를 알아봐요. 개발자를 돕는 AI 도구와 앱에서 호출하는 LLM은 구분해서 살펴볼게요.
LLM 호출은 입력 승인, ABAP 코드, ISLM 설정, 모델 호출의 관계를 함께 살펴봐야 합니다. 아래 흐름에 고객사 코드나 실제 데이터를 무조건 넣어도 된다는 뜻은 아니며, 승인된 입력만 사용해야 합니다.
핵심 내용
문서 안내 — 치트시트는 다음 자료를 안내해요: Joule for Developers, ABAP AI Capabilities 소개 블로그 세 편, SAP Help의 ABAP AI 문서와 *Generative AI in ABAP Cloud*, ABAP AI 전략 FAQ, GitHub 튜토리얼(Joule로 Fiori 앱을 만드는 RAP120), Devtoberfest 세션.
전제 조건. ABAP AI SDK는 ISLM과 연동돼서, 쓰기 전에 문서에 있는 관리 작업을 해야 해요. 지능형 시나리오(텍스트 생성 API를 생성하는 등의 기능을 가진 ABAP 저장소 오브젝트)와 지능형 시나리오 모델(어떤 LLM을 쓸지 등을 정의)이 필요해요. 예제는 ZDEMO_ABAP_INT_SCEN 시나리오와 ZDEMO_PROMPT_TEMPLATE 프롬프트 템플릿 ID 라는 가정된 이름을 써요.
기본 호출 순서
TRY.
FINAL(ai_api) = cl_aic_islm_compl_api_factory=>get( )->create_instance( 'ZDEMO_ABAP_INT_SCEN' ).
FINAL(result) = ai_api->execute_for_string( `Tell me a joke.` ).
FINAL(completion) = result->get_completion( ).
CATCH cx_aic_api_factory cx_aic_completion_api INTO FINAL(error).
FINAL(error_text) = error->get_text( ).
ENDTRY.예제 클래스가 보여 주는 것
텍스트 생성(completion) API 인스턴스 만들기 (
cl_aic_islm_compl_api_factory=>get( )->create_instance( 시나리오 ))문자열 프롬프트로 LLM 호출 (
execute_for_string)매개변수 설정:
get_parameter_setter( )로set_maximum_tokens( 500 ),set_temperature( '0.5' )(0과 1 사이)결과 정보: 토큰 수(
get_completion_token_count,get_prompt_token_count,get_total_token_count)와 실행 시간(get_runtime_ms)메시지 목록으로 호출: 메시지 컨테이너에 시스템 역할(
set_system_role), 사용자 메시지, 도우미 메시지를 쌓고execute_for_messages프롬프트 라이브러리:
cl_aic_islm_prompt_tpl_factory로 프롬프트 템플릿을 가져와 시스템 역할로 써요. 템플릿에 따라 입력 매개변수가 있을 수 있어요.
예외는 cx_aic_api_factory, cx_aic_completion_api, 프롬프트 템플릿은 cx_aic_prompt_template을 잡아요.
주의할 점
고객사 코드와 데이터를 AI 도구에 넣지 마세요. 이 글은 SDK 호출 구조를 소개하는 것이고, 어떤 데이터를 LLM으로 보내도 되는지는 고객사 보안 정책과 계약, SAP의 데이터 처리 조건을 따로 확인해야 해요. 치트시트는 이 점을 다루지 않아요.
이 SDK는 클라우드 ABAP 환경과 ISLM 관리 설정을 전제로 해요. 온프레미스 S/4HANA에서 같은 클래스가 쓰이는지는 치트시트에서 확인하지 못했어요.
예제 이름(시나리오, 모델, 템플릿)은 가정이에요. 실제 사용 가능 모델과 비용 구조는 SAP Help 문서를 확인하세요. 이 글에서는 다루지 않았어요.
치트시트는 계속 갱신되는 문서예요. 이 편의 첫 공개는 2025년 2월이고, 제가 읽은 판은 2026년 10월 기준이에요. 이 글은 읽고 정리한 것이고 예제를 직접 실행해 보지는 않았어요.
원문 주소: https://github.com/SAP-samples/abap-cheat-sheets/blob/main/30_Generative_AI.md
출처와 이용 안내
원문: ABAP Cheat Sheets - Generative AI · 작성자 SAP SE and contributors SAP-samples · 작성일 2025-02-19 · 기준 클라우드 ABAP 환경 ABAP AI SDK, ISLM 연동 · 확인일 2026-10-25
이 글은 위 원문을 읽고 한국어로 요약·재구성한 글이며 번역본이 아니에요. 원문의 저작권은 작성자와 SAP에 있어요.
원문은 Apache-2.0 라이선스(https://www.apache.org/licenses/LICENSE-2.0)로 공개된 자료예요. 이 글은 내용을 한국어로 줄이고 순서를 바꾼 변경본이며, 원저작자가 이 글을 보증하지 않아요.
설정과 화면은 릴리스마다 달라요. 적용하기 전에 원문과 SAP Help Portal, 관련 SAP Note에서 최신 내용을 확인해 주세요.
SAP와 SAP 제품명은 SAP SE의 상표예요. 바로투입은 SAP와 관련이 없어요.
댓글 0
아직 댓글이 없어요.
로그인하고 댓글 쓰기