Ubah konten tertulis menjadi pidato menggunakan Google AI (Gemini) untuk pembuatan teks dan pengambilan informasi berbasis internet.
Proyek ini didasarkan pada contoh dalam tes/app.ts. Itu melakukan langkah -langkah berikut:
Proyek ini telah diuji di Linux (Ubuntu 24.04 LTS x86_64). Pengguna Windows dapat menginstal SOX melalui SourceForge. Informasi khusus macOS saat ini tidak tersedia.
| Tugas | Prioritas | Status |
|---|---|---|
| Menerapkan obrolan Gemini | Tinggi | ✅ selesai |
| Kembangkan pengenalan suara | Tinggi | ✅ selesai |
| Menerapkan deteksi bahasa audio | Tinggi | ✅ selesai |
| Mengimplementasikan deteksi bahasa teks | Sedang | ✅ selesai |
| Menerapkan pemain audio | Rendah | ✅ selesai |
| Tentukan enum | Rendah | ✅ selesai |
| Mengintegrasikan debugging | Rendah | ✅ selesai |
Sebelum menggunakan repositori ini, pastikan dependensi berikut diinstal pada sistem Anda:
sudo apt-get install soxsudo apt-get install libsox-fmt-allsudo apt install ffmpeg choco install ffmpeg (menggunakan cokelat) atau unduh dari situs web resmi Instruksi instalasi khusus macOS tidak tersedia saat ini.
Untuk menginstal paket, gunakan salah satu perintah berikut berdasarkan Paket Paket pilihan Anda:
# npm
$ npm install git+https://github.com/Stawa/GTTS.git --legacy-peer-deps
# Bun
$ bun install git+https://github.com/Stawa/GTTS.git --trustSebelum menyelam ke dalam contoh, pastikan Anda memiliki kunci dan kredensial API berikut:
lib.GoogleGemini )lib.TextToSpeech )lib.VoiceRecognition.fetchTranscriptGoogle )lib.VoiceRecognition.fetchTranscriptDeepgram )lib.SummarizeText )Pastikan untuk menyimpan kunci API ini dengan aman dan tidak pernah berkomitmen pada kontrol versi. Pertimbangkan untuk menggunakan variabel lingkungan atau sistem manajemen kunci yang aman.
Berikut adalah contoh singkat yang menunjukkan cara menghasilkan respons menggunakan API Google Gemini:
import { GoogleGemini } from "@stawa/gtts" ;
import dotenv from "dotenv" ;
dotenv . config ( ) ;
const gemini = new GoogleGemini ( {
apiKey : process . env . GEMINI_API_KEY ,
model : "gemini-1.5-flash" ,
enableLogging : true ,
} ) ;
async function main ( ) {
try {
const question = "When was Facebook launched?" ;
console . log ( `Question: ${ question } ` ) ;
const response = await gemini . chat ( question ) ;
console . log ( `Gemini's response: ${ response } ` ) ;
} catch ( error ) {
console . error ( "An error occurred:" , error ) ;
}
}
main ( ) ;Kami menghargai kontribusi semua kolaborator kami. Upaya setiap orang membantu membuat proyek ini lebih baik. Terima kasih khusus kepada semua kontributor kami yang telah membantu membentuk proyek ini!