제7장. Java를 사용한 추론 모델접근
이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com
에서 이전 장에서는 추론 API를 사용하여 데이터를 생성하는 모델을 개발하고 노출하는 방법을 배웠습니다. 해당 장에서는 개발 과정의 절반만 다루었습니다. 모델을 노출하는 방법만 배웠을 뿐, 다른 서비스에서 이 모델을 소비하는 방법은 어떻게 될까요? 이제 나머지 절반을 다룰 차례입니다. API를 소비하는 코드를 작성하는 과정이 포함됩니다.
이 장에서는 이전 예제를 완성합니다. 사기 탐지 추론 API를 소비하는 Java 클라이언트를 생성하여 주어진 거래가 사기로 간주될 수 있는지 여부를 감지할 것입니다. 또한 REST와 gRPC를 모두 사용하여 Spring Boot 및 Quarkus용 클라이언트를 작성하는 방법도 보여드리겠습니다.
Quarkus로 추론 API 연결하기
Quarkus 는 REST 클라이언트 구현을 위한 두 가지 방법을 제공합니다:
-
Jakarta REST 클라이언트 는 RESTful 서비스와 상호작용하기 위한 표준 Jakarta EE 접근 방식입니다.
-
MicroProfile REST 클라이언트 는 가능한 한 Jakarta RESTful 웹 서비스 사양을 활용하여 HTTP를 통해 RESTful 서비스를 호출하는 타입 안전 접근 방식을 제공합니다. REST 클라이언트는 Java 인터페이스로 정의되어 타입 안전성을 보장하며, Jakarta RESTful 웹 서비스 어노테이션을 통해 네트워크 구성을 제공합니다.
이 섹션에서는 MicroProfile REST 클라이언트를 사용하여 사기 탐지 모델을 소비하는 Quarkus 서비스를 개발합니다.
아키텍처
를 사용하여 이전 장에서 개발한 사기 추론 API에 요청을 보내는 Quarkus 서비스를 생성해 보겠습니다. 이 서비스는 수행된 모든 거래 목록을 포함하며, 주어진 거래 ID가 사기로 간주될 수 있는지 검증하는 엔드포인트를 노출합니다.
그림 7-1은 본 장에서 구현할 아키텍처를 보여줍니다. Quarkus 서비스는 주어진 거래가 사기성인지 검증하기 위한 요청을 수신합니다. 이 서비스는 데이터베이스에서 거래 정보를 가져와 사기 탐지 서비스로 전송하여 거래의 사기 여부를 검증합니다. 마지막으로 결과는 데이터베이스에 저장되고 호출자에게 반환됩니다.
그림 7-1. 아키텍처개요
추론 API가 반환하는 문서 형식을 기억해 두세요. 클라이언트 측에서 이를 올바르게 구현하는 것이 중요합니다.
사기 추론 API
이전 장에서 개발한 사기 추론 API는 HTTP POST 메서드를 사용하며, /inference 엔드포인트를 노출하고 요청 및 응답 본문으로 JSON 문서를 사용합니다.
다음은 본문의 내용 예시입니다:
{"txId":
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access