Helicone

Helicone

Helicone은 고급 모니터링, 캐싱, 분석 기능을 제공하는 OpenAI 호환 엔드포인트를 갖춘 AI 게이트웨이이자 관측성 플랫폼이에요.

Helicone의 AI Gateway를 통해 사용할 수 있는 모든 모델을 지원해요. 요청 시 helicone/ 접두사를 사용하세요.

출처: 문서

본문

개요 (Overview)

속성 설명
설명 고급 모니터링, 캐싱, 분석 기능을 제공하는 OpenAI 호환 엔드포인트를 갖춘 AI 게이트웨이 및 관측성 플랫폼
LiteLLM 라우트 helicone/
공급자 문서 Helicone Documentation
기본 URL https://ai-gateway.helicone.ai/
지원 작업 /chat/completions, /completions, /embeddings

Helicone이란?

Helicone은 LLM 애플리케이션용 오픈소스 관측성 플랫폼으로 다음을 제공해요:

  • 요청 모니터링: 상세 지표로 모든 LLM 요청 추적
  • 캐싱: 지능형 캐싱으로 비용과 지연 감소
  • Rate Limiting: 사용자/키별 요청 속도 제어
  • 비용 추적: 모델과 사용자별 지출 모니터링
  • 사용자 지정 속성: 필터링·분석용 metadata로 요청 태그
  • 프롬프트 관리: 프롬프트 버전 관리

필수 변수

os.environ["HELICONE_API_KEY"] = ""  # your Helicone API key

Helicone 대시보드에서 Helicone API 키를 가져와요.

LiteLLM Python SDK 사용법

비스트리밍 (Non-streaming)

import os
import litellm
from litellm import completion

os.environ["HELICONE_API_KEY"] = ""  # your Helicone API key
messages = [{"content": "What is the capital of France?", "role": "user"}]

# Helicone call - routes through Helicone gateway to OpenAI
response = completion(
    model="helicone/gpt-5.6-terra",
    messages=messages
)
print(response)

스트리밍 (Streaming)

import os
import litellm
from litellm import completion

os.environ["HELICONE_API_KEY"] = ""  # your Helicone API key
messages = [{"content": "Write a short poem about AI", "role": "user"}]

# Helicone call with streaming
response = completion(
    model="helicone/gpt-5.6-terra",
    messages=messages,
    stream=True
)

for chunk in response:
    print(chunk)

Metadata 사용 (Helicone Custom Properties)

import os
import litellm
from litellm import completion

os.environ["HELICONE_API_KEY"] = ""  # your Helicone API key

response = completion(
    model="helicone/gpt-5.6-luna",
    messages=[{"role": "user", "content": "What's the weather like?"}],
    metadata={
        "Helicone-Property-Environment": "production",
        "Helicone-Property-User-Id": "user_123",
        "Helicone-Property-Session-Id": "session_abc"
    }
)
print(response)

Text Completion

import os
import litellm

os.environ["HELICONE_API_KEY"] = ""  # your Helicone API key

response = litellm.completion(
    model="helicone/gpt-5.6-luna",  # text completion model
    prompt="Once upon a time"
)
print(response)

재시도/폴백 메커니즘

import litellm

litellm.api_base = "https://ai-gateway.helicone.ai/"
litellm.metadata = {
    "Helicone-Retry-Enabled": "true",
    "helicone-retry-num": "3",
    "helicone-retry-factor": "2",
}

response = litellm.completion(
    model="helicone/gpt-5.6-luna/openai,claude-sonnet-5/anthropic",  # Try OpenAI first, then fallback to Anthropic, then continue with other models
    messages=[{"role": "user", "content": "Hello"}]
)

지원되는 OpenAI 파라미터

Helicone은 모든 표준 OpenAI 호환 파라미터를 지원해요:

파라미터 타입 설명
messages array 필수. 'role'과 'content'가 있는 메시지 객체 배열
model string 필수. Model ID (예: gpt-4, claude-3-opus 등)
stream boolean 선택. 스트리밍 응답 활성화
temperature float 선택. 샘플링 온도
top_p float 선택. Nucleus sampling 파라미터
max_tokens integer 선택. 생성할 최대 토큰 수
frequency_penalty float 선택. 빈번한 토큰에 패널티
presence_penalty float 선택. 존재에 기반한 토큰 패널티
stop string/array 선택. 중지 시퀀스
n integer 선택. 생성할 완성 수
tools array 선택. 사용 가능한 도구/함수 목록
tool_choice string/object 선택. 도구/함수 호출 제어
response_format object 선택. 응답 형식 사양
user string 선택. 사용자 식별자

Helicone 전용 헤더

Helicone 기능을 사용하려면 이를 metadata로 전달해요:

헤더 설명
Helicone-Property-* 필터링용 사용자 지정 속성 (예: Helicone-Property-User-Id)
Helicone-Cache-Enabled 이 요청에 캐싱 활성화
Helicone-User-Id 추적용 사용자 식별자
Helicone-Session-Id 요청 그룹핑용 세션 식별자
Helicone-Prompt-Id 버전 관리용 프롬프트 식별자
Helicone-Rate-Limit-Policy Rate limiting 정책 이름
import litellm

response = litellm.completion(
    model="helicone/gpt-5.6-terra",
    messages=[{"role": "user", "content": "Hello"}],
    metadata={
        "Helicone-Cache-Enabled": "true",
        "Helicone-Property-Environment": "production",
        "Helicone-Property-User-Id": "user_123",
        "Helicone-Session-Id": "session_abc",
        "Helicone-Prompt-Id": "prompt_v1"
    }
)

고급 사용법 (Advanced Usage)

다른 공급자와 사용

Helicone은 게이트웨이 역할을 하며 여러 공급자를 지원해요.

import litellm

# Set both Helicone and Anthropic keys
os.environ["HELICONE_API_KEY"] = "your-helicone-key"

response = litellm.completion(
    model="helicone/claude-sonnet-5/anthropic",
    messages=[{"role": "user", "content": "Hello"}]
)

캐싱

비용과 지연을 줄이기 위해 캐싱을 활성화해요.

import litellm

response = litellm.completion(
    model="helicone/gpt-5.6-terra",
    messages=[{"role": "user", "content": "What is 2+2?"}],
    metadata={
        "Helicone-Cache-Enabled": "true"
    }
)

# Subsequent identical requests will be served from cache
response2 = litellm.completion(
    model="helicone/gpt-5.6-terra",
    messages=[{"role": "user", "content": "What is 2+2?"}],
    metadata={
        "Helicone-Cache-Enabled": "true"
    }
)

기능 (Features)

요청 모니터링

  • 상세 지표로 모든 요청 추적
  • 요청/응답 쌍 보기
  • 지연과 에러 모니터링
  • 사용자 지정 속성으로 필터링

비용 추적

  • 모델별 비용 추적
  • 사용자별 비용 추적
  • 비용 알림 및 예산
  • 과거 비용 분석

Rate Limiting

  • 사용자별 rate limits
  • API 키별 rate limits
  • 사용자 지정 rate limit 정책
  • 자동 강제

분석

  • 요청 볼륨 추세
  • 비용 추세
  • 지연 백분위
  • 에러율

자세한 내용은 Helicone Pricing을 참고하세요.

더 알아보기 (Learn more)