Creazione di un'installazione client per un foundation model personalizzato

Ultimo aggiornamento: 21 feb 2025
Creazione di un'installazione client per un foundation model personalizzato

Dopo aver creato una risorsa foundation model personalizzato, è possibile creare un deployment per il modello per renderlo disponibile per l'inferenza.

Prerequisiti

  1. È necessario impostare le credenziali dell'attività generando una chiave API. Per ulteriori informazioni, vedere Gestione delle credenziali delle attività.

  2. Prima di distribuire il modello, esaminare le specifiche hardware disponibili e scegliere una specifica hardware predefinita che corrisponda al proprio modello.

  3. Inoltre, è necessario verificare se le specifiche del software disponibile corrispondono all'architettura del vostro modello. Per i dettagli, vedere Architetture del modello supportate.

Creare un'installazione client dall'interfaccia utente watsonx.ai

Seguite questi passaggi per creare un'installazione client per un foundation model personalizzato:

  1. Nel vostro spazio di distribuzione o nel vostro progetto, andate alla scheda Assets.

  2. Individuare il modello nell'elenco delle risorse, fare clic sull'icona del menu 'Icona menu e selezionare Deploy.

  3. Immettere un nome per l'installazione client e, facoltativamente, un nome di servizio, una descrizione e dei tag.

    Nota:
    • Usare il campo Nome dell'installazione client per specificare un nome per l'installazione client invece dell'ID dell'installazione client.
    • Il nome del servizio deve essere unico all'interno dello spazio dei nomi.
    • Il nome del servizio deve contenere solo questi caratteri:a-z,0-9,_] e deve essere lungo al massimo 36 caratteri.
    • Nei flussi di lavoro in cui il foundation model personalizzato viene utilizzato periodicamente, si consiglia di assegnare al modello lo stesso nome di servizio ogni volta che lo si distribuisce. In questo modo, dopo aver cancellato e poi distribuito nuovamente il modello, si può continuare a usare lo stesso endpoint nel codice.

  4. Selezionate una configurazione e una specifica software per il vostro modello.

  5. Opzionale: Se si desidera sovrascrivere alcuni dei parametri del modello di base, fare clic su Parametri di distribuzione del modello e quindi inserire i nuovi valori dei parametri:

    • Tipo di dati: Scegliere float16 o bfloat16 per specificare il tipo di dati per il modello.
    • Dimensione massima del lotto: Inserire la dimensione massima del lotto per il modello.
    • Max concurrent requests: Inserire il numero massimo di richieste contemporanee che possono essere effettuate al modello.
    • Max new tokens: Inserire il numero massimo di tokens che possono essere creati per il modello per una richiesta di inferenza.
    • Lunghezza massima della sequenza: Inserire la lunghezza massima della sequenza per il modello.
  6. Fare clic su Crea.

Nota:

Se si utilizza la specifica software " watsonx-cfm-caikit-1.1 per distribuire il modello, il valore del parametro " max_concurrent_requests non viene utilizzato.

Verifica della distribuzione

Seguite questi passaggi per testare la distribuzione del foundation model personalizzato:

  1. Nello spazio di distribuzione o nel progetto, aprite la scheda Deployments e fate clic sul nome dell'installazione client.

  2. Fare clic sulla scheda Test per inserire un testo di richiesta e ottenere una risposta dalla risorsa distribuita.

  3. Immettere i dati di prova in uno dei seguenti formati, a seconda del tipo di risorsa distribuita:

    • Testo: immettere i dati di input del testo per generare un blocco di testo come output.
    • Stream: immettere i dati di input del testo per generare un flusso di testo come output.
    • JSON: inserire i dati di input JSON per generare l'output in formato JSON.

    Inserire i dati di test per il foundation model personalizzato

  4. Fare clic su Generate per ottenere risultati basati sulla richiesta.

Recupero dell'endpoint per le distribuzioni di foundation model personalizzati

Segui questi passaggi per recuperare l' URL e endpoint per la tua distribuzione personalizzata di foundation model. Per accedere alla distribuzione dalle applicazioni è necessario questo URL :

  1. Nello spazio di distribuzione o nel progetto, aprite la scheda Deployments e fate clic sul nome dell'installazione client.
  2. Nella scheda Riferimento API, si trovano i collegamenti agli endpoint privati e pubblici e gli snippet di codice che si possono usare per includere i dettagli dell'endpoint in un'applicazione.
Nota:

Se si è aggiunto Nome del servizio quando si è creata l'installazione online, si vedono due URL di endpoint. Il primo URL contiene l'ID di distribuzione, mentre il secondo URL contiene il nome utente. È possibile utilizzare uno di questi URL con la distribuzione.

Creare un'installazione client in modo programmatico

Per utilizzare l'API watsonx.ai, è necessario un token portatore. Per ulteriori informazioni, vedere Credenziali per l'accesso programmatico.

Nota:
  • È possibile sovrascrivere i valori predefiniti dei parametri foundation model personalizzato nel campo 'online.parameters.foundation_model.
  • Se si utilizza la specifica software 'watsonx-cfm-caikit-1.1 per distribuire il modello, il parametro 'max_concurrent_requests non viene utilizzato.
  • Usare il campo Nome dell'installazione client per specificare un nome per l'installazione client invece dell'ID dell'installazione client.
  • Il nome del servizio deve essere unico all'interno dello spazio dei nomi.
  • Il nome del servizio deve contenere solo questi caratteri:a-z,0-9,_] e deve essere lungo al massimo 36 caratteri.
  • Nei flussi di lavoro in cui il foundation model personalizzato viene utilizzato periodicamente, si consiglia di assegnare al modello lo stesso nome di servizio ogni volta che lo si distribuisce. In questo modo, dopo aver cancellato e poi distribuito nuovamente il modello, si può continuare a usare lo stesso endpoint nel codice.

Per distribuire un foundation model personalizzato in modo programmatico:

  1. Avviare la distribuzione del modello. Vedere questo codice per un esempio di distribuzione nello spazio:

    curl -X POST "https://<your cloud hostname>/ml/v4/deployments?version=2024-01-29" \
    -H "Authorization: Bearer $TOKEN" \
    -H "content-type: application/json" \
    --data '{
      "asset":{
        "id":<your custom foundation model asset id>
      },
      "online":{
        "parameters":{
          "serving_name":"test_custom_fm",
          "foundation_model": {
              "max_sequence_length": 4096
          }
        }
      },
      "hardware_request": {
        "size": "<configuration size>",
        "num_nodes": 1
      },
      "description": "Testing deployment using custom foundation model",
      "name":"custom_fm_deployment",
      "space_id":<your space id>
    }'
    

    Il parametro " size " può essere " gpu_xs", " gpu_s", " gpu_m" o " gpu_l".
    Per le implementazioni di progetti, invece di space_id , utilizzare project_id.

    L'ID di distribuzione viene restituito nella risposta dell'API, nel campo metadata.id.

  2. Utilizzare l'ID dell'installazione client per verificare lo stato dell'installazione client. Si veda questo codice per un esempio di come interrogare lo stato di un modello distribuito in un progetto.

    curl -X GET "https://<your cloud hostname>/ml/v4/deployments/<your deployment ID>?version=2024-01-29&project_id=<your project ID>" \
    -H "Authorization: Bearer $TOKEN"
    

    Il deployed_asset_type viene restituito come custom_foundation_model. Attendere che lo stato passi da initializing a ready.

Passi successivi

Prompt di un foundation model personalizzato

Argomento padre: Deploy di modelli di fondazione personalizzati