Generazione di testo
Utilizzare i modelli di fondazione in IBM watsonx.ai in modo programmatico per le attività di generazione del testo.
- Autorizzazioni richieste
- Per eseguire i prompt, è necessario avere il ruolo di amministratore o editore in un progetto.
- Credenziali richieste
- È necessario generare credenziali per l'autenticazione con le API di watsonx.ai. Per ulteriori dettagli, consultare Generazione di un token portatore.
Tipi di inferenza
È possibile creare un modello di base utilizzando uno dei seguenti metodi di generazione del testo:
- Infer text: Attende per restituire l'output generato dal modello di fondazione tutto in una volta.
- Inferisci flusso di eventi di testo: restituisce l'output così come viene generato dal modello di base. Questo metodo è utile nei casi d'uso conversazionali, quando si vuole che un chatbot o un assistente virtuale risponda all'utente in modo fluido, imitando una conversazione reale.
A partire da 2.3.1, l'API per la generazione di testo è obsoleta e verrà rimossa in futuro.
Per i casi di utilizzo della chat, utilizzare l'API Chat. Vedere Aggiunta di una funzione di chat generativa alle applicazioni con l'API di chat.
Modi per sviluppare
È necessario generare credenziali per l'autenticazione con le API di watsonx.ai. Per ulteriori dettagli, consultare Generazione di un token portatore.
È possibile fare inferenza sui modelli di fondazione utilizzando questi metodi programmatici:
In alternativa, è possibile utilizzare gli strumenti grafici dell'interfaccia utente di watsonx.ai per fare inferenza sui modelli di fondazione. Vedi Prompt Lab.
API REST
Il metodo utilizzato per dedurre un modello di fondazione varia a seconda che il modello di fondazione sia fornito con un watsonx.ai o o sia associato a un deployment.
Per dedurre un modello di fondazione che è fornito con un watsonx.ai, utilizzare il metodo di generazione di testo.
curl -X POST 'https://cpd-<namespace-name>.apps.<OCP-domain>/ml/v1/text/generation?version=2025-02-11' \
-H 'Authorization: Bearer ${TOKEN}' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
--data-raw '{
"input": "Tell me about interest rates",
"parameters": {
"max_new_tokens": 200
},
"model_id": "ibm/granite-3-8b-instruct",
"project_id": "<project_id>"
}'
Per dedurre un modello di fondazione sintonizzato o personalizzato, utilizzare il metodo di testo Deployments>Infer.
L'indirizzo {model_id} non è necessario per questo tipo di richiesta, perché l'installazione client supporta un solo modello.
Applicare i guardrail dell'intelligenza artificiale quando si fa inferenza
Quando si richiede un modello di fondazione utilizzando l'API, è possibile utilizzare il campo " moderations " per applicare i guardrail AI all'input e all'output del modello di fondazione. Per ulteriori informazioni, vedere Rimozione del linguaggio dannoso dall'input e dall'output del modello.
Inferenza con un modello di prompt
È possibile dedurre un modello di base con testo di input che segue uno schema definito da un modello di prompt.
Per ulteriori dettagli, consultare Creare un modello di prompt.
Non è possibile creare o utilizzare modelli di prompt distribuiti dal motore leggero dell' watsonx.ai. Tuttavia, se hai creato un modello di prompt con un'installazione di servizio completa, puoi estrarre il testo del modello di prompt.
Per estrarre il testo del modello di prompt da utilizzare come input per il metodo di generazione del testo, procedere come segue:
Utilizzare il metodo Search asset types 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 ${TOKEN}' \ --data '{ "query": "asset.name:<template_name>" }'L'ID del modello di prompt è specificato come
metadata.asset_id.Usare il metodo Ottieni la stringa di input dell'inferenza per un dato prompt per ottenere il testo del modello del 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 Ottenere la stringa di input dell'inferenza per un determinato prompt
È possibile inviare il testo del prompt estratto come input al metodo Generate text.
Python biblioteca
Vedere la classe Model Inference della libreria watsonx.ai Python.
Per informazioni su come utilizzare i notebook di esempio disponibili su Python, vedere i seguenti argomenti:
Node.js
- Generazione di testo
Si vedano le seguenti risorse:
- Flusso di generazione del testo
Si veda la seguente risorsa: