contexa-core

AI Engine 개요

Contexa AI Engine 개요 — 아키텍처, AI 진단 프로세스, 표준 및 Streaming 분석, 커스터마이징 포인트, Identity 및 IAM과의 플랫폼 통합.

AI 진단 프로세스

AI Engine은 두 가지 실행 모드를 지원합니다. 사용 사례에 따라 선택하세요:

표준 분석

Mono<AIResponse> 반환
전체 6단계 Pipeline 실행
구조화된 JSON 응답

적합한 용도: 대시보드, 리포트, 배치 처리
Streaming 분석

Flux<ServerSentEvent> 반환
4단계 Pipeline (전처리 + Streaming LLM)
SSE를 통한 실시간 텍스트 스트림

적합한 용도: 채팅 인터페이스, 실시간 분석, 인터랙티브 UI

표준 분석

전체 6단계 Pipeline을 실행하고 구조화된 JSON 응답을 반환합니다. 완전하고 파싱된 분석 결과가 필요할 때 사용하세요.

@RestController
@RequestMapping("/api/my-analysis")
@RequiredArgsConstructor
public class MyAnalysisController {

    private final AICoreOperations<MyContext> aiProcessor;
    private final StandardStreamingService streamingService;

    @PostMapping("/analyze")
    public Mono<ResponseEntity<MyAnalysisResponse>> analyze(
            @RequestBody MyAnalysisItem request) {

        MyAnalysisRequest aiRequest = createRequest(request);

        return streamingService.process(
                aiRequest, aiProcessor, MyAnalysisResponse.class
        ).map(ResponseEntity::ok);
    }
}

Streaming 분석

컨텍스트 검색, 전처리, 프롬프트 생성을 수행한 후 Server-Sent Events를 통해 LLM 응답을 실시간으로 스트리밍합니다. 채팅형 인터페이스나 사용자에게 즉각적인 피드백이 필요한 경우 사용하세요.

@PostMapping(value = "/analyze/stream",
             produces = MediaType.TEXT_EVENT_STREAM_VALUE)
public Flux<ServerSentEvent<String>> analyzeStream(
        @RequestBody MyAnalysisItem request) {

    MyAnalysisRequest aiRequest = createRequest(request);

    return streamingService.stream(aiRequest, aiProcessor);
}
모드 선택 가이드
프로그래밍 방식으로 처리할 수 있는 구조화된 JSON 응답이 필요한 경우 표준 분석을 사용하세요 (대시보드, 리포트, 자동화 워크플로우). 결과가 생성되는 대로 사용자에게 보여줘야 하는 경우 Streaming 분석을 사용하세요 (채팅 UI, 실시간 모니터링, 인터랙티브 분석).

커스터마이징 포인트

커스텀 AI 기능을 구축하려면 다음 확장 포인트를 구현합니다. 각 포인트는 AI Engine의 특정 레이어에 연결됩니다:

AIRequest / AIResponse

요청 및 응답 타입을 정의합니다. 도메인별 필드로 AIResponse를 확장하세요.
Strategy

DiagnosisType별로 요청을 라우팅합니다. 입력을 검증하고 실행할 Lab을 선택합니다.
Lab

도메인 데이터를 수집하고, 요청을 보강한 후, Pipeline에 위임합니다.
PromptTemplate

도메인 데이터로부터 LLM을 위한 시스템 및 사용자 프롬프트를 생성합니다.
ContextRetriever

도메인에 맞는 관련 컨텍스트를 검색하도록 RAG 벡터 검색을 커스터마이징합니다.
설정

application.yml을 통해 LLM 모델, 티어, RAG 파라미터, Streaming 설정을 조정합니다.
시작하기
각 확장 포인트를 구현하는 단계별 가이드와 작동하는 코드 예제는 커스텀 AI 구축하기를 참조하세요.

플랫폼 통합

AI Engine은 Contexa의 Identity 및 IAM 모듈과 통합되어 AI Native Security를 제공합니다. 각 모듈은 고유한 기능을 담당합니다:

Identity

인증
세션 / 토큰
MFA
IAM

인가
정책 / XACML
리소스 보호
AI Engine

AI 진단
위험 분석
정책 생성

함께 통합되면 플랫폼은 다음을 지원합니다:

  • Zero Trust 보안 분석 — AI 기반 위험 분석은 코어 엔진이 Identity 및 IAM과 함께 통합될 때 런타임 보안 결정에 연결될 수 있습니다.
  • 정책 생성 워크플로 — IAM 모듈은 구조화된 XACML 작성을 위해 AI 지원 정책 생성 템플릿과 검색 경로를 제공합니다.
  • 리소스 명명 추천 — IAM 모듈은 비즈니스 친화적인 리소스 라벨 정규화를 돕는 AI 지원 리소스 명명 템플릿을 포함합니다.
  • 공유 프롬프트 및 검색 인프라 — 동일한 파이프라인, 모델 선택, Advisor, RAG 구성요소를 보안 및 비보안 AI 기능 전반에 재사용할 수 있습니다.
독립 사용
AI Engine은 Spring 애플리케이션의 모든 AI 분석 작업에 독립적으로 사용할 수도 있습니다. Identity 및 IAM 통합은 선택 사항이며 보안 관련 AI 기능을 추가합니다.

설정 개요

AI Engine 동작은 application.yml 속성을 통해 제어됩니다. 주요 설정 영역:

LLM 및 모델

계층형 모델 구조 (Layer 1 / Layer 2)
모델 프로바이더 선택 (OpenAI, Anthropic, Ollama)
작업 유형별 Temperature, 최대 토큰 수
Pipeline 및 RAG

벡터 검색 파라미터 (topK, 유사도 임계값)
Lab별 RAG 설정
Pipeline 타임아웃 및 Streaming 설정
설정 레퍼런스
예제가 포함된 전체 속성 레퍼런스는 설정 > AI를 참조하세요 — LLM 티어, Strategy 설정, RAG 파라미터, Streaming, 벡터 스토어 설정을 다룹니다.