model_id accepte soit un ID de modèle de base (comme fastino/gliner2-base-v1), soit l’ID de tâche (un UUID) renvoyé par une tâche d’entraînement terminée (comme 3fa85f64-5717-4562-b3fc-2c963f66afa6). Pioneer route automatiquement la requête vers le bon déploiement.
Pioneer prend en charge trois formats de requête : son propre format natif, un format compatible OpenAI et un format compatible Anthropic. Les trois accèdent aux mêmes modèles sous-jacents, et les trois acceptent votre clé API de la même façon : soit un en-tête X-API-Key, soit un en-tête Authorization: Bearer <key>. Celui que votre SDK envoie par défaut fonctionne, aucune configuration par format n’est nécessaire.
Les endpoints de type chat (
/v1/chat/completions, /v1/responses, /v1/messages) rejettent les requêtes vers un modèle de base décodeur pré-entraîné (non-instruct) avec un 400. Utilisez la variante -Instruct du modèle, ou appelez /v1/completions avec un prompt brut à la place.Format natif Pioneer
UtilisezPOST /inference avec le format de schéma Pioneer. C’est l’option la plus expressive et elle vous donne un contrôle complet sur les tâches d’extraction.
Structure du schéma
Le champschema est un dictionnaire avec des clés optionnelles. N’incluez que les clés qui s’appliquent à votre tâche.
Modèles décodeur
Pour les modèles décodeur (LLM), remplacezschema par "task": "generate" :
Format compatible OpenAI
Pioneer expose un endpoint compatible OpenAI àhttps://api.pioneer.ai/v1. Pointez n’importe quel SDK ou intégration OpenAI existant vers cette URL de base et utilisez votre clé API Pioneer. Aucune autre modification n’est nécessaire.
/v1/models et /v1/models/:model_id sont une infrastructure partagée. Ces deux mêmes routes servent également les appels models.retrieve(...) du SDK compatible Anthropic.
Format compatible Anthropic
Pioneer expose également un endpoint compatible Anthropic. Définissez lebase_url de votre SDK sur https://api.pioneer.ai/v1 et utilisez votre clé API Pioneer à la place d’une clé Anthropic. Le SDK Anthropic l’envoie en tant que x-api-key, que Pioneer accepte de la même façon que les deux autres formats.
stream: true). L’endpoint natif /inference ne prend pas en charge le streaming. Utilisez l’un des formats compatibles si vous avez besoin d’une sortie token par token.
Mise en cache des prompts
La mise en cache des prompts réduit le coût et la latence sur les préfixes de prompt répétés, mais la façon de l’activer dépend de la famille de modèles :- Famille OpenAI / GPT — la mise en cache est automatique. Vous n’avez rien à faire ; tout
cache_controlque vous envoyez est ignoré silencieusement plutôt qu’appliqué, il n’y a donc pas besoin de le supprimer si vous faites basculer un client depuis Claude. - Style Claude / Anthropic — la mise en cache est opt-in par défaut. Pioneer transmet votre requête telle quelle et n’ajoute pas de marqueurs de cache pour vous. Ainsi, à moins que vous n’ajoutiez un marqueur
cache_controlsur la partie stable de votre prompt, le préfixe n’est pas mis en cache et vous payez le tarif d’entrée plein à chaque tour.
/v1/chat/completions et /v1/responses, pas seulement sur l’endpoint compatible Anthropic :
Désactiver la persistance de l’inférence
Par défaut, Pioneer stocke chaque inférence (entrée, sortie et métadonnées) afin d’alimenter l’évaluation, le clustering de cas d’usage et l’entraînement d’adaptateurs. Passezstore: false pour ignorer la persistance sur une requête spécifique.
store: false est pris en charge sur les trois formats de requête : le natif /inference, /v1/chat/completions et /v1/messages. Il fonctionne de manière identique pour les requêtes en streaming et non-streaming.
Ce qui change avec store: false
La facturation s’applique toujours. L’usage des tokens, les COGS et la facturation mesurée sont enregistrés même lorsque
store: false est défini. Seule la charge utile complète requête/réponse n’est pas conservée.Quand l’utiliser
- Health checks — sondes de liveness et de readiness qui s’exécutent en continu - Benchmarks internes — évaluations que vous exécutez contre votre propre vérité terrain et qui ne devraient pas polluer l’historique d’inférence côté utilisateur - Développement et tests — appels exploratoires pendant le travail d’intégration où l’accumulation de lignes d’inférence ajoute du bruit
Historique des inférences
Pioneer enregistre chaque appel d’inférence. Vous pouvez récupérer les résultats passés et soumettre des corrections pour améliorer les données d’entraînement futures.GET .../feedback renvoie 404 si aucun feedback n’a encore été soumis pour cette inférence. Le champ notes sur POST .../feedback est optionnel.
Filtres de requête optionnels pour GET /inferences : limit, offset, model_id, task, project_id, training_job_id, latency_min, latency_max (ms), since, until (bornes ISO 8601 sur created_at).
GET /inferences/INFERENCE_ID fait également apparaître tout feedback humain déjà soumis (human_verdict, human_corrected_output, human_feedback_notes) directement sur l’enregistrement.