[Python]pipeline で文章の要約
公開日:2025-12-19
更新日:2025-12-19
更新日:2025-12-19
1. 概要
pipeline を使用して、文章の要約を自動生成します。
2. パッケージのインストール
コマンド
pip install torch
pip install transformers3. コード
実行後、フリーズしたようになりますが、エラーにならない限り動いてるので、完了までお待ちください。
コード
# 要約対象の文章
text = """
Python(パイソン)は、プログラミング言語の一種です。
1991年にグイド・ヴァン・ロッサム(Guido van Rossum)によって開発され、現在も広く使われている人気の高い言語です。
コードがシンプルで、英語に近い文法なので初心者でも学びやすく、
ウェブ開発、データ分析、人工知能(AI)、機械学習、自動化スクリプト、科学計算など、さまざまな分野で使われています。
標準ライブラリが充実していて、さらに外部ライブラリ(例:NumPy, Pandas, TensorFlow, Djangoなど)がたくさんあるので、少ないコードで高度なことを実現できます。
Pythonは、Windows、macOS、Linuxなどで動かすことができます。
コードを書いたらすぐに実行できるインタプリタ型です。
"""
from transformers import pipeline
# 日本語要約パイプラインの作成
generator = pipeline('summarization', model='tsmatz/mt5_summarize_japanese')
# 要約
summary = generator(text, max_length=100, min_length=50, do_sample=False, num_beams=8)
# max_length 生成するテキストの最大の長さ。
# min_length 生成するテキストの最小の長さ。短すぎるのを防ぐ。
# do_sample False:毎回同じ結果になりやすい True:ランダムの要素が入り、毎回結果が変わる可能性がある。創造的なものになる可能性がある。
# num_beams 4:標準 6~8:高品質 10 高品質+少し
print(summary[0]['summary_text'])4. ダウンロードしたモデルの使用
pipeline で使用するモデルは、初回実行時にHugging Face Hub からダウンロードされます。
2回目以降はダウンロードしたモデルのファイルが使われます。
ファイルの保存先は、デフォルトでは C:\Users\{ユーザ名}\.cache\huggingface\hub です。
ファイルの保存先を変更する場合は、os.environ['HF_HUB_CACHE'] にパスを設定します。
必ず import pipeline 前に設定してください。
実行後にモデルの保存先のフォルダを確認すると、snapshots フォルダ配下に、
316152de8d5bbc8b5ab274d930a3c0d736488052 のようなフォルダが作成されます。
これがモデルのファイルです。
このフォルダのパスを pipeline() の引数の model に指定すると、ダウンロードしておいたモデルを使って実行することができます。
2回目以降はダウンロードしたモデルのファイルが使われます。
ファイルの保存先は、デフォルトでは C:\Users\{ユーザ名}\.cache\huggingface\hub です。
ファイルの保存先を変更する場合は、os.environ['HF_HUB_CACHE'] にパスを設定します。
必ず import pipeline 前に設定してください。
コード
import os
os.environ['HF_HUB_CACHE'] = 'e:/python/cache'
from transformers import pipeline
実行後にモデルの保存先のフォルダを確認すると、snapshots フォルダ配下に、
316152de8d5bbc8b5ab274d930a3c0d736488052 のようなフォルダが作成されます。
これがモデルのファイルです。
このフォルダのパスを pipeline() の引数の model に指定すると、ダウンロードしておいたモデルを使って実行することができます。
コード
generator = pipeline('summarization', model='E:/python/cache/models--tsmatz--mt5_summarize_japanese/snapshots/316152de8d5bbc8b5ab274d930a3c0d736488052')5. オフラインモード(ダウンロードの停止)
pipeline() の引数の model をモデル名にしていた場合、
モデルの新しいバージョンが公開されると、別のフォルダが作成されて、またモデルがダウンロードされます。
ダウンロードしないようにするには、import pipeline の前に、次の設定をしてください。
モデルの新しいバージョンが公開されると、別のフォルダが作成されて、またモデルがダウンロードされます。
ダウンロードしないようにするには、import pipeline の前に、次の設定をしてください。
コード
os.environ['HF_HUB_OFFLINE'] = '1' # オフラインモード。モデルのファイルがない場合はエラー
