日本語学習済みのGPT-2 pretrained modelを使って、入力文に続いて、どんな文章が生成されるのかを眺めてみた


####今回、*got clone*して使わせていただいたもの
・ https://github.com/tanreinama/gpt2-japanese
・[@tanreinamaさん 「GPT2の日本語生成モデルを公開しています」](https://qiita.com/tanreinama/items/3b73fdeff09dfe74ef52)

```bash:Terminal
％ git clone https://github.com/tanreinama/gpt2-japanese
Cloning into 'gpt2-japanese'...
remote: Enumerating objects: 91, done.
remote: Counting objects: 100% (91/91), done.
remote: Compressing objects: 100% (60/60), done.
remote: Total 132 (delta 40), reused 79 (delta 30), pack-reused 41
Receiving objects: 100% (132/132), 1.19 MiB | 1.35 MiB/s, done.
Resolving deltas: 100% (59/59), done.
％
```

```bash:Terminal
％ cd gpt2-japanese
gpt2-japanese % ls
LICENSE			emoji.json		gpt2-generate.py	ja-bpe.txt		report			sampling.py
README.md		encode_bpe.py		gpt2-transform.py	model.py		requirements.txt	special_thanks.txt
gpt2-japanese % 
gpt2-japanese % wget https://www.nama.ne.jp/models/gpt2ja-medium.tar.bz2
--2020-12-11 01:41:22--  https://www.nama.ne.jp/models/gpt2ja-medium.tar.bz2
www.nama.ne.jp (www.nama.ne.jp) をDNSに問いあわせています... 112.78.112.176
www.nama.ne.jp (www.nama.ne.jp)|112.78.112.176|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 1231913634 (1.1G) [application/x-bzip2]
`gpt2ja-medium.tar.bz2' に保存中

gpt2ja-medium.tar.bz2                         100%[================================================================================================>]   1.15G  7.59MB/s 時間 3m 15s   

2020-12-11 01:44:38 (6.02 MB/s) - `gpt2ja-medium.tar.bz2' へ保存完了 [1231913634/1231913634]

gpt2-japanese % 
gpt2-japanese % tar xvfj gpt2ja-medium.tar.bz2
```


```bash:Terminal
gpt2-japanese % python3 gpt2-generate.py --model gpt2ja-medium --num_generate 1
Traceback (most recent call last):
  File "gpt2-generate.py", line 7, in <module>
    from tensorflow.contrib.training import HParams
ModuleNotFoundError: No module named 'tensorflow.contrib'
gpt2-japanese % 
```

###*'tensorflow.contrib'*が定義されていたのは、TensorFlowの1系です。

####*vitrualenv*で専用環境を作って、その環境の中でだけ、1系を使うようにします。

```bash:Terminal
gpt2-japanese % pyenv virtualenv 3.6.3 gpt2_ja   
gpt2-japanese % pyenv versions  
  system
  3.6.0
  3.6.0/envs/TensorFlow
  3.6.1
* 3.6.3 (set by /Users/ocean/Desktop/.python-version)
  3.6.3/envs/gpt2_ja
  3.9.0
  TensorFlow
  gpt2_ja
gpt2-japanese % mkdir gpt2_ja
gpt2-japanese % cd gpt2_ja 
gpt2_ja %
```

__いま入っているのは、TensorFlow2.2.0__

```bash:Terminal
gpt2_ja % python3 -c 'import tensorflow as tf; print(tf.__version__)'          
2.2.0
gpt2_ja % 
```

__*vitrualenvで専用環境を作って、その環境の中でだけ、1系を使う。__

```bash:Terminal
gpt2_ja % pyenv local gpt2_ja
gpt2_ja % python --version
Python 3.6.3
gpt2_ja % which python
/Users/ocean/.pyenv/shims/python
gpt2_ja % pyenv versions
  system
  3.6.0
  3.6.0/envs/TensorFlow
  3.6.1
  3.6.3
  3.6.3/envs/gpt2_ja
  3.9.0
  TensorFlow
* gpt2_ja (set by /Users/ocean/Desktop/gpt2-japanese/gpt2_ja/.python-version)
gpt2_ja %
```

```bash:Terminal
gpt2_ja % pip install tensorflow==1.14                                         
Collecting tensorflow==1.14
  Cache entry deserialization failed, entry ignored
  Cache entry deserialization failed, entry ignored
  Downloading https://files.pythonhosted.org/packages/27/8c/7608ba709bd536bc2bccb0d1abbb70aafe9cf7e0170353b4b720ed54cb71/tensorflow-1.14.0-cp36-cp36m-macosx_10_11_x86_64.whl (105.8MB)
    100% |████████████████████████████████| 105.8MB 13kB/s 
Collecting keras-preprocessing>=1.0.5 (from tensorflow==1.14)

（　・・・省略・・・　）

Successfully installed absl-py-0.11.0 astor-0.8.1 cached-property-1.5.2 gast-0.4.0 google-pasta-0.2.0 grpcio-1.34.0 h5py-3.1.0 importlib-metadata-3.1.1 keras-applications-1.0.8 keras-preprocessing-1.1.2 markdown-3.3.3 numpy-1.19.4 protobuf-3.14.0 setuptools-51.0.0 six-1.15.0 tensorboard-1.14.0 tensorflow-1.14.0 tensorflow-estimator-1.14.0 termcolor-1.1.0 werkzeug-1.0.1 wheel-0.36.1 wrapt-1.12.1 zipp-3.4.0
You are using pip version 9.0.1, however version 20.3.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
gpt2_ja %
```

```bash:Terminal      

gpt2_ja % cd ..
gpt2-japanese % ls
LICENSE			encode_bpe.py		gpt2_ja			ja-bpe.txt		requirements.txt
README.md		gpt2-generate.py	gpt2ja-medium		model.py		sampling.py
emoji.json		gpt2-transform.py	gpt2ja-medium.tar.bz2	report			special_thanks.txt
gpt2-japanese % 
gpt2-japanese % pyenv local gpt2_ja         
gpt2-japanese % pyenv versions              
  system
  3.6.0
  3.6.0/envs/TensorFlow
  3.6.1
  3.6.3
  3.6.3/envs/gpt2_ja
  3.9.0
  TensorFlow
* gpt2_ja (set by /Users/ocean/Desktop/gpt2-japanese/.python-version)
gpt2-japanese % 
gpt2-japanese % python3 -c 'import tensorflow as tf; print(tf.__version__)'    
1.14.0
%
```


他のディレクトリでは、元どおりTensorFlow2.2.0が入っている

```bash:Terminal
gpt2-japanese % cd ..
pyenv versions                                                 
  system
  3.6.0
  3.6.0/envs/TensorFlow
  3.6.1
* 3.6.3 (set by /Users/ocean/Desktop/.python-version)
  3.6.3/envs/gpt2_ja
  3.9.0
  TensorFlow
  gpt2_ja
python3 -c 'import tensorflow as tf; print(tf.__version__)'
2.2.0
%
% cd gpt2-japanese 
```


###日本語版GPT-2を実行

__No module named 'tqdm'エラー__

```bash:Terminal
gpt2-japanese % python3 gpt2-generate.py --model gpt2ja-medium --num_generate 1
/Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:516: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint8 = np.dtype([("qint8", np.int8, 1)])
/Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:517: FutureWarning: Passing 

（　・・・省略・・・　）

Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  np_resource = np.dtype([("resource", np.ubyte, 1)])
Traceback (most recent call last):
  File "gpt2-generate.py", line 6, in <module>
    from tqdm import tqdm
ModuleNotFoundError: No module named 'tqdm'
gpt2-japanese %
```

```bash:Terminal
gpt2-japanese % pip install tqdm
Collecting tqdm
  Cache entry deserialization failed, entry ignored
  Using cached https://files.pythonhosted.org/packages/8a/54/115f0c28a61d56674c3a5e05c46d6c3523ad196e1dcd3e2d8b119026df36/tqdm-4.54.1-py2.py3-none-any.whl
Installing collected packages: tqdm
Successfully installed tqdm-4.54.1
You are using pip version 9.0.1, however version 20.3.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
gpt2-japanese %
```

__No module named 'jaconv'エラー__

```bash:Terminal
gpt2-japanese % python3 gpt2-generate.py --model gpt2ja-medium --num_generate 1

（　・・・省略・・・　）

WARNING:tensorflow:From /Users/ocean/Desktop/gpt2-japanese/model.py:147: The name tf.AUTO_REUSE is deprecated. Please use tf.compat.v1.AUTO_REUSE instead.

Traceback (most recent call last):
  File "gpt2-generate.py", line 9, in <module>
    from encode_bpe import BPEEncoder_ja
  File "/Users/ocean/Desktop/gpt2-japanese/encode_bpe.py", line 2, in <module>
    import jaconv
ModuleNotFoundError: No module named 'jaconv'
gpt2-japanese %
```

```bash:Terminal
gpt2-japanese % pip install jaconv
Collecting jaconv
  Downloading https://files.pythonhosted.org/packages/b0/9e/cf1353fb3e81a177bb52ca59a0ebee425f084b7298039a7965c5414d2d62/jaconv-0.2.4.tar.gz
Building wheels for collected packages: jaconv
  Running setup.py bdist_wheel for jaconv ... done
  Stored in directory: /Users/ocean/Library/Caches/pip/wheels/e1/46/f7/85a7f89bd3263423c8530dfed16083f9a142cc0fc78c81ff32
Successfully built jaconv
Installing collected packages: jaconv
Successfully installed jaconv-0.2.4
You are using pip version 9.0.1, however version 20.3.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
gpt2-japanese %
```


```bash:Terminal
gpt2-japanese % python3 gpt2-generate.py --model gpt2ja-medium --num_generate 1

（　・・・省略・・・）

WARNING:tensorflow:From /Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/training/saver.py:1276: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.
Instructions for updating:
Use standard file APIs to check for files with this prefix.


>私は「これは自分勝手な行為に見えるか、迷惑な行為に見える」という可能性を考えているのでしょうか。
いや、質問者さんに迷惑などありません。
質問文に具体的な表現が一切ないからです

迷惑の定義として、それはどんなことなのか書いていないと思います

質問文を読めば、「迷惑なもの」と書いている
自分勝手なことだと言われている
迷惑な存在なのだと思うと言う
言われていません

迷惑、迷惑、迷惑と書かれた時の文章は読みづらくなる
質問文が「迷惑」であれば、迷惑で片付けられません
迷惑が紛らわしいのは、なぜでしょうか?
質問文が、質問者さんの迷惑であれば、質問者さんにしかわかりません

迷惑の定義がわからなければ、あなたが迷惑と思った時は
この文章の通りになるだけです

迷惑が気になったら、ご自身でも調べてみることを


gpt2-japanese %
```

```bash:Terminal
gpt2-japanese % python3 gpt2-generate.py
/Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:516: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint8 = np.dtype([("qint8", np.int8, 1)])
/Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:517: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint8 = np.dtype([("quint8", np.uint8, 1)])

(　・・・省略・・・　）

WARNING:tensorflow:From /Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/training/saver.py:1276: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.
Instructions for updating:
Use standard file APIs to check for files with this prefix.

2017年、東京と大阪が初めて合併したことをきっかけに日本文化を深く理解するとともに豊かさを体感出来る場を作りたい。2017年の日本は“豊か”な時代になっているのか。そして、どの時間帯にどこへ行こうか、今自分が何をしているかが大切であると考えるようになった。今回のセミナーでは、私たち自身が今こうして今の時代を生きていることの大きな魅力とは何かを、多くの皆様と共にさらに深く知っていただきたいと思っています。 ●会場               東京都港区新橋
```

上で、私が入力した文章は以下です。

```text:入力した文章
2017年、東京と大阪が初めて合併したことをきっかけに日本文化を深く理解するとともに豊かさを体感出来る場を作りたい。2017年の日本は“豊か”な時代になっているのか。そして、どの時間帯にどこへ行こうか、今自分が何をしているかが大切であると考えるようになった。今回のセミナーでは、私たち自身が今こうして今の時代を生きていることの大きな魅力とは何かを、多くの皆様と共にさらに深く知っていただきたいと思っています。 ●会場               東京都港区新橋
```

その結果、次の文章が出力されました。

```bash:Terminal
あなたの家はどちらか分かりませんが、あなたがもしも家を出て何処にいるのか分からないなら、もしも引っ越すことが決まっていて、またその場所に自分の家が増えることが決まっているなら、
「自分の家」を少しは考えられた方がいいかもしれませんね。
自分の家じゃないとは言わないですし、家に何も持たないでいることも考えられる、ということだけではなくて。

>引っ越すことが決まっているのに、私の家にこちらから行く理由がわかりません。
>今から向かうのですか?
>
>何か理由などあるのでしょうか?
>
>もう少し時間が過ぎてからでもいいのですが、よろしくお願いします(_ _)
>
>私に住むのは家の近くなので、近くから向かっても問題ないのではないでしょうか?
>自分の家とは言わないけど、もしも自分の家に引っ越せば家に帰るなり分かると思いますよ
>
>何も持たないとはいえ、もしも家に帰りたがっているようだったら、自分の家になぜ持ち主が現れないのか、また家に誰がいるのかはどうして分からないのかを聞こうと思っています
>
>自分が今から向かうなら、家はどこかを言うべきですよね?
>
質問の回答にはならないかと
========

^Z
zsh: suspended  python3 gpt2-generate.py
```

```bash:Terminal
gpt2-japanese % python3 gpt2-generate.py --context="『GPT-2』は、入力された文章の続きを作成するAIです。このデモンストレーションでは、このエリアに入力された文章の続き となる文章を生成します。このエリアに、続きを生成したい文章を入力して、ページの下にある「Generate Japanese Text\!」ボタンをクリックしてください。"
/Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:516: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint8 = np.dtype([("qint8", np.int8, 1)])
/Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:517: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint8 = np.dtype([("quint8", np.uint8, 1)])

（・・・省略・・・）

WARNING:tensorflow:From /Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/training/saver.py:1276: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.
Instructions for updating:
Use standard file APIs to check for files with this prefix.



2. 『GPT-2』の画面設定
『GPT-2』の画面設定を「テキストボックスを使用しない」にしてください。


3. 『GPT-2』を利用するための環境の作成
Sandisk内の「Grove Packages for GPT Drivers into Windows」から、ASTIVIDS形式を用いて、Applicationと連携させるには、Coreファイルの拡張をしてください。
例として、『GPT-2』のファイルの拡張部分を、以下のように設定させます。

4. Javascriptの起動/停止
次に、『GPT-2』の起動/停止設定を以下のように設定してください。
ASTIVIDS Tree Impatteration > Configuration > Code > Pooling prefix > Bad Scri Fade Code > Generating Mode > GPT IMAGE > Preruencement > Gear Domain Object > GPT Performance Options Variant > GPT Key > Allocates 
========
^Z
zsh: suspended  python3 gpt2-generate.py
```

__続いて、次の文を入力してみる__

```text:入力文
"ともに映画やドラマで活躍する俳優の松坂桃李さんと戸田恵梨香さんが結婚したことを発表しました。松坂桃李さんと戸田恵梨香さんは10日、それぞれの所属事務所の公式サイトを通じて結婚したことを連名で発表しました。この中で「これまで同世代の俳優仲間として、お互いに刺激し合いながら歩んでまいりました。これからも、お互いに支え合い豊かな時間を共に積み重ねていきたいと思っております」などとしています。松坂さんは神奈川県出身の32歳。NHKの連続テレビ小説「わろてんか」や去年放送された大河ドラマ「いだてん」など、多くのテレビドラマや 映画に出演しています。"
```

####実行結果
 
```bash:Terminal
gpt2-japanese % python3 gpt2-generate.py --context="ともに映画やドラマで活躍する俳優の松坂桃李さんと戸田恵梨香さんが結婚したことを発表しました。松坂桃李さんと戸田恵梨香さんは10日、それぞれの所属事務所の公式サイトを通じて結婚したことを連名で発表しました。この中で「これまで同世代の俳優仲間として、お互いに刺激し合いながら歩んでまいりました。これからも、お互いに支え合い豊かな時間を共に積み重ねていきたいと思っております」などとしています。松坂さんは神奈川県出身の32歳。NHKの連続テレビ小説「わろてんか」や去年放送された大河ドラマ「いだてん」など、多くのテレビドラマや 映画に出演しています。"
/Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:516: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint8 = np.dtype([("qint8", np.int8, 1)])
/Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:517: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint8 = np.dtype([("quint8", np.uint8, 1)])

（　・・・省略・・・　）


WARNING:tensorflow:From /Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/training/saver.py:1276: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.
Instructions for updating:
Use standard file APIs to check for files with this prefix.

戸田さんは埼玉県出身の22歳で、これまでも俳優やプロデューサーとして数多くのドラマや映画に出演してきました。戸田さんが東京で初めて結婚したのは、「私たち夫婦は二人の理想的なキャラクターを立てるパートナーとして一緒にいきたいと考えている」とした趣旨の発言です。さらに戸田さんは「二人にとっては3度目の結婚ですが、現在、私と妻は幸せな家庭を築いています。今でも「二人は本当に本当の夫婦のように大切にして欲しい」と伝えたいと思っています」と語りました。
 また、これまで数々の話題作で多くの賞を受賞してきた「TRANSCOFFEE UNION(トランシェージュールナックス)」を運営するWEARISECTION HOUSE CO. JAPAN(本社:広島県広島市、代表取締役:大坪 幸司)、そして「新藤兼人/TSUTAYA TOWN」など様々なサービスを手掛けているスタイルデザイン研究所を運営するinc. Group(本社:京都市、代表取締役:大坪 幸司)と、これまでに国内外19名のスタートアップのスターを輩出してきており、今年<DATE>に創業11周年を迎えます。二人は1年間に渡って、二人が考えるス
========

戸田恵梨香さんは千葉県出身の25歳。NHK連続テレビ小説「なつぞら」や今年放送された大河ドラマ「いだてん」に出演。「いつも応援をしてくださり、応援したくなります」というお声をいただきました。2人とも同じ埼玉県在住で、戸田恵梨香さんは埼玉県出身の13歳。テレビ東京「おはスタ」が放送中の2人の人気シリーズ「私だけのプリンセスだった件」で共演しています。
■「Amazon Androidアプリストア」アプリで、初めてアニメーションを鑑賞した人に1年間につき1人に、<DATE>に誕生した記念日である<DATE>が「記念日」になるよう<PRICE>をキャッシュバック

「Androidアプリストア」アプリでは、<DATE>の誕生日が「記念日」になるように、<DATE>の誕生日から23カ月分の割引が受けられる期間限定のキャンペーンを実施しています。対象期間中に「Amazon Androidアプリストア」アプリからお買い物をし、税込<PRICE>以上購入ごとに、「キャッシュバッククーポン」の対象期間が3か月間延長され、「Amazon Androidアプリストア」アプリを通じて「Amazon And
========

^Z
zsh: suspended  python3 gpt2-generate.py 
gpt2-japanese %
```

__続いて、次の文を入力してみる__

```text:入力文
"岸防衛大臣は、ASEAN＝東南アジア諸国連合の国防相らとの会合にテレビ会議形式で参加し、サイバーセキュリティー分野で日 本として積極的に協力していく考えを明らかにしました。テレビ会議形式で行われた会合には、岸防衛大臣やASEAN＝東南アジア諸国連合の10か国の国防相らが参加しました。この中で岸大臣は「新型コロナウイルスのパン デミックは、人と人の直接のコミュニケーションを阻害し、バーチャルな交流の手段への依存を高めている」と述べました。そのうえで岸大臣は、サイバー攻撃への対応力を向上させる必要があるとして、サイバーセキュリティー分野で日本として積極的に協力していく考えを明らかにしました。防衛省は、ASEAN各国のサイバー担当者を対象にしたセミナーを開くなど支援事業を通じて、ASEANとの防衛分野での協力を強化したい考えです。"
```

 ```bash:Terminal
gpt2-japanese % python3 gpt2-generate.py --context="岸防衛大臣は、ASEAN＝東南アジア諸国連合の国防相らとの会合にテレビ会議形式で参加し、サイバーセキュリティー分野で日 本として積極的に協力していく考えを明らかにしました。テレビ会議形式で行われた会合には、岸防衛大臣やASEAN＝東南アジア諸国連合の10か国の国防相らが参加しました。この中で岸大臣は「新型コロナウイルスのパン デミックは、人と人の直接のコミュニケーションを阻害し、バーチャルな交流の手段への依存を高めている」と述べました。そのうえで岸大臣は、サイバー攻撃への対応力を向上させる必要があるとして、サイバーセキュリティー分野で日本として積極的に協力していく考えを明らかにしました。防衛省は、ASEAN各国のサイバー担当者を対象にしたセミナーを開くなど支援事業を通じて、ASEANとの防衛分野での協力を強化したい考えです。"
/Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:516: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint8 = np.dtype([("qint8", np.int8, 1)])
/Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:517: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint8 = np.dtype([("quint8", np.uint8, 1)])

（　略　）

WARNING:tensorflow:From /Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/training/saver.py:1276: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.
Instructions for updating:
Use standard file APIs to check for files with this prefix.

 今後も、日本とASEANとの国境に近いASEAN諸国の支援や、サイバーセキュリティー分野においてASEAN諸国と並んで発展を目指していきます。
防衛研究棟でのパネル展示:  


========
^Z
zsh: suspended  python3 gpt2-generate.py 
gpt2-japanese %
```

__続いて、次の文を入力してみる__

```text:入力文
"東京オリンピックの代表内定を確実にしているサーフィンの五十嵐カノア選手が9日、ハワイで始まったシーズン初戦に出場し ました。
サーフィンは新型コロナウイルスの影響で世界最高峰のツアー大会「チャンピオンシップツアー」が今シーズンはすべて中止となり、2021年のシーズンは例年3月から4月にかけて行っていた開幕戦が前倒しされ9日にハワイ で始まりました。
五十嵐選手は日本選手で唯一、このツアーに参戦していて、各国のトップ選手など36人が12のグループに分かれた1回戦に出場しました。
五十嵐選手は19歳の時にハワイで行われたチャンピオンシップツアーで初めて決勝に進んでいて、1回戦では持ち味のスピードで高得点が狙える波のチューブをくぐり抜ける技や波の頂点を横滑りする「フローター」などを 決めました。
そして合計10.30のグループ1位で危なげなく初戦を突破しました。
大会は20日まで行われる予定です。"

```

 ```bash:Terminal
gpt2-japanese % python3 gpt2-generate.py --context="東京オリンピックの代表内定を確実にしているサーフィンの五十嵐カノア選手が9日、ハワイで始まったシーズン初戦に出場し ました。
サーフィンは新型コロナウイルスの影響で世界最高峰のツアー大会「チャンピオンシップツアー」が今シーズンはすべて中止となり、2021年のシーズンは例年3月から4月にかけて行っていた開幕戦が前倒しされ9日にハワイ で始まりました。
五十嵐選手は日本選手で唯一、このツアーに参戦していて、各国のトップ選手など36人が12のグループに分かれた1回戦に出場しました。
五十嵐選手は19歳の時にハワイで行われたチャンピオンシップツアーで初めて決勝に進んでいて、1回戦では持ち味のスピードで高得点が狙える波のチューブをくぐり抜ける技や波の頂点を横滑りする「フローター」などを 決めました。
そして合計10.30のグループ1位で危なげなく初戦を突破しました。
大会は20日まで行われる予定です。"
/Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:516: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint8 = np.dtype([("qint8", np.int8, 1)])

（　略　）

WARNING:tensorflow:From /Users/ocean/.pyenv/versions/gpt2_ja/lib/python3.6/site-packages/tensorflow/python/training/saver.py:1276: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.
Instructions for updating:
Use standard file APIs to check for files with this prefix.


そして試合は1<DATE>シーズンが開幕。
1<DATE>シーズンは多くの人に応援してもらえるサーフィン大会となるので、サーフィンに興味がある人は楽しみですね。
波のうねりの中からゴールした選手は喜びを表現します。
波の下をくぐり抜ける動きの力強さも魅力です。
波の上を滑って進むスピードは、まさに波の中にいるかのようで、今まで見た波の中では一番速い波です
波の中をゆっくり移動していくスタイルは、体を押して前に進むきっかけになりそうです。
波のうねりが大きくなると波のうねりでスピードが出せる波もいろいろありますよ!
試合はどこをどれぐらい走るのか??
波の中で大きく動く選手に興味がある人は、ぜひとも試合に出て、スピードタイプの選手でもゴールを決めたいと思います
私は試合は1<DATE>シーズンより前に進む方が多く、波の中でゴールを決めた方が多くなり、1<DATE>シーズンまで行った方が多かったかと思います。
その波に乗っていくことがゴールを決められるので、試合を観てゴールを決めたいと思います
そして、波を超え波に乗ってゴールしている選手は、今シーズン、ゴールを決めることができているのは
========
^Z
zsh: suspended  python3 gpt2-generate.py 
gpt2-japanese % 
```

____

##他に日本語でGPT-2を動かしている事例

__次の記事__は、__自分が選んだ日本語の文章で、GPT-2モデルを学習__させた上で、入力文の続きの文章を生成させています。

・ [@tset-tset-tsetさん 「huggingface/transformers のツールに GPT2 の fine-tuning と文章生成があったので日本語で試したら動いた」](https://qiita.com/tset-tset-tset/items/ba8e67342a0147e0f60e)