Perplexity: Embed V1 4B
Perplexity pplx-embed-v1-4B encode des textes indépendants en vecteurs de recherche de 2560 dimensions, avec un contexte de 32K. Il n’exige pas de préfixe de consigne et produit nativement des embeddings INT8 non normalisés, comparés par similarité cosinus.
À propos du modèle
Cette description présente les capacités du modèle. Les entrées, sorties et options disponibles dans Ailoot pour la méthode sélectionnée figurent ci-dessous.
pplx-embed-v1-4B est la plus grande édition indépendante de plongement textuel de Perplexity dans la famille v1. Elle représente des requêtes ou des documents sous forme de vecteurs de 2560 dimensions pour la recherche sémantique et la recherche d’information. Le fabricant construit cette famille sur Qwen3 avec un préentraînement continu par diffusion et utilise une agrégation par moyenne pour la représentation textuelle. Cet encodeur indépendant est distinct de pplx-embed-context-v1, qui représente les segments documentaires en utilisant le contexte environnant.
Encoder directement le texte réel
Le modèle ne nécessite ni chaîne d’instruction ni préfixe query/passage. Préparez le texte à représenter, plutôt que d’ajouter une convention de rôle empruntée à une autre famille. Une collection de recherche peut contenir des documents sources, des passages ciblés ou de courts enregistrements textuels. Gardez la formulation d’origine et l’identifiant de chaque élément avec son vecteur, afin qu’un résultat retrouvé reste lisible et traçable.
Une tâche concrète consiste à retrouver une section d’explication technique pour une question portant sur ses conditions. Préservez ensemble le titre de la section, la règle et l’exception. La formulation de la requête est encodée indépendamment, puis comparée aux représentations préparées du corpus. Une étape RAG ultérieure utilise le texte du passage renvoyé, et non le vecteur lui-même, comme matériau source.
Représentation native et comparaison
Le fabricant indique explicitement que les plongements natifs sont non normalisés et quantifiés en INT8. Comparez-les par similarité cosinus. Un produit scalaire brut sur ces valeurs non normalisées n’est pas l’équivalent documenté d’une comparaison cosinus. Le type de représentation et la fonction de similarité doivent donc être considérés ensemble lorsque vous choisissez comment un index de recherche stocke et compare la sortie.
La fiche du modèle documente aussi une sortie binaire et signale la prise en charge des représentations Matryoshka. Les composantes binaires et leur stockage compacté diffèrent des tableaux ordinaires de nombres à virgule flottante ; l’index doit donc interpréter la représentation choisie. La dimension complète du plongement décrit les composantes de la représentation, plutôt que le nombre d’octets de chaque encodage. Gardez une dimension et un type de sortie cohérents du côté des requêtes et du côté des documents.
Longueur et limites des documents
Le contexte publié du modèle est de 32K. Cela permet de représenter un volume important de texte, tandis que la granularité des passages doit toujours suivre ce que la recherche est censée renvoyer. Une section complète peut conserver une définition et ses précisions ; un extrait ciblé peut pointer directement vers une instruction. Le matériau trop volumineux doit être préparé en fonction de la fenêtre d’entrée choisie, plutôt que de supposer que sa fin omise reste représentée.
Préservez un identifiant de document parent et une version de la source en dehors du vecteur. Si le texte change, mettez à jour la représentation correspondante du corpus et conservez le lien avec la nouvelle source. Pour une collection contenant plusieurs langues, examinez les vraies questions et les passages candidats dans le mélange linguistique visé, plutôt que de déduire une pertinence égale de la seule étiquette multilingue.
Éditions indépendantes et contextuelles
Le modèle v1-4B encode chaque texte fourni indépendamment. Ajouter plusieurs chaînes à un lot ne le transforme pas en l’encodeur de segments context-v1 distinct. Lorsque le document environnant doit façonner la représentation de chaque segment, cette tâche relève de l’édition contextuelle et de sa propre préparation.
Le modèle plus petit pplx-embed-v1-0.6B renvoie 1024 dimensions, tandis que cette édition 4B en renvoie 2560. Gardez leurs identités exactes et leurs représentations d’index séparées, sauf si une voie de compatibilité documentée est établie. Le résultat utile est ici un vecteur indépendant de requête ou de texte source, avec la comparaison cosinus et la représentation quantifiée sélectionnée consignées pour la tâche de recherche.
Ailoot Ultra · Embeddings POST /v1/embeddings perplexity/pplx-embed-v1-4b
perplexity/pplx-embed-v1-4bPour commencer
Perplexity pplx-embed-v1-4B encode des textes indépendants en vecteurs de recherche de 2560 dimensions, avec un contexte de 32K. Il n’exige pas de préfixe de consigne et produit nativement des embeddings INT8 non normalisés, comparés par similarité cosinus.
- Entrées acceptées
- Texte · token_ids
- Résultats
- embedding
Disponible dans Ailoot · entrées et méthodes
Ailoot Ultra · Embeddings POST /v1/embeddings
- Entrée
text,token_ids- Sortie
embedding- Contexte
- 32 000 tokens
- Format de sortie
- json
| Champ | Type | Exigence | Valeurs et limites | Par défaut |
|---|---|---|---|---|
Champmodel | Typestring | ExigenceObligatoire | Valeurs et limites perplexity/pplx-embed-v1-4b | Par défaut— |
Champinput | Typestring|string[]|integer[]|integer[][] | ExigenceObligatoire | Valeurs et limites Nombre minimal d’éléments: 1 Conditions: Lot homogène non vide. Les identifiants de jetons sont des entiers positifs ou nuls. Budget d’entrée : Maximum: 32 000 · Unité de texte: octets UTF8 · Unité de jetons: éléments du tableau de jetons | Par défaut— |
Champencoding_format | Typestring | ExigenceFacultatif | Valeurs et limites float | Par défautfloat |
Champdimensions | Typeinteger | ExigenceNon pris en charge | Valeurs et limites Minimum: 1 | Par défaut— |
Champuser | Typejson_value | ExigenceFacultatif | Valeurs et limites Conditions: Le code source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle. | Par défaut— |
Champsession_id | Typejson_value | ExigenceFacultatif | Valeurs et limites Conditions: Le code source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle. | Par défaut— |
Champtrace | Typejson_value | ExigenceFacultatif | Valeurs et limites Conditions: Le code source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle. | Par défaut— |
Champprovider | Typeobject | ExigenceFacultatif | Valeurs et limites Conditions: provider.options est refusé | Par défaut— |
Combinaisons d’éléments d’entrée
text_to_embedding
Paramètres et cycle de vie de la méthode
| Paramètre | Contrat |
|---|---|
Paramètrecontent_type | Contratapplication/json |
Paramètrerequired | Contratmodel, input |
Paramètreinput_shapes | Contratstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Paramètreencoding_format | Contratfloat |
Paramètredimensions_override | Contratfalse |
Paramètremax_input_budget_units | Contrat32000 |
Paramètremultimodal_objects | Contratfalse |
Paramètrematerial_types | Contrattext, token_ids |
Cycle de vie : synchronous_json
Conservez tous les indices et toutes les dimensions des vecteurs.
Un nom de modèle multimodal n’autorise pas les objets image sur ce chemin précis.
Tarifs
Les tarifs n’ajoutent pas d’options de requête. Les paramètres pris en charge figurent dans la méthode sélectionnée.
- Mode rapide
- Tarif standard Lorsque le mode rapide est sélectionné
- Mode Flex
- Tarif standard Lorsque le mode flex est sélectionné
- Effort de raisonnement maximal
- Tarif standard Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)
Tarifs Ailoot
Prix par configuration
| Configuration | Barème tarifaire | Coût |
|---|---|---|
| ConfigurationTarifs de base des jetons | Barème tarifaireTarif de base | Coût Entrée · Jetons en entrée $0.00006 / 1K jetons Sortie · Jetons en sortie $0 / 1K jetons Entrée · Lecture du cache — / 1K jetons Entrée · Écriture dans le cache — / 1K jetons Entrée · Écriture dans le cache, 1 h — / 1K jetons |
Ailoot réserve un montant estimé avant une requête. Après le résultat, le montant final est débité selon l’utilisation mesurée. Pour le streaming, le montant final à débiter est calculé à partir du relevé final d’utilisation. Fonctionnement de la réservation et du débit →
Exemples de requêtes
Ailoot Ultra · Embeddings
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)
Recevoir et enregistrer les résultats
Ailoot Ultra · Embeddings
json
Conserver tous les résultats terminés
Conservez chaque réponse, fichier et partie de contenu renvoyés dans leur intégralité.
Conservez chaque vecteur avec son indice. Le nombre de vecteurs doit être égal au nombre d’entrées ; les dimensions doivent être cohérentes.
Si la réponse d’origine doit être vérifiée
Aucun point de terminaison dédié aux tâches d’embedding n’est ajouté.
Champs de la réponse
| Champ | Type |
|---|---|
Champobject | Typestring |
Champmodel | Typestring |
Champdata[].index | Typeinteger |
Champdata[].embedding | Typefinite float[] |
Champusage | Typeobject |
Erreurs et étapes suivantes
| Réponse | Condition | Étape suivante |
|---|---|---|
Réponse400 · invalid_request_error | ConditionChamps obligatoires, représentation des éléments fournis ou valeur de paramètre invalides | Étape suivanteCorrigez les champs indiqués avant une nouvelle requête de création. |
Alias
Alias du modèle
Ailoot Ultra perplexity/pplx-embed-v1-4b
Alias des chemins de méthode
Utilisez les chemins de méthode indiqués ci-dessus.
ID d’appel associés
FAQ · Perplexity: Embed V1 4B
- Quelles entrées et quels résultats sont disponibles ?
POST /v1/embeddings·perplexity/pplx-embed-v1-4b:text,token_ids→embedding- Quels champs la requête utilise-t-elle ?
POST /v1/embeddings·perplexity/pplx-embed-v1-4b:model,input,encoding_format,provider- Quelles limites s’appliquent ?
POST /v1/embeddings·perplexity/pplx-embed-v1-4b:ctx:32000;input.budget.maximum:32000(octets UTF8);input.min_items:1