LangSmith

Haks.·2025년 6월 18일
0

Study

목록 보기
67/67

🚀 1. 소개

LangSmith는 대규모 언어 모델(LLM) 기반 애플리케이션의 개발 주기를 가속화하고, 특히 성능을 체계적으로 평가하고 개선하기 위해 설계된 강력한 프레임워크입니다.

이 문서는 ESG 설문 검수 AI 시스템에 LangSmith를 도입한 이유, 주요 기능, 실제 활용 방안, 도입 성과를 설명합니다.

💡 2. LangSmith 시스템 개요

LangSmith는 LLM 기반 애플리케이션의 개발, 디버깅, 테스트, 평가 과정을 지원하는 포괄적인 플랫폼입니다.

2.1. 핵심 기능
• 실시간 추적 (Real-time Tracing): LLM 호출, 체인 실행, 에이전트 동작 등을 추적하여 병목 진단 가능
• LLM-as-Judge: LLM이 AI 응답을 평가하는 자동화된 지능형 평가 시스템
• 데이터 관리 (Data Management): 데이터셋과 평가 결과를 저장, 관리, 버전 관리
• 대시보드 & 시각화: 평가 결과를 실시간 시각화
• 협업 기능: 팀원 간 결과 공유 및 피드백 용이

2.2. 주요 평가 방식
• LLM Judge: GPT-4o 등 강력한 모델을 활용해 다면적 기준으로 평가
• 구조화된 피드백: JSON 기반의 상세한 평가 및 개선 제안 제공
• 다중 평가자: 형식, 내용, 논리성 등 다각도로 평가
• 자동 데이터 추적: 모든 실행/결과 기록 저장

✨ 3. 주요 장점: LLM-as-Judge를 통한 지능형 평가

3.1. 지능형 평가 시스템 구현
• 의미 기반 평가: 키워드가 아닌 문맥/의미 이해 중심
• 도메인 전문성 반영: ESG 전문가처럼 평가 프롬프트 설계
• 구체적 피드백 제공: JSON 형태의 개선 제안 포함
• 일관성 있는 반복 평가: 동일 프롬프트 기준으로 성능 비교 용이

3.2. 기존 방식과의 비교

항목기존 방식LangSmith (LLM-as-Judge)
평가 기준키워드, 규칙 기반의미 기반, 구조/논리 분석
평가 깊이정오답, 피상적정성적, 심층적
피드백단순 결과구체적 제안 포함 JSON
확장성수작업 부담 큼자동 대규모 평가 가능
전문성반영 어려움프롬프트로 반영 가능

✅ LLM-as-Judge 평가 프롬프트 예시

judge_prompt = """
[Role]: 당신은 ESG 보고서 전문가이자 엄격한 평가관입니다.
[Task]: 제공된 ESG 섹션 내용을 평가하고 점수 및 개선안을 JSON으로 작성하세요.
[Evaluation Criteria]:
1. 섹션 구조의 논리성 (40점)
2. 표 형식 완성도 (35점)
3. 가독성과 표현 명확성 (25점)

[Output Format]:
{
  "total_score": float,
  "feedback_summary": "전반 요약",
  "criteria_scores": {
    "section_structure_logic": float,
    "table_format_completeness": float,
    "overall_readability": float
  },
  "improvement_suggestions": {
    "section_structure": [...],
    "table_format": [...],
    "readability": [...]
  }
}
"""

🗃️ 4. 데이터 관리 기능

4.1. 체계적인 데이터셋 관리의 이점
• 자동 데이터셋 생성: PoC 로그에서 입력/출력 추출
• 버전 관리: 데이터셋 이력 추적
• 결과 연결: 입력, 출력, 평가 결과를 LangSmith에 자동 저장
• 재사용성: 다양한 테스트에 반복 활용 가능

4.2. Python 예시

from langsmith import Client

class LangSmithDatasetManager:
    def __init__(self, api_key: str):
        self.client = Client(api_key=api_key)
        self.poc_logs = [...]  # 실제 로그 로딩 생략

    def create_langsmith_dataset(self, dataset_name: str, description: str = None):
        examples = []
        for log in self.poc_logs:
            example = {
                "inputs": {"question": log["question_number"]},
                "outputs": {"ground_truth": log["raw_model_answer"]}
            }
            examples.append(example)
        return self.client.create_dataset(
            dataset_name=dataset_name,
            description=description,
            examples=examples
        )

📊 5. 대시보드 및 시각화

5.1. 주요 기능
• 표 형태 결과 시각화
• 실시간 업데이트
• 드릴다운 분석 가능
• 비교 분석 기능
• 필터링 및 검색 기능

5.2. 예시 (가상)

항목점수상세 피드백
형식 준수도93.2%✅ 테이블 헤더 일관성 필요
내용 정확성84.4%⚠️ 외부 문서 참조 오류 있음
데이터 완성도87.8%✅ 일부 선택 항목 누락 확인
종합 점수88.5%✅ 전반적으로 만족, 미세 조정 필요

🛠️ 6. ESG 시스템에서의 LangSmith 활용

6.1. 평가 방법론

a. 형식 평가 (llm_format_judge)
• 평가 기준: 섹션 구성, 표 정렬, 구조 일관성 등

b. 내용 평가 (llm_content_judge)
• 평가 기준: 정책 정보의 정확성, 검수 논리성 등

c. 데이터 완성도 평가 (llm_completeness_judge)
• 평가 기준: 필수 데이터 포함 여부, 표 내용 정확성

6.2. 실제 구현 예시

from langsmith import evaluate

class ESGEvaluationSystem:
    def run_evaluation(self, dataset_name):
        results = evaluate(
            self.run_esg_model,
            data=dataset_name,
            evaluators=[
                self.llm_format_judge.evaluate_fn,
                self.llm_content_judge.evaluate_fn,
                self.llm_completeness_judge.evaluate_fn
            ],
            experiment_prefix="esg_evaluation"
        )
        return results

✅ 7. 구현 결과 및 성과

7.1. 테스트 결과

지표목표실제달성 여부
형식 준수도90%93.2%
내용 정확성80%84.4%
데이터 완성도85%87.8%
종합 점수85%88.5%

7.2. 도입 효과
• 지능형 평가: 의미 기반 피드백 제공
• 데이터 재현성 확보: 자동화된 버전 관리
• 피드백 루프 단축: 실시간 결과 확인
• 협업 용이: 대시보드를 통한 결과 공유

🎯 8. 결론: ESG AI 품질 향상의 핵심 도구

LangSmith는 다음을 가능하게 합니다:
• LLM-as-Judge를 통한 의미 기반 평가 자동화
• 데이터셋 및 결과의 체계적 관리
• 직관적이고 빠른 대시보드 피드백
• 개발 주기 단축과 협업 증진

👉 ESG AI 시스템에 있어 LangSmith는 필수적 품질 평가 프레임워크입니다.

0개의 댓글