Skip to main content

W&B Inference

W&B Inference donne accès à des modèles fondamentaux open source de premier plan via W&B Weave et une API compatible avec OpenAI. Avec W&B Inference, vous pouvez :
  • Développer des applications et des agents d’IA sans vous inscrire auprès d’un fournisseur d’hébergement ni héberger vous-même un modèle.
  • Essayer les modèles pris en charge dans le Playground de W&B Weave.
Des crédits W&B Inference sont inclus avec les plans Free, Pro et Academic pendant une durée limitée. La disponibilité peut varier pour Enterprise. Une fois les crédits consommés :
  • Les comptes Free doivent passer à un plan Pro pour continuer à utiliser Inference.
  • Les utilisateurs du plan Pro seront facturés mensuellement pour les dépassements de W&B Inference, selon la tarification propre à chaque modèle.
Pour en savoir plus, voir la page de tarification et les coûts des modèles W&B Inference.
Avec Weave, vous pouvez tracer, évaluer, surveiller et faire évoluer vos applications basées sur W&B Inference.
ModèleID du modèle (pour l’API)Type(s)Fenêtre de contexteParamètresDescription
DeepSeek R1-0528deepseek-ai/DeepSeek-R1-0528Texte161K37B - 680B (Actifs - Total)Optimisé pour les tâches de raisonnement précis, notamment le code complexe, les mathématiques et l’analyse de documents structurés.
DeepSeek V3-0324deepseek-ai/DeepSeek-V3-0324Texte161K37B - 680B (Actifs - Total)Modèle Mixture-of-Experts robuste, conçu pour le traitement du langage complexe et l’analyse approfondie de documents.
Llama 3.1 8Bmeta-llama/Llama-3.1-8B-InstructTexte128K8B (Total)Modèle conversationnel efficace, optimisé pour des interactions multilingues rapides de type chatbot.
Llama 3.3 70Bmeta-llama/Llama-3.3-70B-InstructTexte128K70B (Total)Modèle multilingue excellent pour les tâches conversationnelles, le suivi précis des instructions et le code.
Llama 4 Scoutmeta-llama/Llama-4-Scout-17B-16E-InstructTexte, Vision64K17B - 109B (Actifs - Total)Modèle multimodal intégrant la compréhension du texte et des images, idéal pour les tâches visuelles et l’analyse combinée.
Phi 4 Minimicrosoft/Phi-4-mini-instructTexte128K3.8B (Actifs - Total)Modèle compact et efficace, idéal pour fournir des réponses rapides dans des environnements aux ressources limitées.
Ce guide fournit les informations suivantes :

Prérequis

Les prérequis suivants sont nécessaires pour accéder au service W&B Inference via l’API ou l’interface W&B Weave.
  1. Un compte W&B. Inscrivez-vous ici.
  2. Une clé API W&B. Créez une clé API dans les Paramètres utilisateur.
  3. Un projet W&B.
  4. Si vous utilisez le service Inference via Python, voir Prérequis supplémentaires pour utiliser l’API via Python.

Prérequis supplémentaires pour utiliser l’API via Python

Pour utiliser l’API d’Inférence via Python, commencez par suivre les prérequis généraux. Installez ensuite les bibliothèques openai et weave dans votre environnement local :
pip install openai weave
La bibliothèque weave n’est requise que si vous utilisez Weave pour tracer vos applications LLM. Pour savoir comment prendre en main Weave, voir le Démarrage rapide de Weave.Pour des exemples d’utilisation montrant comment utiliser le service W&B Inference avec Weave, voir les exemples d’utilisation de l’API.

Spécification de l’API

La section suivante présente les informations de spécification de l’API ainsi que des exemples d’utilisation de l’API.

Endpoint

Le service d’Inférence est accessible via le point de terminaison suivant :
https://api.inference.wandb.ai/v1
Pour accéder à ce point de terminaison, vous devez disposer d’un compte W&B auquel des crédits de service Inférence ont été attribués, d’une clé API W&B valide, ainsi que d’une entité W&B (également appelée “team”) et d’un projet. Dans les exemples de code de ce guide, l’entité (team) et le projet sont indiqués sous la forme <your-team>\<your-project>.

Méthodes disponibles

Le service d’Inférence prend en charge les méthodes de l’API suivantes :

Complétions de chat

La principale méthode d’API disponible est /chat/completions, qui prend en charge les formats de requête compatibles avec OpenAI pour envoyer des messages à un modèle pris en charge et obtenir une complétion. Pour des exemples d’utilisation du service W&B Inference avec Weave, voir les exemples d’utilisation de l’API. Pour créer une complétion de chat, vous aurez besoin de :
  • L’URL de base du service W&B Inference https://api.inference.wandb.ai/v1
  • Votre clé API W&B <your-api-key>
  • Les noms de votre entité et de votre projet W&B <your-team>/<your-project>
  • L’ID du modèle que vous souhaitez utiliser, parmi :
    • meta-llama/Llama-3.1-8B-Instruct
    • deepseek-ai/DeepSeek-V3-0324
    • meta-llama/Llama-3.3-70B-Instruct
    • deepseek-ai/DeepSeek-R1-0528
    • meta-llama/Llama-4-Scout-17B-16E-Instruct
    • microsoft/Phi-4-mini-instruct
curl https://api.inference.wandb.ai/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <your-api-key>" \
  -H "OpenAI-Project: <your-team>/<your-project>" \
  -d '{
    "model": "<model-id>",
    "messages": [
      { "role": "system", "content": "You are a helpful assistant." },
      { "role": "user", "content": "Tell me a joke." }
    ]
  }'

Lister les modèles pris en charge

Utilisez l’API pour récupérer tous les modèles actuellement disponibles et leurs identifiants. C’est utile pour sélectionner des modèles dynamiquement ou voir ce qui est disponible dans votre environnement.
curl https://api.inference.wandb.ai/v1/models \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <your-api-key>" \
  -H "OpenAI-Project: <your-team>/<your-project>" \

Exemples d’utilisation

Cette section présente plusieurs exemples montrant comment utiliser W&B Inference avec Weave :

Exemple de base : tracer Llama 3.1 8B avec Weave

L’exemple de code Python suivant montre comment envoyer un prompt au modèle Llama 3.1 8B à l’aide de l’API W&B Inference et tracer l’appel dans Weave. Le Tracing vous permet de capturer les entrées et sorties complètes de l’appel au LLM, de surveiller les performances et d’analyser les résultats dans Weave UI.
Pour en savoir plus, consultez le tracing dans Weave.
Dans cet exemple :
  • Vous définissez une fonction décorée avec @weave.op(), run_chat, qui effectue une requête de Chat Completion à l’aide du client compatible OpenAI.
  • Vos traces sont enregistrées et associées à votre entité W&B ainsi qu’à votre projet project="<your-team>/<your-project>
  • La fonction est automatiquement tracée par Weave, de sorte que ses entrées, ses sorties, sa latence et ses métadonnées (comme l’ID du modèle) sont enregistrées.
  • Le résultat est affiché dans le terminal, et la trace apparaît dans votre onglet Traces sur https://wandb.ai, sous le projet spécifié.
Pour utiliser cet exemple, vous devez satisfaire aux prérequis généraux et aux prérequis supplémentaires pour utiliser l’API via Python.
import weave
import openai

# Définir l'équipe et le projet Weave pour le tracing
weave.init("<your-team>/<your-project>")

client = openai.OpenAI(
    base_url='https://api.inference.wandb.ai/v1',

    # Créer une clé API sur https://wandb.ai/settings
    api_key="<your-api-key>",

    # Requis pour le suivi d'utilisation de W&B Inference
    project="wandb/inference-demo",
)

# Tracer l'appel du modèle dans Weave
@weave.op()
def run_chat():
    response = client.chat.completions.create(
        model="meta-llama/Llama-3.1-8B-Instruct",
        messages=[
            {"role": "system", "content": "You are a helpful assistant."},
            {"role": "user", "content": "Tell me a joke."}
        ],
    )
    return response.choices[0].message.content

# Exécuter et journaliser l'appel tracé
output = run_chat()
print(output)
Une fois l’exemple de code exécuté, vous pouvez consulter la trace dans Weave en cliquant sur le lien affiché dans le terminal (par ex. https://wandb.ai/<your-team>/<your-project>/r/call/01977f8f-839d-7dda-b0c2-27292ef0e04g), ou :
  1. Accédez à https://wandb.ai.
  2. Sélectionnez l’onglet Traces pour afficher vos traces Weave.
Ensuite, essayez l’exemple avancé.
Affichage des traces

Exemple avancé : utilisez les évaluations et les classements de Weave avec le service d’inférence

En plus d’utiliser Weave avec le service d’inférence pour tracer les appels de modèle, vous pouvez aussi évaluer les performances et publier un classement. L’exemple de code Python suivant compare deux modèles sur un jeu de données simple de questions-réponses. Pour utiliser cet exemple, vous devez remplir les prérequis généraux et les prérequis supplémentaires pour utiliser l’API via Python.
import os
import asyncio
import openai
import weave
from weave.flow import leaderboard
from weave.trace.ref_util import get_ref

# Définir l'équipe et le projet Weave pour le tracing
weave.init("<your-team>/<your-project>")

dataset = [
    {"input": "What is 2 + 2?", "target": "4"},
    {"input": "Name a primary color.", "target": "red"},
]

@weave.op
def exact_match(target: str, output: str) -> float:
    return float(target.strip().lower() == output.strip().lower())

class WBInferenceModel(weave.Model):
    model: str

    @weave.op
    def predict(self, prompt: str) -> str:
        client = openai.OpenAI(
            base_url="https://api.inference.wandb.ai/v1",
            # Créer une clé API sur https://wandb.ai/settings
            api_key="<your-api-key>",
            # Requis pour le suivi de l'utilisation de l'inférence W&B
            project="<your-team>/<your-project>",
        )
        resp = client.chat.completions.create(
            model=self.model,
            messages=[{"role": "user", "content": prompt}],
        )
        return resp.choices[0].message.content

llama = WBInferenceModel(model="meta-llama/Llama-3.1-8B-Instruct")
deepseek = WBInferenceModel(model="deepseek-ai/DeepSeek-V3-0324")

def preprocess_model_input(example):
    return {"prompt": example["input"]}

evaluation = weave.Evaluation(
    name="QA",
    dataset=dataset,
    scorers=[exact_match],
    preprocess_model_input=preprocess_model_input,
)

async def run_eval():
    await evaluation.evaluate(llama)
    await evaluation.evaluate(deepseek)

asyncio.run(run_eval())

spec = leaderboard.Leaderboard(
    name="Inference Leaderboard",
    description="Compare models on a QA dataset",
    columns=[
        leaderboard.LeaderboardColumn(
            evaluation_object_ref=get_ref(evaluation).uri(),
            scorer_name="exact_match",
            summary_metric_path="mean",
        )
    ],
)

weave.publish(spec)
Après avoir exécuté l’exemple de code suivant, accédez à votre compte W&B sur https://wandb.ai/ et :
Consulter les évaluations de votre modèle
Consulter vos traces

UI

La section suivante décrit comment utiliser le service d’Inférence depuis l’interface utilisateur W&B. Avant de pouvoir accéder au service d’Inférence via l’interface utilisateur, assurez-vous d’avoir rempli les prérequis.

Accéder au service d’Inférence

Vous pouvez accéder au service d’Inférence depuis la Weave UI à partir de deux emplacements différents : Accédez à https://wandb.ai/inference.

Depuis l’onglet Inférence

  1. Accédez à votre compte W&B sur https://wandb.ai/.
  2. Dans la barre latérale gauche, sélectionnez Inférence. Une page présentant les modèles disponibles et leurs informations s’affiche.
L’onglet Inférence

Depuis l’onglet Playground

  1. Dans la barre latérale gauche, sélectionnez Playground. L’interface de chat du Playground s’affiche.
  2. Dans la liste déroulante LLM, survolez W&B Inference. Une liste déroulante affichant les modèles W&B Inference disponibles apparaît à droite.
  3. Dans la liste déroulante des modèles W&B Inference, vous pouvez :
La liste déroulante des modèles d’Inférence dans le Playground

Essayer un modèle dans le Playground

Une fois que vous avez sélectionné un modèle via l’une des options d’accès, vous pouvez l’essayer dans le Playground. Les actions suivantes sont disponibles :
Utilisation d’un modèle d’Inférence dans le Playground

Comparer plusieurs modèles

Vous pouvez comparer plusieurs modèles d’Inférence dans le Playground. La vue Compare est accessible à deux emplacements :

Accéder à la vue Compare depuis l’onglet Inférence

  1. Dans la barre latérale gauche, sélectionnez Inférence. Une page affichant les modèles disponibles et les informations sur les modèles s’ouvre.
  2. Pour sélectionner les modèles à comparer, cliquez n’importe où sur une carte de modèle (sauf sur le nom du modèle). La bordure de la carte de modèle est surlignée en bleu pour indiquer la sélection.
  3. Répétez l’étape 2 pour chaque modèle que vous souhaitez comparer.
  4. Sur l’une des cartes sélectionnées, cliquez sur le bouton Comparer N modèles dans le Playground (N correspond au nombre de modèles que vous comparez. Par exemple, lorsque 3 modèles sont sélectionnés, le bouton s’affiche sous la forme Comparer 3 modèles dans le Playground). La vue de comparaison s’ouvre.
Vous pouvez maintenant comparer des modèles dans le Playground et utiliser n’importe laquelle des fonctionnalités décrites dans Essayer un modèle dans le Playground.
Sélectionner plusieurs modèles à comparer dans le Playground

Accéder à la vue Compare depuis l’onglet Playground

  1. Dans la barre latérale gauche, sélectionnez Playground. L’interface de chat du Playground s’affiche.
  2. Dans la liste déroulante LLM, survolez W&B Inference. Une liste déroulante des modèles W&B Inference disponibles s’affiche à droite.
  3. Dans la liste déroulante, sélectionnez Compare. L’onglet Inférence s’affiche.
  4. Pour sélectionner des modèles à comparer, cliquez n’importe où sur une carte de modèle (sauf sur le nom du modèle). La bordure de la carte de modèle se surligne en bleu pour indiquer la sélection.
  5. Répétez l’étape 4 pour chaque modèle que vous souhaitez comparer.
  6. Dans l’une des cartes sélectionnées, cliquez sur le bouton Comparer N modèles dans le Playground (N correspond au nombre de modèles que vous comparez. Par exemple, lorsque 3 modèles sont sélectionnés, le bouton s’affiche sous la forme Comparer 3 modèles dans le Playground). La vue de comparaison s’ouvre.
Vous pouvez maintenant comparer des modèles dans le Playground et utiliser toutes les fonctionnalités décrites dans Essayer un modèle dans le Playground.

Voir les informations de facturation et d’utilisation

Les Administrateurs de l’organisation peuvent suivre directement dans l’interface W&B le solde actuel des crédits d’Inférence, l’historique d’utilisation et la facturation à venir (le cas échéant) :
  1. Dans l’interface W&B, accédez à la page Billing de W&B.
  2. Dans l’angle inférieur droit, la carte d’informations de facturation d’Inférence s’affiche. Depuis cette carte, vous pouvez :
  • Cliquer sur le bouton View usage dans la carte d’informations de facturation d’Inférence pour consulter votre utilisation au fil du temps.
  • Si vous utilisez un plan payant, consulter vos prochains frais d’inférence.

Informations d’utilisation et limites

La section suivante présente des informations importantes sur l’utilisation et les limites. Prenez-en connaissance avant d’utiliser le service.

Restrictions géographiques

Le service d’Inférence est accessible uniquement depuis des zones géographiques prises en charge. Pour plus d’informations, voir les Conditions d’utilisation.

Limites de concurrence

Pour garantir une utilisation équitable et des performances stables, la W&B Inference API applique des limites de débit au niveau de l’utilisateur et du projet. Ces limites permettent de :
  • Prévenir les abus et protéger la stabilité de l’API
  • Garantir l’accès à tous les utilisateurs
  • Gérer efficacement la charge de l’infrastructure
Si une limite de débit est dépassée, l’API renvoie une réponse 429 Concurrency limit reached for requests. Pour résoudre cette erreur, réduisez le nombre de requêtes simultanées.

Tarification

Pour connaître la tarification des modèles, consultez https://wandb.ai/site/pricing/inference.

Erreurs d’API

Code d’erreurMessageCauseSolution
401Authentification invalideIdentifiants d’authentification invalides, ou entité et/ou nom du projet W&B incorrects.Assurez-vous d’utiliser la bonne clé API et/ou que le nom et l’entité de votre projet W&B sont corrects.
403Pays, région ou territoire non pris en chargeAccès à l’API depuis un emplacement non pris en charge.Veuillez consulter Restrictions géographiques
429Limite de concurrence atteinte pour les requêtesTrop de requêtes simultanées.Réduisez le nombre de requêtes simultanées.
429Vous avez dépassé votre quota actuel, veuillez vérifier les détails du forfait et de la facturationPlus de crédits ou plafond mensuel de dépenses atteint.Achetez plus de crédits ou augmentez vos limites.
500Le serveur a rencontré une erreur lors du traitement de votre requêteErreur interne du serveur.Réessayez après une brève attente et contactez l’assistance si le problème persiste.
503Le moteur est actuellement surchargé, veuillez réessayer plus tardLe serveur connaît un trafic élevé.Réessayez votre requête après un court délai.