HiÐΞClassic

whisper API 、ChatGPT API 使って、youtubeそのまま翻訳

SHOGAKU
a year ago
pytubeとopenaiという2つのパッケージをインストールYouTubeの動画をダウンロードしますOpenAIのAudio APIを使用して、ダウンロードした音声ファイルをテキストに変換最後に、文字起こしの結果を表示しますChatGPT API 日本語へデータ確認用Jupyter NotebookやGoogle Colab上で直接表示する方法。

盛り上がってるのでwhisper API 、ChatGPT API 使って、youtube翻訳そのまま楽しようと思ったけど、gpt-3.5-turbo というのは文字数制限引っかかったのか (4096 token ?) 最後まで日本語が行かず。

まあよく分からず使ったので勉強します、なのだが、

とりあえず、短い動画で実施した備忘録を書く

以下動画を翻訳。


pytubeとopenaiという2つのパッケージをインストール

ここでは、pytubeとopenaiという2つのパッケージをインストールしています。pytubeは、YouTube動画をダウンロードするためのパッケージであり、openaiはOpenAI APIを使うためのパッケージです

!pip install pytube
!pip install openai

YouTubeの動画をダウンロードします

YouTubeの動画をダウンロードします。以下のコードを使用して、youtube_url変数に指定されたURLから音声をダウンロードします。

from pytube import YouTube

youtube_url = "https://www.youtube.com/watch?v=wEQaG4xMMiw"



# YouTubeの動画をダウンロード

yt = YouTube(youtube_url)
yt.streams.filter(only_audio=True).first().download()

結果、

/content/Welcome to the Sodium Launch Event.mp4

これを次で使う


OpenAIのAudio APIを使用して、ダウンロードした音声ファイルをテキストに変換

OpenAIのAudio APIを使用して、ダウンロードした音声ファイルをテキストに変換します。以下のコードを使用して、OpenAI APIを使用してテキストを取得することができます。

import openai

# APIキーを設定
openai.api_key = "Your API Key"

# 音声ファイルを読み込む
audio_file = open("/content/Welcome to the Sodium Launch Event.mp4", "rb")

# OpenAI APIを使用してテキストに変換する
transcript = openai.Audio.transcribe("whisper-1", file=audio_file)

最後に、文字起こしの結果を表示します

print(transcript["text"])

結果


ChatGPT API 日本語へ

import openai

# 推論
response = openai.ChatCompletion.create(
  model="gpt-3.5-turbo",
  messages=[
    {"role": "system", "content": "あなたは日本語を英語に翻訳するアシスタントです。"},
    {"role": "user", "content": '以下の日本語のテキストを英語に翻訳してください: “{0}"'.format(transcript["text"])}
  ]
)
print(response["choices"][0]["message"]["content"])

結果、


データ確認用

翻訳結果を整形して出力する

import json

print(json.dumps(response, indent=2, ensure_ascii=False))

Jupyter NotebookやGoogle Colab上で直接表示する方法。

from IPython.display import display, Markdown

display(Markdown("## Transcript:\n{0}\n".format(transcript["text"])))
display(Markdown("## Response:\n{0}\n".format(response["choices"][0]["message"]["content"])))

結果、


良い感じ

料金はトライアル18ドルで実施中、まだ確認してない。


コメント
いいね
投げ銭
最新順
人気順
SHOGAKU
a year ago
コメント
いいね
投げ銭
最新順
人気順
トピック
アプリ

Astar Network

DFINITY / ICP

NFT

DAO

DeFi

L2

メタバース

BCG

仮想通貨 / クリプト

ブロックチェーン別

プロジェクト

目次
Tweet
ログイン