Kit de inicio de robot SMS GPT3 con Twilio. Basado en este tutorial.
Basado en este tutorial. Una vez creada su cuenta, use este comando para crear un número de teléfono que pueda recibir mensajes SMS:
twilio phone-numbers:update PHONE_NUMBER --sms-url https://RANDOM_STRING.ngrok.io/messages
Necesitará tener instalada la CLI de Twilio. Deberá "actualizar" a pago si desea eliminar la marca Twilio de las respuestas por SMS.
Instale las dependencias:
npm install
Copie el archivo .env.example
a .env
:
cp .env.example .env
Complete sus claves TWILIO y OPENAI, y su PHONE_NUMBER personal.
Compile el proyecto:
npm run build
Tenga en cuenta que esto ejecuta el compilador TypeScript, tsc
. También puede ejecutar npx tsc
para obtener el mismo resultado.
El proyecto TypeScript se compilará en el directorio dist
. También puedes compilar continuamente el proyecto a medida que cambia con:
npm run watch
Inicie el servidor web con:
npm start
Para responder a un webhook entrante necesitará una URL disponible públicamente. ngrok es una herramienta que puede hacer un túnel desde una URL pública hasta su máquina. Una vez que haya descargado e instalado ngrok, puede ejecutarlo así:
ngrok http 3000
La terminal ngrok le mostrará una URL, como https://RANDOM_STRING.ngrok.io
.
Usando la URL de ngrok de la última parte, puede configurar su número de teléfono de Twilio con su aplicación. Edite su número de teléfono y en la sección Mensajes, junto a "Entra un mensaje", ingrese su URL de ngrok con la ruta /messages
.
https://RANDOM_STRING.ngrok.io/messages
Guarda el número de teléfono y listo. Envía un mensaje a tu número y recibe una respuesta. Escriba "restablecer" para restablecer el historial del hilo de chat y volver a abrir.
fly launch (if it's the first time)
# update fly.toml internal port to 3000
fly deploy
# Set your secrets from .env
fly secrets set --app gpt3-chat TWILIO_ACCOUNT_SID= TWILIO_AUTH_TOKEN= TWILIO_PHONE_NUMBER= OPENAI_API_KEY=
const { Configuration , OpenAIApi } = require ( "openai" ) ;
const configuration = new Configuration ( {
apiKey : process . env . OPENAI_API_KEY ,
} ) ;
const openai = new OpenAIApi ( configuration ) ;
const response = await openai . createCompletion ( {
model : "text-davinci-003" ,
prompt : "Please reply to the chat below:n" ,
temperature : 0.7 ,
max_tokens : 256 ,
top_p : 1 ,
frequency_penalty : 0 ,
presence_penalty : 0 ,
} ) ;
Para comenzar a usar Promptable para crear y recuperar sus indicaciones, vaya a https://promptable.ai.
Luego, cree e implemente un mensaje y recupérelo así
const { data } = await axios.get(`https://promptable.ai/api/prompt/<YOUR PROMPT ID HERE>/deployment/active`);
const { text, configs } = data // get your prompt text and configs
//... now use it in the chat bot!
Recibe mensajes SMS en tu Mac. https://support.apple.com/guide/messages/get-sms-texts-from-iphone-on-your-mac-icht8a28bb9a/mac
TODO: Agregar chats de voz: