AI Prosumer
FR
z-ai/glm4:9b-chat-q4_0

Un modèle linguistique général multilingue performant avec des résultats compétitifs par rapport à Llama 3.

Entrée → Sortie
Texte Texte
Accès
Échange de jetons
Fenêtre de contexte
131 072 jetons
Tags du modèle
32 versions disponibles
Licence: ouvrir_poids

Du modèle à l'application

Démarrage rapide

Référence API
  1. Obtenez votre clé API

    Créez une clé dans la Console ShareAI, puis enregistrez-la comme variable d'environnement sur votre serveur.

    Créer une clé API
    Variable d'environnement
    export SHAREAI_API_KEY="your-api-key"
  2. Choisissez votre point de terminaison

    Envoyez une requête POST avec votre clé API dans l'en-tête Authorization.

    POSThttps://api.shareai.now/api/v1/chat/completions

    Le point de terminaison de ce tag n’a pas été confirmé. Consultez la référence API et votre Console avant d’envoyer une requête.

  3. Faites votre première requête

    Les exemples utilisent votre tag sélectionné et montrent son format de requête. Exécutez-les sur votre serveur pour garder votre clé API privée. La disponibilité des modèles et l'accès au compte sont vérifiés lorsque vous envoyez une requête.

    cURL
    curl --fail-with-body --request POST 'https://api.shareai.now/api/v1/chat/completions' \
      --header "Authorization: Bearer ${SHAREAI_API_KEY}" \
      --header 'Content-Type: application/json' \
      --data-raw '{
      "model": "z-ai/glm4:9b-chat-q4_0",
      "messages": [
        {
          "role": "user",
          "content": "Hello!"
        }
      ],
      "stream": false
    }'
    Python
    import json
    import os
    import urllib.request
    
    payload = {
        "model": "z-ai/glm4:9b-chat-q4_0",
        "messages": [
            {
                "role": "user",
                "content": "Hello!",
            },
        ],
        "stream": False,
    }
    request = urllib.request.Request("https://api.shareai.now/api/v1/chat/completions",
        data=json.dumps(payload).encode(),
        headers={
            "Authorization": f"Bearer {os.environ['SHAREAI_API_KEY']}",
            "Content-Type": "application/json",
        },
        method="POST",
    )
    with urllib.request.urlopen(request, timeout=180) as response:
        print(json.dumps(json.load(response), indent=2))
    Go
    package main
    
    import (
        "bytes"
        "encoding/json"
        "fmt"
        "io"
        "net/http"
        "os"
        "time"
    )
    
    func main() {
        if err := run(); err != nil {
            fmt.Fprintln(os.Stderr, err)
            os.Exit(1)
        }
    }
    
    func run() error {
        key := os.Getenv("SHAREAI_API_KEY")
        if key == "" { return fmt.Errorf("set SHAREAI_API_KEY") }
        body := []byte(`{
      "model": "z-ai/glm4:9b-chat-q4_0",
      "messages": [
        {
          "role": "user",
          "content": "Hello!"
        }
      ],
      "stream": false
    }`)
        request, err := http.NewRequest(http.MethodPost, "https://api.shareai.now/api/v1/chat/completions", bytes.NewReader(body))
        if err != nil { return err }
        request.Header.Set("Authorization", "Bearer " + key)
        request.Header.Set("Content-Type", "application/json")
        client := &http.Client{Timeout: 180 * time.Second}
        response, err := client.Do(request)
        if err != nil { return err }
        defer response.Body.Close()
        if response.StatusCode < 200 || response.StatusCode >= 300 {
            detail, _ := io.ReadAll(io.LimitReader(response.Body, 1<<20))
            return fmt.Errorf("ShareAI HTTP %d: %s", response.StatusCode, detail)
        }
        var result any
        if err := json.NewDecoder(response.Body).Decode(&result); err != nil { return err }
        encoder := json.NewEncoder(os.Stdout)
        encoder.SetIndent("", "  ")
        return encoder.Encode(result)
    }

    Enregistrez sous main.go et exécutez go run main.go. Cet exemple utilise la bibliothèque standard Go.

    Configurez les dépendances Rust

    Dans votre projet Cargo, ajoutez ces dépendances. Enregistrez l'exemple sous src/main.rs, puis exécutez cargo run.

    Commandes Cargo
    cargo add [email protected] --no-default-features --features blocking,json,rustls-tls
    cargo add serde_json@1
    Rouille
    fn main() -> Result<(), Box<dyn std::error::Error>> {
        let api_key = std::env::var("SHAREAI_API_KEY")?;
        let payload: serde_json::Value = serde_json::from_str(r#"{
      "model": "z-ai/glm4:9b-chat-q4_0",
      "messages": [
        {
          "role": "user",
          "content": "Hello!"
        }
      ],
      "stream": false
    }"#)?;
        let client = reqwest::blocking::Client::builder()
            .timeout(std::time::Duration::from_secs(180))
            .build()?;
        let response = client.post(r#"https://api.shareai.now/api/v1/chat/completions"#)
            .bearer_auth(api_key)
            .json(&payload)
            .send()?
            .error_for_status()?;
        let result: serde_json::Value = response.json()?;
        println!("{}", serde_json::to_string_pretty(&result)?);
        Ok(())
    }
    TypeScript
    const payload = {
      "model": "z-ai/glm4:9b-chat-q4_0",
      "messages": [
        {
          "role": "user",
          "content": "Hello!"
        }
      ],
      "stream": false
    };
    const response = await fetch("https://api.shareai.now/api/v1/chat/completions", {
      method: 'POST',
      headers: {
        Authorization: `Bearer ${process.env.SHAREAI_API_KEY}`,
        'Content-Type': 'application/json',
      },
      body: JSON.stringify(payload),
    });
    if (!response.ok) throw new Error(await response.text());
    console.log(JSON.stringify(await response.json(), null, 2));

Échange de jetons

Disponible via l'échange de tokens

Utilisez le réseau avec votre solde de tokens. Les paramètres de consommation de votre compte déterminent comment les requêtes sont facturées.

Choisissez votre version

Balises 32

Voir tous les tags

Ouvrez un tag pour voir ses spécifications et des exemples d'API.

Un peu plus de détails

Questions fréquemment posées

Qu'est-ce que glm4 ?

Un modèle linguistique général multilingue performant avec des résultats compétitifs par rapport à Llama 3.

Combien coûte glm4 ?

Ce tag est disponible via l'Échange de Tokens. Le solde de vos tokens et les paramètres de consommation de votre compte déterminent l'accès et la facturation. Consultez votre Console pour vérifier votre solde et votre éligibilité.

Quels sont les entrées et sorties prises en charge par glm4 ?

Entrées : Texte. Sorties : Texte. Ces capacités s'appliquent au modèle sélectionné. Consultez la documentation de l'endpoint pour les formats de requête pris en charge.

Quelle est la longueur de contexte de glm4 ?

Ce tag dispose d'une fenêtre de contexte de 131 072 tokens. La taille du contexte et les seuils de tarification sont distincts. Les limites de requêtes peuvent être inférieures pour un déploiement particulier.

Comment utiliser glm4 avec ShareAI ?

Créez une clé API dans la Console ShareAI, choisissez une étiquette de modèle, et envoyez une requête authentifiée à l'endpoint dans le guide de démarrage rapide. Votre clé doit avoir accès au modèle choisi. Conservez votre clé sur votre serveur.