블로그 이미지
Peter Note
Web & LLM FullStacker, Application Architecter, KnowHow Dispenser and Bike Rider

Publication

Category

Recent Post

2024. 6. 29. 16:14 LLM FullStacker/LangChain

"LangSmith는 LLM 애플리케이션 개발, 모니터링 및 테스트를 위한 플랫폼이다. "

 

LangSmith 추적 기능

"추적은 LLM 애플리케이션의 동작을 이해하기 위한 강력한 도구이다.". Java, Javascript 의 stackoverflow같은 단계별 call 추적 가능.

 

- 예상치 못한 최종 결과

- 에이전트가 루팅되는 이유

- 체닝이 예상보다 느린 이유

- 에이전트가 각 단계에서 사용한 토큰 수

 

LangSmith 추적 사용

- https://smith.langchain.com/ 가입

- API Key를 발급 받는다. 참조

- poetry를 사용하여 "테디노트"의 패키지를 사용한다. 

    - 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 의 사용 성능 및 과금내역등 그외 많은 기능을 제공하고 있다. 

- https://www.datadoghq.com/

 

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

https://wikidocs.net/250954

 

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

posted by Peter Note