Начальный комплект SMS-бота GPT3 с использованием Twilio. На основе этого урока.
На основе этого урока. После создания вашей учетной записи используйте эту команду, чтобы создать номер телефона, на который можно будет получать SMS-сообщения:
twilio phone-numbers:update PHONE_NUMBER --sms-url https://RANDOM_STRING.ngrok.io/messages
Вам понадобится установленный Twilio CLI. Вам нужно будет «обновить» до платной версии, если вы хотите удалить брендинг Twilio из ответов на SMS.
Установите зависимости:
npm install
Скопируйте файл .env.example
в .env
:
cp .env.example .env
Введите ключи TWILIO и OPENAI, а также свой личный номер PHONE_NUMBER.
Скомпилируйте проект:
npm run build
Обратите внимание, что при этом запускается компилятор TypeScript tsc
. Вы также можете запустить npx tsc
чтобы получить тот же результат.
Проект TypeScript будет скомпилирован в каталог dist
. Вы также можете непрерывно компилировать проект по мере его изменений с помощью:
npm run watch
Запустите веб-сервер с помощью:
npm start
Чтобы ответить на входящий веб-перехватчик, вам понадобится общедоступный URL-адрес. ngrok — это инструмент, который может туннелировать с общедоступного URL-адреса на ваш компьютер. После того, как вы загрузили и установили ngrok, вы можете запустить его следующим образом:
ngrok http 3000
Терминал ngrok покажет вам URL-адрес, например https://RANDOM_STRING.ngrok.io
.
Используя URL-адрес ngrok из последней части, вы можете настроить свой номер телефона Twilio для своего приложения. Измените свой номер телефона и в разделе «Сообщения» рядом с надписью «Приходит сообщение» введите URL-адрес ngrok с путем /messages
.
https://RANDOM_STRING.ngrok.io/messages
Сохраните номер телефона, и все готово. Отправьте сообщение на свой номер и получите ответ. Введите «reset», чтобы сбросить историю веток чата и снова начать работу.
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 ,
} ) ;
Чтобы начать использовать Promptable для создания и получения подсказок, перейдите на https://promptable.ai!
Затем создайте и разверните приглашение и получите его следующим образом.
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!
Получайте смс-сообщения на свой Mac. https://support.apple.com/guide/messages/get-sms-texts-from-iphone-on-your-mac-icht8a28bb9a/mac
ЗАДАЧИ: Добавить голосовые чаты: