티스토리챌린지 12

법률 AI분야 사용 모델

법률 AI에서 사용할 모델은 일반적으로 아래와 같은 모델과 기술이 활용됩니다. 1. 기초 언어 모델1) GPT 계열 모델 (예: GPT-4)  자연어 처리(NLP)에 강점이 있어 법률 문서 분석, 요약, 질문응답(Q&A)에 적합.  활용 사례:  법률 자문 제공 (비구속적),  계약서나 법률 문서의 자동 요약,  사용자의 질문에 대한 법률 정보 제공2) BERT 계열 모델 (예: LegalBERT)  문장 간의 관계 이해와 문맥적 분석에 강함.  특히 법률 전문 데이터로 추가 학습된 버전이 적합.  활용 사례:  법적 문구의 정확한 해석, 계약 조건 간의 충돌 탐지2. 법률 전문화 모델1) LegalBERT  법률 문서와 판례 데이터를 학습하여 만들어진 모델.  판례 검색, 법률 문서 태깅 및 분류에 유..

AI Service 2024.11.28

Retry 패턴 이란 ?

Retry 패턴은 애플리케이션이 일시적인 오류나 실패 상황에서 요청을 반복적으로 시도함으로써 안정성과 가용성을 높이는 설계 패턴입니다. 이는 네트워크 장애, 일시적인 서비스 중단, 타이밍 문제 등과 같은 문제를 해결하는 데 유용합니다. Source : https://learn.microsoft.com/en-us/azure/architecture/patterns/retry 1.Retry 패턴의 주요 요소1) Retry 조건:재시도를 할 오류를 정의합니다.보통 일시적인 네트워크 오류나 HTTP 상태 코드(예: 500, 503, 504)와 같은 조건에서 재시도를 수행합니다.치명적인 오류(예: 400, 401)는 재시도를 하지 않도록 설정합니다. 2) Retry 횟수 (Max Retry Attempts):요청을..

Rate limiting 패턴 이란 ?

Rate Limiting은 시스템의 안정성과 보안을 보장하기 위해 단위 시간당 요청 수를 제한하는 설계 패턴입니다. 이 패턴은 클라이언트가 서버로 과도한 요청을 보내는 것을 방지하고, 서버 자원의 사용을 효율적으로 관리하며, 서비스 품질을 유지하는 데 중요한 역할을 합니다. 1.핵심 개념1) 요청 수 제한 : 클라이언트가 보낼 수 있는 요청 수를 정해진 단위 시간(초, 분, 시간, 일 등) 안에서 제한합니다.예: "1분에 최대 100개의 요청만 허용"2)제한 조건IP 주소 기반 제한 : 특정 IP에서 오는 요청만 제한사용자별 제한 : 사용자의 인증 정보(Token, API Key 등)에 기반한 요청 제한리소스별 제한 : API 엔드포인트별로 요청 제한3)정책 유형Fixed Window : 정해진 시간 간..

Proxy 패턴 이란 ?

1.프록시 패턴의 시작기원 : 프록시 패턴은 1994년 GoF의 디자인 패턴 책에서 소개되었습니다. 이 책은 객체지향 소프트웨어 설계에서 공통적으로 사용되는 23가지 디자인 패턴을 정리한 첫 번째 공식 문헌입니다. 프록시 패턴은 이 책에서 구조적 패턴(Structural Pattern)으로 분류되며, 객체 간의 관계와 구조를 다루는 패턴 중 하나로 설명됩니다.사용 목적 : 컴퓨팅 자원이 제한된 환경에서, 실제 객체를 생성하거나 접근하는 과정을 제어하기 위한 필요성에서 시작되었습니다. 초기 컴퓨터 시대에는 메모리와 처리 속도에 제약이 있었기 때문에 객체의 생성 비용을 줄이고 효율성을 높이는 설계 방식이 중요했습니다. 2. 프록시 패턴의 사용 사례1) 초기 컴퓨터 네트워크 :원격 호출(Remote Metho..

Aggregator (집계자) 패턴 이란 ?

Aggregator 패턴은 소프트웨어 디자인 패턴 중 하나로, 여러 소스의 데이터를 통합하거나 집계하는 역할을 수행하는 데 사용됩니다. 이 패턴은 특히 데이터의 중앙 집중화와 단순화된 인터페이스 제공에 중점을 둡니다. Aggregator는 일반적으로 여러 개의 독립된 객체, 서비스, 또는 데이터 소스를 수집하고 이 데이터를 클라이언트가 사용하기 쉽도록 조작하거나 처리합니다.1.Aggregator 패턴의 탄생Aggregator 패턴의 기원과 사용 시점은 특정 시기나 인물로 명확히 정의되지 않습니다. 이는 시스템 구축 프로젝트의 거대화 및 소프트웨어 공학과 디자인 패턴의 발전 과정에서 자연스럽게 등장한 개념 중 하나입니다. Aggregator 패턴은 데이터 통합과 시스템 설계의 요구로 인해 유기적으로 발전해..

BFF (Backend for Frontend) 패턴 이란 ?

BFF (Backend For Frontend) 패턴은 마이크로서비스 아키텍처에서 백엔드와 프론트엔드 간의 인터페이스를 효율적으로 구성하기 위해 사용하는 패턴입니다. 이 패턴은 각 클라이언트 유형(웹, 모바일 앱 등)에 특화된 백엔드 인터페이스를 제공하는 방법입니다. BFF 패턴의 주요 목표는 클라이언트별로 필요한 데이터를 최적화하여 제공함으로써 성능을 향상시키기 위하여 주로 사용됩니다. 1. BFF 패턴의 시작과 넷플릭스에서의 활용넷플릭스는 사용자 수가 폭발적으로 증가하면서, 다양한 클라이언트에 맞춘 UI와 성능 최적화가 중요해졌습니다. 예를 들어, 모바일 앱과 웹 브라우저의 요구 사항은 다르며, 동일한 백엔드 API로 모든 클라이언트를 지원하면 비효율적이거나 불필요한 데이터가 전송될 수 있었습니다.이..

Sidecar 패턴 이란 ?

Sidecar 패턴은 마이크로서비스 아키텍처에서 보조 기능을 담당하는 프로세스를 주 애플리케이션과 분리하여 독립적인 프로세스로 실행하는 방법입니다. 이 패턴은 주로 애플리케이션의 주요 기능과 관계없이 추가적인 기능을 제공하는 데 활용됩니다. Sidecar는 '옆에 붙어 다니는 차'라는 뜻으로, 주 프로세스와 함께 배포되지만 별도의 컨테이너나 프로세스로 동작합니다. 주로 Kubernetes 환경에서 자주 사용되며, 이 패턴을 통해 애플리케이션의 확장성과 관리성을 높일 수 있습니다.Source : https://learn.microsoft.com/en-us/azure/architecture/patterns/sidecar 1. Sidecar 패턴의 발전Sidecar 패턴은 마이크로서비스 아키텍처가 확산되면서 ..

Bulkhead 패턴 이란 ?

Bulkhead 패턴은 소프트웨어 설계에서 시스템의 일부 컴포넌트나 서비스를 독립된 구획으로 분리하여 하나의 컴포넌트에서 발생한 오류가 다른 부분에 영향을 미치지 않도록 하는 설계 패턴입니다. 이 패턴은 주로 마이크로서비스 아키텍처나 분산 시스템에서 사용됩니다. 1.    Bulkhead 패턴의 기원Bulkhead 패턴의 기원은 소프트웨어 개발보다는 해양 산업에서 사용된 물리적 설계 개념에서 시작되었습니다. 선박이 침몰하는 것을 방지하기 위해 내부에 여러 격벽(Bulkhead)을 두어 한 구역에 물이 들어와도 다른 구역으로 확산되지 않게 했습니다. 이 아이디어가 소프트웨어 개발로 넘어오면서 시스템 안정성을 높이는 방법으로 Bulkhead 패턴이 채택된 것입니다. 2. 소프트웨어에서의 Bulkhead 패턴..

Service Mesh 패턴 이란 ?

서비스 메쉬(Service Mesh) 패턴은 2010년대 중반에 등장했으며, 미국의 차량 공유 서비스인 Lyft가 2016년에 이 패턴을 최초로 대규모로 도입했습니다. Lyft는 마이크로서비스 아키텍처로의 전환 과정에서 서비스 간 통신의 관리 및 제어 문제를 해결하기 위해 Envoy 프록시라는 오픈소스 소프트웨어를 개발했고, 이를 통해 서비스 메쉬의 개념이 탄생하게 되었습니다. 1. 서비스 메쉬의 기원과 초기 도입기원 : 2010년대 초반부터 많은 기업들이 기존의 모놀리식(Monolithic) 애플리케이션을 마이크로서비스 아키텍처로 전환하면서, 서비스 간 통신과 관련된 다양한 문제에 직면하게 되었습니다. 서비스가 점점 더 분리되고 많아지면서 통신이 복잡해졌고, 보안, 로깅, 모니터링, 장애 복구 등 관리..

Strangler Pattern 이란 ?

1.개요Strangler 패턴은 소프트웨어 아키텍트 **마틴 파울러(Martin Fowler)**가 처음 제안한 개념입니다. 그는 2004년에 자신의 블로그를 통해 Strangler 패턴의 개념을 발표했으며, 기존 시스템을 새로운 시스템으로 점진적으로 전환하는 방식의 유용성을 강조했습니다. 마틴 파울러는 호주에서 자생하는 "strangler fig" 식물이 기존 나무를 서서히 감싸고 대체하는 생장 방식에서 이 아이디어를 얻었습니다.이 패턴을 통해 기존 시스템을 점진적으로 대체할 수 있는 방법을 설명하면서, 특히 시스템 운영 중에도 리스크를 최소화하며 새로운 기능을 도입할 수 있는 점을 장점으로 언급했습니다. 이는 레거시 시스템을 모던한 아키텍처로 전환하는 과정에서 매우 유용한 접근 방식으로, 이후 다양한..