임베딩 - /embeddings
임베딩 - /embeddings (Embeddings - /embeddings)
지원되는 임베딩 제공자 및 모델은 여기에서 확인하세요.
출처: 문서
본문
지원되는 입력 형식 (Supported Input Formats)
/v1/embeddings 엔드포인트는 OpenAI 임베딩 API 스펙을 따르며, 다음 입력 형식이 지원돼요:
| 형식 | 예시 |
|---|---|
| 문자열 | "input": "Hello" |
| 문자열 배열 | "input": ["Hello", "World"] |
| 토큰 배열 (정수) | "input": [1234, 5678, 9012] |
| 토큰 배열의 배열 | "input": [[1234, 5678], [9012, 3456]] |
빠른 시작 (Quick start)
프록시 서버에서 GPT-J 임베딩(sagemaker 엔드포인트), Amazon Titan 임베딩(Bedrock), Azure OpenAI 임베딩 사이를 라우팅하는 방법이에요.
config.yaml에 모델 설정:
model_list:
- model_name: sagemaker-embeddings
litellm_params:
model: "sagemaker/berri-benchmarking-gpt-j-6b-fp16"
- model_name: amazon-embeddings
litellm_params:
model: "bedrock/amazon.titan-embed-text-v1"
- model_name: azure-embeddings
litellm_params:
model: "azure/azure-embedding-model"
api_base: "os.environ/AZURE_API_BASE" # os.getenv("AZURE_API_BASE")
api_key: "os.environ/AZURE_API_KEY" # os.getenv("AZURE_API_KEY")
api_version: "2023-07-01-preview"
general_settings:
master_key: os.environ/LITELLM_MASTER_KEY # [OPTIONAL] if set all calls to proxy will require either this key or a valid generated token
프록시 시작:
$ litellm --config /path/to/config.yaml
임베딩 호출 테스트:
curl --location 'http://0.0.0.0:4000/v1/embeddings' \
--header "Authorization: Bearer ***" \
--header 'Content-Type: application/json' \
--data '{
"input": "The food was delicious and the waiter..",
"model": "sagemaker-embeddings",
}'
기본 encoding_format (Default encoding_format)
LiteLLM의 OpenAI 호환 임베딩 경로를 통해 라우팅되는 임베딩(예: OpenAI 모델, 커스텀 api_base의 openai/..., 또는 그 경로로 전달하는 프록시 /v1/embeddings 라우트)의 경우, 호출자가 생략하면 LiteLLM은 명시적 encoding_format을 보내요.
해석 순서 (첫 매치가 이김):
- 임베딩 요청 본문의 값 (JSON의
encoding_format). - config.yaml의
litellm_params.encoding_format에서 온 모델별 기본값. LITELLM_DEFAULT_EMBEDDING_ENCODING_FORMAT프로세스 환경 변수 (예:float또는base64).- 폴백
float.
어떤 OpenAI 호환 클라이언트에서든 요청별로 여전히 재정의할 수 있어요:
curl --location 'http://0.0.0.0:4000/v1/embeddings' \
--header "Authorization: Bearer ***" \
--header 'Content-Type: application/json' \
--data '{"model": "my-embedding-model", "input": "hello", "encoding_format": "base64"}'
함께 보기: Config settings (LITELLM_DEFAULT_EMBEDDING_ENCODING_FORMAT).