はじまりはじまり
朝日新聞社から長文を要約するAPIが無償公開されていましたので、試してみました。
↑上のURLから登録すると1日20回のリクエストまで無料で使えるそう。
メールアドレスを登録して、認証すれば簡単にAPIキーを取得できました。
浦島太郎を要約する
長い文章から、各文を圧縮したり、指定文字数ごとに区切って要約したり、重要な文を抽出したりするAPIです。
長文要約生成APIには上記のように記載があったのですが、長い文章を思いつかなかったので 童話「浦島太郎」 を要約してみました。
用途が違ったらすみません。
元となる浦島太郎の文章は↓のサイトから借用しました。
著作権とか問題でしたら、この記事は即座に削除します。(一応、運営者に連絡します。)
実際にやってみた
浦島太郎の文章は長いので、記事の最後に記載します。
使い方は公式サイトをご覧ください。
基本的なAPIを飛ばす方法と変わりはありませんでした。
import json
import requests
text = '浦島太郎の話'
key = 'XXXXXXXX'
endpoint = "https://clapi.asahi.com/abstract"
data = json.dumps({"text": text,
"length": 600,
"auto_paragraph": True})
headers = {"accept": "application/json",
"Content-Type": "application/json",
"x-api-key": key}
response = requests.post(endpoint, data, headers=headers)
if response.status_code == 200:
result = response.json()["result"]
print(result)
else:
print(response)
lengthは
何文字ずつ区切って要約するか指定します。この値が長いほど要約は短くなります。
とあったので、三段楽構成と考えて、600文字ずつ要約してもらいました。(textの中身は1999文字)
## 結果は
['「おやおや、かわそうに、逃がしておやりよ」「いやだよ」。',
'ある村に心のやさしい浦島太郎という若者がいました。カメにカメを助けてくださってありがとうございます。',
'この3年月が過ぎて、乙姫さまに言いました。「家族も友だちもみんな死んでしまったのか・・・ああ、確か浦島という人なら700年前に海へ出たきり。帰らないそうですよ」']
「ああ、確か浦島という人なら700年前に海へ出たきり。帰らないそうですよ」
帰らない人として要約されていました。
このAPIは物語には向いてなさそうな予感はしていましたが、想像よりいい感じにようやくされていてびっくりしました。
おしまい
ちなみにlengthの値を変えると
['「おやおや、かわいそうに、逃がしておやりよ」「いやだよ。おらたちの勝手だろ」。ある村に心のやさしい若者がいました。「おや?誰が呼んでいるの?」「竜宮?さあ、どこにある?」「海の底へなんか。行けるのかい?」。カメが頭を出して言います。',
'本日発行の「asahi+C(朝日プラス・シー)」33号は、乙姫さまに言われるまま竜宮で過ごすうちに「もう一日、いてください」と語る。「おや?わずか三年で、ずいぶんと様子が変わったな」。釣りをしていた浦島さんは、海に出たきりで、帰らないそうです
「 本日発行の「asahi+C(朝日プラス・シー)」33号 」と謎の単語が現れてきました。
リクエストで投げた文章だけが表示されるわけではないんですね。
asahi+C(朝日プラス・シー)の宣伝もうまい具合に入っていました。
本日のリクエスト回数は終わってしまったので、明日は他の童話で試してみようかと思います。
textの中身
text = "むかしむかし、ある村に、心のやさしい浦島太郎という若者がいました。浦島さんが海辺を通りかかると、" \
"子どもたちが大きなカメを捕まえていました。そばによって見てみると、子どもたちがみんなでカメをいじめています。「おやおや、かわいそうに、逃がしておやりよ」" \
"「いやだよ。おらたちが、やっと捕まえたんだもの。どうしようと、おらたちの勝手だろ」見るとカメは涙をハラハラとこぼしながら、浦島さんを見つめています。" \
"浦島さんはお金を取り出すと、子どもたちに差し出して言いました。「それでは、このお金をあげるから、おじさんにカメを売っておくれ」「うん、それならいいよ」" \
"こうして浦島さんは、子どもたちからカメを受け取ると、「大丈夫かい?もう、捕まるんじゃないよ」と、カメをそっと、海の中へ逃がしてやりました。" \
"さて、それから二、三日たったある日の事、浦島さんが海に出かけて魚を釣っていると、「・・・浦島さん、・・・浦島さん」と、誰かが呼ぶ声がします。" \
"「おや?誰が呼んでいるのだろう?」「わたしですよ」すると海の上に、カメが頭を出して言いました。" \
"「このあいだは助けていただいて、ありがとうございました」「ああ、あの時のカメさん」「はい、おかげで命が助かりました。ところで浦島さんは、竜宮へ行った事がありますか?」" \
"「竜宮?さあ?竜宮って、どこにあるんだい?」「海の底です」「えっ?海の底へなんか、行けるのかい?」「はい。わたしがお連れしましょう。さあ、背中へ乗ってください」カメは浦島さんを背中に乗せて、海の中をずんずんともぐっていきました。" \
"「わあ、きれいだな」やがて立派なご殿へ着きました。" \
"「着きましたよ。このご殿が竜宮です。さあ、こちらへ」カメに案内されるまま進んでいくと、この竜宮の主人の美しい乙姫(おとひめ)さまが、色とりどりの魚たちと一緒に浦島さんを出迎えてくれました。" \
"「ようこそ、浦島さん。わたしは、この竜宮の主人の乙姫です。このあいだはカメを助けてくださって、ありがとうございます。お礼に、竜宮をご案内します。どうぞ、ゆっくりしていってくださいね」" \
"浦島さんは、竜宮の広間ヘ案内されました。ここはまるで、天国のようです。そして、「もう一日、いてください。もう一日、いてください」と、乙姫さまに言われるまま竜宮で過ごすうちに、三年の月日がたってしまいました。ある時、浦島さんは、はっと思い出しました。(家族や友だちは、どうしているだろう?)そこで浦島さんは、乙姫さまに言いました。" \
"「乙姫さま、今までありがとうございます。ですが、もうそろそろ家へ帰らせていただきます」「帰られるのですか?よろしければ、このままここで暮しては」「いいえ、わたしの帰りを待つ者もおりますので」すると乙姫さまは、さびしそうに言いました。" \
"「・・・そうですか。それはおなごりおしいです。では、おみやげに玉手箱を差し上げましょう」「玉手箱?」「はい。この中には、浦島さんが竜宮で過ごされた『時』が入っております。" \
"これを開けずに持っている限り、浦島さんは年を取りません。ずーっと、今の若い姿のままでいられます。ですが一度開けてしまうと、今までの『時』が戻ってしまいますので、決して開けてはなりませんよ」" \
"「はい、わかりました。ありがとうございます」乙姫さまと別れた浦島さんは、またカメに送られて地上へ帰りました。地上にもどった浦島さんは、まわりを見回してびっくり。" \
"「おや?わずか三年で、ずいぶんと様子が変わったな」確かにここは浦島さんが釣りをしていた場所ですが、何だか様子が違います。" \
"浦島さんの家はどこにも見あたりませんし、出会う人も知らない人ばかりです。「わたしの家は、どうなったのだろう?みんなはどこかへ、引っ越したのだろうか?" \
"・・・あの、すみません。浦島の家を知りませんか?」浦島さんが一人の老人に尋ねてみると、老人は少し首をかしげて言いました。「浦島?・・・ああ、確か浦島という人なら七百年ほど前に海へ出たきりで、帰らないそうですよ」" \
"「えっ!?」老人の話しを聞いて、浦島さんはびっくり。竜宮の三年は、この世の七百年にあたるのでしょうか?" \
"「家族も友だちも、みんな死んでしまったのか・・・」がっくりと肩を落とした浦島さんは、ふと、持っていた玉手箱を見つめました。" \
"「そう言えば、乙姫さまは言っていたな。この玉手箱を開けると、『時』が戻ってしまうと。・・・もしかしてこれを開けると、自分が暮らしていた時に戻るのでは」" \
"そう思った浦島さんは、開けてはいけないと言われていた玉手箱を開けてしまいました。" \
"すると中から、まっ白のけむりが出てきました。「おおっ、これは」けむりの中に、竜宮や美しい乙姫さまの姿がうつりました。" \
"でも玉手箱から出てきたけむりは次第に薄れていき、その場に残ったのは髪の毛もひげもまっ白の、ヨポヨポのおじいさんになった浦島さんだったのです。"
ありがとうございました。