blevels

Home / AI / AI 용어사전 / Boolean(불리언) — AI 로직을 true·false 하나로 제어하는 원리

TERM

Boolean(불리언) — AI 로직을 true·false 하나로 제어하는 원리

게시일 2026-04-30수정일 2026-04-30
공식 링크
On this page

AI가 어떤 결정을 내리든, 그 결정의 최소 단위는 참(true)과 거짓(false) 두 값이다. Boolean(불리언)은 모든 AI 로직의 가장 근본적인 데이터 타입이다.

정의

Boolean(불리언)은 참(true)과 거짓(false) 두 가지 값만 가지는 데이터 타입이다. 수학자 조지 불(George Boole)의 이름에서 유래했으며, 이진 논리(Binary Logic)를 프로그래밍으로 구현한 것이다. 조건문·반복문·논리 연산자의 기반이 되며, AI 모델의 의사결정 출력 역시 궁극적으로 수많은 불리언 비교 연산의 결과물이다.

불리언 생성과 비교 연산자

불리언 값은 직접 할당하거나 비교 연산자를 통해 생성된다.

// 직접 할당
const isLoggedIn = true;
const hasApiKey = false;

// 비교 연산으로 생성
const isPremiumUser = user.plan === 'pro'; // 동등 비교 (===)
const isExpired = Date.now() > token.expiresAt; // 크기 비교
const isLongPrompt = prompt.length > 1000; // 숫자 비교

=== (엄격 동등)과 == (느슨한 동등)의 차이는 중요하다. ===는 값과 타입을 모두 비교하며, '1' === 1false다. ==는 타입 변환 후 비교해 '1' == 1true가 된다. AI 코드에서는 예측 불가능한 타입 변환을 피하기 위해 === 사용을 원칙으로 한다.

AD

논리 연산자

불리언 값은 논리 연산자로 결합해 복잡한 조건을 표현한다.

// AND (&&): 모두 true일 때만 true
const canCallAI = isLoggedIn && hasApiKey && !isRateLimited;

// OR (||): 하나라도 true면 true
const showFallback = isError || isTimeout || isEmpty;

// NOT (!): true ↔ false 반전
const isGuest = !isLoggedIn;

// 복합 조건 — AI 기능 사용 허용 여부
if (isLoggedIn && (isPremiumUser || dailyUsage < FREE_LIMIT)) {
  await callAIAPI(prompt);
}

Truthy와 Falsy

JavaScript를 비롯한 많은 언어에서는 Boolean이 아닌 값도 조건문에서 true 또는 false로 평가된다. 이를 Truthy(참으로 평가되는 값)와 Falsy(거짓으로 평가되는 값)라고 한다.

JavaScript의 Falsy 값: false, 0, '' (빈 문자열), null, undefined, NaN

const response = await fetchAI();
// response가 null이거나 빈 값이면 분기
if (response && response.content) {
  displayResult(response.content);
} else {
  showErrorMessage();
}

AI API 응답 처리에서 Truthy/Falsy 평가는 빈 응답·null 응답 방어 로직의 핵심이다.

AD

플래그 변수 패턴

불리언을 상태 플래그(flag)로 활용하면 복잡한 상태를 간결하게 관리할 수 있다.

let isLoading = false;
let isError = false;
let isStreaming = false;

async function startAIStream(prompt) {
  isLoading = true;
  isError = false;
  try {
    isStreaming = true;
    await streamAIResponse(prompt, onToken);
  } catch {
    isError = true;
  } finally {
    isLoading = false;
    isStreaming = false;
  }
}

활용 사례

  • 접근 제어: isAuthenticated, hasPermission, isPremium 등 불리언 플래그로 AI 기능 접근 권한 관리.
  • UI 상태 관리: React 등 프론트엔드 프레임워크에서 isLoading, isOpen, isDisabled 같은 불리언 상태로 컴포넌트 렌더링 제어.
  • AI 응답 필터링: 콘텐츠 안전 필터, 스팸 분류 모델의 최종 출력이 불리언 값(안전/위험, 스팸/정상)으로 표현됨.

관련 용어

  • conditional — 불리언 값으로 분기하는 if-else 조건문
  • comparison-operator — 불리언 값을 생성하는 비교 연산자
  • type-coercion — 타입 변환에 의해 Truthy/Falsy가 결정되는 메커니즘
  • null — Falsy 값 중 하나. "값이 없음"을 명시적으로 표현
AD