Gli LLM (Large Language Models) come ChatGPT possono essere utilizzati direttamente da terminale attraverso Bash, grazie a strumenti come curl
e l'API di OpenAI. Questo articolo mostra come configurare e interagire con un LLM utilizzando uno script Bash.
Requisiti
- Accesso a un terminale Linux/macOS o a un ambiente compatibile con Bash
- API key valida di OpenAI
curl
installatojq
per il parsing JSON (opzionale ma consigliato)
Configurazione dell'API Key
Per prima cosa, imposta la tua API key in una variabile d'ambiente per motivi di sicurezza:
export OPENAI_API_KEY="sk-...tuachiave..."
Script di esempio per inviare una richiesta
Lo script seguente invia una richiesta a ChatGPT usando l'API chat/completions
:
#!/bin/bash
read -p "Inserisci il tuo prompt: " USER_INPUT
curl https://api.openai.com/v1/chat/completions \
-s \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [
{"role": "user", "content": "'"$USER_INPUT"'"}
]
}' | jq -r '.choices[0].message.content'
Uso interattivo
Puoi incorporare lo script in un ciclo per creare una sessione interattiva:
#!/bin/bash
echo "Avvia conversazione con ChatGPT (Ctrl+C per uscire)"
while true; do
read -p "> " USER_INPUT
RESPONSE=$(curl -s https://api.openai.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [
{"role": "user", "content": "'"$USER_INPUT"'"}
]
}')
echo "$(echo "$RESPONSE" | jq -r '.choices[0].message.content')"
done
Considerazioni di sicurezza
Evita di salvare l'API key in chiaro nei file. Usa sempre variabili d'ambiente o file protetti con permessi adeguati.
Conclusione
Interagire con un LLM tramite Bash rende possibile l'integrazione dell'AI nei flussi di lavoro da terminale. Puoi costruire strumenti personalizzati, automatizzare attività e migliorare la produttività con pochi comandi.