GPUcloud

Guide GPU

API OpenAI trop chère ? Héberge ton LLM sur un GPU à l’heure, au Canada

Mis à jour le

Réponse courte

Déploie le modèle vLLM compatible OpenAI en un clic : tu obtiens une adresse HTTPS /v1 et une clé, et ton code OpenAI existant fonctionne en changeant seulement base_url et api_key, sur un GPU au Canada dès 0,67 $ CA/h. Le serveur se paie à l’heure et non au jeton : il devient plus avantageux que l’API quand ton volume dépasse le point de bascule, calculé plus bas avec une formule où tu mets tes propres chiffres.

Ce que le modèle vLLM installe

  • Une API compatible OpenAI (/v1) servie en HTTPS, protégée par une clé générée pour toi et affichée dans la console.
  • Le modèle de ton choix parmi Qwen2.5 7B Instruct, Llama 3.1 8B Instruct et Mistral 7B Instruct v0.3, servi avec un contexte de 8 192 jetons. Il demande un GPU d’au moins 24 Go.
  • Llama 3.1 8B Instruct et Mistral 7B Instruct v0.3 demandent d’accepter leur licence sur le dépôt de modèles, puis d’ajouter un jeton d’accès dans /etc/gpucloud/app.env sur le serveur.
  • Seules les routes /v1 et /health sont exposées ; tu gardes un accès SSH complet au serveur.

Les étapes

  1. 1.Déploie le modèle vLLM

    Dans la console, choisis le modèle vLLM compatible OpenAI, le modèle de langage et un GPU, puis confirme le prix. L’installation prend quelques minutes ; la console affiche l’avancement.

  2. 2.Récupère l’adresse et la clé

    Quand le serveur répond, la console affiche son adresse HTTPS et la clé d’API générée.

  3. 3.Vérifie que le serveur répond

    /health répond quand le modèle est chargé ; /v1/models liste le modèle servi.

    Vérifier le serveur
    export VLLM_API_KEY="<clé affichée dans la console>"
    curl https://ADRESSE_DU_SERVEUR/health
    curl https://ADRESSE_DU_SERVEUR/v1/models -H "Authorization: Bearer $VLLM_API_KEY"
  4. 4.Change deux lignes dans ton code

    Garde le SDK OpenAI : remplace base_url et api_key, et donne le nom du modèle servi.

    Ton code OpenAI existant : seules deux lignes changent
    # pip install openai
    from openai import OpenAI
    
    client = OpenAI(
        base_url="https://ADRESSE_DU_SERVEUR/v1",  # affichée dans la console
        api_key="CLE_VLLM",  # clé générée, affichée dans la console
    )
    
    response = client.chat.completions.create(
        model="Qwen/Qwen2.5-7B-Instruct",
        messages=[{"role": "user", "content": "Bonjour !"}],
    )
    print(response.choices[0].message.content)

Combien coûte le serveur

GPU recommandés pour le modèle vLLM, serveur à 1 GPU
GPUVRAMPar heureHeures de bureau (176 h)Mois complet à l’heure (730 h)Forfait au mois
NVIDIA RTX A600048 Go0,67 $117,92 $489,10 $474,50 $
NVIDIA L4048 Go1,34 $235,84 $978,20 $941,70 $
NVIDIA A100 PCIe80 Go1,81 $318,56 $1 321,30 $1 270,20 $
NVIDIA RTX PRO 600096 Go2,48 $436,48 $1 810,40 $1 737,40 $
NVIDIA H100 PCIe80 Go3,35 $589,60 $2 445,50 $2 343,30 $

Heures de bureau : 8 h par jour pendant 22 jours. Prix en dollars canadiens, taxes en sus, lus dans le catalogue au moment de la publication de la page.

Le serveur coûte la même chose, que tu lui envoies une requête ou un million. Hors des heures d’utilisation, hiberne-le pour garder le modèle téléchargé sur le disque sans payer le GPU.

Le point de bascule : API au jeton ou GPU à l’heure

Une API facture chaque jeton ; ton serveur facture chaque heure. Le calcul tient en trois formules :

coût par million de jetons = prix horaire ÷ (jetons par seconde × 3 600) × 1 000 000
débit de bascule (jetons/s) = prix horaire × 1 000 000 ÷ (3 600 × prix de l’API par million)
volume de bascule (millions de jetons par mois) = coût mensuel du GPU ÷ prix de l’API par million

Exemple avec deux hypothèses, qui ne sont ni des mesures ni un tarif réel : une API à 2,00 $ CA par million de jetons, et un débit soutenu de 200 jetons par seconde. Sur une RTX A6000 à 0,67 $ CA/h, le million de jetons revient alors à 0,93 $ CA. Le serveur devient plus avantageux dès qu’il produit en moyenne plus de 93 jetons par seconde sur l’heure.

Au mois, avec les mêmes hypothèses : en heures de bureau (176 h, 117,92 $), le point de bascule est de 59 millions de jetons par mois ; avec le forfait au mois (474,50 $), il est de 237,3 millions de jetons par mois.

Remplace les hypothèses par tes chiffres : le prix de l’API que tu paies, et le débit que tu mesures sur ton serveur avec ton modèle et tes requêtes réelles.

import time

start = time.perf_counter()
response = client.chat.completions.create(
    model=MODEL,
    messages=[{"role": "user", "content": PROMPT}],
    max_tokens=512,
)
elapsed = time.perf_counter() - start
print(response.usage.completion_tokens / elapsed, "tokens/s")

Quand rester sur l’API

  • Ton volume est faible ou irrégulier : au jeton, tu ne paies pas les heures creuses.
  • Tu as besoin d’un modèle qui n’est pas à poids ouverts, ou d’un contexte plus long que celui du modèle en un clic.
  • Tu ne veux pas gérer de serveur, même installé pour toi.

Tes requêtes restent au Canada

Le serveur tourne à Montréal : les requêtes, les réponses et le modèle restent sur ta machine, au Canada. Voir la page Souveraineté des données.

Ce qu’il faut savoir avant de lancer

  • La facturation se fait à l’heure, au tarif horaire du serveur, à partir d’un crédit prépayé. Il n’y a pas de facturation à la minute, et la première heure est prélevée au déploiement.
  • Un serveur arrêté reste facturé au plein tarif horaire. Pour payer moins, hiberne-le (0,02 $ par heure (environ 14,60 $ par mois), disque conservé) ou supprime-le. Une machine Spot ne s’hiberne pas : supprime-la quand tu as fini.
  • La recharge minimale est de 25,00 $ CA, payée par carte de crédit.
  • Les serveurs et leurs disques restent au Canada (région canada-montreal, à Montréal). Les renseignements du compte (identité, facturation, courriels) peuvent être traités hors du Québec, comme l’explique la politique de confidentialité.

Questions fréquentes

Dois-je réécrire mon code OpenAI ?

Non. vLLM expose une API compatible OpenAI : avec le SDK OpenAI, tu changes base_url, api_key et le nom du modèle.

Quels modèles sont proposés en un clic ?

Qwen2.5 7B Instruct, Llama 3.1 8B Instruct et Mistral 7B Instruct v0.3, avec un contexte de 8 192 jetons. Tu peux installer d’autres modèles toi-même par SSH.

Combien coûte un serveur vLLM ?

Dès 0,67 $ CA/h sur une RTX A6000 de 48 Go, ou 474,50 $ par mois avec le forfait mensuel, en dollars canadiens, taxes en sus.

Est-ce moins cher que l’API d’OpenAI ?

Ça dépend de ton volume. La page donne la formule du point de bascule : au-delà d’un certain débit soutenu, ou d’un certain volume mensuel, le serveur à l’heure coûte moins que l’API au jeton.

Mes données restent-elles au Canada ?

Les requêtes et les réponses sont traitées sur ton serveur, à Montréal. Les renseignements du compte peuvent être traités hors du Québec, comme l’explique la politique de confidentialité.

Tu veux du GPU ? On est là.

Lance un serveur GPU NVIDIA à l’heure au Canada, payé en dollars canadiens par carte de crédit, ou réserve un GPU pour une date précise.

Autres guides