Token Usage Tracking

LLM 토큰 사용량 추적 및 관리

LangChain에서 LLM 호출 시 토큰 사용량을 추적하고 관리하는 방법을 다룬다. 비용 관리와 성능 최적화를 위한 토큰 사용량 모니터링 기법을 설명한다.

AI
RAG
LangChain
저자

Kwangmin Kim

공개

2025년 02월 04일

# API KEY를 환경변수로 관리하기 위한 설정 파일
from dotenv import load_dotenv

# API KEY 정보로드
load_dotenv()
# LangSmith 추적을 설정합니다. https://smith.langchain.com
# !pip install langchain-teddynote
from langchain_teddynote import logging

# 프로젝트 이름을 입력합니다.
logging.langsmith("CH04-Models")

특정 호출에 대한 토큰 사용량을 추적하는 방법에 대해 설명합니다.

이 기능은 현재 OpenAI API 에만 구현되어 있습니다.

먼저 단일 Chat 모델 호출에 대한 토큰 사용량을 추적하는 매우 간단한 예를 살펴보겠습니다.

from langchain.callbacks import get_openai_callback
from langchain_openai import ChatOpenAI

# 모델을 불러옵니다.
llm = ChatOpenAI(model_name="gpt-4.1-mini")

with get_openai_callback() 구문안에서 실행되는 모든 토큰 사용량/요금이 추적됩니다.

# callback을 사용하여 추적합니다.
with get_openai_callback() as cb:
    result = llm.invoke("대한민국의 수도는 어디야?")
    print(cb)
# callback을 사용하여 추적합니다.
with get_openai_callback() as cb:
    result = llm.invoke("대한민국의 수도는 어디야?")
    result = llm.invoke("대한민국의 수도는 어디야?")
    print(f"총 사용된 토큰수: \t\t{cb.total_tokens}")
    print(f"프롬프트에 사용된 토큰수: \t{cb.prompt_tokens}")
    print(f"답변에 사용된 토큰수: \t{cb.completion_tokens}")
    print(f"호출에 청구된 금액(USD): \t${cb.total_cost}")

Subscribe

Enjoy this blog? Get notified of new posts by email: