제4장. 애플리케이션을 위한AI 아키텍처
이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com
의 기존 애플리케이션과 달리, AI 기반 시스템은 데이터 처리, 모델 통합, 보안 및 성능 측면에서 새로운 과제를 제시합니다. 개발자는 RAG, 벡터 데이터베이스, 함수 호출 에이전트, 동적 캐싱과 같은 새로운 구성 요소와 패턴을 통합해야 합니다. 경험 많은 Java 개발자에게 접근 제어, 디스커버리, 데이터 파이프라인 개념은 낯설지 않습니다. 여러분은 수년간 이러한 원칙을 적용하여 안전하고 확장 가능하며 신뢰할 수 있는 시스템을 구축해 왔습니다.
이제 동일한 엔터프라이즈 패턴을 모델, prompt, 데이터라는 새로운 리소스 집합에 적용하는 것이 무엇을 의미하는지 심층적으로 살펴보겠습니다. 본 장에서는 AI가 융합된 애플리케이션의 핵심 아키텍처 요소와 개발자가 이러한 요소를 구현할 때 고려해야 할 요소들을 검토합니다.
기존 아키텍처를 넘어: AI 기반 시스템에새로운 접근이 필요한 이유 xml-ph-0000@deepl.internal
AI 기반 엔터프라이즈 애플리케이션을 구축하는 것은 단순히 새로운 라이브러리를 추가하거나 다른 API를 호출하는 문제가 아닙니다. 이 과정은 사고 방식의 전환을 요구합니다. 우수한 소프트웨어 설계 원칙, 모듈성, 확장성, 유지 보수성은 여전히 적용되지만, AI가 융합된 시스템은 새로운 도전 과제를 제시하며, 이는 다른 관점과 약간 수정된 해결책을 통해 해결되어야 합니다. 결정론적 논리를 위해 구축된 전통적 아키텍처는 AI 기반 애플리케이션의 확률적·데이터 중심적 특성을 처리할 준비가 되어 있지 않은 경우가 많습니다. 이는 이러한 유형의 애플리케이션을 설계, 구축, 그리고 유지 보수하는 방식에 중대한 영향을 미칩니다.
전통적 애플리케이션은 명시적이고 하드코딩된 논리를 따릅니다. 동일한 입력으로 메서드를 호출하면 매번 동일한 출력을 기대할 수 있습니다. AI 모델, 특히 LLMs은 2장에서 배운 바와 같이 다르게 작동합니다. 그들의 응답은 통계적 확률에 기반해 생성되므로, 동일한 prompt에도 미묘하거나 현저하게 달라질 수 있습니다. 이러한 비결정성은 모호성을 처리하고, 출력을 검증하며, 모델 행동을 안내하고 환각이나 유해 콘텐츠 같은 바람직하지 않은 결과를 방지하기 위한 안전장치를 구현할 수 있는 아키텍처를 요구합니다. 오락이나 소셜 미디어용으로 구축된 챗봇은 일반적으로 읽기 전용입니다. 농담을 제안하거나, 이야기를 생성하거나, 일상적인 질문에 답할 수 있습니다. 잘못되거나 이상한 응답이 일반적으로 해를 끼치지는 않습니다. 이러한 시스템은 행동을 유발하거나 비즈니스 프로세스에 연결되지 않습니다. 모델 출력은 가벼운 필터링, 구문적 가드레일 또는 검증만 거친 후 사용자에게 직접 표시되는 경우가 많습니다.
이제 은행 앱, 보험 시스템, 기업 지원 도구에 내장된 AI 기능을 생각해 보십시오. AI는 상품 변경을 제안하거나 거래를 처리하거나 ...
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