Intfloat: E5-Base-v2
intfloat E5-Base-v2는 12개 레이어의 인코더로 영어 텍스트를 768차원 임베딩으로 변환합니다. 쿼리·문단 접두어와 512토큰 입력 창이 검색, 의역 비교, 군집화, 텍스트 특징을 위한 준비 방식을 정합니다.
모델 소개
이 설명은 모델의 기능을 다룹니다. Ailoot에서 사용할 수 있는 입력, 출력 및 옵션은 아래에 선택한 메서드별로 표시됩니다.
E5-Base-v2는 768차원 표현을 제공하는 intfloat의 12개 레이어 영어 임베딩 모델입니다. 준비한 텍스트를 검색, 의미 비교 또는 다른 작업의 특성으로 사용할 수 있는 수치 벡터 하나로 변환합니다. Base v2 체크포인트는 24개 레이어와 1024차원을 갖춘 Large v2 에디션, 그리고 별도로 학습된 다국어 E5 모델과 구분됩니다.
학습된 역할 접두사 사용하기
E5는 입력 시작 부분에 역할이 있기를 기대합니다. 지문 검색에서는 질문을 “query:”로 시작하고, 답을 담고 있을 수 있는 원문을 “passage:”로 시작합니다. 제조사는 의미 유사도와 패러프레이즈 검색처럼 대칭적인 작업에서는 양쪽 모두에 “query:”를 권장합니다. 벡터를 군집화나 분류의 특성으로 사용할 때에도 이 접두사를 권장합니다.
예를 들어 피드백 컬렉션에는 같은 개선 사항을 서로 다른 표현으로 요청하는 메시지가 여러 개 있을 수 있습니다. 권장되는 대칭적 준비 방식으로 레코드를 인코딩한 뒤, 결과 벡터를 비교하거나 군집화하세요. 각 표현과 함께 원문 및 레코드 식별자를 보관하면, 군집을 설명되지 않은 숫자 집합이 아니라 실제 고객 메시지로 살펴볼 수 있습니다.
검색 컬렉션에서는 질문과 원문 지문을 각각 해당 역할로 준비하세요. 유용한 질의의 예는 “query: Which setting changes the notification frequency?”입니다. 코퍼스 지문은 설명과 관련 조건을 유지합니다. 접두사는 모델이 학습한 준비 방식의 일부이며, 제조사는 이를 생략하면 성능이 저하된다고 설명합니다.
표현 풀링과 비교
공식 예제는 패딩을 제외하고 어텐션 마스크를 반영한 토큰 표현의 평균을 계산한 뒤, 결과 벡터를 정규화합니다. 정규화된 임베딩 사이의 내적은 코사인 유사도를 제공합니다. 출력되는 768개 값은 텍스트 하나를 설명하며, 답변이나 클래스 레이블 또는 쌍별 리랭커 점수가 아닙니다.
군집화 워크플로에서는 다른 단계가 이 벡터로 그룹을 구성합니다. 분류 워크플로에서는 다른 단계가 이를 입력 특성으로 사용합니다. 이 구분을 유지하면 결과를 해석하기가 쉬워집니다. 임베딩은 레코드를 표현하고, 후속 작업이 그룹이나 레이블을 결정합니다. 비교하는 표현에는 하나의 모델과 준비 규칙을 일관되게 사용하세요.
영어와 512토큰 범위 안에서 작업하기
모델 카드는 이 에디션이 영어에서만 작동하며 긴 텍스트를 최대 512토큰으로 자른다고 설명합니다. 필수 역할 접두사를 포함해, 그 범위 안에서 의미적으로 연결된 지문을 준비하세요. 긴 리뷰, 보고서, 매뉴얼은 뒷부분이 사라지는 과도한 크기의 입력으로 임베딩하기보다, 의미 있는 섹션을 기준으로 나눠야 합니다.
제목은 그 제목이 소개하는 문장과 함께 유지하고, 규칙의 의미를 바꾸는 조건이나 예외를 보존하세요. 피드백처럼 짧은 레코드는 범위 안에 들어오면 메시지 전체를 유지하세요. 원본 식별자와 버전을 벡터 옆에 보관하면, 나중에 컬렉션을 갱신할 때 올바른 레코드를 교체할 수 있습니다.
작업에 맞게 유사도 해석하기
제조사는 절댓값보다 코사인 점수의 상대적 순서가 중요하다고 설명합니다. 필터 임곗값은 해당 컬렉션의 자체 예시로 평가해야 하며, 벡터 유사도는 레이블이 일치하거나 답이 정확할 보정된 확률이 아닙니다. 벡터 활용 방식을 정할 때에는 인접 레코드와, 불일치가 확인된 예시를 살펴보세요.
유용한 산출물은 원본 레코드와 연결된 영어 검색 색인, 의미 비교 집합 또는 수치형 텍스트 특성입니다. 이 Base v2 프로필에는 고유한 차원, 풀링, 역할 준비 방식이 있습니다. 다른 E5 에디션의 벡터 형태나 언어 범위만으로 표현을 서로 바꿔 쓸 수 있다고 볼 수는 없습니다.
Ailoot Ultra · 임베딩 POST /v1/embeddings intfloat/e5-base-v2
intfloat/e5-base-v2시작하기
intfloat E5-Base-v2는 12개 레이어의 인코더로 영어 텍스트를 768차원 임베딩으로 변환합니다. 쿼리·문단 접두어와 512토큰 입력 창이 검색, 의역 비교, 군집화, 텍스트 특징을 위한 준비 방식을 정합니다.
- 허용 입력
- 텍스트 · token_ids
- 결과
- embedding
Ailoot에서 사용 가능 · 입력 및 메서드
Ailoot Ultra · 임베딩 POST /v1/embeddings
- 입력
text,token_ids- 출력
embedding- 출력 형식
- json
| 필드 | 유형 | 요건 | 값과 한도 | 기본값 |
|---|---|---|---|---|
필드model | 유형string | 요건필수 | 값과 한도 intfloat/e5-base-v2 | 기본값— |
필드input | 유형string|string[]|integer[]|integer[][] | 요건필수 | 값과 한도 최소 항목 수: 1 조건: 비어 있지 않은 동일 형식의 배치입니다. 토큰 ID는 0 이상의 정수입니다. 입력 허용량: 최댓값: 512 · 텍스트 단위: UTF8 바이트 · 토큰 단위: 토큰 배열 요소 | 기본값— |
필드encoding_format | 유형string | 요건선택 사항 | 값과 한도 float | 기본값float |
필드dimensions | 유형integer | 요건지원되지 않음 | 값과 한도 최솟값: 1 | 기본값— |
필드user | 유형json_value | 요건선택 사항 | 값과 한도 조건: 원본에서 이 JSON 메타데이터 필드를 허용하며, 정확한 업스트림 동작은 모델별로 다릅니다. | 기본값— |
필드session_id | 유형json_value | 요건선택 사항 | 값과 한도 조건: 원본에서 이 JSON 메타데이터 필드를 허용하며, 정확한 업스트림 동작은 모델별로 다릅니다. | 기본값— |
필드trace | 유형json_value | 요건선택 사항 | 값과 한도 조건: 원본에서 이 JSON 메타데이터 필드를 허용하며, 정확한 업스트림 동작은 모델별로 다릅니다. | 기본값— |
필드provider | 유형object | 요건선택 사항 | 값과 한도 조건: provider.options가 거부됨 | 기본값— |
입력 자료 조합
text_to_embedding
메서드 매개변수와 수명 주기
| 매개변수 | 명세 |
|---|---|
매개변수content_type | 명세application/json |
매개변수required | 명세model, input |
매개변수input_shapes | 명세string, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
매개변수encoding_format | 명세float |
매개변수dimensions_override | 명세false |
매개변수max_input_budget_units | 명세512 |
매개변수multimodal_objects | 명세false |
매개변수material_types | 명세text, token_ids |
수명 주기: synchronous_json
모든 벡터의 인덱스와 차원을 보관하세요.
모델 이름이 멀티모달이어도 이 특정 경로에서 이미지 객체를 사용할 수 있는 것은 아닙니다.
요금
요금 정보는 요청 옵션을 추가하지 않습니다. 지원되는 매개변수는 선택한 메서드에 표시됩니다.
- 빠른 모드
- 미지정 빠른 모드를 선택한 경우
- Flex 모드
- 미지정 flex 모드를 선택한 경우
- 최대 추론 수준
- 미지정 최대 추론 수준에 default 조정값을 적용하는 경우
Ailoot 요금
설정별 가격
| 설정 | 요금표 | 요금 |
|---|---|---|
| 설정토큰의 기본 단가 | 요금표기본 요금 | 요금 입력 · 입력 토큰 $0.00001 / 1K 토큰 출력 · 출력 토큰 $0 / 1K 토큰 입력 · 캐시 읽기 — / 1K 토큰 입력 · 캐시 쓰기 — / 1K 토큰 입력 · 캐시 쓰기, 1시간 — / 1K 토큰 |
Ailoot는 요청 전에 예상 금액을 미리 확보합니다. 결과를 받은 뒤 측정된 사용량을 기준으로 최종 요금을 정산합니다. 스트리밍 정산에는 최종 사용량 기록을 사용합니다. 금액 확보와 정산 방식 →
요청 예제
Ailoot Ultra · 임베딩
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "intfloat/e5-base-v2", "input": ["First document", "Second document"]}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("data",[]): print(json.dumps({"index":x.get("index"),"embedding":x.get("embedding")}))
PY_RESULT
from openai import OpenAI
import os
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.embeddings.create(model='intfloat/e5-base-v2',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
결과 수신 및 저장
Ailoot Ultra · 임베딩
json
완료된 결과 모두 보관
반환된 완전한 응답, 파일, 콘텐츠 부분을 모두 보관하세요.
모든 벡터를 인덱스와 함께 보관하세요. 벡터 수는 입력 수와 같아야 하며 차원은 일관되어야 합니다.
원래 응답을 확인해야 할 경우
임베딩 작업 엔드포인트는 추가되지 않습니다.
응답 필드
| 필드 | 유형 |
|---|---|
필드object | 유형string |
필드model | 유형string |
필드data[].index | 유형integer |
필드data[].embedding | 유형finite float[] |
필드usage | 유형object |
오류와 다음 단계
| 응답 | 조건 | 다음 단계 |
|---|---|---|
응답400 · invalid_request_error | 조건필수 필드, 자료 표현 방식 또는 파라미터 값이 올바르지 않음 | 다음 단계새 생성 요청 전에 표시된 필드를 수정하세요. |
별칭
모델 별칭
Ailoot Ultra intfloat/e5-base-v2
메서드 경로 별칭
위에 표시된 메서드 경로를 사용하세요.
관련 호출용 ID
FAQ · Intfloat: E5-Base-v2
- 어떤 입력과 결과를 사용할 수 있나요?
POST /v1/embeddings·intfloat/e5-base-v2:text,token_ids→embedding- 요청은 어떤 필드를 사용하나요?
POST /v1/embeddings·intfloat/e5-base-v2:model,input,encoding_format,provider- 어떤 제한이 적용되나요?
POST /v1/embeddings·intfloat/e5-base-v2:input.budget.maximum:512(UTF8 바이트);input.min_items:1