กระโดดข้ามอุปสรรคทางภาษาโดยใช้ AI เพื่อสนทนากับผู้ใช้ออนไลน์อื่น ๆ จากทั่วโลก! Languageleapai ตั้งเป้าหมายที่จะให้ผู้ช่วย AI ภาษาแบบเรียลไทม์แก่คุณซึ่งสามารถเข้าใจและพูดภาษาที่คุณต้องการได้อย่างคล่องแคล่ว (กำหนดเป้าหมายไปยังภาษาอังกฤษเป็นญี่ปุ่นและเยอรมันในตอนนี้)
คู่มือการตั้งค่า: https://www.youtube.com/watch?v=BN5UAEEKIPGM
Showcase: https://www.youtube.com/watch?v=UY7SRB60WZ4
โครงการนี้รวมระบบ AI ฟรีและโอเพ่นซอร์ส 3 ระบบ:
Whisperai และ Voicevox ทั้งคู่มีรูปภาพ Docker ที่มีอยู่ใน DockerHub ดังนั้นเราจะสร้างและเรียกใช้ทั้งสองผ่านไฟล์เขียน Docker Deepl สามารถโต้ตอบได้โดยการลงทะเบียนเพื่อวางแผนฟรีและโต้ตอบกับ REST API สูงสุด 500,000 ตัวอักษร / เดือน หาก Deepl ไม่สามารถใช้งานได้ในประเทศของคุณตัวเลือกในการใช้ Google Translate แทนจะพร้อมใช้งาน
Languageleapai ประกอบด้วยโปรแกรม Python หลัก 2 โปรแกรม
ครั้งแรกที่ voice_translator.py บันทึกไมโครโฟนของคุณเมื่อใดก็ตามที่คีย์แบบ push-to-talk ถูกเก็บไว้บนแป้นพิมพ์ เมื่อคีย์นี้ถูกปล่อยออกมาแล้วจะบันทึกเสียงของคุณในไฟล์เสียงซึ่งจะถูกส่งไปยังจุดสิ้นสุดการถอดเสียงของ Whisperai ซึ่งเรียกใช้การรู้จำเสียงพูดอัตโนมัติ (ASR) หลังจากการตอบกลับที่มีคำพูดของคุณเมื่อได้รับข้อความข้อความนี้จะถูกแปลโดยใช้ REST API ของ Deepl
จากนั้นข้อความที่แปลจะถูกส่งไปยัง VoiceVox ซึ่งดำเนินการข้อความเป็นคำพูดและสร้างไฟล์เสียงที่เปล่งออกมาเป็นภาษาญี่ปุ่น ไฟล์นี้จะถูกเล่นไปยังอินพุตไมโครโฟนของแอปพลิเคชันเป้าหมายและลำโพง/หูฟังของคุณ
เนื่องจาก Voicevox ใช้ข้อความภาษาญี่ปุ่นเป็นอินพุตและสร้างคำพูดเป็นภาษาญี่ปุ่นเท่านั้นโครงการจึงถูก จำกัด เฉพาะภาษาญี่ปุ่นเป็นภาษาเป้าหมาย อย่างไรก็ตาม VoiceVox สามารถถูกแทนที่ด้วยโปรแกรมข้อความอื่น ๆ ไปยังโปรแกรมการพูดที่สามารถพูดภาษาที่คุณต้องการเพื่อความเป็นไปได้ที่ไร้ขีด จำกัด
Thorsten ได้รับการเพิ่มเป็นโปรแกรม TTS เยอรมัน
ที่สอง subtitler.py บันทึกเอาต์พุตเสียงของแอปพลิเคชันและฟังในพื้นหลังสำหรับคำพูดใด ๆ เมื่อตรวจพบว่าวลี/ประโยคเสร็จสมบูรณ์แล้วมันจะบันทึกเสียงลงในไฟล์ WAV และส่งไปยังจุดสิ้นสุดการแปลของ Whisperai ซึ่งแปลคำพูดจากภาษาเป้าหมายเป็นภาษาอังกฤษ
ข้อความภาษาอังกฤษนี้จะปรากฏบนหน้าจอโดยใช้โมดูล tkinter ของ Python ซึ่งทำหน้าที่เป็นคำบรรยาย
กลุ่มเป้าหมาย ของ Languageleapai มีไว้สำหรับผู้ใช้ที่ต้องการแชทกับคนอื่น แต่ไม่พูดภาษาเดียวกัน ตัวอย่างคือผู้ใช้ที่พูดภาษาอังกฤษเล่นเกมออนไลน์ในเซิร์ฟเวอร์ญี่ปุ่น แต่ต้องการใช้การแชทด้วยเสียงแม้จะไม่รู้ภาษาญี่ปุ่นก็ตาม
ด้วยการเรียกใช้ทั้ง subtitler.py และ voice_translator.py พวกเขาสามารถเข้าใจเพื่อนร่วมทีมชาวญี่ปุ่นของพวกเขาโดยการอ่านคำบรรยายภาษาอังกฤษที่สร้างขึ้นตามเวลาจริง พวกเขายังสามารถพูดภาษาอังกฤษและเพื่อนร่วมทีมญี่ปุ่นจะได้ยินคำพูดภาษาญี่ปุ่นที่แปลโดย Voicevox แทน
อย่างไรก็ตามนี่ไม่ใช่แอปพลิเคชันเดียวของ Languageleapai
ผู้ใช้เพียงแค่ต้องการเข้าใจสิ่งที่ถูกพูดโดยไม่จำเป็นต้องพูด เช่นการดูวิดีโอ / สตรีม / ภาพยนตร์ในภาษาอื่นโดยไม่มีคำบรรยาย ผู้ใช้สามารถเลือกที่จะไม่เรียกใช้ Voice_translator.py และใช้ Subtitler.py
ผู้ใช้เข้าใจภาษามากพอที่จะฟังและเข้าใจ แต่กลัวที่จะพูดภาษาด้วยเหตุผลหลายประการเช่นการไม่เปิดเผยตัวตน / ความกลัวที่จะทำให้ยุ่งเหยิงหรือละเมิด ผู้ใช้สามารถเลือกที่จะไม่เรียกใช้ subtitler.py และใช้ voice_translator.py
การตั้งค่า Languageleapai ต้องใช้ 3 ขั้นตอนที่สำคัญดังนั้นอย่าพลาดสิ่งใดเลย!
ในการเรียกใช้ languageleapai คุณต้องเรียกใช้ Whisperai และ Voicevox ก่อน พวกเขาสามารถเรียกใช้ผ่าน Docker หรือใช้ Google Colab
หาก GPU ของคุณไม่ทรงพลังพอคุณอาจต้องการพิจารณาใช้งาน Whisperai และ VoiceVox โดยใช้ GPU ของ Google Colab
อัปโหลดไฟล์ run_whisper_n_voicevox.ipynb ไปยัง Google Drive เปิดโน้ตบุ๊กด้วย Google Colab และทำตามคำแนะนำ!
หากต้องการเรียกใช้เฉพาะ Whisper หรือ VoiceVox บนคลาวด์: ใช้ทั้ง RUN_WHISPER_COLAB.IPYNB และ RUN_VOICEVOX_COLAB.IPYNB COLAB ไฟล์แทน!
หากคุณยังต้องการเรียกใช้ทั้ง Whisper และ VoiceVox บนคอมพิวเตอร์ของคุณให้เรียกใช้คำสั่งเหล่านี้ในโฟลเดอร์ที่มีไฟล์ Docker-compose.yml
เพื่อเรียกใช้ทั้ง Whisperai และ Voicevox:
docker-compose up -d
เพื่อหยุดเรียกใช้คอนเทนเนอร์:
docker-compose down
หากคุณใช้ระบบย่อย Windows สำหรับ Linux (WSL) อย่าลืมปิดมันเพื่อเรียกคืน RAM ของคุณ สิ่งนี้ควรหลังจากที่คุณหยุดคอนเทนเนอร์และดำเนินการโดยใช้โปรแกรม
wsl --shutdown
หากคุณต้องการเรียกใช้ VoiceVox เวอร์ชันภาษาเยอรมันคุณจะต้องเปลี่ยนไฟล์ compose นักเทียบท่าเป็นไฟล์ที่เกี่ยวข้อง TTS เป็นสิ่งเดียวที่เปลี่ยนแปลงดังนั้นตรวจสอบให้แน่ใจว่าได้เปลี่ยน TARGET_LANGUAGE_CODE
ในไฟล์. env ของคุณด้วย
เพื่อเรียกใช้ทั้ง Whisperai และ Thorsten:
docker-compose -f docker-compose-de.yml up -d
เพื่อหยุดเรียกใช้คอนเทนเนอร์:
docker-compose down
เรียกใช้คำสั่งเหล่านี้ใน SRC/ โฟลเดอร์
เพื่อเรียกใช้คำบรรยายเสียง:
python subtitler.py
เพื่อเรียกใช้นักแปลเสียง:
python voice_translator.py
หากต้องการหยุดสคริปต์ Python เพียงกด Ctrl+C
ในเทอร์มินัล
สิ่งสำคัญบางอย่างที่ต้องคำนึงถึงในขณะที่ใช้ ภาษา
โปรดทราบว่า Whisperai นั้นไม่แม่นยำที่สุดและจะไม่ถอดเสียงพูดอย่างถูกต้อง 100% ของเวลาดังนั้นใช้ความเสี่ยงของคุณเอง จนกระทั่ง Openai ตัดสินใจที่จะปรับปรุงชุดข้อมูลที่ใช้ในการฝึกอบรมโมเดล Whisper สิ่งนี้จะต้องทำ
นอกจากนี้กระซิบไม่ได้ถูกออกแบบมาเพื่อจัดการคำขอที่เกิดขึ้นพร้อมกันหลายครั้งพร้อมกัน อย่างไรก็ตามเพื่อให้คำบรรยายได้รับการปรับปรุงในเวลามีการส่งคำขอหลายครั้งแบบอะซิงโครนัสดังนั้นคำขอบางอย่างอาจส่งคืนข้อผิดพลาด
หากคุณกำลังใช้งาน Whisper และ VoiceVox บนคลาวด์โดยใช้ Google Colab เนื่องจากเราใช้ Ngrok และ LocalTunnel เพื่อโฮสต์บริการของเราที่อยู่ IP สาธารณะแบบสุ่มที่พวกเขาให้ไว้อาจถูกขึ้นบัญชีดำโดยซอฟต์แวร์ป้องกันไวรัสของคุณ หาก AI ดูเหมือนจะหยุดทำงานอาจเป็นเพราะโปรแกรมป้องกันไวรัสของคุณปิดกั้นการเชื่อมต่อกับที่อยู่ IP สาธารณะเหล่านี้ คุณสามารถอนุญาตที่อยู่ IP เหล่านี้หรือปิดการป้องกันเว็บป้องกันไวรัสของคุณ ด้วยความเสี่ยงของคุณเอง
มีข้อกำหนดและเงื่อนไขบางประการสำหรับการใช้เสียงจาก Voicevox ดังนั้นโปรดอ่านสิ่งเหล่านี้ก่อนที่จะใช้ลำโพงเฉพาะ
รหัสของ Languageleapai ได้รับการเผยแพร่ภายใต้ใบอนุญาต MIT ดูใบอนุญาตสำหรับรายละเอียดเพิ่มเติม