Whisper AI là gì? Công cụ chuyển giọng nói thành văn bản của Open AI

Whisper được OpenAI giới thiệu vào tháng 9 năm 2022, như một phần trong nỗ lực phát triển công nghệ nhận dạng giọng nói tiên tiến. Ngay từ khi ra mắt, Whisper đã thu hút sự chú ý nhờ khả năng nhận diện đa ngôn ngữ và xử lý các âm thanh có chất lượng thấp hoặc nhiều tiếng ồn.

1. Whisper là gì?

Whisper là công nghệ chuyển giọng nói thành văn bản (speech-to-text) do OpenAI phát triển, giúp nhận diện chính xác nhiều ngôn ngữ và giọng nói khác nhau. Được huấn luyện từ một lượng lớn dữ liệu, Whisper có thể xử lý nhiều tác vụ như dịch thuật, phân tích âm thanh và chuyển lời nói thành văn bản một cách tự nhiên. Nhờ đó, nó hỗ trợ rất tốt trong việc tạo phụ đề, trợ lý ảo, và nhiều ứng dụng liên quan đến ngôn ngữ.

2. Whisper hoạt động như thế nào?

Whisper được huấn luyện trên một tập dữ liệu rất lớn, gồm 680.000 giờ âm thanh có giám sát, tập dữ liệu này bao gồm nhiều nguồn khác nhau từ internet và tài nguyên học thuật, với các điều kiện âm thanh đa dạng.

Whisper sử dụng mô hình “sequence-to-sequence”, khi nhận vào giọng nói, Whisper sẽ mã hóa âm thanh thành các đoạn dữ liệu (vector), sau đó sử dụng kiến trúc Transformer để giải mã thành văn bản.

Điều đặc biệt là nó có thể xử lý được các âm thanh có chất lượng không tốt, ví dụ như giọng nói từ một cuộc gọi điện thoại kém chất lượng hoặc âm thanh bị nhiễu. Điều này giúp Whisper vượt trội so với nhiều công nghệ khác khi làm việc trong các môi trường âm thanh khó có thể nghe rõ.

3. Whisper có thể làm được những gì?

3.1 Nhận diện giọng nói đa ngôn ngữ

Whisper có khả năng nhận diện giọng nói từ nhiều ngôn ngữ khác nhau, bao gồm cả những ngôn ngữ ít phổ biến.

Whisper có thể nhận diện tiếng Nhật, tiếng Đức, tiếng Tây Ban Nha, và nhiều ngôn ngữ khác. Khi người dùng nói tiếng Tây Ban Nha, Whisper sẽ chuyển đổi lời nói thành văn bản tiếng Tây Ban Nha mà không cần phải cài đặt cấu hình phức tạp.

3.2 Chuyển giọng nói thành văn bản trong điều kiện không thuận lợi

Whisper có khả năng xử lý giọng nói ngay cả trong các môi trường có nhiều tiếng ồn hoặc khi chất lượng âm thanh không cao.

Trong một cuộc họp trực tuyến với kết nối internet không ổn định, âm thanh có thể bị rè hoặc gián đoạn. Whisper vẫn có thể hiểu và chuyển đổi nội dung giọng nói thành văn bản chính xác.

3.3 Dịch thuật trực tiếp giữa các ngôn ngữ

Whisper có thể dịch trực tiếp từ ngôn ngữ này sang ngôn ngữ khác khi chuyển đổi giọng nói thành văn bản.

Một người nói tiếng Pháp có thể nói câu “Comment ça va?”, và Whisper sẽ không chỉ nhận diện câu đó, mà còn có thể dịch trực tiếp thành văn bản tiếng Anh “How are you?”

3.4 Hỗ trợ tạo phụ đề tự động

Whisper có thể tự động tạo phụ đề cho video bằng nhiều ngôn ngữ khác nhau.

Khi một video YouTube có người nói tiếng Anh, Whisper có thể tự động tạo phụ đề tiếng Anh chính xác hoặc thậm chí dịch phụ đề sang các ngôn ngữ khác, như tiếng Tây Ban Nha hoặc tiếng Pháp.

3.5 Phân tích ngữ nghĩa từ giọng nói

Whisper có khả năng phân tích ngữ cảnh và ý nghĩa của giọng nói, giúp các ứng dụng AI hiểu sâu hơn về nội dung cuộc hội thoại.

Ví dụ: Trong một cuộc gọi chăm sóc khách hàng, Whisper không chỉ nhận diện các từ ngữ khách hàng sử dụng, mà còn có thể giúp hệ thống hiểu được ý định hoặc cảm xúc của họ dựa trên giọng điệu và ngữ cảnh của cuộc nói chuyện.

3.6 Xử lý giọng nói địa phương hoặc giọng nói không chuẩn

Whisper có thể nhận diện các giọng nói địa phương hoặc các giọng nói không chuẩn xác trong ngôn ngữ.

Một người nói tiếng Anh với giọng Anh-Mỹ, Anh-Anh, hay thậm chí các giọng vùng miền đều được Whisper nhận diện và xử lý một cách hiệu quả.

4. Những ứng dụng tiềm năng của Whisper

5. Hướng dẫn tạo Subtitle bằng Whisper

Mình sẽ hướng dẫn các bạn tạo phụ đề tiếng Anh từ video tiếng Việt sử dụng model medium(các mô hình lớn hơn nữa thì máy mình chịu thua),  Whisper hỗ trợ 57 ngôn ngữ trong các model cao cấp hơn như large và turbo, nên các bạn muốn tạo file subtitle tiếng Việt có thể sử dụng 2 model này.

Ngoài ra bạn cũng có thể cân nhắc sử dụng bản trả phí qua API mà Open AI cung cấp với mức giá $0.006 mỗi phút âm thanh, được làm tròn đến từng giây, mô hình trả phí này sẽ sử dụng tài nguyên của Open AI (GPU, …),  luôn luôn cập nhật các công nghệ mới nhất và quyền lợi kết nối với đội hỗ trợ của họ.

Mình đã test trên 1 clip giới thiệu về Iphone với độ dài 9 phút bằng Google Colab, và mất 50 phút để tạo xong file phụ đề với model medium. Về phần kết quả mình thấy chưa được ưng ý lắm nhưng hoàn toàn hợp lý, mô hình turbo hay large sẽ cho bạn kết quả chính xác hơn.

Bước 1: Cài đặt các thư viện cần thiết

Python

pip install git+https://github.com/openai/whisper.git 
pip install moviepy pysrt

Bước 2: Tạo file phụ đề

Python

# Code được generate bằng ChatGPT
import whisper
import moviepy.editor as mp
import pysrt

# Bước 1: Trích xuất âm thanh từ video
def extract_audio(video_file, audio_file):
    video = mp.VideoFileClip(video_file)
    video.audio.write_audiofile(audio_file)

# Bước 2: Chuyển giọng nói tiếng Việt thành phụ đề tiếng Anh
def transcribe_audio_to_english(audio_file):
    # Tải mô hình Whisper (dùng mô hình đa ngôn ngữ)
    model = whisper.load_model("medium")
    
    # Chuyển đổi giọng nói tiếng Việt thành văn bản tiếng Anh
    result = model.transcribe(audio_file, task="translate")
    return result

# Bước 3: Tạo file SRT từ kết quả chuyển đổi
def create_srt(segments, output_srt):
    subs = pysrt.SubRipFile()
    
    for i, segment in enumerate(segments):
        start_time = segment['start']
        end_time = segment['end']
        text = segment['text']
        
        # Tạo thời gian bắt đầu và kết thúc
        start_srt = pysrt.SubRipTime(seconds=start_time)
        end_srt = pysrt.SubRipTime(seconds=end_time)
        
        # Tạo đoạn phụ đề
        sub = pysrt.SubRipItem(index=i + 1, start=start_srt, end=end_srt, text=text)
        subs.append(sub)

    # Lưu thành file SRT
 
 # Gọi hàm để tạo file SRT cho video
video_file_path = "Test_Clip.mp4"  # Đường dẫn tới video đã tải xuống
output_srt_path = "Test_Clip.srt"  # Đường dẫn để lưu file SRT

generate_srt_for_video(video_file_path, output_srt_path)

6. Kết luận

Whisper của OpenAI là một hệ thống chuyển giọng nói thành văn bản tiên tiến, hỗ trợ nhiều ngôn ngữ và có khả năng xử lý âm thanh trong các môi trường phức tạp. Hãy follow 200Lab chúng mình để cập nhật các kiến thức công nghệ mới mỗi ngày nhé.

Các bài viết liên quan:

Exit mobile version