Arize AX

Arize AX

Arize AX는 프로덕션 LLM 관측성과 평가를 위한 완전한 기능의 Arize AI 플랫폼이에요. 관리형 클라우드 또는 엔터프라이즈 자체 호스팅 배포로 제공되죠. LiteLLM 스팬을 Arize로 보내는 방법을 알려드릴게요.

출처: 문서

본문

Arize AX는 로컬 개발·실험·자체 호스팅 워크플로를 위한 오픈소스 추적·평가 프로젝트인 Arize Phoenix와는 별개예요. LiteLLM은 두 백엔드를 모두 지원하지만 각각 다른 콜백, 자격 증명, 엔드포인트를 사용해요. Phoenix로 트레이스를 보내려면 Arize Phoenix 설정 가이드를 대신 사용하세요.

프로덕션 평가 워크플로는 Arize의 에이전트 평가 가이드LLM 평가 가이드에서 트레이스로 실패를 디버깅하고, 모델 동작을 비교하며, 에이전트 신뢰성을 개선하는 예시를 확인할 수 있어요.

info — 콜백을 더 좋게 만들기 위해 LiteLLM 창업자와 이야기하거나 디스코드에 참여해 주세요.

사전 요구사항 (Pre-Requisites)

uv add litellm

빠른 시작 (Quick Start)

SDK:

import litellm
import os

os.environ["LITELLM_OTEL_V2"] = "true"
os.environ["ARIZE_SPACE_ID"] = ""
os.environ["ARIZE_API_KEY"] = ""
os.environ["ARIZE_PROJECT_NAME"] = ""   # recommended: names the project traces land in
# LLM API Keys
os.environ["OPENAI_API_KEY"] = ""

# set arize as a callback, litellm will send the data to arize
litellm.callbacks = ["arize"]

# openai call
response = litellm.completion(
  model="gpt-5.6-terra",
  messages=[
    {"role": "user", "content": "Hi 👋 - i'm openai"}
  ]
)

LiteLLM Proxy:

  1. config.yaml 설정
model_list:
  - model_name: gpt-5.6-terra
    litellm_params:
      model: openai/gpt-5.6-terra
      api_key: os.environ/OPENAI_API_KEY

litellm_settings:
  callbacks: ["arize"]
  1. 자격 증명 설정
LITELLM_OTEL_V2=true
ARIZE_SPACE_ID="your-space-id"
ARIZE_API_KEY="your-api-key"
ARIZE_PROJECT_NAME="your-project-name"   # recommended: names the project traces land in
  1. LiteLLM 프록시 시작
litellm --config /path/to/config.yaml
  1. 테스트해 보세요!
curl -L -X POST 'http://0.0.0.0:4000/v1/chat/completions' \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer ***" \
-d '{
  "model": "gpt-5.6-terra",
  "messages": [
    {
      "role": "user",
      "content": "Hey, how are you?"
    }
  ]
}'

Arize가 렌더링하는 것 (What Arize renders)

Arize 프로젝트를 열어 보세요. ARIZE_PROJECT_NAME이 명명한 프로젝트 아래 트레이스가 표시돼요. 각 요청은 요청 루트 아래 chat <model> 스팬으로 나타나요.

openinference 매퍼는 표준 gen_ai.* 키와 함께 LLM 호출 스팬에 OpenInference 어휘를 찍어서, Arize가 네이티브 스키마를 읽으면서도 표준 키를 버리지 않게 해요. llm.model_namellm.provider, llm.token_count.* 사용량 분할, llm.invocation_parameters, 콘텐츠 캡처가 켜져 있을 때의 llm.input_messages.*·llm.output_messages.* 메시지 배열, 그리고 도구 정의용 llm.tools.*를 다뤄요. 전체 속성 표는 full attribute table 또는 OpenInference 스펙을 참고해 주세요.

구성 (Configuration)

변수 필수 참고
ARIZE_SPACE_ID ARIZE_SPACE_KEY는 더 이상 사용하지 않는 이름이며 하위 호환성으로 여전히 읽힘. 새 config에는 ARIZE_SPACE_ID 권장
ARIZE_API_KEY
ARIZE_PROJECT_NAME 아니오 트레이스가 들어갈 프로젝트 이름. 없어도 강제되지 않고 스팬이 거부되지 않지만, 기대하는 곳에 트레이스가 묶이도록 설정하세요
ARIZE_ENDPOINT 아니오 gRPC 엔드포인트, 기본값 https://otlp.arize.com/v1
ARIZE_HTTP_ENDPOINT 아니오 HTTP로 내보내려면 ARIZE_ENDPOINT 대신 사용

ARIZE_ENDPOINT을 설정하면 gRPC를, ARIZE_HTTP_ENDPOINT를 설정하면 HTTP를 선택해요. 둘 다 미설정이면 litellm은 gRPC 기본값을 사용해요.

고급 (Advanced)

Arize와 다른 백엔드에 동시 전송

프리셋은 합성되므로 여러 개를 나열하면 같은 트레이스를 각 대상에 그 도구의 네이티브 형식으로 보내요:

litellm_settings:
  callbacks: ["arize", "langfuse_otel"]

팀·키별 자격 증명 (Per-team and per-key credentials)

Arize는 요청별 자격 증명을 지원하므로 별도 프록시를 실행하지 않고도 다른 팀이나 키가 다른 Arize 스페이스에 로깅할 수 있어요. per-key / per-team 자격 증명에 설명된 대로 팀 또는 키에 arize_space_idarize_api_key를 설정하세요.

전체 OpenTelemetry 참조 (Full OpenTelemetry reference)

이 페이지는 Arize 전용 설정을 다뤄요. 스팬 속성, 프롬프트·응답 캡처, 메트릭, 분산 추적, 추적되는 라우트에 대한 자세한 내용은 OpenTelemetry v2 가이드를 참고해 주세요.

지원 및 창업자와 소통 (Support & Talk to Founders)

더 알아보기 (Learn more)