Introduzione a Red Hat AI Inference on IBM Cloud
Sei pronto a iniziare a utilizzare l'IA nelle tue applicazioni? In questo tutorial imparerai come effettuare inferenze con i modelli di base e generare risposte basate sull'intelligenza artificiale. In soli 15 minuti potrai interagire con un modello linguistico di grandi dimensioni e integrare l'IA conversazionale nei tuoi flussi di lavoro.
Red Hat® AI Inference on IBM Cloud® è una soluzione di IA generativa pronta per l'uso aziendale, privata e sicura, basata sull'intelligenza artificiale di Red Hat OpenShift. Questo tutorial ha lo scopo di introdurti all'uso dell'inferenza per interagire con i modelli di base: il modo più veloce per iniziare a utilizzare l'IA.
Cosa otterrai
In questo tutorial svolgerai le seguenti attività:
- Configura il tuo account e il tuo progetto su IBM Cloud.
- Effettua l'autenticazione all'API di inferenza.
- Genera la tua prima risposta in una chat utilizzando un modello di base.
- Scopri quali sono i prossimi passi per personalizzare i modelli con i tuoi dati.
Prima di iniziare
Assicurati di avere quanto segue:
-
Un account "Pay-As-You-Go" o in abbonamento su IBM Cloud. Non sono supportati gli account di prova. Per ulteriori informazioni o per passare a un account di livello superiore, consulta la sezione " Tipi di account ".
-
Ruolo "Writer" o superiore sul servizio Red Hat AI Inference. Per ulteriori informazioni, vedi Gestione dell'accesso IAM.
Ottieni l'ID del tuo progetto e l'endpoint API
L'ID del progetto è obbligatorio per tutte le richieste API.
-
Vai su Red Hat AI Inference progetti.
-
Apri il tuo progetto.
-
Copia l'ID del tuo progetto e conservalo per i passaggi successivi.
Endpoint API
Tutte le richieste API utilizzano il seguente formato di base URL:
https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference
Sostituisci <project_id> con l'ID del tuo progetto.
Autenticarsi all'API
Prima di poter interagire con i modelli di base, è necessario autenticare le richieste API. È possibile utilizzare sia un token al portatore che una chiave API IBM Cloud. Questo tutorial illustra come utilizzare un ID servizio insieme a una chiave API per l'accesso programmatico. Per ulteriori informazioni sull'utilizzo di un token bearer, consultare la sezione " Autenticazione tramite token bearer".
Creare un ID servizio e assegnare i diritti di accesso
Un ID di servizio è uno strumento utile per gestire e distribuire l'accesso ai progetti di Red Hat AI Inference. Crea l'ID del servizio, quindi assegnagli i diritti di accesso al tuo progetto.
-
Nella console di IBM Cloud, vai su Gestisci > Accesso (IAM) > ID servizio e fai clic su Crea.
-
Inserisci un nome e una descrizione per l'ID del servizio, quindi fai clic su Crea.
-
Dalla pagina dell'ID del servizio, fare clic su " Assegna accesso ".
-
Seleziona Red Hat AI Inference come servizio.
-
Nella sezione Risorse, seleziona " Risorse specifiche " e scegli il tuo progetto. In questo modo, si limita l'accesso a un progetto specifico.
-
Nella sezione " Ruoli e azioni ", selezionare il ruolo di accesso al servizio appropriato:
- Seleziona " Writer " se devi creare suggerimenti automatici per la chat.
- Seleziona " Lettore " se devi solo leggere i completamenti della chat o visualizzare le informazioni sul modello.
Per l'accesso alle API non sono richiesti ruoli di accesso alla piattaforma.
-
(Facoltativo) Aggiungere condizioni, come l'accesso basato sull'ora, per limitare ulteriormente l'accesso all'ID del servizio.
-
Esamina il riepilogo degli accessi e fai clic su “Assegna ”.
Crea una chiave API
Ora che il tuo ID servizio ha accesso al tuo progetto Red Hat AI Inference, crea una chiave API per l'ID servizio da utilizzare nelle tue chiamate API.
-
Dalla pagina "ID servizio", fare clic su " Chiavi API ".
-
Fai clic su "Crea " e inserisci un nome per la tua chiave API.
-
Per la gestione delle chiavi compromesse, selezionare " Disabilita la chiave compromessa " per disabilitare automaticamente la chiave qualora venga rilevata come compromessa.
-
Imposta una data di scadenza per la chiave. Per motivi di sicurezza, si raccomanda di effettuare regolarmente la rotazione delle chiavi.
-
Fai clic su Crea.
-
Copia la chiave API e conservala in un luogo sicuro. Non è più possibile visualizzare la chiave.
Ora puoi utilizzare quella chiave API per autenticare le tue richieste. Nel passaggio successivo, utilizzerai questa chiave nell'intestazione " Authorization: Bearer " delle tue chiamate API.
Scopri i modelli disponibili
I diversi modelli di fondazione presentano punti di forza diversi, pertanto è importante valutare i modelli disponibili per il proprio progetto.
Effettua la seguente chiamata API per visualizzare l'elenco di tutti i modelli disponibili. Sostituisci <project_id> con l'ID del tuo progetto e <api_key> con l'ID del servizio della tua chiave API:
curl -L 'https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference/models' \
-H 'Accept: application/json' \
-H "Authorization: Bearer <api_key>"
from openai import OpenAI
client = OpenAI(
api_key="<api_key>",
base_url="https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference",
)
models = client.models.list()
print(models)
La risposta mostra tutti i modelli che è possibile utilizzare, insieme alle informazioni relative alle loro funzionalità. Puoi provare diversi modelli per trovare quello più adatto alle tue esigenze.
Crea il tuo primo completamento della chat
Ora, invia un messaggio al modello e ricevi una risposta generata dall'intelligenza artificiale.
Esegui la seguente chiamata API, sostituendo <project_id> con l'ID del tuo progetto e <api_key> con la chiave API del tuo servizio:
curl https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <api_key>" \
-d '{
"model": "granite-4-0-h-small",
"messages": [
{
"role": "developer",
"content": "You are a helpful assistant"
},
{
"role": "user",
"content": "Hello! Tell me about yourself"
}
]
}'
from openai import OpenAI
client = OpenAI(
api_key="<api_key>",
base_url="https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference",
)
completion = client.chat.completions.create(
model="granite-4-0-h-small",
messages=[
{"role": "developer", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello! Tell me about yourself"}
]
)
print(completion.choices[0].message)
Dovresti ricevere una risposta dal modello in cui si presenta.
Comprendere la richiesta
Analizziamo un po' quello che hai appena fatto:
- modello
- Hai specificato "
granite-4-0-h-small", uno dei modelli di base disponibili. I diversi modelli presentano capacità e caratteristiche prestazionali diverse. - messaggi
- Hai inviato due messaggi. Uno era un messaggio dello sviluppatore che impostava il prompt di sistema e forniva istruzioni al modello su come comportarsi. Il messaggio dell'utente conteneva la tua domanda vera e propria, alla quale il modello doveva rispondere.
- Endpoint API
- La richiesta è stata inoltrata all'endpoint di inferenza del tuo progetto, che si occupa di indirizzarla al modello appropriato.
È possibile personalizzare il comportamento del modello modificando il prompt di sistema, aggiungendo ulteriori messaggi o utilizzando modelli diversi a seconda dei diversi casi d'uso.
Passi successivi
Ora che hai iniziato a utilizzare con successo l'inferenza, ecco cosa puoi fare in seguito:
Proseguire con l'inferenza
-
Scopri di più sull'inferenza per conoscere funzionalità avanzate come le risposte in streaming, la regolazione dei parametri del modello e la gestione della cronologia delle conversazioni.
-
Consulta la documentazione di OpenAI API per il completamento delle chat per un riferimento completo all'API.
-
Integra le funzionalità di inferenza nelle tue applicazioni utilizzando l'SDK di Python o altri linguaggi di programmazione.
Personalizza i modelli con i tuoi dati
Obsoleto
Sei pronto ad andare oltre i modelli generici? È possibile personalizzare i modelli di base con le conoscenze e le competenze specifiche della propria organizzazione attraverso l'allineamento dei modelli:
-
Prepara una tassonomia che raccolga le tue conoscenze e competenze aziendali.
-
Genera dati sintetici a partire dalla tua tassonomia.
-
Addestra un modello personalizzato in base alle tue esigenze specifiche.
In questo modo, è possibile mettere a punto i modelli affinché comprendano il contesto aziendale, la terminologia e i requisiti specifici, andando oltre ciò che i modelli generici sono in grado di offrire.