Perplexity: Embed V1 4B
Perplexity pplx-embed-v1-4B 將獨立文字編碼為 2560 維檢索向量,具備 32K 上下文。它不需要指令前綴,原生產生未正規化的 INT8 嵌入,並以餘弦相似度比較。
關於模型
此說明介紹模型的能力。Ailoot 可用的輸入、輸出與選項,依所選方法列於下方。
pplx-embed-v1-4B 是 Perplexity v1 家族中較大的獨立文字嵌入版本。它將查詢或文件表示為 2560 維向量,用於語意搜尋與檢索。製造商以 Qwen3 為基礎,透過擴散式持續預訓練建立此家族,並以平均池化取得文字表示。這個獨立編碼器與利用周邊上下文表示文件區塊的 pplx-embed-context-v1 不同。
直接嵌入實際文字
模型不要求指示字串或 query/passage 前綴。請準備要表示的文字,不要加入從其他家族借來的角色慣例。搜尋集合可以包含來源文件、聚焦段落或短文字記錄。請將每個項目的原始措辭與識別碼和向量一起保留,讓檢索結果可閱讀、可追溯。
實際任務可以是針對某個條件的問題,檢索技術說明中的相關章節。請將章節標題、規則與例外一起保留。查詢措辭會獨立建立嵌入,再與準備好的語料庫表示比較。後續 RAG 階段使用回傳段落文字作為來源資料,而不是使用向量本身。
原生表示與比較
製造商明確指出原生嵌入未經正規化,並經 INT8 量化。請以餘弦相似度比較。對這些未正規化值直接計算內積,不等同於文件所載的餘弦比較。因此,選擇搜尋索引儲存與比較輸出的方式時,表示型別與相似度函數必須一併考量。
模型卡也記載二進位輸出,並標示支援 Matryoshka 表示。二進位分量及其打包儲存方式不同於一般浮點數陣列,因此索引必須正確解讀所選表示。完整嵌入維度描述的是表示的分量數,不是每種編碼方式的位元組數。請在查詢端與文件端維持一致的維度及輸出型別。
長度與文件邊界
模型公開的上下文為 32K。這讓模型可以表示相當多文字,但段落粒度仍應依搜尋預期回傳的內容決定。完整章節可保留定義與限定條件,聚焦摘錄則能直接指向指示。請依選定的輸入視窗準備過大的資料,不要假設遭省略的尾段仍有被表示。
請將上層文件識別碼與來源版本保留在向量之外。文字變更時,請更新對應的語料庫表示,並保留與新來源的連結。若集合包含多種語言,請在預期語言組合中檢視實際問題與候選段落,不要僅憑多語言標籤推論相關性相同。
獨立版本與上下文版本
v1-4B 模型獨立嵌入每段提供的文字。將多個字串加入批次,不會使它變成另外的 context-v1 區塊編碼器。若每個區塊的表示必須受到周邊文件影響,則應使用上下文版本及其專屬準備方式。
較小的 pplx-embed-v1-0.6B 回傳 1024 維,而這個 4B 版本回傳 2560 維。除非已建立文件記載的相容途徑,否則請分開管理確切模型識別與索引表示。這裡的有用結果是獨立的查詢或來源文字向量,並為檢索任務記錄餘弦比較及選定的量化表示。
Ailoot Ultra · 嵌入向量 POST /v1/embeddings perplexity/pplx-embed-v1-4b
perplexity/pplx-embed-v1-4b入門
Perplexity pplx-embed-v1-4B 將獨立文字編碼為 2560 維檢索向量,具備 32K 上下文。它不需要指令前綴,原生產生未正規化的 INT8 嵌入,並以餘弦相似度比較。
- 接受的輸入
- 文字 · token_ids
- 結果
- embedding
Ailoot 可用 · 輸入與方法
Ailoot Ultra · 嵌入向量 POST /v1/embeddings
- 輸入
text,token_ids- 輸出
embedding- 上下文
- 32,000 tokens
- 輸出格式
- json
| 欄位 | 類型 | 要求 | 值與限制 | 預設值 |
|---|---|---|---|---|
欄位model | 類型string | 要求必填 | 值與限制 perplexity/pplx-embed-v1-4b | 預設值— |
欄位input | 類型string|string[]|integer[]|integer[][] | 要求必填 | 值與限制 項目數下限: 1 條件: 批次不得為空,且各項目類型須一致。Token ID 須為非負整數。 輸入額度: 最大值: 32,000 · 文字單位: UTF8 位元組 · Token 單位: token 陣列元素 | 預設值— |
欄位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 | 規格32000 |
參數multimodal_objects | 規格false |
參數material_types | 規格text, token_ids |
生命週期: synchronous_json
保留每個向量的索引與維度。
即使模型名稱標示為多模態,此指定路徑也不接受圖片物件。
方案
費率資訊不會增加請求選項。支援的參數列於所選方法中。
- 快速模式
- 標準費率 選取快速模式時
- flex 模式
- 標準費率 選取 flex 模式時
- 最高推理強度
- 標準費率 最高推理強度採用 default 調整值時
Ailoot 費率
各設定的價格
| 設定 | 費率表 | 費用 |
|---|---|---|
| 設定詞元基本費率 | 費率表基本費率 | 費用 輸入 · 輸入 Token $0.00006 / 1K Token 輸出 · 輸出 Token $0 / 1K Token 輸入 · 讀取快取 — / 1K Token 輸入 · 寫入快取 — / 1K Token 輸入 · 寫入快取,1 小時 — / 1K Token |
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": "perplexity/pplx-embed-v1-4b", "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='perplexity/pplx-embed-v1-4b',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 perplexity/pplx-embed-v1-4b
方法路徑別名
請使用上方列出的 API 方法路徑。
相關呼叫用 ID
FAQ · Perplexity: Embed V1 4B
- 可以使用哪些輸入與結果?
POST /v1/embeddings·perplexity/pplx-embed-v1-4b:text,token_ids→embedding- 請求使用哪些欄位?
POST /v1/embeddings·perplexity/pplx-embed-v1-4b:model,input,encoding_format,provider- 適用哪些限制?
POST /v1/embeddings·perplexity/pplx-embed-v1-4b:ctx:32000;input.budget.maximum:32000(UTF8 位元組);input.min_items:1