「記者会見のまとめをAIにお願いしてみました」の音声認識テキストを見直て質問も変えてみると…[技術編]

先日の「記者会見のまとめをAIにお願いしてみました」という投稿では、会見動画の音声認識を行う際に、機械的に音声を時間で区切っていました。
当然、音声を区切ることで、言葉として意味をなさなくなる部分もでてきます。
また、テキスト化した時点で、同音異文字もあり、まとめ記事に影響を与えています。特に、人名とかがそうです。
入力データを少し整えて、まとめのためのプロンプトを色々変えてまとめてみました。
今回は、ChatGPT 4oで行いました。

音声ファイルの分割方法を再考

音声ファイルを時間で分割した場合に、分割周辺で、ことばが不連続になる部分を改善する必要がありそうです。
そこで、分解ポイントに前後にオーバーラップ時間を挿入して分割する方法に変更して改善させてみました。

Step1:音声ファイルをオーバーラップ付きで分割

音声ファイルをテキスト化するために、Google Cognitive Serviceを使用する場合、音声ファイル認識を小さい時間のデータに分割する必要がある。 分割が必ずしも音声の区切りとリンクしていなっため、その後の音声認識の精度に影響を与えます。 そのため、ある程度オーバーラップする区間を設けることで、音声の安定したテキスト化を行うものです。
以下のコードは、Google Driveにファイルを配置し、Google Colaboratoryで実行したコードです。ドライブ上のディレクトリは適宜修正してください。

# Google Driveをマウント
from google.colab import drive
drive.mount('/content/drive')

import wave
import numpy as np
import os

#
def split_audio_with_overlap(input_wav, output_dir, segment_duration=180, overlap_duration=10):
    # WAVファイルを開く
    with wave.open(input_wav, 'rb') as wav_file:
        params = wav_file.getparams()
        sample_rate = params.framerate
        num_channels = params.nchannels
        sample_width = params.sampwidth
        total_frames = params.nframes

        # WAVデータを読み込み
        audio_data = np.frombuffer(wav_file.readframes(total_frames), dtype=np.int16)

    # 各セグメントのフレーム数計算
    segment_frames = int(segment_duration * sample_rate)
    overlap_frames = int(overlap_duration * sample_rate)

    # 分割処理
    segment_index = 0
    start_frame = 0

    while start_frame < len(audio_data):
        # 開始フレームを考慮(最初のセグメントにはオーバーラップなし)
        if start_frame == 0:
            segment = audio_data[start_frame:start_frame + segment_frames]
        else:
            segment = audio_data[start_frame - overlap_frames:start_frame + segment_frames]

        # WAVファイルとして保存
        output_filename = os.path.join(output_dir, f"segment_{segment_index:04d}.wav")
        with wave.open(output_filename, 'wb') as out_wav:
            out_wav.setnchannels(num_channels)
            out_wav.setsampwidth(sample_width)
            out_wav.setframerate(sample_rate)
            out_wav.writeframes(segment.tobytes())

        print(f"Saved {output_filename}")

        # 次のセグメントへ(オーバーラップ分を考慮)
        start_frame += segment_frames
        segment_index += 1

# 使用例
program_directory = "/content/drive/MyDrive/AI音声認識"
input_wav_path = program_directory + "/data/full-audio.wav"
output_directory = program_directory + "/segmented_wav"

os.makedirs(output_directory, exist_ok=False)


split_audio_with_overlap(input_wav_path, output_directory)

Step2:分割した音声ファイルをテキスト化

オーバーラップされた音声ファイルがディレクトリに置かれています。 そのファイルを、逐次、Google Cognitive Serviceを使いテキスト化します。

# Google Driveをマウント
from google.colab import drive
drive.mount('/content/drive')

# 必要なライブラリのインストール
!pip install SpeechRecognition pydub

import os
import speech_recognition as sr

# ディレクトリ設定
data_dir = "/content/drive/MyDrive/AI音声認識/segmented_wav"
segmented_text_dir = "/content/drive/MyDrive/AI音声認識/segmented_text"

# 出力ディレクトリの作成(存在しない場合)
os.makedirs(segmented_text_dir, exist_ok=True)

# 認識器を初期化
recognizer = sr.Recognizer()

# ファイル一覧を取得(ソートして順番に処理)
audio_files = sorted([f for f in os.listdir(data_dir) if f.endswith(".wav")])

for audio_file in audio_files:
    input_path = os.path.join(data_dir, audio_file)
    output_filename = f"segment_text_{audio_file.split('_')[-1].replace('.wav', '.txt')}"
    output_path = os.path.join(segmented_text_dir, output_filename)

    print(f"Processing: {audio_file} → {output_filename}")

    # 音声ファイルの読み込み
    with sr.AudioFile(input_path) as source:
        audio_data = recognizer.record(source)  # 音声全体を読み込む

        try:
            # Google Speech-to-Text で音声をテキストに変換
            text = recognizer.recognize_google(audio_data, language="ja-JP")

            # テキストをファイルに保存
            with open(output_path, "w", encoding="utf-8") as f:
                f.write(text)

            print(f"Saved: {output_filename}")

        except sr.UnknownValueError:
            print(f"Google Speech-to-Text で認識できませんでした: {audio_file}")
        except sr.RequestError as e:
            print(f"Google Speech-to-Text API にリクエストできませんでした: {e}")

print("全ての音声ファイルの処理が完了しました。")

Step3:オーバーラップのあるテキストを一つに

音声認識で出力されたテキストは、オーバーラップしている部分が、前後のファイルに存在します。
その部分を整合性を取って一つのテキストにまとめます。

# Google Driveをマウント
from google.colab import drive
drive.mount('/content/drive')

import os
from difflib import SequenceMatcher

# ディレクトリ設定
segmented_text_dir = "/content/drive/MyDrive/AI音声認識/segmented_text"
merged_text_dir = "/content/drive/MyDrive/AI音声認識/merged_text"
merged_text_path = os.path.join(merged_text_dir, "merged_text.txt")

# 出力ディレクトリの作成(存在しない場合)
os.makedirs(merged_text_dir, exist_ok=True)

# テキストファイル一覧を取得(昇順ソート)
text_files = sorted([f for f in os.listdir(segmented_text_dir) if f.startswith("segment_text_") and f.endswith(".txt")])

# テキストの統合処理
merged_text = ""
previous_text = ""

def find_overlap(text1, text2):
    """2つのテキストの共通部分を見つける"""
    seq_matcher = SequenceMatcher(None, text1, text2)
    match = seq_matcher.find_longest_match(0, len(text1), 0, len(text2))
    
    if match.size > 10:  # 10文字以上の重複を考慮
        return text2[match.a + match.size:]
    else:
        return text2

for text_file in text_files:
    text_path = os.path.join(segmented_text_dir, text_file)
    
    with open(text_path, "r", encoding="utf-8") as f:
        current_text = f.read().strip()
    
    if previous_text:
        # 重複部分を考慮してマージ
        current_text = find_overlap(previous_text, current_text)
    
    merged_text += current_text + "\n"
    previous_text = current_text

# 統合したテキストをファイルに保存
with open(merged_text_path, "w", encoding="utf-8") as f:
    f.write(merged_text.strip())

print(f"統合されたテキストを {merged_text_path} に保存しました。")

出来上がったテキストをChatGPT 4oでまとめてみると

一度、同じようにまとめてみて、明らかにわかる人名の間違いなどは、テキストファイルを修正しておきましょう。
その上で、もう一度ChatGPT 4oでまとめを行ってみました。

記者会見の概要
開催者
 ・フジメディアホールディングス
 ・フジテレビジョン
登壇者
 ・加納修司(フジテレビジョン 代表取締役会長)
 ・港浩一(フジテレビジョン 代表取締役社長)
 ・遠藤龍之介(フジテレビジョン 取締役副会長)
 ・金光修(富士メディアホールディングス 代表取締役社長)
 ・清水健治(次期代表取締役社長)
1. 記者会見の目的
問題の説明と謝罪
 ・人権意識の不足が原因で適切な対応ができず、被害者の女性 に多大な迷惑をかけたことを謝罪。
 ・視聴者、広告主、株主、メディア関係者、出演者、制作会社 など、多方面に迷惑をかけたことを謝罪。
経営陣の辞任
 ・加納修司(会長) と 港浩一(社長) が辞任を発表。
 ・清水健治 が新社長に就任予定。
第三者委員会の設置
 ・人権侵害の可能性がある事案 について、客観的な調査を実施。
 ・日本弁護士連合会のガイドライン に従い、独立した弁護士3名で構成。
2. 問題の背景
問題の発端
 ・ある女性が特定の人物(中居氏)の影響を受け、精神的・身体的に影響を受けた。
 ・会社側は、彼女のプライバシーを最優先としながらも適切な対応が取れなかった。
対応の問題点
 ・社内での適切な報告や連携が行われず、番組出演の継続が判断されてしまった。
 ・人権侵害の可能性がある案件について、適切な調査をせずに対応した。
情報の管理
 ・被害者のプライバシー保護 のため、情報共有が極めて制限されていた。
 ・会社としてのガバナンスが機能せず、適切な報告が行われなかった。
3. 第三者委員会による調査
設置の理由
 ・社内調査では不十分 であり、客観的な事実を把握するために設置。
調査範囲
 1.人権侵害の可能性のある事案の調査。
 2.社員Aの関与の有無についての調査。
 3.社内の意思決定プロセスの検証。
調査期限
 ・2025年3月末を目処 に報告書を提出予定。
4. 質疑応答
主な質問と回答のポイント
 ・Q: 辞任する経営陣以外の責任は?
  ・今後の調査結果を踏まえ、適切な対応を取る。
 ・Q: 被害女性の意思を尊重する一方で、適切な調査ができなかったのでは?
  ・情報漏洩を防ぐため慎重に進めたが、結果的に適切な対応が取れなかった。
 ・Q: フジテレビの企業風土の問題は?
  ・上位者が誘う会食などについて、今後は改善し、透明性のある環境を作る。
 ・Q: 第三者委員会の独立性は?
  ・過去に関係のない弁護士で構成され、ガイドラインに従って設置した。
 ・Q: フジテレビの今後の対応は?
  ・信頼回復を最優先とし、企業風土の刷新に取り組む。
5. まとめ
 ・謝罪と辞任
  ・加納会長と港社長が辞任し、新たな経営体制へ。
 ・調査と改革
  ・第三者委員会による調査を進め、信頼回復と再発防止を目指す。
 ・企業風土の見直し
  ・人権意識を高め、ガバナンス強化を図る。
この記者会見は、経営陣の辞任と第三者委員会の設置 を柱とし、会社の信頼回復に向けた取り組みを説明するものでした。

このまとめは、欠落がないのか?という観点で眺めてみると、やはり漏れているような印象があります。
そこで、もう一度、「もう少し詳しく、質疑の様子をまとめてください。」として、、まとめてみました。

記者会見の詳細
1. 開会と経営陣の謝罪
 ・加納修司(会長) と 港浩一(社長) が辞任を発表。
 ・第三者委員会の設置 を発表。
 ・被害女性への対応の不備について謝罪。
2. 質疑応答の詳細
(1)問題の経緯と対応の不備
質問:
「被害女性の訴えを受けた後、社内でどのように情報が共有され、どのような対応が取られたのか?」

回答:
女性は「事件を公にせず、仕事に復帰したい」という意思を持っていた。
会社としては彼女のプライバシー保護を最優先にしたが、それが結果的に適切な対応を阻害した。
情報は限定的に共有され、一部の役員のみが状況を把握していた。
追加質問:
「社内の意思決定プロセスが適切だったとは思えないが?」

回答:
結果的に社内のガバナンスが機能せず、適切な対応が取れなかった。
今後、第三者委員会が調査し、再発防止策を検討する。
(2)中居氏との関係と影響
質問:
「中居氏は女性に対し、どのような影響を与えたのか?」

回答:
事件の詳細はプライバシーの関係で公表できないが、人権侵害の可能性があると認識している。
具体的な影響ややり取りについては、第三者委員会が調査する。
追加質問:
「番組出演の判断について、なぜ中居氏の出演継続を許可したのか?」

回答:
社内の情報共有が限定的であり、適切な判断ができなかった。
松本人志氏の活動休止 を受け、番組終了の機会があったが、対応が遅れた。
(3)フジテレビの企業風土の問題
質問:
「今回の問題はフジテレビの企業文化や体質にも関係しているのではないか?」

回答:
上位者が部下を食事に誘う文化があり、それが圧力になっていた可能性は否定できない。
今回の問題を受け、企業風土の見直しを進める。
追加質問:
「女性アナウンサーが幹部との会食に参加することが半ば強制されていたのでは?」

回答:
過去に女性アナウンサーが参加する会食があったのは事実。
参加の意思確認が不十分であった可能性があり、今後の改善が必要。
(4)第三者委員会の独立性
質問:
「第三者委員会の独立性はどのように担保されるのか?」

回答:
日弁連のガイドライン に従い、過去に関係のない弁護士3名で構成。
調査結果は2025年3月末を目処に公表予定。
追加質問:
「第三者委員会の設置過程に問題はなかったか?」

回答:
弁護士との接触はあったが、取締役会の正式な決議後に委員を選定。
透明性を確保するため、弁護士以外の専門家も検討したが、今回は弁護士3名のみで構成。
(5)今後の対応
質問:
「フジテレビは信頼回復のために具体的にどのような施策を取るのか?」

回答:
第三者委員会による徹底調査
企業風土の見直し(ハラスメント防止策の強化)
情報共有の透明性向上
被害者対応の改善
視聴者・スポンサー・社員への説明責任を果たす
追加質問:
「フジテレビ自身で事件を検証し、番組を制作する予定はあるか?」

回答:
第三者委員会の調査が完了後に検討する。
事件の経緯を整理し、報道番組などで扱う可能性はある。

3. まとめ
記者会見のポイント
 ・経営陣の責任を認め、会長・社長が辞任。
 ・第三者委員会を設置し、人権侵害の可能性を調査。
 ・社内の情報共有とガバナンスの問題を認識。
 ・企業風土の改善を進める。

今後の課題
 ・第三者委員会の調査結果の公表と対応策の実施
 ・被害者支援と再発防止策の強化
 ・スポンサー・視聴者・社員への説明と信頼回復

記者会見では、フジテレビの対応の不備に対する厳しい追及が続きました。今後の調査結果が公表されるまで、さらなる議論が続く可能性があります。

どうも、法的な責任関係がない人への話題については含まれていないようなので、追加で「日枝氏に関することがまとめに含まれていません。これも、含めてもう一度整理してください。」として、再度まとめてみました。

フジテレビ記者会見の詳細な整理

1. 開会と経営陣の謝罪
経営陣の発言
 ・加納修司(会長) と 港浩一(社長) が辞任を発表。
 ・第三者委員会の設置 を発表し、人権意識の不足 や 適切な対応の欠如 を認めた。
 ・被害女性への対応の不備について謝罪。

2. 質疑応答の詳細
(1)問題の経緯と対応の不備
質問:
「被害女性の訴えを受けた後、社内でどのように情報が共有され、どのような対応が取られたのか?」

回答:
女性は「事件を公にせず、仕事に復帰したい」という意思を持っていた。
会社としては彼女のプライバシー保護を最優先にしたが、それが結果的に適切な対応を阻害した。
情報は限定的に共有され、一部の役員のみが状況を把握していた。
追加質問:
「社内の意思決定プロセスが適切だったとは思えないが?」

回答:
社内のガバナンスが機能せず、適切な対応が取れなかったことを認める。
今後、第三者委員会が調査し、再発防止策を検討する。
(2)中居氏との関係と影響
質問:
「中居氏は女性に対し、どのような影響を与えたのか?」

回答:
事件の詳細はプライバシーの関係で公表できないが、人権侵害の可能性があると認識している。
具体的な影響ややり取りについては、第三者委員会が調査する。
追加質問:
「番組出演の判断について、なぜ中居氏の出演継続を許可したのか?」

回答:
社内の情報共有が限定的であり、適切な判断ができなかった。
松本人志氏の活動休止 を受け、番組終了の機会があったが、対応が遅れた。
(3)日枝久相談役に関する質疑
質問:
「日枝氏は長年フジテレビのトップを務め、経営陣の判断にも影響を与えていたと思われるが、なぜ会見に出席していないのか?」

回答:
「今後、それぞれがどう責任を取るかが重要」 という立場であると説明。
日枝氏が会見に出席しないことに関する具体的な説明は避けた。
第三者委員会の報告結果を受けて、さらなる責任の所在が明確になる可能性がある。
追加質問:
「会長・社長が辞任しても、日枝氏が責任を取らなければ『トカゲの尻尾切り』との批判が出るのでは?」

回答:
「経営陣全体の責任を明確にするため、第三者委員会の調査結果を待つ」 と述べるにとどまった。
今後の取締役会で日枝氏の去就についても議論される可能性がある。
(4)フジテレビの企業風土の問題
質問:
「今回の問題はフジテレビの企業文化や体質にも関係しているのではないか?」

回答:
上位者が部下を食事に誘う文化があり、それが圧力になっていた可能性は否定できない。
今後、企業風土の見直しを進める。
追加質問:
「女性アナウンサーが幹部との会食に参加することが半ば強制されていたのでは?」

回答:
過去に女性アナウンサーが参加する会食があったのは事実。
参加の意思確認が不十分であった可能性があり、今後の改善が必要。
(5)第三者委員会の独立性
質問:
「第三者委員会の独立性はどのように担保されるのか?」

回答:
「日弁連のガイドライン」に従い、過去に関係のない弁護士3名で構成。
調査結果は2025年3月末を目処に公表予定。
追加質問:
「第三者委員会の設置過程に問題はなかったか?」

回答:
弁護士との接触はあったが、取締役会の正式な決議後に委員を選定。
透明性を確保するため、弁護士以外の専門家も検討したが、今回は弁護士3名のみで構成。
(6)今後の対応
質問:
「フジテレビは信頼回復のために具体的にどのような施策を取るのか?」

回答:
第三者委員会による徹底調査
企業風土の見直し(ハラスメント防止策の強化)
情報共有の透明性向上
被害者対応の改善
視聴者・スポンサー・社員への説明責任を果たす
追加質問:
「フジテレビ自身で事件を検証し、番組を制作する予定はあるか?」

回答:
第三者委員会の調査が完了後に検討する。
事件の経緯を整理し、報道番組などで扱う可能性はある。

3. まとめ
記者会見のポイント
 ・経営陣の責任を認め、会長・社長が辞任。
 ・第三者委員会を設置し、人権侵害の可能性を調査。
 ・社内の情報共有とガバナンスの問題を認識。
 ・企業風土の改善を進める。
 ・日枝久相談役の責任については明言を避け、今後の調査に委ねる。
今後の課題
 ・第三者委員会の調査結果の公表と対応策の実施
 ・被害者支援と再発防止策の強化
 ・スポンサー・視聴者・社員への説明と信頼回復
 ・日枝久相談役の責任の所在についての明確化

記者会見では、フジテレビの対応の不備に対する厳しい追及が続きました。特に日枝久相談役の責任についての言及が曖昧だった点 が、さらなる批判を招く可能性があります。今後の調査結果や追加の会見で、どこまで責任の所在が明確になるかが注目されます。

最近、報道されている内容はかなり網羅されているようなまとめになりました。
しかし、記者の意見だったり、文句のようなことは、まとめには含まれません。
そこで、「このまとめに、記者会見での話で欠落していることがあれば、追記してもう一度まとめてください。
まとめについての制限文字数はないものとします。
さらに、まとめる項目も分類できないものは、その他としてまとめてください。
最後に、単なる記者の意見や、感情的な発言も、不適切な質問としてまとめてください。」
を加えてまとめてみました。

フジテレビ記者会見の詳細な整理

1. 開会と経営陣の謝罪
経営陣の発言
 ・加納修司(会長) と 港浩一(社長) が辞任を発表。
 ・第三者委員会の設置 を発表し、人権意識の不足 や 適切な対応の欠如 を認めた。
 ・被害女性への対応の不備について謝罪。
 ・視聴者・スポンサー・メディア・関係者 への謝罪も行う。

2. 質疑応答の詳細
(1)問題の経緯と対応の不備
質問:
「被害女性の訴えを受けた後、社内でどのように情報が共有され、どのような対応が取られたのか?」

回答:
女性は「事件を公にせず、仕事に復帰したい」という意思を持っていた。
会社としては彼女のプライバシー保護を最優先 にしたが、それが結果的に適切な対応を阻害した。
情報は限定的に共有 され、一部の役員のみが状況を把握していた。
社内ガバナンスの欠如を認める。
追加質問:
「社内の意思決定プロセスが適切だったとは思えないが?」

回答:
社内のガバナンスが機能せず、適切な対応が取れなかったことを認める。
今後、第三者委員会が調査し、再発防止策を検討する。
「上層部の判断ミスだった」 との認識を示す。
(2)中居氏との関係と影響
質問:
「中居氏は女性に対し、どのような影響を与えたのか?」

回答:
事件の詳細はプライバシーの関係で公表できないが、人権侵害の可能性があると認識している。
具体的な影響ややり取りについては、第三者委員会が調査する。
追加質問:
「番組出演の判断について、なぜ中居氏の出演継続を許可したのか?」

回答:
社内の情報共有が限定的であり、適切な判断ができなかった。
松本人志氏の活動休止 を受け、番組終了の機会があったが、対応が遅れた。
中居氏の番組出演については、調査結果を待って対応を決める。
(3)日枝久相談役に関する質疑
質問:
「日枝氏は長年フジテレビのトップを務め、経営陣の判断にも影響を与えていたと思われるが、なぜ会見に出席していないのか?」

回答:
「今後、それぞれがどう責任を取るかが重要」 という立場であると説明。
日枝氏が会見に出席しないことに関する具体的な説明は避けた。
第三者委員会の報告結果を受けて、さらなる責任の所在が明確になる可能性がある。
追加質問:
「会長・社長が辞任しても、日枝氏が責任を取らなければ『トカゲの尻尾切り』との批判が出るのでは?」

回答:
「経営陣全体の責任を明確にするため、第三者委員会の調査結果を待つ」 と述べるにとどまった。
今後の取締役会で日枝氏の去就についても議論される可能性がある。
(4)フジテレビの企業風土の問題
質問:
「今回の問題はフジテレビの企業文化や体質にも関係しているのではないか?」

回答:
上位者が部下を食事に誘う文化があり、それが圧力になっていた可能性は否定できない。
企業風土の見直しを進める。
追加質問:
「女性アナウンサーが幹部との会食に参加することが半ば強制されていたのでは?」

回答:
過去に女性アナウンサーが参加する会食があったのは事実。
参加の意思確認が不十分であった可能性があり、今後の改善が必要。
(5)第三者委員会の独立性
質問:
「第三者委員会の独立性はどのように担保されるのか?」

回答:
「日弁連のガイドライン」に従い、過去に関係のない弁護士3名で構成。
調査結果は2025年3月末を目処に公表予定。
(6)今後の対応
質問:
「フジテレビは信頼回復のために具体的にどのような施策を取るのか?」

回答:
第三者委員会による徹底調査
企業風土の見直し(ハラスメント防止策の強化)
情報共有の透明性向上
被害者対応の改善
視聴者・スポンサー・社員への説明責任を果たす

3. その他
 ・トリエンナーレなどの文化事業への影響
  ・フジテレビの社会的信用の低下により、トリエンナーレの開催が難しくなる可能性を示唆。
 ・社員の不安
  ・社内の士気低下やスポンサー離れへの懸念があることを認める。

4. 不適切な質問
 ・単なる記者の意見や感情的な発言
  ・「なぜ中居氏の部屋に女性が行ったのか?」
   ・被害者への非難につながる不適切な質問。
  ・「フジテレビは逃げているのでは?」
   ・事実確認よりも印象操作に近い発言。
  ・「第三者委員会は初めから結論ありきでは?」
   ・独立性を保証する仕組みがあるにもかかわらず、決めつけた質問。

5. まとめ
記者会見のポイント
 ・経営陣の責任を認め、会長・社長が辞任。
 ・第三者委員会を設置し、人権侵害の可能性を調査。
 ・企業風土の問題を認め、改善を約束。
 ・日枝氏の責任についての言及は避け、今後の調査結果次第とした。
 ・今後のフジテレビの信頼回復が課題となる。

今回の記者会見では、フジテレビの対応の不備に対する厳しい追及が続いたが、特に日枝久相談役の責任についての説明が曖昧だった点がさらなる批判を招く可能性がある。
今後の調査結果や追加の会見で、どこまで責任の所在が明確になるかが注目される。

なんとなく、会見の様子を含めてまとまってきたように思います。

最後の不適切な質問に分類されるということができているのは、興味深いところです。
あくまで、AIでどう分析されるのか?という観点での実験ですが、感情に流されず、過去の集合知をベースに、取材側も学ぶことは大切なように思います。

AIに直接音声でも入力できるようですが、一度ファイルにするほうが実験しやすいので、連続音声のファイルを分割し、音声認識させ、AIに渡す一つのテキスト文章にする方法の一例です。
もっと良い方法もあるようですが、単純な手順でも、ある程度実現できることを実験してみました。