본문 바로가기

반응형

AI

(8)
Azure OpenAI 기반 사내 문서 검색 시스템 구성 방식: AI Search, Private Endpoint, 보안까지 "사내 문서를 검색하려면 키워드를 정확히 알아야 합니다." 이 말에 공감한다면, 자연어로 질문하면 관련 문서를 찾아 답변을 생성해주는 시스템이 필요한 상황입니다. Azure OpenAI와 AI Search를 결합하면 이 구조를 Azure 환경 안에서 완결적으로 구성할 수 있습니다.핵심 요약Azure AI Search는 키워드 검색, 벡터 검색, Semantic Ranker를 결합한 Hybrid Search를 제공하여, 단일 벡터 검색보다 높은 검색 정확도를 구현할 수 있습니다.Azure OpenAI Service는 Azure 테넌트 내에서 모델을 호출하므로, 사내 데이터가 외부로 전송되지 않습니다.Integrated Vectorization 기능으로 문서 업로드 → Chunking → Embedding ..
Vector DB 비교: Pinecone, Weaviate, pgvector, OpenSearch 선택 기준 RAG 시스템을 구축할 때 Vector DB 선택은 검색 품질, 운영 비용, 확장성에 직접적인 영향을 미칩니다. Pinecone, Weaviate, pgvector, OpenSearch 각각의 특성과 상황별 선택 기준을 정리합니다.핵심 요약Vector DB는 고차원 벡터를 저장하고 유사도 검색(ANN)을 수행하는 데이터베이스입니다. RAG 파이프라인에서 문서 검색 단계를 담당합니다.Pinecone은 완전 관리형으로 운영 부담이 적지만, 벤더 종속과 비용 예측이 어려울 수 있습니다.Weaviate는 모듈형 아키텍처로 유연하지만, 클러스터 운영 경험이 필요합니다.pgvector는 PostgreSQL 확장으로 기존 인프라를 활용할 수 있지만, 대규모 벡터 검색에서 성능 한계가 있습니다.OpenSearch는 키..
RAG Chunking 전략: 문서를 나누는 기준과 성능 영향 Chunking은 RAG 시스템에서 원본 문서를 검색 가능한 단위로 분할하는 과정입니다. Chunk 크기와 분할 방식은 검색 정밀도, 응답 품질, 비용에 직접적인 영향을 미칩니다.핵심 요약Chunking은 RAG 파이프라인에서 검색 품질을 결정하는 가장 중요한 단일 변수입니다.Chunk가 너무 작으면 문맥이 유실되고, 너무 크면 노이즈가 섞여 검색 정밀도가 떨어집니다.전략 선택은 문서 구조, 질문 유형, 응답 요구사항에 따라 달라집니다.운영 환경에서는 단일 전략보다 Overlap, Parent-Child, Metadata 보강을 조합하는 것이 일반적입니다.Chunk 크기는 이론적 정답이 없으므로, 평가 데이터셋을 기반으로 실험하고 측정하는 방식이 필요합니다.1. 왜 Chunking이 중요한가RAG 시스템..
RAG와 Fine-tuning 차이: LLM 커스터마이징 전략 선택 기준 LLM을 우리 데이터에 맞게 활용하려면 RAG와 Fine-tuning 중 어떤 방식을 선택해야 하는지, 비용·운영·품질 관점에서 판단 기준을 정리합니다.핵심 요약RAG는 외부 지식을 검색하여 프롬프트에 제공하는 방식이고, Fine-tuning은 모델 자체를 추가 학습시키는 방식입니다.자주 변경되는 지식 기반 시스템에는 RAG가, 특정 도메인의 언어 패턴이나 출력 형식을 학습시켜야 할 때는 Fine-tuning이 적합합니다.두 방식은 상호 배타적이지 않으며, 운영 환경에서는 결합하여 사용하는 경우도 있습니다.선택 기준은 "모델이 무엇을 알아야 하는가(지식)" vs "모델이 어떻게 답해야 하는가(행동)"로 구분할 수 있습니다.비용, 운영 복잡도, 데이터 보안 요건에 따라 최적 전략이 달라집니다.1. 문제 상..
AWS Bedrock 기반 RAG 챗봇 아키텍처 설계: Knowledge Bases, Agent, 보안까지 AWS Bedrock Knowledge Bases를 중심으로 사내 문서 기반 RAG 챗봇을 설계할 때, 어떤 서비스를 선택하고 어떻게 연결하는지를 아키텍처 관점에서 정리합니다.핵심 요약AWS Bedrock Knowledge Bases는 S3 문서를 자동으로 Chunking → Embedding → 벡터 저장까지 처리하는 관리형 RAG 파이프라인입니다.벡터 저장소로 OpenSearch Serverless를 사용하며, VPC 내부에서 프라이빗하게 통신할 수 있습니다.Bedrock Agent를 결합하면 단순 Q&A를 넘어 외부 API 호출, 다단계 추론이 가능한 챗봇을 구성할 수 있습니다.데이터 유출 방지를 위해 VPC Endpoint, IAM 최소 권한, S3 버킷 정책, Guardrails를 조합하여 보안..
AI 애플리케이션 보안 리스크: Prompt Injection과 데이터 유출 LLM 기반 서비스를 운영할 때 반드시 고려해야 할 보안 위협과, 각 위협에 대한 실무 방어 전략을 정리합니다.핵심 요약LLM 기반 애플리케이션은 기존 웹 애플리케이션과 다른 공격 표면(Attack Surface)을 가집니다.Prompt Injection은 사용자 입력으로 시스템 프롬프트를 우회하거나 의도하지 않은 동작을 유발하는 공격입니다.Indirect Injection은 외부 데이터(RAG 문서, 웹 검색 결과 등)에 악의적 지시를 삽입하는 공격입니다.데이터 유출은 시스템 프롬프트, 학습 데이터, 사용자 대화 내역이 외부로 노출되는 위험입니다.단일 방어 수단으로는 충분하지 않으며, 입력 검증 + 출력 필터링 + 권한 분리를 조합해야 합니다.1. 왜 AI 애플리케이션 보안이 다른가사내 챗봇을 만들어서..
Multi-modal RAG 구현 전략: 이미지, 테이블, 차트를 RAG에 통합하기 Multi-modal RAG는 텍스트뿐 아니라 이미지, 테이블, 차트 등 다양한 형태의 정보를 검색하고 LLM 응답에 활용하는 아키텍처 패턴입니다.핵심 요약기본 RAG는 텍스트만 처리하므로, PDF 내 차트, 테이블, 다이어그램의 정보가 유실됩니다.Multi-modal RAG는 이미지와 테이블을 별도로 추출하고, 각각에 적합한 임베딩 또는 요약 전략을 적용합니다.구현 방식은 크게 세 가지입니다: 멀티모달 임베딩, 텍스트 요약 후 임베딩, 원본 보존 후 Vision LLM 활용.문서 유형과 비용 제약에 따라 전략이 달라지며, 단일 방식으로 모든 문서를 처리하기 어렵습니다.프로덕션 환경에서는 파싱 품질, 비용, 지연 시간의 trade-off를 고려한 하이브리드 접근이 필요합니다.1. 왜 Multi-modal..
RAG란 무엇인가: LLM 애플리케이션 아키텍처 관점에서 이해하기 RAG(Retrieval-Augmented Generation)는 LLM이 응답을 생성하기 전에 외부 지식 저장소에서 관련 문서를 검색하여 컨텍스트로 제공하는 아키텍처 패턴입니다.핵심 요약RAG는 LLM의 학습 데이터 한계를 보완하기 위해 외부 지식을 실시간으로 검색하여 응답에 활용하는 구조입니다.핵심 구성 요소는 문서 수집(Ingestion), 임베딩(Embedding), 벡터 저장소(Vector Store), 검색(Retrieval), 생성(Generation) 5단계입니다.Fine-tuning과 달리 모델 재학습 없이 지식을 업데이트할 수 있어 운영 비용과 유연성 측면에서 유리합니다.검색 품질이 응답 품질을 결정하므로, Chunking 전략과 Embedding 모델 선택이 설계의 핵심입니다.프로토타..

반응형