"LangSmith는 LLM 애플리케이션 개발, 모니터링 및 테스트를 위한 플랫폼이다. "
LangSmith 추적 기능
"추적은 LLM 애플리케이션의 동작을 이해하기 위한 강력한 도구이다.". Java, Javascript 의 stackoverflow같은 단계별 call 추적 가능.
- 예상치 못한 최종 결과
- 에이전트가 루팅되는 이유
- 체닝이 예상보다 느린 이유
- 에이전트가 각 단계에서 사용한 토큰 수
LangSmith 추적 사용
- https://smith.langchain.com/ 가입
- API Key를 발급 받는다. 참조
- poetry를 사용하여 "테디노트"의 패키지를 사용한다.
[1] langchain-teddynote 패키지 설치
poetry add langchain-teddynote
[2] 테스트 코드에 항상 입력
from langchain_teddynote import logging
# 프로젝트 이름을 입력합니다.
logging.langsmith("CH01-Basic")
[3] ipynb 에서 테스트 코드 수행하면 LangSmith 사이트에 자동으로 로깅됨
- 본인 계정으로 로그인
- 프로젝트명을 선택
- RunnableSequence는 테디노트의 https://wikidocs.net/233344 LCEL 파트의 "prompt | model | output_parser" 에 대한 Runnable 내역이 각각 기록됨.
LangSmith는 Application Performacne Monitoring 서비스중 하나인 DataDog같은 개념으로 LLM 의 사용 성능 및 과금내역등 그외 많은 기능을 제공하고 있다.
Cloud Monitoring as a Service | Datadog
See metrics from all of your apps, tools & services in one place with Datadog's cloud monitoring as a service solution. Try it for free.
www.datadoghq.com
다양한 LLM Trace 도구들
LLM 요청에 대한 추적, Prompt 관리, DataSet 관리등의 다양한 기능을 제공한다. 물론 LangSmith도 같은 기능을 제공한다.
- LangFuse: https://langfuse.com/
Langfuse
Open source LLM engineering platform - LLM observability, metrics, evaluations, prompt management.
langfuse.com
- Pheonix: https://docs.arize.com/phoenix
Arize Phoenix | Phoenix
AI Observability and Evaluation
docs.arize.com
References
02. LangSmith 추적 설정
## LangSmith 추적 설정하기 LangSmith는 **LLM 애플리케이션 개발, 모니터링 및 테스트** 를 위한 플랫폼입니다. 프로젝트나 LangChain 학습을 시작…
wikidocs.net
https://mobicon.tistory.com/600
Python Version Manager & Poetry 설치, 사용하기
Mac 기준으로 Python Version Manager 설치pyenv 설치brew install pyenv .zshrc 설정 추가# pyenv settingeval "$(pyenv init --path)"eval "$(pyenv init -)" Python Virtual Environment 설치pyenv-virtualenv 설치brew install pyenv-virtualenv .zsh
mobicon.tistory.com
https://github.com/teddylee777/langchain-teddynote
GitHub - teddylee777/langchain-teddynote: LangChain 을 더 쉽게 구현하기 위한 유틸 함수, 클래스를 만들어서
LangChain 을 더 쉽게 구현하기 위한 유틸 함수, 클래스를 만들어서 패키지로 배포하였습니다. - teddylee777/langchain-teddynote
github.com
'[LLM FullStacker] > LangChain LangGraph' 카테고리의 다른 글
[LCC-4] LangChain Embedding Model 이해 (0) | 2024.08.07 |
---|---|
[LCC-3] LangChain Splitter 이해 (0) | 2024.08.06 |
[LCC-2] LangChain Document Loaders 이해 (0) | 2024.08.05 |
[LCC-1] LangChain Concept - Components & RAG (0) | 2024.08.04 |
[LangChain] LangChain is like Spring Framework for LLM (0) | 2024.06.30 |