ChatGPT نیازی به معرفی ندارد. شما هر سوالی ازش بپرسید یک لحظه جواب میده. اما پاسخ به صورت متنی می آید. اگر بتوانید با آن صحبت کنید، دقیقاً مانند هر دستیار صوتی مانند سیری، چه؟
بر کسی پوشیده نیست که ChatGPT انقلابی در دنیای هوش مصنوعی ایجاد کرده است. برخلاف سایر رباتهای هوش مصنوعی، میتواند زمینه یک مکالمه را درک کند و به آن پاسخ دهد، و این احساس را به شما القا میکند که با یک انسان و نه یک ماشین چت میکنید.
اما از آنجایی که هنوز هم نوعی چت بات است، باید یک سوال را تایپ کنید و پاسخ را به صورت متنی دریافت کنید. این به اندازه صحبت کردن با یک ربات هیجان انگیز نیست.
این فکر به من ایده برنامه نویسی ChatGPT را داد تا بتوان از آن به عنوان یک دستیار صوتی به نام VoiceGPT استفاده کرد. من با استفاده از پردازش زبان طبیعی (NLP) برای تشخیص صدا، و سپس انتقال صدای شناسایی شده به موتور ChatGPT به عنوان پرس و جو با استفاده از API شروع کردم. پس از دریافت پاسخ هوشمندانه از ChatGPT، من دوباره از NLP برای تبدیل آن به صدای انسان استفاده کردم.
من به یک ابزار NLP خوب برای این کار نیاز داشتم و OpenAI خودش یک ابزار NLP را فراهم می کند، یعنی Whisper. اما به دلیل زمان و مکان محدود، در نهایت از Google Natural Language API استفاده کردم.
راهنمای گام به گام ساخت VoiceGPT
ما باید با ترکیب NLP برای سرویس ttX با ChatGPT شروع کنیم. برای این کار ما به ماشینی نیاز داریم که API باز را اجرا کند، درخواست جمعآوریشده از NLP را منتقل کند و پاسخ داده شده توسط ChatGPT را با استفاده از NLP به صدای انسان پردازش کند.
شما می توانید از هر لپ تاپی استفاده کنید، اما من Raspberry Pi را برای اجرای همه اینها انتخاب کردم. برای ضبط صدا برای تشخیص، کلاه صوتی را وصل کردم. یک میکروفون USB نیز می تواند با Raspberry Pi استفاده شود. با این حال، اگر از لپ تاپ برای اجرای کد VoiceGPT استفاده می کنید، نیازی به میکروفون USB نیست. می توانید از میکروفون داخلی لپ تاپ استفاده کنید.
اکنون باید یک حساب کاربری ایجاد کرده و وارد ChatGPT شویم (شکل 2).
در مرحله بعد، همانطور که در شکل 3 نشان داده شده است، باید کلید API را برای انجام تحقیق و آزمایش با کد ChatGPT دریافت کنیم.
می توانید کلید API را با استفاده از گزینه گوشه سمت راست برای API در حساب OpenAI خود ایجاد کنید (شکل 4).
پس از تولید کلید OpenAI API، آن را کپی کرده و ذخیره کنید. ما بعداً در کد خود برای توسعه VoiceGPT به آن نیاز داریم.
حال باید هوش مصنوعی باز را روی سیستمی که قرار است VoiceGPT را اجرا کنیم نصب کنیم. در اینجا می توانید از رایانه ای با هر نسخه لینوکس نصب شده استفاده کنید. من برای آن از رزبری پای استفاده کردم.
بعد، ترمینال را باز کنید و هوش مصنوعی باز و سایر ماژول های پایتون را که در پردازش زبان طبیعی به ما کمک می کنند، نصب کنید. در اینجا می توانید از Whisper از OpenAI یا هر ماژول NLP دیگری استفاده کنید. من از Google NLP استفاده کردم و آن را با ChatGPT ترکیب کردم.
با استفاده از دستور زیر می توانید این ماژول ها را نصب کنید. پس از آن، می توانید محتوای مکالمه سفارشی باز خود را در OpenAI ایجاد کنید یا از چت ساده در زمین بازی استفاده کنید. در اینجا، همچنین می توانید فرکانس دما و سایر پارامترها را برای دستیار VoiceGPT خود تنظیم کنید.
sudo pip3 install openai sudo pip3 install SpeechRecognition sudo pip3 install gTTS
برای مشاهده نحوه کلون کردن OpenAI ChatGPT و انجام تنظیمات، به شکل 5 و 6 مراجعه کنید.
سپس دما، فرکانس و مدل چت را مطابق شکل 7 تنظیم کنید.
برنامه نویسی ChatGPT برای استفاده به عنوان VoiceGPT
ابتدا باید ماژول OpenAI Python را به صورت کد وارد کنیم تا با OpenAI بازی کنیم و آزمایشی را با ChatGPT انجام دهیم. بعد، ماژول ها را برای NLP وارد می کنیم. پس از آن، pygame را وارد می کنیم تا فایلی را که پاسخ را با صدای انسان پردازش کرده است، با استفاده از مدل NLP پخش کند.
در مرحله بعد، باید مدل ChatGPT را تنظیم کنیم. در اینجا می توانیم از بین نام مدل هایی مانند داوینچی، آدا و … انتخاب کنیم که هر مدلی تخصص خاص خود را دارد و هزینه استفاده از این مدل ها متفاوت است. اما جای نگرانی نیست، زیرا توسعه دهندگان برای توسعه و آزمایش OpenAI 18 دلار اعتبار دریافت می کنند.
بعد، باید API را در کد تنظیم کنیم. با آن، ما تابعی را برای اتصال با ChatGPT ایجاد کرده ایم تا پرس و جو را مدیریت کرده و از آن پاسخ دریافت کنیم.
import speech_recognition as sr import math import time import serial from espeak import espeak import sys import openai import pygame from gtts import gTTS pygame.mixer.init() #model_to_use=”text-davinci-003” # most capable #model_to_use=”text-curie-001” #model_to_use=”text-babbage-001” model_to_use=”text-ada-001” # lowest token cost r = sr.Recognizer() openai.api_key=”******Your Key Here*******” def chatGPT(query): response = openai. Completion.create( model-model_to_use, prompt=query, temperature=0, max_tokens 1000 ) return str.strip(response[‘choices’][0][‘text’]), response[‘usage’][‘total_tokens’]
پس از آن، تابع main را ایجاد می کنیم و سپس یک حلقه while ایجاد می کنیم. در اینجا، از NLP برای ضبط مداوم صدا استفاده می کنیم و آنچه را که گفتیم با استفاده از مدل NLP استخراج می کنیم و آن را به عنوان پرس و جو ذخیره می کنیم. سپس این کوئری را به ChatGPT منتقل می کنیم و پاسخ آن را دریافت می کنیم.
def main(): print(‘LED is ON while button is pressed (Ctrl-C for exit).’) while True: with sr.Microphone() as source: r.adjust_for_ambient_noise (source) print(“Say something!”) audio r.listen(source) print(“Recognizing Now....”) command=str(r.recognize_google (audio)) print(“Google Speech Recognition thinks you said + command) query=command (res, usage) = chatGPT (query) print(res) tts gTTS(text=res, lang=’en’) tts.save(“good.mp3”) pygame.mixer.music.load(“good.mp3”) pygame.mixer.music.play() #espeak.synth(res) if __name__ == ‘__main__’: main()
پس از این، ما دوباره از NLP برای تبدیل پاسخ از ChatGPT به صدای انسان استفاده می کنیم و سپس آن صدا را پخش می کنیم. این همه چیز به طور مداوم در یک حلقه اجرا می شود و آن را شبیه یک مکالمه واقعی بین دو انسان می کند.
این VoiceGPT به شما امکان سفارشی سازی و انتخاب مدل ها را می دهد. این به شما امکان می دهد از بین مدل های GPT مانند Ada، Davinci یا Babbage انتخاب کنید. از یک سرویس تشخیص گفتار رایگان استفاده می کند که می تواند برای سرویس های تشخیص گفتار آفلاین مانند Sphenix سفارشی شود.
تست VoiceGPT
برای تست VoiceGPT، کد را در پایتون اجرا کنید و به شما می گوید که یک سوال بپرسید یا یک مکالمه را شروع کنید. شما می توانید هر چه می خواهید بپرسید؛ صدای شما را می شناسد، پرس و جو را به ChatGPT منتقل می کند و سپس با صدای انسانی به شما پاسخ می دهد.
بنابراین اکنون میتوانید با ChatGPT درست مانند دستیار Google، Alexa یا Siri صحبت کنید. از مکالمه خود با VoiceGPT لذت ببرید!
توجه داشته باشید: این اولین نسخه VoiceGPT است. من هنوز در حال آزمایش با آن هستم و شما به زودی همه به روز رسانی های جدید را دریافت خواهید کرد |