Argilla
Argilla
Argilla는 프로젝트에 고품질 데이터셋을 만들어야 하는 AI 엔지니어와 도메인 전문가를 위한 협업 주석(annotation) 도구예요. LiteLLM 통화 데이터를 Argilla로 로깅하는 방법을 알려드릴게요.
출처: 문서
본문
시작하기 (Getting Started)
Argilla에 데이터를 로깅하려면 먼저 Argilla 서버를 배포해야 해요. 아직 배포하지 않았다면 여기 지침을 따라 주세요.
다음으로 Argilla 데이터셋을 구성하고 생성해야 해요.
import argilla as rg
client = rg.Argilla(api_url="<api_url>", api_key="<api_key>")
settings = rg.Settings(
guidelines="These are some guidelines.",
fields=[
rg.ChatField(
name="user_input",
),
rg.TextField(
name="llm_output",
),
],
questions=[
rg.RatingQuestion(
name="rating",
values=[1, 2, 3, 4, 5, 6, 7],
),
],
)
dataset = rg.Dataset(
name="my_first_dataset",
settings=settings,
)
dataset.create()
추가 구성은 Argilla 문서를 참고해 주세요.
사용법 (Usage)
SDK:
import os
import litellm
from litellm import completion
# add env vars
os.environ["ARGILLA_API_KEY"]="argilla.apikey"
os.environ["ARGILLA_BASE_URL"]="http://localhost:6900"
os.environ["ARGILLA_DATASET_NAME"]="my_first_dataset"
os.environ["OPENAI_API_KEY"]="sk-proj-..."
litellm.callbacks = ["argilla"]
# add argilla transformation object
litellm.argilla_transformation_object = {
"user_input": "messages", # 👈 key= argilla field, value = either message (argilla.ChatField) | response (argilla.TextField)
"llm_output": "response"
}
## LLM CALL ##
response = completion(
model="gpt-5.6-luna",
messages=[{"role": "user", "content": "Hello, how are you?"}],
)
PROXY:
litellm_settings:
callbacks: ["argilla"]
argilla_transformation_object:
user_input: "messages" # 👈 key= argilla field, value = either message (argilla.ChatField) | response (argilla.TextField)
llm_output: "response"
예시 출력 (Example Output)
Argilla 호출에 샘플링 비율 추가 (Add sampling rate to Argilla calls)
Argilla에 호출 일부만 로깅하려면 ARGILLA_SAMPLING_RATE를 환경 변수에 추가해 주세요.
ARGILLA_SAMPLING_RATE=0.1 # log 10% of calls to argilla
더 알아보기 (Learn more)
- Argilla — 협업 주석 도구
- Argilla 데이터셋 — 데이터셋 구성 가이드