見出し画像

長文要約生成APIの歩き方

朝日新聞社メディア研究開発センター(M研)、田森です!3月まではメディアラボという部署に所属していましたが、4月からはM研に異動になりました。

本エントリでは、4/2にプレスリリースされた「長文要約生成API」について、仕組みや使い方のコツなどを紹介したいと思います。

長文要約生成APIの詳細についてはこちらをご覧ください。

なお、こちらのAPIをご利用いただく際にはAPIキーの発行が必要です。こちらのページより取得できます。ご利用の際には利用規約もご確認ください。こちらのAPIはあくまでも導入をご検討いただく評価用、ということで、制約の多いの利用規約になっておりますが、ご理解いただきたいと思います。

長文要約生成APIの概要

長文要約生成APIは、その名の通り、長文すぎて内容の把握が難しい文章を要約するために開発されたものです。弊社では自動要約エンジンTSUNAを公開していますが、このTSUNAは最長でも100文字程度の要約が限界でした。全体を把握したい、もう少し長い文章を要約したいという要望があり、それに答えたものになります。

長文要約生成APIは、文章全体を捉えるのではなく、文章の各部分やそれぞれの文に注目して要約していきます。5つの要約方法を提供していますが、中でやっていることは下記の3つです。

■生成型要約
 入力した文章をコンピューターが解釈して、コンピューターが考えて要約文を書きます。これはTSUNAを応用しています。
(コンピューターが書くので、間違えることがあります
抽出型要約(重要文抽出)
 文章中のそれぞれの文をコンピューターが評価して、重要度が高いと思われる文を抽出します。(コンピューターが文を書くことはせず、入力文章中の文をそのまま出力します
文圧縮
 文章中のそれぞれの文をコンピューターが解釈して、文中の優先度の低い単語を、文法的な正しさをなるべく担保しながら削除します。
大事な言葉を抜いたり、文法的におかしくしてしまうことがあります

長文要約生成APIでは、上記の操作を組み合わせて、有用と思われる5つの方式を提供しています。ここからは、それらについて紹介します。

指定した長さごとに生成型要約

画像1

この方式の要約は、与えられた文章を指定された文字数付近でブロックに分割し、それぞれをTSUNAを利用して要約を生成します。1つのブロックからは大体70文字程度の要約が出力されますので、例えば1,000文字の文章を200文字に分割して要約した場合、(1000/200)*70=350文字程度の要約となります。

すべての文の長さを揃える

画像2

この方式では、指定した文字数より長い文を、指定した文字数に近くなるように文章中のそれぞれの文を圧縮するものです。文の長さを揃えて、見た目としても読みやすくするのに便利です。

すべての文を圧縮する

画像3

この方式は、文章中のそれぞれの文を指定した圧縮率で圧縮するものです。それぞれの文を、一律の圧縮率で圧縮する際に利用します。

重要な文を抽出する

画像4

この方式は、文章中のそれぞれの文を評価し、重要だと思われる文をそのまま抜き出します。人間が書いた文をそのまま抜き出すため、要約後のそれぞれの文が文法的におかしくなることはありません。

重要な文を抽出後圧縮して、指定した長さにする

画像5

この方式は、「重要な文を抽出する」と「すべての文を圧縮する」をパイプラインとしてつなぎ、全体として指定した文字数のあたりまで全体の長さを近づけます。

どれを使うかはあなた次第…です!

利用シーンに応じて、上記の5つの方式のいずれか、あるいは組み合わせて利用することも可能です。例えば、「指定した長さごとに生成型要約」した後に「すべての文の長さを揃える」ようなこともできると思います。

個人的には「指定した長さごとに生成型要約」や「すべての文の長さを揃える」が使いやすいと感じています。

また、実験的なオプションになりますが、出力された要約文を新たな段落に区切ることもできます。出力をより読みやすくするためのオプションです。

ぜひご活用ください。最後までお読みいただき、ありがとうございました。

(メディア研究開発センター・田森秀明)