Mumu-Kim
close
프로필 배경
프로필 로고

Mumu-Kim

  • 분류 전체보기 (120) N
    • 개발 (3)
    • 생각 정리 (10)
    • 학습기록 (102) N
      • Unity (5)
      • DB (12)
      • React (20)
      • JavaScript (6)
      • Node.js (5)
      • Python (11)
      • C++ 소켓 프로그래밍 (11)
      • C++ 멀티스레딩 (14)
      • AIM (18) N
    • 책,강의 (3)
  • 홈
  • 태그
  • 방명록

[TIL] 2026.09.08

LangGraph 기초1. LangGraph가 필요한 이유LangGraph: 복잡한 제어 흐름과 상태 변화를 명시적인 그래프로 관리하게 해주는 프레임워크기존 LCEL Chain은 입력을 정해진 순서로 처리하는 직선형 파이프라인(입력 → 프롬프트 → 모델 → 출력 파서 → 결과)에 적합조건 분기, 반복/종료, 중간 상태 저장, 사람의 개입, 병렬 처리, 장애 복구 같은 요구사항은 Chain만으로 구현 시 제어 로직이 Chain 밖의 조건문/반복문으로 흩어짐분기·반복·상태 저장이 늘어날수록 실행 흐름 추적과 중간 재시작이 어려워짐검색 결과가 부족하면 질문을 바꿔 재검색하는 예시를 Python 루프로 구현하면, 모델 호출은 Chain 안에 있어도 반복/종료 조건은 Python 루프가 제어하게 되어 흐름 관리가..

  • format_list_bulleted 학습기록/AIM
  • · 2026. 9. 9.
  • textsms

[TIL] 2026.09.04

RAG 평가: 검색 지표와 RAGAS·LLM-as-Judge1. RAG 평가 방법의 종류RAG 평가: 검색기가 정답 근거를 찾는지와, 그 근거로 만든 답변의 품질을 각각 측정하는 과정청크 크기, 검색 문서 수, 검색 전략, 프롬프트 선택의 기준을 세우려면 대표 질문 몇 개를 눈으로 보는 것만으로는 느리고 주관적임평가는 한 가지 도구에만 의존하지 않고 목적에 따라 조합함수동 확인대표 질문과 답변을 직접 읽는 방식초기 개발과 빠른 검증에 적합검색 지표Hit@k, Precision@k, Recall@k, MRR로 검색 설정을 비교검색 설정 비교에 적합RAGASLLM을 이용해 답변의 근거성과 관련성을 평가파이프라인 비교에 적합LLM-as-Judge도메인에 맞는 기준을 직접 정의해 평가규정 답변의 정확성·완전성 ..

  • format_list_bulleted 학습기록/AIM
  • · 2026. 9. 5.
  • textsms

[TIL] 2026.09.03

벡터 DB와 RAG 검색 고도화1. 벡터 DB란?벡터 DB: 임베딩 벡터를 저장하고 유사도 검색을 수행하는 전용 데이터베이스일반 DB는 정확한 값 일치나 범위 검색에 최적화되어 있으나, 벡터 검색은 "가장 비슷한 벡터 k개"를 찾는 유사도 검색이 필요함RDB가 데이터를 표(Table)로 관리한다면, 벡터 DB는 데이터를 지도(Map)처럼 다차원 좌표 공간에 점으로 배치해 관리함좌표에서의 위치가 곧 의미이고, 검색은 거리를 재는 것임동작 흐름저장: 문서 → 청킹 → 임베딩 모델 → 벡터 + 메타데이터 → 벡터 DB에 저장(인덱스 구축)검색: 질문 → 임베딩 모델 → 질문 벡터 → 벡터 DB에서 ANN 검색 → 상위 k개 문서 반환검색 결과로 벡터가 아닌 원본 텍스트를 돌려받아야 LLM에 전달할 수 있으므로..

  • format_list_bulleted 학습기록/AIM
  • · 2026. 9. 4.
  • textsms

[TIL] 2026.09.02

LangChain 구조화 출력 · Tool/Agent · RAG1. Output Parser와 구조화 출력 검증 단계Output Parser: 체인의 마지막에 연결해 LLM 응답을 필요한 Python 타입으로 변환하는 컴포넌트get_format_instructions()로 출력 규칙 문자열을 만들어 프롬프트에 넣는 방식이며, 모델에게 형식을 강제하는 것이 아니라 자연어 지시로 형식 준수를 유도하는 것모델이 지시를 어기면(설명 문장 추가, 필드 누락 등) 파싱 또는 검증 오류가 발생하므로 애플리케이션에서 이 실패를 처리해야 함PromptTemplate.partial(): 프롬프트 변수 중 일부(예: format_instructions)를 미리 채워 새 PromptTemplate을 만드는 메서드. 남은 변수..

  • format_list_bulleted 학습기록/AIM
  • · 2026. 9. 3.
  • textsms

[TIL] 2026.09.01

LangChain 기초1. 프롬프트 엔지니어링프롬프트 엔지니어링: LLM이 사용자 의도를 정확히 파악하고 최적의 결과물을 생성하도록 입력을 설계·최적화하는 기술이자 과학단순 질문을 넘어 문맥, 지침, 예시를 제공해 원하는 결과물로 유도하는 과정프롬프트 작성 방식과 권장 사항은 모델 및 버전에 따라 다를 수 있어, 실제 적용 시 사용 모델의 공식 문서를 함께 확인해야 함핵심 구성 요소지시: 모델이 수행할 구체적인 작업/명령. 모호함을 피하고 구체적일수록 좋음문맥: 모델이 더 나은 응답을 생성하도록 유도하는 배경 정보. 모델이 상황을 추측하게 두지 않고 필요한 정보를 충분히 제공입력 데이터: 모델이 처리해야 할 실제 내용. XML 태그나 특수 기호로 지시 사항과 명확히 구분출력 지시자: 응답의 형식이나 유형..

  • format_list_bulleted 학습기록/AIM
  • · 2026. 9. 2.
  • textsms

[TIL] 2026.08.27

Python 비동기 처리와 Gemini API 비동기 요청1. 동기와 비동기동기(sync) 방식: 한 작업이 끝날 때까지 기다린 후 다음 작업을 시작비동기(async) 방식: 한 작업이 결과를 기다리는 동안 다른 작업을 진행비동기는 계산 자체보다 결과를 기다리는 시간이 긴 작업(네트워크 API 요청, 데이터베이스 조회, 파일 입출력 등)을 여러 개 처리할 때 적합장점여러 입출력 대기 작업을 겹쳐서 처리해 전체 처리 시간을 줄일 수 있음서버 환경에서는 응답을 기다리는 동안 다른 요청을 처리할 수 있어 동시 처리 효율이 높아짐단점코드 흐름이 동기 방식보다 복잡해짐 (async/await 문법, 이벤트 루프 이해 필요)무분별하게 동시 요청을 늘리면 API 호출 한도 초과나 비용 증가로 이어질 수 있음2. 이벤..

  • format_list_bulleted 학습기록/AIM
  • · 2026. 8. 28.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • ···
  • 20
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (120) N
    • 개발 (3)
    • 생각 정리 (10)
    • 학습기록 (102) N
      • Unity (5)
      • DB (12)
      • React (20)
      • JavaScript (6)
      • Node.js (5)
      • Python (11)
      • C++ 소켓 프로그래밍 (11)
      • C++ 멀티스레딩 (14)
      • AIM (18) N
    • 책,강의 (3)
최근 글
인기 글
최근 댓글
태그
  • #AI캠퍼스
  • #AI에이전트엔지니어
  • #멀티캠퍼스부트캠프
  • #부트캠프
  • #오블완
  • #티스토리챌린지
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바