[GN] LangChain, 개발자 플랫폼 LangSmith 발표

GeekNewsxguru님께 허락을 받고 GN에 올라온 글들 중에 AI 관련된 소식들을 공유하고 있습니다. :smiley_cat:


소개

  • LLM 어플리케이션을 디버깅,테스팅,평가,모니터링 할 수 있는 통합 플랫폼
  • 프로토타입과 프로덕션 사이의 갭을 줄이기 위함
  • 디버깅 : 중첩 트레이스, 프롬프트-레벨 가시성, 실시간 인사이트, 플레이그라운드 모드
  • 테스트 & 평가 : 데이터셋 큐레이션, 체인 성능 비교, AI-지원 평가, 모범 사례들 수용
  • 모니터링 : 어플리케이션 레벨 사용 통계, 피드백 수집, 트레이스 핑터링, 비용 & 성능 평가

원문

출처 / GeekNews

  • 이 글은 GPT-4를 사용하여 자동 생성한 설명으로, 잘못된 내용이 있을 수 있습니다. :smile:
  • 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다! :bowing_man:

LangSmith 발표: LLM 애플리케이션을 디버깅, 테스트, 평가, 모니터링하기 위한 통합 플랫폼 (Announcing LangSmith, a unified platform for debugging, testing, evaluating, and monitoring your LLM applications)

소개

LangChain은 LLM(Large Language Model, 대형 언어 모델) 기반 애플리케이션 개발을 가능한 한 쉽게 만들기 위해 존재합니다. 우리는 간단한 프로토타입을 작동시키는 것이 LLM 기반 애플리케이션을 구축하는 주요 장애물이었을 때 오픈소스 Python 패키지로 시작했습니다. 이제 사람들은 내부 회사 문서에 대한 채팅봇부터 Dungeons and Dragons 게임을 위한 AI 던전 마스터까지 모든 것을 구축하고 있습니다. 그러나 프로토타입을 제작하는 것은 쉽지만, 애플리케이션을 프로토타입에서 생산으로 전환하는 것은 여전히 교묘하게 어렵습니다. 오늘날 우리가 보는 주요 문제는 애플리케이션 성능입니다. 그래서 오늘, 우리는 개발자가 프로토타입과 생산 사이의 격차를 좁히는 데 도움이 될 플랫폼인 LangSmith를 소개합니다. LangSmith는 LLM의 복잡성을 다루고 그 힘을 이용할 수 있는 제품을 구축하고 반복하는 데 설계되었습니다. LangSmith는 현재 클로즈 베타 상태입니다.

요약

LLM의 확률적 특성을 고려할 때, 이러한 모델에서 무슨 일이 일어나고 있는지 간단한 질문에 대답하는 것은 쉽지 않습니다. 빌더들은 다음과 같은 동일한 장애물에 부딪히고 있습니다:

  • LLM 호출에 대한 최종 프롬프트가 무엇인지 이해하기
  • 각 단계에서 LLM 호출로부터 반환된 것이 무엇인지 이해하기
  • LLM (또는 다른 리소스)에 대한 호출의 정확한 순서와 어떻게 연결되어 있는지 이해하기
  • 토큰 사용 추적하기
  • 비용 관리하기
  • 지연 시간 추적 (및 디버깅)
  • 애플리케이션을 평가하기 위한 좋은 데이터셋이 없음
  • 애플리케이션을 평가하기 위한 좋은 메트릭이 없음
  • 사용자가 제품과 어떻게 상호 작용하는지 이해하기

이러한 모든 문제는 전통적인 소프트웨어 엔지니어링에서 유사성을 가지고 있습니다. 그리고 응답으로, 디버깅, 테스트, 로깅, 모니터링 등을 위한 연습과 도구 세트가 개발자들이 공통 인프라를 추상화하고 정말 중요한 것 - 애플리케이션 구축에 집중할 수 있도록 도와주는 데 나타났습니다. LLM 애플리케이션 개발자들도 동일한 것을 받을 자격이 있습니다. LangSmith는 그 플랫폼이 되기를 희망합니다.

LangSmith는 다음과 같은 5가지 주요 방법으로 팀을 돕습니다:

  1. 디버깅: LangSmith는 이벤트 체인의 모든 단계에서 모델 입력과 출력에 대한 전체 가시성을 제공합니다. 이로 인해 팀은 새로운 체인과 프롬프트 템플릿을 실험하고 예상치 못한 결과, 오류 또는 지연 문제의 원인을 쉽게 찾을 수 있습니다. 또한 지연 시간과 토큰 사용을 공개하여 어떤 호출이 문제를 일으키는지 확인할 수 있습니다.

  2. 테스트: 개발자들이 직면하는 주요 질문 중 하나는 "이 체인/프롬프트를 변경하면 출력에 어떤 영향을 미치는가?"입니다. 이 질문에 가장 효과적으로 답하는 방법은 관심 있는 예제의 데이터셋을 정리하고, 변경된 프롬프트/체인을 이 데이터셋 위에서 실행하는 것입니다. LangSmith는 먼저 추적에서 데이터셋을 생성하거나 수동으로 정리한 데이터셋을 업로드하는 것을 쉽게 만듭니다. 그런 다음 이러한 데이터 세트 위에서 체인과 프롬프트를 쉽게 실행할 수 있습니다.

  3. 평가: LangSmith는 오픈 소스 평가 모듈 컬렉션과 원활하게 통합됩니다. 이 모듈들은 휴리스틱과 LLM 두 가지 주요 유형의 평가를 가지고 있습니다. 휴리스틱 평가는 정규 표현식과 같은 로직을 사용하여 답변의 정확성을 평가합니다. LLM 평가는 LLM을 사용하여 자신을 평가합니다.

  4. 모니터링: 디버깅, 테스트, 평가는 프로토타입에서 생산으로 가는 데 도움이 될 수 있지만, 일단 출시하면 작업이 멈추지 않습니다. 개발자들은 성능을 적극적으로 추적해야 하며, 이상적으로는 피드백에 기반하여 그 성능을 최적화해야 합니다. 우리는 개발자들이 LangSmith를 사용하여 시스템 수준의 성능을 추적하는 것을 일관되게 보고 있습니다.

참고자료

  1. LangSmith: LangSmith의 공식 웹사이트입니다. LangSmith에 대한 자세한 정보를 얻을 수 있습니다.
  2. LangChain GitHub: LangChain의 GitHub 저장소입니다. LangChain에 대한 코드와 문서를 찾을 수 있습니다.
  3. LangChain Documentation: LangChain의 공식 문서입니다. LangChain의 사용 방법과 기능에 대해 자세히 알아볼 수 있습니다.
  4. Anthropic: LLM을 평가하는 데 사용되는 방법에 대한 연구를 제공하는 웹사이트입니다.
  5. DeepLearningAI: LangChain에 대한 교육 과정을 제공하는 웹사이트입니다. 이 과정을 통해 LangChain을 사용하여 어떻게 새롭고 복잡한 애플리케이션을 만들 수 있는지 배울 수 있습니다.

원문