はじめに
前回の続きの記事になります。
今回は、自然な文になるように、句読点を入れたいと思います。
長文になるとChatGPTのトークン数を超えるので、前回は、文章を分けるプログラムを作りました。
今回は、そのデータを読み込んで、実際に句読点を入れていきましょう。
プログラム
セッショントークンや読み込みファイルのパスは、ご利用の環境に合わせて調整してください。
import tiktoken import os from UnlimitedGPT import ChatGPT # 定数の指定 session_token="XXXX" input_file = "sample_result.txt" # 結果ファイル名 file_name, file_extension = os.path.splitext(input_file) result_file = file_name + "_convert" + file_extension # ファイルを開く with open(input_file, "r") as file: text = file.read().replace('\n', '') # ChatGPTをブラウザで起動 api = ChatGPT( session_token, # conversation_id='545a27ee-c204-4dea-9ced-722dd009a838', ) # 配列に格納 rows = text.split("```") print('対象件数:',len(rows)) # 生成 result = '' for row in rows: enc = tiktoken.encoding_for_model("gpt-3.5-turbo") tokens = enc.encode(row) print('トークン数:',len(tokens)) # 質問を生成 message = api.send_message( f''' # 制約条件に従って、文章を修正してください。 # 制約条件 * 文章に自然に句読点、改行を入れて更正してください。 * 各要点ごとに段落を分けます。 * 誤字を修正してください。 {row} ''', continue_generating=True ) result = result + message.response # 結果をTEXTに書き込み with open(result_file, "w") as file: file.write(result)
まとめ
いかがだったでしょうか?これでかなり自然な形な文章が出来ます。
当然、Whisperで聞き間違えた単語や漢字は修正されませんが、言い間違いも含めて綺麗に修正されるはずです。
良かったら、試してみてください。