구성 속성

모든 Contexa 구성 속성에 대한 전체 참조입니다. 모든 속성은 application.yml에서 설정하며 Spring Boot의 @ConfigurationProperties 메커니즘을 통해 바인딩됩니다. 속성은 아래 5개 카테고리로 구성됩니다.

구성 카테고리

Contexa는 모든 모듈에 걸쳐 27개의 @ConfigurationProperties 클래스를 제공합니다. 카테고리를 선택하여 전체 속성 참조를 확인하세요.

필수 속성

Contexa를 시작할 때 구성해야 할 가장 중요한 속성입니다:

속성 기본값 설명
contexa.enabled true 전체 Contexa 플랫폼의 마스터 스위치
contexa.infrastructure.mode STANDALONE STANDALONE (인메모리) 또는 DISTRIBUTED (Redis + Kafka)
contexa.llm.enabled true AI 기반 보안 결정을 위한 LLM 통합 활성화
security.zerotrust.enabled true Zero Trust 지속적 검증 활성화
spring.auth.state-type OAUTH2 상태 관리: SESSION 또는 OAUTH2. 생략 가능 — 기본값으로 대부분의 환경에서 동작합니다.
contexa.llm.chat-model-priority Contexa LLM 제공자 우선순위 (예: ollama,anthropic,openai). Spring AI 공식이 아닌 Contexa 전용 프로퍼티입니다.

최소 구성

Standalone 모드에서 Contexa를 시작하기 위한 최소 application.yml입니다:

YAML
contexa:
  enabled: true
  infrastructure:
    mode: standalone
  llm:
    enabled: true
    chat-model-priority: ollama,anthropic,openai
    chat:
      ollama:
        base-url: http://127.0.0.1:11434
        model: qwen3.5:9b
  rag:
    enabled: true

security:
  zerotrust:
    enabled: true

spring:
  auth:
    state-type: SESSION
  ai:
    security:
      layer1:
        model: qwen2.5:14b
      layer2:
        model: exaone3.5:latest

Contexa 코어 속성

contexa 접두사 아래의 최상위 속성으로, ContexaProperties에 바인딩됩니다.

속성 타입 기본값 설명
contexa
.enabled boolean true 전체 Contexa 플랫폼을 활성화 또는 비활성화하는 마스터 스위치
.infrastructure.mode enum STANDALONE 인프라 모드: STANDALONE (인메모리) 또는 DISTRIBUTED (Redis, Kafka)
.infrastructure.redis.enabled boolean true 분산 캐싱을 위한 Redis 통합 활성화
.enterprise.enabled boolean false 런타임이 제공하는 엔터프라이즈 전용 통합을 활성화합니다
.infrastructure.kafka.enabled boolean true 이벤트 스트리밍을 위한 Kafka 통합 활성화 (Distributed 모드)
.infrastructure.observability.enabled boolean true 관측 인프라 활성화
.infrastructure.observability.open-telemetry-enabled boolean true 분산 추적을 위한 OpenTelemetry 통합 활성화

LLM 속성

속성 타입 기본값 설명
contexa.llm
.enabledbooleantrueAI 기반 보안 결정을 위한 LLM 통합 활성화
.chat-model-priorityStringollama,anthropic,openaiContexa 모델 해석에 사용되는 채팅 제공자 우선순위입니다
.advisor-enabledbooleantrueAI Advisor 체인 활성화
.embedding-model-priorityStringollama,openaiContexa 모델 해석에 사용되는 임베딩 제공자 우선순위입니다
.chat.ollama.base-urlString""Ollama 채팅 런타임을 사용할 때 필요한 전용 기본 URL입니다
.chat.ollama.modelString""Contexa 채팅 런타임에서 사용할 Ollama 채팅 모델명
.chat.ollama.keep-aliveString""Ollama 채팅 런타임에 전달하는 선택적 keep-alive 값
.embedding.ollama.dedicated-runtime-enabledbooleanfalse공유 채팅 런타임 대신 전용 Ollama 임베딩 런타임 사용 여부
.embedding.ollama.base-urlString""dedicated-runtime-enabled가 true일 때 사용하는 전용 임베딩 런타임 URL
.embedding.ollama.modelString""Ollama 임베딩 런타임에서 사용할 임베딩 모델명

Spring AI Tiered 및 외부 제공자 구성

Contexa는 계층 선택 정보를 spring.ai.security*에서 읽습니다. Anthropic/OpenAI 같은 외부 제공자는 표준 spring.ai.* 속성을 사용하고, Ollama 런타임 선택은 spring.ai.ollama.*가 아니라 contexa.llm.*에서 관리합니다.

속성 타입 설명
spring.ai
.security.layer1.modelString1차 분석 단계에 사용할 Tier-1 모델명
.security.layer2.modelString심화 분석과 에스컬레이션에 사용할 Tier-2 모델명
.security.tiered.prompt-compression.enabledboolean계층형 실행을 위한 런타임 프롬프트 압축 활성화
.security.tiered.layer1.timeout.total-mslongTier-1 실행 경로 전체 타임아웃 예산
.security.tiered.layer2.timeout-mslongTier-2 실행 경로 전체 타임아웃 예산
.anthropic.api-keyString표준 Spring AI Anthropic 클라이언트용 API 키
.openai.api-keyString표준 Spring AI OpenAI 클라이언트용 API 키
.openai.base-urlString프록시나 호환 엔드포인트 사용 시 OpenAI 기본 URL 재정의

벡터 스토어 속성

속성 타입 기본값 설명
contexa.rag
.enabledbooleantrueContexa 내부의 RAG 하위 시스템 활성화
.defaults.top-kint10일반 검색에 사용하는 기본 문서 개수
.defaults.similarity-thresholddouble0.7일반 검색에 사용하는 기본 유사도 임계값
.risk.top-kint50위험 분석 중심 검색에 사용하는 문서 개수
.risk.similarity-thresholddouble0.8위험 분석 중심 검색에 사용하는 유사도 임계값
.etl.vector-table-nameStringvector_storeContexa ETL 작업에서 사용하는 논리 벡터 테이블명
.etl.chunk-sizeint500벡터 ETL에서 사용하는 문서 청크 크기
.etl.chunk-overlapint50벡터 ETL에서 사용하는 청크 오버랩 크기
spring.ai.vectorstore.pgvector
.dimensionsint1024pgvector 스토어에서 사용하는 임베딩 차원 수
.batch-sizeint100벡터 저장 시 사용하는 배치 크기
.top-kint100pgvector 어댑터 내부의 기본 검색 개수
.similarity-thresholddouble0.5pgvector 어댑터에서 적용하는 최소 유사도 임계값
.search-timeout-mslong10000pgvector 조회 타임아웃 예산
.store-timeout-mslong10000pgvector 저장 타임아웃 예산
.document.chunk-sizeint1000소스 문서를 저장용으로 준비할 때 사용하는 청크 크기
.document.chunk-overlapint200소스 문서를 저장용으로 준비할 때 사용하는 청크 오버랩

Zero Trust 속성

security.zerotrust 아래의 속성으로, SecurityZeroTrustProperties에 바인딩됩니다.

속성 타입 기본값 설명
security.zerotrust
.enabled boolean true Zero Trust 평가 엔진 활성화
.threat.initial double 0.3 새 세션에 할당되는 초기 위협 점수
.cache.ttl-hours int 24 신뢰 평가 캐시 TTL (시간 단위)
.cache.session-ttl-minutes int 30 세션 캐시 TTL (분 단위)
.cache.invalidated-ttl-minutes int 60 무효화된 세션 캐시 TTL (분 단위)
.redis.timeout int 5 Redis 작업 타임아웃 (초 단위)
.redis.update-interval-seconds int 30 Redis에 신뢰 점수를 동기화하는 간격
.session.tracking-enabled boolean true AI 기반 세션 추적 활성화

HCAD 속성

hcad 접두사 아래의 계층적 컨텍스트 인식 탐지(HCAD) 속성으로, HcadProperties에 바인딩됩니다.

속성 타입 기본값 설명
hcad
.enabledbooleantrueHCAD 이상 탐지 엔진 활성화
.filter-orderint100보안 필터 체인에서의 HCAD 필터 순서
.similarity.hot-path-thresholddouble0.7핫 패스 평가 단계에서 사용하는 유사도 임계값
.baseline.learning.enabledbooleantrue지속적 기준선 학습 활성화
.baseline.bootstrap.initial-samplesint10초기 기준선을 허용하기 전 필요한 부트스트랩 샘플 수
.baseline.statistical.min-samplesint20통계 기반 기준선 갱신에 필요한 최소 샘플 수

자율 보안 속성

속성 타입 기본값 설명
contexa.autonomous
.enabledbooleantrue자율 보안 응답 처리 활성화
.event-timeoutlong30000자율 이벤트 처리 타임아웃 (밀리초 단위)

세션 보안 속성

security.session 아래의 속성으로, SecuritySessionProperties에 바인딩됩니다.

속성 타입 기본값 설명
security.session
.cookie.name String SESSION 세션 쿠키 이름
.header.name String X-Auth-Token 토큰 기반 세션의 세션 헤더 이름
.bearer.enabled boolean true Bearer 토큰 세션 확인 활성화

전체 구성 예제

모든 주요 구성 섹션을 보여주는 전체 application.yml입니다:

YAML
contexa:
  enabled: true
  infrastructure:
    mode: standalone
    redis:
      enabled: true
    kafka:
      enabled: false
    observability:
      enabled: true
      open-telemetry-enabled: true

  hcad:
    enabled: true
    similarity:
      hot-path-threshold: 0.7
    baseline:
      min-samples: 10
      cache-ttl: 3600

  llm:
    enabled: true
    advisor-enabled: true
    chat-model-priority: ollama,anthropic,openai
    embedding-model-priority: ollama,openai
    chat:
      ollama:
        base-url: http://127.0.0.1:11434
        model: qwen3.5:9b
        keep-alive: 24h
    embedding:
      ollama:
        dedicated-runtime-enabled: false
        model: mxbai-embed-large

  rag:
    enabled: true
    defaults:
      top-k: 10
      similarity-threshold: 0.7
    etl:
      vector-table-name: vector_store
      chunk-size: 500
      chunk-overlap: 50

  autonomous:
    enabled: true
    event-timeout: 30000

hcad:
  enabled: true
  filter-order: 100
  baseline:
    learning:
      enabled: true

security:
  zerotrust:
    enabled: true
    mode: ENFORCE
    threat:
      initial: 0.3
    cache:
      ttl-hours: 24
      session-ttl-minutes: 30
    redis:
      timeout: 5
      update-interval-seconds: 30

  session:
    cookie:
      name: SESSION
    header:
      name: X-Auth-Token
    bearer:
      enabled: true

spring:
  auth:
    state-type: SESSION
  ai:
    security:
      layer1:
        model: qwen2.5:14b
      layer2:
        model: exaone3.5:latest
      tiered:
        prompt-compression:
          enabled: true
    anthropic:
      api-key: ${ANTHROPIC_API_KEY:}
    openai:
      api-key: ${OPENAI_API_KEY:}
    vectorstore:
      pgvector:
        dimensions: 1024
        batch-size: 100
        top-k: 100
        similarity-threshold: 0.5
        document:
          chunk-size: 1000
          chunk-overlap: 200

ContexaProperties 빠른 참조

ContexaProperties의 핵심 contexa.* 속성 목록입니다. 각 섹션은 상세 하위 페이지로 연결됩니다.

마스터 스위치

속성타입기본값설명
contexa.enabledbooleantrueContexa 플랫폼 전체 마스터 스위치.

HCAD (행동 분석)

속성타입기본값설명
contexa.hcad.enabledbooleantrueContexa 쪽 HCAD 래퍼 토글 활성화.
contexa.hcad.similarity.hot-path-thresholddouble0.7ContexaProperties가 노출하는 핫 패스 유사도 임계값.
contexa.hcad.baseline.min-samplesint10Contexa 래퍼 속성의 기준선 최소 샘플 수.
contexa.hcad.baseline.cache-ttlint3600Contexa 래퍼 속성의 기준선 캐시 TTL(초).

LLM (언어 모델)

속성타입기본값설명
contexa.llm.enabledbooleantrueLLM 통합 활성화.
contexa.llm.advisor-enabledbooleantrueAdvisor 체인 활성화.
contexa.llm.chat-model-priorityStringollama,anthropic,openai채팅 모델 제공자 우선순위.
contexa.llm.embedding-model-priorityStringollama,openai임베딩 모델 제공자 우선순위.
contexa.llm.chat.ollama.base-urlString""Ollama 채팅 런타임 URL.
contexa.llm.embedding.ollama.dedicated-runtime-enabledbooleanfalse전용 임베딩 런타임 사용 여부.

RAG (검색 증강 생성)

속성타입기본값설명
contexa.rag.enabledbooleantrueRAG 파이프라인 래퍼 활성화.
contexa.rag.defaults.top-kint10기본 검색 개수.
contexa.rag.defaults.similarity-thresholddouble0.7기본 유사도 임계값.
contexa.rag.etl.vector-table-nameStringvector_storeETL 출력용 논리 벡터 테이블명.

자율 에이전트

속성타입기본값설명
contexa.autonomous.enabledbooleantrue자율 보안 처리 활성화.
contexa.autonomous.event-timeoutlong30000이벤트 처리 타임아웃(밀리초).

인프라스트럭처

속성타입기본값설명
contexa.infrastructure.modeenumSTANDALONESTANDALONE (인메모리) 또는 DISTRIBUTED (Redis + Kafka).
contexa.infrastructure.redis.enabledbooleantrue분산 캐싱을 위한 Redis 활성화.
contexa.infrastructure.kafka.enabledbooleantrue이벤트 스트리밍을 위한 Kafka 활성화.
contexa.infrastructure.observability.enabledbooleantrue관측 가능성 활성화.
contexa.infrastructure.observability.open-telemetry-enabledbooleantrueOpenTelemetry 통합 활성화.
contexa.enterprise.enabledbooleanfalse런타임이 제공할 때 엔터프라이즈 전용 통합 활성화.

SaaS 통합 (Enterprise)

속성타입기본값설명
contexa.saas.enabledbooleanfalseContexa Cloud와의 SaaS 통합 활성화.
contexa.saas.endpointStringhttps://saas.ctxa.aiSaaS 플랫폼 엔드포인트 URL.
contexa.saas.outbox-batch-sizeint50이벤트 전달용 Outbox 배치 크기.
contexa.saas.max-retry-attemptsint10실패한 이벤트 전달의 최대 재시도 횟수.
contexa.saas.dispatch-interval-mslong30000SaaS 전달 작업의 디스패치 주기.