0 / 0
Torna alla versione inglese della documentazione
API REST IBM watsonx.ai
Ultimo aggiornamento: 12 dic 2024
API REST IBM watsonx.ai

Puoi utilizzare i modelli di base in IBM watsonx.ai in modo programmatico utilizzando l'API watsonx.ai .

Consultare la documentazione di riferimento dell'API .

È possibile utilizzare l'API REST per eseguire i seguenti tipi di attività. Fare clic su un'attività per leggere una panoramica del metodo.

È inoltre possibile utilizzare l'API REST per eseguire le seguenti operazioni:

Prerequisiti

Andate alla pagina di accesso per gli sviluppatori per accedere rapidamente alle seguenti informazioni:

  • URL di base per gli endpoint API e il vostro
  • ID progetto o ID di spazio

Dalla home page watsonx.ai per il progetto o lo spazio su cui vuoi lavorare, apri il menu di navigazione Icona del menu di navigazione , quindi fai clic su Accesso sviluppatore .

Per inviare richieste API REST sono necessarie anche le seguenti informazioni:

  • Per utilizzare l'API watsonx.ai , hai bisogno di un token di connessione.

    Per ulteriori informazioni, vedi Credenziali per l'accesso programmatico.

  • È necessario specificare il " {model_id} per il foundation model che si desidera utilizzare.

    È possibile utilizzare il metodo Elenca i modelli di fondazione disponibili per ottenere l'ID di un foundation model .

    Per un elenco degli ID modello per i modelli di base inclusi con il file watsonx.ai, vedi Foundation model IDs for APIs.

  • Specificare la data in cui è stato creato e verificato il codice nel parametro della versione richiesto con ogni richiesta. Ad esempio, version=2024-10-21.

Alcuni compiti richiedono di fare riferimento a dati resi disponibili come connessione dati. Per ulteriori informazioni su come aggiungere un file e quindi fare riferimento a un file dall'API, vedere File di riferimento dall'API.

Suggerimento: Se si desidera assistenza nella formattazione di una richiesta di inferenza nell'API, è possibile inviare la stessa richiesta dal Prompt Lab. Dal pannello del codice di Prompt Lab, che mostra la richiesta cURL generata dal prompt, è possibile verificare la sintassi utilizzata.

Ottenere un elenco dei modelli di fondazione disponibili

Il metodo List the available foundation models dell'API di watsonx.ai ottiene informazioni sui modelli di fondazione distribuiti da IBM in watsonx.ai e disponibili per l'inferenza immediata.

curl -X GET \
  'https://{region}.ml.cloud.ibm.com/ml/v1/foundation_model_specs?version=2024-05-01'

Elenco dei modelli di fondazione personalizzati

Per ottenere un elenco dei modelli di fondazione personalizzati distribuiti a cui è possibile accedere, utilizzare il metodo seguente. Questo metodo richiede un token al portatore.

curl -X GET \
  'https://{region}.ml.cloud.ibm.com/ml/v4/deployments?version=2024-12-12&type=custom_foundation_model'

Elenco dei modelli di distribuzione su richiesta

Per ottenere un elenco dei modelli di fondazione disponibili per la distribuzione su richiesta, utilizzare il metodo seguente:

curl -X GET \
  'https://{region}.ml.cloud.ibm.com/ml/v1/foundation_model_specs?version=2024-12-10&filters=curated'

È necessario distribuire il modello deploy on demand in uno spazio di distribuzione prima di poter fare l'inferenza del modello.

Inferenza di modelli di base con l'API REST

Il metodo utilizzato per l'inferenza di un foundation model varia a seconda che il foundation model sia associato a un'installazione client.

  • Per inferenziare un foundation model che viene distribuito da IBM in watsonx.ai, utilizzare il metodo di generazione del testo.

  • Per inferenziare un foundation model sintonizzato, un foundation model personalizzato o un foundation model distribuito su richiesta, utilizzare il metodo Deployments>Infer text.

    {model_id} non è richiesto con questo tipo di richiesta perché solo un modello è supportato dalla distribuzione.

Tipi di inferenza

È possibile richiedere un foundation model utilizzando uno dei seguenti metodi di generazione del testo:

  • Inferisce il testo: Attende di restituire l'output generato dal foundation model tutto in una volta.
  • Inferisce il flusso di eventi di testo: Restituisce l'output così come viene generato dal foundation model. Questo metodo è utile nei casi d'uso conversazionali, in cui si desidera che un chatbot o un assistente virtuale risponda a un utente in un modo fluido che imiti una conversazione reale.

Per i casi d'uso della chat, utilizzare l'API della chat. Per ulteriori informazioni, vedere Chat di testo.

Applicare i guardrail dell'intelligenza artificiale quando si fa inferenza

Quando si richiede un foundation model tramite l'API, è possibile utilizzare il campo " moderations per applicare i guardrail AI all'input e all'output foundation model. Per ulteriori informazioni, vedere Rimozione del linguaggio dannoso dall'input e dall'output del modello.

Inferenza con un modello di prompt

È possibile inferenziare un foundation model con un testo di input che segue uno schema definito da un modello di prompt.

Per ulteriori informazioni, vedere Creare un modello di richiesta.

Per estrarre il testo del modello di prompt da utilizzare come input per il metodo di generazione del testo, procedere come segue:

  1. Utilizzare il metodo Ricerca tipi di risorsa dell'API Watson Data per ottenere l'ID del modello di richiesta.

    curl -X POST \
    'https://api.dataplatform.cloud.ibm.com/v2/asset_types/wx_prompt/search?version=2024-07-29&project_id={project_id}' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer ACCESS_TOKEN' \
    --data '{
     "query": "asset.name:{template_name}"
    }'
    

    L'ID del modello di prompt è specificato come metadata.asset_id.

  2. Usare il metodo Ottenere la stringa di input dell'inferenza per un dato prompt per ottenere il testo del modello di prompt.

    curl -X POST \
    'https://api.dataplatform.cloud.ibm.com/wx/v1/prompts/{prompt-template-id}/input?version=2024-07-29&project_id={project_id}'
    ...
    

    Per ulteriori informazioni, vedere Ottieni la stringa di input dell'inferenza per un determinato prompt

    È possibile inviare il testo del prompt estratto come input al metodo Generate text.

Messa a punto di un foundation model

La messa a punto di un foundation model è un compito complesso. I notebook Python di esempio semplificano il processo. È possibile utilizzare un taccuino di esempio come modello per scrivere i propri taccuini per una rapida ottimizzazione.

Ad alto livello, la messa a punto di un foundation model utilizzando l'API comporta i seguenti passaggi:

  1. Creare un file di dati di addestramento da utilizzare per la messa a punto del foundation model.

    Per ulteriori informazioni sui requisiti dei file di dati di addestramento, vedere Formati dei dati per l'ottimizzazione dei modelli di base .

  2. Carica il file dei dati di allenamento.

    Puoi scegliere di aggiungere il file creando uno dei seguenti tipi di risorse:

    • asset di connessione

      Nota: Solo un Cloud Object Storage il tipo di connessione è attualmente supportato per l'addestramento all'ottimizzazione rapida.

      Vedere File di riferimento dall'API.

      Utilizzerai l'ID di connessione e i dettagli del file di dati di training quando aggiungi il filetraining_data_references sezione alrequest.json file creato nel passaggio successivo.

    • Asset di dati

      Per creare una risorsa di dati, utilizzare l'API Common Core di dati e intelligenza artificiale per definire una risorsa di dati .

      Utilizzerai l'ID risorsa e i dettagli del file di dati di training quando aggiungi il filetraining_data_references sezione alrequest.json file creato nel passaggio successivo.

    Per ulteriori informazioni sui metodi supportati per fare riferimento a un file di dati di addestramento, vedere Riferimenti ai dati .

  3. Usa il watsonx.ai API per creare un esperimento di training.

    Vedere creare un allenamento .

    Puoi specificare i parametri per l'esperimento nel fileTrainingResource carico utile. Per ulteriori informazioni sui parametri disponibili, vedere Parametri per l'ottimizzazione dei modelli di fondazione.

    Per task_id , specificare una delle attività elencate come supportate per il foundation model nella risposta al metodo Elenca i modelli di base disponibili .

  4. Salvare il modello ottimizzato nel servizio repository per generare un fileasset_id che punta al modello messo a punto.

    Per salvare il modello ottimizzato, utilizzare l'API watsonx.ai Runtime (in precedenza Watson Machine Learning ) per creare un nuovo modello .

  5. Usa il watsonx.ai API per creare una distribuzione per il modello ottimizzato.

    Vedere creare una distribuzione

Per dedurre un modello ottimizzato, è necessario utilizzare l'endpoint di inferenza che include l'ID univoco della distribuzione che ospita il modello ottimizzato. Per ulteriori informazioni, vedere i metodi di inferenza nella sezione Distribuzioni .

Python i Quaderni

La libreria Python ha classi helper e notebook di esempio associati che rendono più semplice l'uso dei metodi API disponibili nelle tue applicazioni AI generative. Per ulteriori informazioni, vedi LibreriaPython.

Argomento principale: Coding generative AI solutions

Ricerca e risposta AI generativa
Queste risposte sono generate da un modello di lingua di grandi dimensioni in watsonx.ai basato sul contenuto della documentazione del prodotto. Ulteriori informazioni