{
  "aboutHtml": "<p>all-mpnet-base-v2는 문장과 짧은 문단을 768차원 밀집 벡터로 표현하는 Sentence Transformers 모델입니다. 10억 개 문장 쌍 컬렉션에서 대조 학습으로 MPNet 베이스 모델을 미세조정했습니다. 제조사는 정보 검색, 군집화, 문장 유사도를 의도된 활용처로 명시합니다.</p><h4>문장이나 짧은 문단 인코딩하기</h4><p>비교할 텍스트를 준비하고, 핵심 생각과 이를 구별하는 세부 정보를 유지하세요. 내부 문서 컬렉션에서는 짧은 섹션으로 장비 교체 요청 방법이나 정비 보고서에 포함해야 할 정보를 설명할 수 있습니다. 문서 제목과 출처 위치를 벡터와 함께 확인할 수 있도록 유지하세요.</p><p>같은 모델로 임베딩한 질의는 표현이 다르더라도 관련 섹션을 검색할 수 있습니다. 독자에게 필요한 실제 지침이 있는지 해당 섹션을 살펴보세요. 유사도 워크플로에서는 검색 후 후보 문장 자체를 비교하세요. 특히 한쪽에 다른 쪽에는 없는 예외나 조건이 있을 때 중요합니다.</p><h4>평균 풀링과 정규화</h4><p>참조 인코딩 예제는 어텐션 마스크로 패딩을 평균에서 제외하면서 문맥을 반영한 토큰 표현을 평균 냅니다. 그런 다음 결과 문장 임베딩을 L2 정규화합니다. 컬렉션과 후속 질의의 벡터를 생성할 때 두 단계를 모두 유지하세요.</p><p>각 벡터에는 768개 성분이 있습니다. 코사인 유사도로 정규화된 표현을 비교할 수 있으며, 원문은 결과의 근거를 제공합니다. 성분 수가 같다고 이 모델이 multi-qa-mpnet-base-dot-v1와 호환되는 것은 아닙니다. 그 별도 에디션은 내적 점수 계산을 위해 CLS 풀링과 비정규화 벡터를 명시합니다.</p><h4>기본 잘림과 지문 준비</h4><p>제조사는 384 워드피스를 넘는 입력이 기본적으로 잘린다고 설명합니다. 관련 섹션을 그 토크나이저 경계 안에 유지하세요. 긴 절차는 의미 있는 섹션 경계에서 나누고, 각 단계가 무엇에 적용되는지 설명할 만큼의 주변 맥락을 포함하세요. “5일 이내에 제출” 같은 조각에는 기한의 시작점이 되는 사건이나 절차가 필요합니다.</p><p>학습 절차는 시퀀스를 128토큰으로 제한했으며, 이는 공개된 384 워드피스 인코딩 기본값과 별개입니다. 긴 문단이나 컬렉션 고유의 어휘를 평가할 때에는 대표 자료를 사용하세요. 더 많은 텍스트가 입력에 들어간다고 모든 세부 정보가 검색 결과에 똑같이 영향을 주는 것은 아닙니다.</p><h4>검색, 그룹화, 비교</h4><p>검색에서는 순위 후보가 원래 섹션을 반환할 수 있도록 벡터–문서 연결을 유지하세요. RAG 워크플로에서는 선택된 섹션이 답변 작성 단계의 맥락이 됩니다. 모델은 수치 표현을 제공합니다. 출처가 있는 응답을 생성하거나 어떤 문서가 권위 있는지 결정하지는 않습니다.</p><p>군집화에서는 레이블을 부여하기 전에 제안된 각 그룹의 레코드를 비교하세요. 정비 메모 집합이 비슷한 표현을 쓰면서도 서로 다른 장치나 고장 조건을 가리킬 수 있습니다. 점수에만 의존하지 말고, 그 차이를 구별하는 세부 정보를 인코딩할 텍스트에 포함하고 반환된 자료에서 살펴보세요.</p><p>이 정확한 all-mpnet-base-v2 체크포인트는 고유한 평균 풀링, 정규화, 기본 잘림 설정을 갖춘 영어 문장 임베딩 프로필입니다. 색인된 컬렉션과 함께 이러한 설정을 유지하고, 작업에 중요한 원문 지문을 찾고 비교하는 데 도움이 되는 수단으로 벡터를 사용하세요.</p>",
  "aboutText": "all-mpnet-base-v2는 문장과 짧은 문단을 768차원 밀집 벡터로 표현하는 Sentence Transformers 모델입니다. 10억 개 문장 쌍 컬렉션에서 대조 학습으로 MPNet 베이스 모델을 미세조정했습니다. 제조사는 정보 검색, 군집화, 문장 유사도를 의도된 활용처로 명시합니다.\n\n### 문장이나 짧은 문단 인코딩하기\n\n비교할 텍스트를 준비하고, 핵심 생각과 이를 구별하는 세부 정보를 유지하세요. 내부 문서 컬렉션에서는 짧은 섹션으로 장비 교체 요청 방법이나 정비 보고서에 포함해야 할 정보를 설명할 수 있습니다. 문서 제목과 출처 위치를 벡터와 함께 확인할 수 있도록 유지하세요.\n\n같은 모델로 임베딩한 질의는 표현이 다르더라도 관련 섹션을 검색할 수 있습니다. 독자에게 필요한 실제 지침이 있는지 해당 섹션을 살펴보세요. 유사도 워크플로에서는 검색 후 후보 문장 자체를 비교하세요. 특히 한쪽에 다른 쪽에는 없는 예외나 조건이 있을 때 중요합니다.\n\n### 평균 풀링과 정규화\n\n참조 인코딩 예제는 어텐션 마스크로 패딩을 평균에서 제외하면서 문맥을 반영한 토큰 표현을 평균 냅니다. 그런 다음 결과 문장 임베딩을 L2 정규화합니다. 컬렉션과 후속 질의의 벡터를 생성할 때 두 단계를 모두 유지하세요.\n\n각 벡터에는 768개 성분이 있습니다. 코사인 유사도로 정규화된 표현을 비교할 수 있으며, 원문은 결과의 근거를 제공합니다. 성분 수가 같다고 이 모델이 multi-qa-mpnet-base-dot-v1와 호환되는 것은 아닙니다. 그 별도 에디션은 내적 점수 계산을 위해 CLS 풀링과 비정규화 벡터를 명시합니다.\n\n### 기본 잘림과 지문 준비\n\n제조사는 384 워드피스를 넘는 입력이 기본적으로 잘린다고 설명합니다. 관련 섹션을 그 토크나이저 경계 안에 유지하세요. 긴 절차는 의미 있는 섹션 경계에서 나누고, 각 단계가 무엇에 적용되는지 설명할 만큼의 주변 맥락을 포함하세요. “5일 이내에 제출” 같은 조각에는 기한의 시작점이 되는 사건이나 절차가 필요합니다.\n\n학습 절차는 시퀀스를 128토큰으로 제한했으며, 이는 공개된 384 워드피스 인코딩 기본값과 별개입니다. 긴 문단이나 컬렉션 고유의 어휘를 평가할 때에는 대표 자료를 사용하세요. 더 많은 텍스트가 입력에 들어간다고 모든 세부 정보가 검색 결과에 똑같이 영향을 주는 것은 아닙니다.\n\n### 검색, 그룹화, 비교\n\n검색에서는 순위 후보가 원래 섹션을 반환할 수 있도록 벡터–문서 연결을 유지하세요. RAG 워크플로에서는 선택된 섹션이 답변 작성 단계의 맥락이 됩니다. 모델은 수치 표현을 제공합니다. 출처가 있는 응답을 생성하거나 어떤 문서가 권위 있는지 결정하지는 않습니다.\n\n군집화에서는 레이블을 부여하기 전에 제안된 각 그룹의 레코드를 비교하세요. 정비 메모 집합이 비슷한 표현을 쓰면서도 서로 다른 장치나 고장 조건을 가리킬 수 있습니다. 점수에만 의존하지 말고, 그 차이를 구별하는 세부 정보를 인코딩할 텍스트에 포함하고 반환된 자료에서 살펴보세요.\n\n이 정확한 all-mpnet-base-v2 체크포인트는 고유한 평균 풀링, 정규화, 기본 잘림 설정을 갖춘 영어 문장 임베딩 프로필입니다. 색인된 컬렉션과 함께 이러한 설정을 유지하고, 작업에 중요한 원문 지문을 찾고 비교하는 데 도움이 되는 수단으로 벡터를 사용하세요.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "0c15b13f2b0da13c0c0e0f6ae3b7dbfb9abde43199399cf52bc3c75c55af3507",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "ko",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Sentence Transformers: all-mpnet-base-v2</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"닫기\">×</button></div><div class=\"idline\"><span>Sentence Transformers /</span><code>sentence-transformers/all-mpnet-base-v2</code><button type=\"button\" id=\"copy-id\">ID 복사</button></div><nav class=\"card-jump-nav\" aria-label=\"모델 카드 섹션\"><button type=\"button\" data-card-jump=\"overview\">시작하기</button><button type=\"button\" data-card-jump=\"methods\">입력 및 메서드</button><button type=\"button\" data-card-jump=\"pricing\">요금</button><button type=\"button\" data-card-jump=\"examples\">예제</button><button type=\"button\" data-card-jump=\"results\">결과</button><button type=\"button\" data-card-jump=\"aliases\">별칭</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API 메서드\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|embeddings|/v1/embeddings|sentence-transformers%2Fall-mpnet-base-v2\">임베딩</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">시작하기</h3><p class=\"mdesc-full\">Sentence Transformers all-mpnet-base-v2는 검색, 군집화, 유사도 비교를 위해 문장과 짧은 문단을 768차원 벡터로 변환합니다. 공개된 방식은 평균 풀링과 L2 정규화를 사용하며, 기본적으로 384 워드피스에서 입력을 잘라냅니다.</p><dl class=\"card-io\" data-card-io><div><dt>허용 입력</dt><dd>텍스트 · token_ids</dd></div><div><dt>결과</dt><dd>embedding</dd></div></dl><details class=\"card-about\"><summary>모델 소개</summary><p class=\"note-s\" data-model-method-boundary>이 설명은 모델의 기능을 다룹니다. Ailoot에서 사용할 수 있는 입력, 출력 및 옵션은 아래에 선택한 메서드별로 표시됩니다.</p><div class=\"mabout\" id=\"m-about\"><p>all-mpnet-base-v2는 문장과 짧은 문단을 768차원 밀집 벡터로 표현하는 Sentence Transformers 모델입니다. 10억 개 문장 쌍 컬렉션에서 대조 학습으로 MPNet 베이스 모델을 미세조정했습니다. 제조사는 정보 검색, 군집화, 문장 유사도를 의도된 활용처로 명시합니다.</p><h4>문장이나 짧은 문단 인코딩하기</h4><p>비교할 텍스트를 준비하고, 핵심 생각과 이를 구별하는 세부 정보를 유지하세요. 내부 문서 컬렉션에서는 짧은 섹션으로 장비 교체 요청 방법이나 정비 보고서에 포함해야 할 정보를 설명할 수 있습니다. 문서 제목과 출처 위치를 벡터와 함께 확인할 수 있도록 유지하세요.</p><p>같은 모델로 임베딩한 질의는 표현이 다르더라도 관련 섹션을 검색할 수 있습니다. 독자에게 필요한 실제 지침이 있는지 해당 섹션을 살펴보세요. 유사도 워크플로에서는 검색 후 후보 문장 자체를 비교하세요. 특히 한쪽에 다른 쪽에는 없는 예외나 조건이 있을 때 중요합니다.</p><h4>평균 풀링과 정규화</h4><p>참조 인코딩 예제는 어텐션 마스크로 패딩을 평균에서 제외하면서 문맥을 반영한 토큰 표현을 평균 냅니다. 그런 다음 결과 문장 임베딩을 L2 정규화합니다. 컬렉션과 후속 질의의 벡터를 생성할 때 두 단계를 모두 유지하세요.</p><p>각 벡터에는 768개 성분이 있습니다. 코사인 유사도로 정규화된 표현을 비교할 수 있으며, 원문은 결과의 근거를 제공합니다. 성분 수가 같다고 이 모델이 multi-qa-mpnet-base-dot-v1와 호환되는 것은 아닙니다. 그 별도 에디션은 내적 점수 계산을 위해 CLS 풀링과 비정규화 벡터를 명시합니다.</p><h4>기본 잘림과 지문 준비</h4><p>제조사는 384 워드피스를 넘는 입력이 기본적으로 잘린다고 설명합니다. 관련 섹션을 그 토크나이저 경계 안에 유지하세요. 긴 절차는 의미 있는 섹션 경계에서 나누고, 각 단계가 무엇에 적용되는지 설명할 만큼의 주변 맥락을 포함하세요. “5일 이내에 제출” 같은 조각에는 기한의 시작점이 되는 사건이나 절차가 필요합니다.</p><p>학습 절차는 시퀀스를 128토큰으로 제한했으며, 이는 공개된 384 워드피스 인코딩 기본값과 별개입니다. 긴 문단이나 컬렉션 고유의 어휘를 평가할 때에는 대표 자료를 사용하세요. 더 많은 텍스트가 입력에 들어간다고 모든 세부 정보가 검색 결과에 똑같이 영향을 주는 것은 아닙니다.</p><h4>검색, 그룹화, 비교</h4><p>검색에서는 순위 후보가 원래 섹션을 반환할 수 있도록 벡터–문서 연결을 유지하세요. RAG 워크플로에서는 선택된 섹션이 답변 작성 단계의 맥락이 됩니다. 모델은 수치 표현을 제공합니다. 출처가 있는 응답을 생성하거나 어떤 문서가 권위 있는지 결정하지는 않습니다.</p><p>군집화에서는 레이블을 부여하기 전에 제안된 각 그룹의 레코드를 비교하세요. 정비 메모 집합이 비슷한 표현을 쓰면서도 서로 다른 장치나 고장 조건을 가리킬 수 있습니다. 점수에만 의존하지 말고, 그 차이를 구별하는 세부 정보를 인코딩할 텍스트에 포함하고 반환된 자료에서 살펴보세요.</p><p>이 정확한 all-mpnet-base-v2 체크포인트는 고유한 평균 풀링, 정규화, 기본 잘림 설정을 갖춘 영어 문장 임베딩 프로필입니다. 색인된 컬렉션과 함께 이러한 설정을 유지하고, 작업에 중요한 원문 지문을 찾고 비교하는 데 도움이 되는 수단으로 벡터를 사용하세요.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Ailoot에서 사용 가능 · 입력 및 메서드</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · 임베딩</b> <code>POST /v1/embeddings</code></summary><dl class=\"method-capabilities\"><div><dt>입력</dt><dd><code>text</code>, <code>token_ids</code></dd></div><div><dt>출력</dt><dd><code>embedding</code></dd></div><div><dt>출력 형식</dt><dd>json</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>필드</th><th>유형</th><th>요건</th><th>값과 한도</th><th>기본값</th></tr></thead><tbody><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>string</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>필수</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span><div>sentence-transformers/all-mpnet-base-v2</div></td><td data-cell-label=\"기본값\" data-default=\"unspecified\"><span class=\"card-cell-label\">기본값</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">input</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>string|string[]|integer[]|integer[][]</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>필수</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span><div>최소 항목 수: 1</div><div>조건: 비어 있지 않은 동일 형식의 배치입니다. 토큰 ID는 0 이상의 정수입니다.</div><div>입력 허용량: 최댓값: 512 · 텍스트 단위: UTF8 바이트 · 토큰 단위: 토큰 배열 요소</div></td><td data-cell-label=\"기본값\" data-default=\"unspecified\"><span class=\"card-cell-label\">기본값</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">encoding_format</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>string</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>선택 사항</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span><div>float</div></td><td data-cell-label=\"기본값\" data-default=\"known\"><span class=\"card-cell-label\">기본값</span>float</td></tr><tr data-parameter-availability=\"unsupported\"><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">dimensions</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>integer</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>지원되지 않음</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span><div>최솟값: 1</div></td><td data-cell-label=\"기본값\" data-default=\"unspecified\"><span class=\"card-cell-label\">기본값</span>—</td></tr><tr data-parameter-availability=\"pass_through_metadata\"><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">user</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>json_value</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>선택 사항</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span><div>조건: 원본에서 이 JSON 메타데이터 필드를 허용하며, 정확한 업스트림 동작은 모델별로 다릅니다.</div></td><td data-cell-label=\"기본값\" data-default=\"unspecified\"><span class=\"card-cell-label\">기본값</span>—</td></tr><tr data-parameter-availability=\"pass_through_metadata\"><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">session_id</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>json_value</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>선택 사항</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span><div>조건: 원본에서 이 JSON 메타데이터 필드를 허용하며, 정확한 업스트림 동작은 모델별로 다릅니다.</div></td><td data-cell-label=\"기본값\" data-default=\"unspecified\"><span class=\"card-cell-label\">기본값</span>—</td></tr><tr data-parameter-availability=\"pass_through_metadata\"><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">trace</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>json_value</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>선택 사항</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span><div>조건: 원본에서 이 JSON 메타데이터 필드를 허용하며, 정확한 업스트림 동작은 모델별로 다릅니다.</div></td><td data-cell-label=\"기본값\" data-default=\"unspecified\"><span class=\"card-cell-label\">기본값</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">provider</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span><code>object</code></td><td data-cell-label=\"요건\"><span class=\"card-cell-label\">요건</span>선택 사항</td><td data-cell-label=\"값과 한도\"><span class=\"card-cell-label\">값과 한도</span><div>조건: provider.options가 거부됨</div></td><td data-cell-label=\"기본값\" data-default=\"unspecified\"><span class=\"card-cell-label\">기본값</span>—</td></tr></tbody></table></div><details class=\"card-about\" data-material-combinations><summary>입력 자료 조합</summary><p class=\"note-s\"><b>text_to_embedding</b></p></details><details class=\"note-s\" data-method-contract><summary>메서드 매개변수와 수명 주기</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>매개변수</th><th>명세</th></tr></thead><tbody><tr><th data-cell-label=\"매개변수\" scope=\"row\"><span class=\"card-cell-label\">매개변수</span><code>content_type</code></th><td data-cell-label=\"명세\"><span class=\"card-cell-label\">명세</span>application/json</td></tr><tr><th data-cell-label=\"매개변수\" scope=\"row\"><span class=\"card-cell-label\">매개변수</span><code>required</code></th><td data-cell-label=\"명세\"><span class=\"card-cell-label\">명세</span>model, input</td></tr><tr><th data-cell-label=\"매개변수\" scope=\"row\"><span class=\"card-cell-label\">매개변수</span><code>input_shapes</code></th><td data-cell-label=\"명세\"><span class=\"card-cell-label\">명세</span>string, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]</td></tr><tr><th data-cell-label=\"매개변수\" scope=\"row\"><span class=\"card-cell-label\">매개변수</span><code>encoding_format</code></th><td data-cell-label=\"명세\"><span class=\"card-cell-label\">명세</span>float</td></tr><tr><th data-cell-label=\"매개변수\" scope=\"row\"><span class=\"card-cell-label\">매개변수</span><code>dimensions_override</code></th><td data-cell-label=\"명세\"><span class=\"card-cell-label\">명세</span>false</td></tr><tr><th data-cell-label=\"매개변수\" scope=\"row\"><span class=\"card-cell-label\">매개변수</span><code>max_input_budget_units</code></th><td data-cell-label=\"명세\"><span class=\"card-cell-label\">명세</span>512</td></tr><tr><th data-cell-label=\"매개변수\" scope=\"row\"><span class=\"card-cell-label\">매개변수</span><code>multimodal_objects</code></th><td data-cell-label=\"명세\"><span class=\"card-cell-label\">명세</span>false</td></tr><tr><th data-cell-label=\"매개변수\" scope=\"row\"><span class=\"card-cell-label\">매개변수</span><code>material_types</code></th><td data-cell-label=\"명세\"><span class=\"card-cell-label\">명세</span>text, token_ids</td></tr></tbody></table></div><p>수명 주기: <code>synchronous_json</code></p><p class=\"note-s\">모든 벡터의 인덱스와 차원을 보관하세요.</p><p class=\"note-s\">모델 이름이 멀티모달이어도 이 특정 경로에서 이미지 객체를 사용할 수 있는 것은 아닙니다.</p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">요금</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>요금 정보는 요청 옵션을 추가하지 않습니다. 지원되는 매개변수는 선택한 메서드에 표시됩니다.</p><dl data-price-conditions><dt>빠른 모드</dt><dd>미지정 <span class=\"note-s\">빠른 모드를 선택한 경우</span></dd><dt>Flex 모드</dt><dd>미지정 <span class=\"note-s\">flex 모드를 선택한 경우</span></dd><dt>최대 추론 수준</dt><dd>미지정 <span class=\"note-s\">최대 추론 수준에 default 조정값을 적용하는 경우</span></dd></dl></div><div data-declared-tariff-pricing><h4>Ailoot 요금</h4><h4>설정별 가격</h4><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>설정</th><th>요금표</th><th>요금</th></tr></thead><tbody><tr><th data-cell-label=\"설정\" scope=\"row\"><span class=\"card-cell-label\">설정</span>토큰의 기본 단가</th><td data-cell-label=\"요금표\"><span class=\"card-cell-label\">요금표</span>기본 요금</td><td data-cell-label=\"요금\"><span class=\"card-cell-label\">요금</span><div><span>입력 · 입력 토큰</span> <b>$0.00001</b> <span class=\"price-unit\">/ 1K 토큰</span></div><div><span>출력 · 출력 토큰</span> <b>$0</b> <span class=\"price-unit\">/ 1K 토큰</span></div><div><span>입력 · 캐시 읽기</span> <b>—</b> <span class=\"price-unit\">/ 1K 토큰</span></div><div><span>입력 · 캐시 쓰기</span> <b>—</b> <span class=\"price-unit\">/ 1K 토큰</span></div><div><span>입력 · 캐시 쓰기, 1시간</span> <b>—</b> <span class=\"price-unit\">/ 1K 토큰</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot는 요청 전에 예상 금액을 미리 확보합니다. 결과를 받은 뒤 측정된 사용량을 기준으로 최종 요금을 정산합니다. 스트리밍 정산에는 최종 사용량 기록을 사용합니다. <a href=\"/docs/ko/billing/reserve/\">금액 확보와 정산 방식 →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">요청 예제</h3><h4>Ailoot Ultra · 임베딩</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"코드 예제 형식\"><button class=\"cg-tab\" id=\"model-code-2598-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2598-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl</button><button class=\"cg-tab\" id=\"model-code-2598-tab-1\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2598-panel-1\" aria-selected=\"false\" tabindex=\"-1\">Python SDK</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"코드 복사\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-2598-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2598-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np=json.loads(&#39;{&quot;model&quot;: &quot;sentence-transformers/all-mpnet-base-v2&quot;, &quot;input&quot;: [&quot;First document&quot;, &quot;Second document&quot;]}&#39;)\n\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport json\nfrom pathlib import Path\nr=json.loads(Path(&quot;result.json&quot;).read_text())\nfor x in r.get(&quot;data&quot;,[]): print(json.dumps({&quot;index&quot;:x.get(&quot;index&quot;),&quot;embedding&quot;:x.get(&quot;embedding&quot;)}))\nPY_RESULT\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-2598-panel-1\" role=\"tabpanel\" aria-labelledby=\"model-code-2598-tab-1\" hidden><pre data-lang=\"python\"><code>from openai import OpenAI\nimport os\n\nclient=OpenAI(base_url=&quot;https://api.ailoot.ai/v1&quot;,api_key=os.environ[&quot;AILOOT_API_KEY&quot;],max_retries=0)\nresult=client.embeddings.create(model=&#39;sentence-transformers/all-mpnet-base-v2&#39;,input=[&quot;First document&quot;,&quot;Second document&quot;])\nprint(result)\nfor item in result.data:print(item.index,item.embedding)\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">결과 수신 및 저장</h3><h4>Ailoot Ultra · 임베딩</h4><p class=\"note-s\">json</p><div class=\"card-result-process\" data-all-results><h5>완료된 결과 모두 보관</h5><p class=\"note-s\">반환된 완전한 응답, 파일, 콘텐츠 부분을 모두 보관하세요.</p><p class=\"note-s\">모든 벡터를 인덱스와 함께 보관하세요. 벡터 수는 입력 수와 같아야 하며 차원은 일관되어야 합니다.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>원래 응답을 확인해야 할 경우</h5><p class=\"note-s\">임베딩 작업 엔드포인트는 추가되지 않습니다.</p></div><details class=\"card-about\" data-output-fields><summary>응답 필드</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>필드</th><th>유형</th></tr></thead><tbody><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">object</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span>string</td></tr><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span>string</td></tr><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">data[].index</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span>integer</td></tr><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">data[].embedding</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span>finite float[]</td></tr><tr><th data-cell-label=\"필드\" scope=\"row\"><span class=\"card-cell-label\">필드</span><code class=\"card-field-name\">usage</code></th><td data-cell-label=\"유형\" data-field-type><span class=\"card-cell-label\">유형</span>object</td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>오류와 다음 단계</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>응답</th><th>조건</th><th>다음 단계</th></tr></thead><tbody><tr><th data-cell-label=\"응답\" scope=\"row\"><span class=\"card-cell-label\">응답</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"조건\"><span class=\"card-cell-label\">조건</span>필수 필드, 자료 표현 방식 또는 파라미터 값이 올바르지 않음</td><td data-cell-label=\"다음 단계\"><span class=\"card-cell-label\">다음 단계</span>새 생성 요청 전에 표시된 필드를 수정하세요.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">별칭</h3><h4>모델 별칭</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=sentence-transformers%2Fall-mpnet-base-v2&amp;route=Ultra&amp;caller=sentence-transformers%2Fall-mpnet-base-v2&amp;fmt=embeddings\"><code>sentence-transformers/all-mpnet-base-v2</code></a></span></p><h4>메서드 경로 별칭</h4><p class=\"note-s\">위에 표시된 메서드 경로를 사용하세요.</p><h4>관련 호출용 ID</h4><p class=\"note-s\"><a href=\"#m=sentence-transformers%2Fall-mpnet-base-v2&amp;route=Ultra&amp;caller=sentence-transformers%2Fall-mpnet-base-v2&amp;fmt=embeddings\"><code>sentence-transformers/all-mpnet-base-v2</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "sentence-transformers/all-mpnet-base-v2",
        "fmt": "embeddings",
        "http": "POST",
        "path": "/v1/embeddings",
        "request_model_id": "sentence-transformers/all-mpnet-base-v2",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|embeddings|/v1/embeddings|sentence-transformers%2Fall-mpnet-base-v2",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Keep every vector with its index. Vector count must equal input count; dimensions must be consistent.",
            "errors": [
              {
                "code": null,
                "condition": "필수 필드, 자료 표현 방식 또는 파라미터 값이 올바르지 않음",
                "http_status": 400,
                "recovery": "새 생성 요청 전에 표시된 필드를 수정하세요.",
                "type": "invalid_request_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "create": {
                "http": "POST",
                "path": "/v1/embeddings"
              },
              "job_read": null,
              "mode": "synchronous_json",
              "unknown": "임베딩 작업 엔드포인트는 추가되지 않습니다."
            },
            "material_combinations": [
              {
                "alternatives": [
                  "string",
                  "string[]",
                  "nonnegative_integer_token_array",
                  "nonnegative_integer_token_array[]"
                ],
                "mode": "text_to_embedding"
              }
            ],
            "operation_modes": [
              "single_embedding",
              "batched_embeddings"
            ],
            "outputs": {
              "all_results": "모든 벡터를 인덱스와 함께 보관하세요. 벡터 수는 입력 수와 같아야 하며 차원은 일관되어야 합니다.",
              "default_dimensions": null,
              "family": "embedding",
              "fields": [
                {
                  "description": null,
                  "name": "object",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "model",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "data[].index",
                  "type": "integer"
                },
                {
                  "description": null,
                  "name": "data[].embedding",
                  "type": "finite float[]"
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": "object"
                }
              ],
              "format": "json"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "sentence-transformers/all-mpnet-base-v2"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "budget": {
                  "maximum": 512,
                  "text_unit": "UTF8 바이트",
                  "token_unit": "토큰 배열 요소"
                },
                "conditions": "비어 있지 않은 동일 형식의 배치입니다. 토큰 ID는 0 이상의 정수입니다.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "min_items": 1,
                "name": "input",
                "required": true,
                "type": "string|string[]|integer[]|integer[][]"
              },
              {
                "availability": "source_interface",
                "default": "float",
                "default_known": true,
                "enum": [
                  "float"
                ],
                "enum_known": true,
                "name": "encoding_format",
                "required": false,
                "type": "string"
              },
              {
                "availability": "unsupported",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "minimum": 1,
                "name": "dimensions",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "원본에서 이 JSON 메타데이터 필드를 허용하며, 정확한 업스트림 동작은 모델별로 다릅니다.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "user",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "원본에서 이 JSON 메타데이터 필드를 허용하며, 정확한 업스트림 동작은 모델별로 다릅니다.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "session_id",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "원본에서 이 JSON 메타데이터 필드를 허용하며, 정확한 업스트림 동작은 모델별로 다릅니다.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "trace",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "source_interface",
                "conditions": "provider.options가 거부됨",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "mixed input kinds",
              "empty input",
              "image/audio/file objects",
              "encoding_format=base64",
              "dimensions override"
            ]
          },
          "hints": [
            "모든 벡터의 인덱스와 차원을 보관하세요.",
            "모델 이름이 멀티모달이어도 이 특정 경로에서 이미지 객체를 사용할 수 있는 것은 아닙니다."
          ],
          "input": {
            "content_type": "application/json",
            "dimensions_override": false,
            "encoding_format": [
              "float"
            ],
            "input_shapes": [
              "string",
              "string[]",
              "nonnegative_integer_token_array",
              "nonnegative_integer_token_array[]"
            ],
            "material_types": [
              "text",
              "token_ids"
            ],
            "max_input_budget_units": 512,
            "multimodal_objects": false,
            "required": [
              "model",
              "input"
            ]
          },
          "lifecycle": {
            "mode": "synchronous_json",
            "unknown": "no embedding job endpoint inferred"
          },
          "manufacturer_capability": null,
          "method": {
            "http": "POST",
            "path": "/v1/embeddings"
          },
          "method_aliases": [],
          "operation_modes": [
            "text_to_embedding"
          ],
          "output": {
            "default_dimensions": null,
            "family": "embedding",
            "format": "json",
            "http_success": 200,
            "vectors": "one dense float vector per input; indices/model/usage validated"
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "토큰의 기본 단가",
            "units": [
              {
                "amount": "0.00001000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.00000001",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"sentence-transformers/all-mpnet-base-v2\", \"input\": [\"First document\", \"Second document\"]}')\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nr=json.loads(Path(\"result.json\").read_text())\nfor x in r.get(\"data\",[]): print(json.dumps({\"index\":x.get(\"index\"),\"embedding\":x.get(\"embedding\")}))\nPY_RESULT\n",
            "label": "curl · retained exact creation",
            "language": "bash"
          },
          {
            "code": "from openai import OpenAI\nimport os\n\nclient=OpenAI(base_url=\"https://api.ailoot.ai/v1\",api_key=os.environ[\"AILOOT_API_KEY\"],max_retries=0)\nresult=client.embeddings.create(model='sentence-transformers/all-mpnet-base-v2',input=[\"First document\",\"Second document\"])\nprint(result)\nfor item in result.data:print(item.index,item.embedding)\n",
            "label": "Python SDK · all vectors",
            "language": "python"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "embeddings",
        "hints": [
          "Keep every vector index and dimension.",
          "Multimodal model name does not admit image objects on this exact path."
        ],
        "http": "POST",
        "in": 0.01,
        "input": [
          "text",
          "token_ids"
        ],
        "label": "Эмбеддинги",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "out": 0,
        "output": [
          "embedding"
        ],
        "path": "/v1/embeddings",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "token",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0.00001000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.00000001",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "request_model_id": "sentence-transformers/all-mpnet-base-v2",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "units": [
          {
            "amount": "0.00001000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0.00000001",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      }
    }
  ],
  "model_id": "sentence-transformers/all-mpnet-base-v2",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "a694a46aab7ae18a87e382264c76ffa44496505ad89801045b36b79e713ddd04",
    "input_html_sha256": "0b827859ec8bd84ec2dc74d260b9659f37fc715d6c073b1161b8bdff329458c6",
    "private_audit_sha256": "c0e54d6a3027041364b2854d44af7109ebbe8111f6bf7b4666c465ba8e082bde",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/ko/sentence-transformers-all-mpnet-base-v2/",
    "description": "Sentence Transformers all-mpnet-base-v2는 검색, 군집화, 유사도 비교를 위해 문장과 짧은 문단을 768차원 벡터로 변환합니다. 공개된 방식은 평균 풀링과 L2 정규화를 사용하며, 기본적으로 384 워드피스에서 입력을 잘라냅니다.",
    "locale": "ko",
    "md_url": "https://ailoot.ai/models/ko/sentence-transformers-all-mpnet-base-v2/index.md",
    "title": "Sentence Transformers: all-mpnet-base-v2 — Ailoot",
    "url": "https://ailoot.ai/models/ko/sentence-transformers-all-mpnet-base-v2/"
  },
  "rawModel": {
    "about": "all-mpnet-base-v2는 문장과 짧은 문단을 768차원 밀집 벡터로 표현하는 Sentence Transformers 모델입니다. 10억 개 문장 쌍 컬렉션에서 대조 학습으로 MPNet 베이스 모델을 미세조정했습니다. 제조사는 정보 검색, 군집화, 문장 유사도를 의도된 활용처로 명시합니다.\n\n### 문장이나 짧은 문단 인코딩하기\n\n비교할 텍스트를 준비하고, 핵심 생각과 이를 구별하는 세부 정보를 유지하세요. 내부 문서 컬렉션에서는 짧은 섹션으로 장비 교체 요청 방법이나 정비 보고서에 포함해야 할 정보를 설명할 수 있습니다. 문서 제목과 출처 위치를 벡터와 함께 확인할 수 있도록 유지하세요.\n\n같은 모델로 임베딩한 질의는 표현이 다르더라도 관련 섹션을 검색할 수 있습니다. 독자에게 필요한 실제 지침이 있는지 해당 섹션을 살펴보세요. 유사도 워크플로에서는 검색 후 후보 문장 자체를 비교하세요. 특히 한쪽에 다른 쪽에는 없는 예외나 조건이 있을 때 중요합니다.\n\n### 평균 풀링과 정규화\n\n참조 인코딩 예제는 어텐션 마스크로 패딩을 평균에서 제외하면서 문맥을 반영한 토큰 표현을 평균 냅니다. 그런 다음 결과 문장 임베딩을 L2 정규화합니다. 컬렉션과 후속 질의의 벡터를 생성할 때 두 단계를 모두 유지하세요.\n\n각 벡터에는 768개 성분이 있습니다. 코사인 유사도로 정규화된 표현을 비교할 수 있으며, 원문은 결과의 근거를 제공합니다. 성분 수가 같다고 이 모델이 multi-qa-mpnet-base-dot-v1와 호환되는 것은 아닙니다. 그 별도 에디션은 내적 점수 계산을 위해 CLS 풀링과 비정규화 벡터를 명시합니다.\n\n### 기본 잘림과 지문 준비\n\n제조사는 384 워드피스를 넘는 입력이 기본적으로 잘린다고 설명합니다. 관련 섹션을 그 토크나이저 경계 안에 유지하세요. 긴 절차는 의미 있는 섹션 경계에서 나누고, 각 단계가 무엇에 적용되는지 설명할 만큼의 주변 맥락을 포함하세요. “5일 이내에 제출” 같은 조각에는 기한의 시작점이 되는 사건이나 절차가 필요합니다.\n\n학습 절차는 시퀀스를 128토큰으로 제한했으며, 이는 공개된 384 워드피스 인코딩 기본값과 별개입니다. 긴 문단이나 컬렉션 고유의 어휘를 평가할 때에는 대표 자료를 사용하세요. 더 많은 텍스트가 입력에 들어간다고 모든 세부 정보가 검색 결과에 똑같이 영향을 주는 것은 아닙니다.\n\n### 검색, 그룹화, 비교\n\n검색에서는 순위 후보가 원래 섹션을 반환할 수 있도록 벡터–문서 연결을 유지하세요. RAG 워크플로에서는 선택된 섹션이 답변 작성 단계의 맥락이 됩니다. 모델은 수치 표현을 제공합니다. 출처가 있는 응답을 생성하거나 어떤 문서가 권위 있는지 결정하지는 않습니다.\n\n군집화에서는 레이블을 부여하기 전에 제안된 각 그룹의 레코드를 비교하세요. 정비 메모 집합이 비슷한 표현을 쓰면서도 서로 다른 장치나 고장 조건을 가리킬 수 있습니다. 점수에만 의존하지 말고, 그 차이를 구별하는 세부 정보를 인코딩할 텍스트에 포함하고 반환된 자료에서 살펴보세요.\n\n이 정확한 all-mpnet-base-v2 체크포인트는 고유한 평균 풀링, 정규화, 기본 잘림 설정을 갖춘 영어 문장 임베딩 프로필입니다. 색인된 컬렉션과 함께 이러한 설정을 유지하고, 작업에 중요한 원문 지문을 찾고 비교하는 데 도움이 되는 수단으로 벡터를 사용하세요.",
    "alias_of": null,
    "aliases": [],
    "author": "Sentence Transformers",
    "available": null,
    "canonical_model": "sentence-transformers/all-mpnet-base-v2",
    "capabilities": {
      "context_length": 512,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "embeddings"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.00001000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0.00000001",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          }
        ],
        "summary": "구성의 전체 요금 정보는 상세 정보에서 확인할 수 있습니다."
      }
    ],
    "ctx": null,
    "entity_type": "model",
    "formats": [
      "embeddings"
    ],
    "id": "sentence-transformers/all-mpnet-base-v2",
    "input": [
      "text",
      "token_ids"
    ],
    "kind": "embedding",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Keep every vector with its index. Vector count must equal input count; dimensions must be consistent.",
            "errors": [
              {
                "code": null,
                "condition": "필수 필드, 자료 표현 방식 또는 파라미터 값이 올바르지 않음",
                "http_status": 400,
                "recovery": "새 생성 요청 전에 표시된 필드를 수정하세요.",
                "type": "invalid_request_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "create": {
                "http": "POST",
                "path": "/v1/embeddings"
              },
              "job_read": null,
              "mode": "synchronous_json",
              "unknown": "임베딩 작업 엔드포인트는 추가되지 않습니다."
            },
            "material_combinations": [
              {
                "alternatives": [
                  "string",
                  "string[]",
                  "nonnegative_integer_token_array",
                  "nonnegative_integer_token_array[]"
                ],
                "mode": "text_to_embedding"
              }
            ],
            "operation_modes": [
              "single_embedding",
              "batched_embeddings"
            ],
            "outputs": {
              "all_results": "모든 벡터를 인덱스와 함께 보관하세요. 벡터 수는 입력 수와 같아야 하며 차원은 일관되어야 합니다.",
              "default_dimensions": null,
              "family": "embedding",
              "fields": [
                {
                  "description": null,
                  "name": "object",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "model",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "data[].index",
                  "type": "integer"
                },
                {
                  "description": null,
                  "name": "data[].embedding",
                  "type": "finite float[]"
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": "object"
                }
              ],
              "format": "json"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "sentence-transformers/all-mpnet-base-v2"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "budget": {
                  "maximum": 512,
                  "text_unit": "UTF8 바이트",
                  "token_unit": "토큰 배열 요소"
                },
                "conditions": "비어 있지 않은 동일 형식의 배치입니다. 토큰 ID는 0 이상의 정수입니다.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "min_items": 1,
                "name": "input",
                "required": true,
                "type": "string|string[]|integer[]|integer[][]"
              },
              {
                "availability": "source_interface",
                "default": "float",
                "default_known": true,
                "enum": [
                  "float"
                ],
                "enum_known": true,
                "name": "encoding_format",
                "required": false,
                "type": "string"
              },
              {
                "availability": "unsupported",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "minimum": 1,
                "name": "dimensions",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "원본에서 이 JSON 메타데이터 필드를 허용하며, 정확한 업스트림 동작은 모델별로 다릅니다.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "user",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "원본에서 이 JSON 메타데이터 필드를 허용하며, 정확한 업스트림 동작은 모델별로 다릅니다.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "session_id",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "원본에서 이 JSON 메타데이터 필드를 허용하며, 정확한 업스트림 동작은 모델별로 다릅니다.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "trace",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "source_interface",
                "conditions": "provider.options가 거부됨",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "mixed input kinds",
              "empty input",
              "image/audio/file objects",
              "encoding_format=base64",
              "dimensions override"
            ]
          },
          "hints": [
            "모든 벡터의 인덱스와 차원을 보관하세요.",
            "모델 이름이 멀티모달이어도 이 특정 경로에서 이미지 객체를 사용할 수 있는 것은 아닙니다."
          ],
          "input": {
            "content_type": "application/json",
            "dimensions_override": false,
            "encoding_format": [
              "float"
            ],
            "input_shapes": [
              "string",
              "string[]",
              "nonnegative_integer_token_array",
              "nonnegative_integer_token_array[]"
            ],
            "material_types": [
              "text",
              "token_ids"
            ],
            "max_input_budget_units": 512,
            "multimodal_objects": false,
            "required": [
              "model",
              "input"
            ]
          },
          "lifecycle": {
            "mode": "synchronous_json",
            "unknown": "no embedding job endpoint inferred"
          },
          "manufacturer_capability": null,
          "method": {
            "http": "POST",
            "path": "/v1/embeddings"
          },
          "method_aliases": [],
          "operation_modes": [
            "text_to_embedding"
          ],
          "output": {
            "default_dimensions": null,
            "family": "embedding",
            "format": "json",
            "http_success": 200,
            "vectors": "one dense float vector per input; indices/model/usage validated"
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "토큰의 기본 단가",
            "units": [
              {
                "amount": "0.00001000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.00000001",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"sentence-transformers/all-mpnet-base-v2\", \"input\": [\"First document\", \"Second document\"]}')\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nr=json.loads(Path(\"result.json\").read_text())\nfor x in r.get(\"data\",[]): print(json.dumps({\"index\":x.get(\"index\"),\"embedding\":x.get(\"embedding\")}))\nPY_RESULT\n",
            "label": "curl · retained exact creation",
            "language": "bash"
          },
          {
            "code": "from openai import OpenAI\nimport os\n\nclient=OpenAI(base_url=\"https://api.ailoot.ai/v1\",api_key=os.environ[\"AILOOT_API_KEY\"],max_retries=0)\nresult=client.embeddings.create(model='sentence-transformers/all-mpnet-base-v2',input=[\"First document\",\"Second document\"])\nprint(result)\nfor item in result.data:print(item.index,item.embedding)\n",
            "label": "Python SDK · all vectors",
            "language": "python"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "embeddings",
        "hints": [
          "Keep every vector index and dimension.",
          "Multimodal model name does not admit image objects on this exact path."
        ],
        "http": "POST",
        "in": 0.01,
        "input": [
          "text",
          "token_ids"
        ],
        "label": "Эмбеддинги",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "out": 0,
        "output": [
          "embedding"
        ],
        "path": "/v1/embeddings",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "token",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0.00001000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.00000001",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "request_model_id": "sentence-transformers/all-mpnet-base-v2",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "units": [
          {
            "amount": "0.00001000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0.00000001",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "sentence-transformers/all-mpnet-base-v2",
        "request_model_id": "sentence-transformers/all-mpnet-base-v2",
        "route_label": "Ultra"
      }
    ],
    "name": "Sentence Transformers: all-mpnet-base-v2",
    "price": {
      "in": 0.01,
      "in_label": null,
      "out": 0,
      "out_label": null,
      "scope_label": "Token rates",
      "sort_in": 0.01,
      "sort_out": 0,
      "varies": false
    },
    "public_id": "sentence-transformers/all-mpnet-base-v2",
    "short": "Sentence Transformers all-mpnet-base-v2는 검색, 군집화, 유사도 비교를 위해 문장과 짧은 문단을 768차원 벡터로 변환합니다. 공개된 방식은 평균 풀링과 L2 정규화를 사용하며, 기본적으로 384 워드피스에서 입력을 잘라냅니다."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "Sentence Transformers all-mpnet-base-v2는 검색, 군집화, 유사도 비교를 위해 문장과 짧은 문단을 768차원 벡터로 변환합니다. 공개된 방식은 평균 풀링과 L2 정규화를 사용하며, 기본적으로 384 워드피스에서 입력을 잘라냅니다.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "06de7c9eb7194352d259f1fd5a2c49615f38610750ca9d1dee54381f47e5a168",
    "renderer_sha256": "6825a317438b70ab0939441dcebefece462384e77f7e96cce899605c4b208caa"
  },
  "sourceRevision": "8f8c4a02f645fe7bc921ee75e6923ca627a75fc329568f7d0075580d7b2aaea7"
}
