Skip to content

Hiroshiba/hihobot

Repository files navigation

hihobot

自分のチャットボットを作る

作り方

必要なライブラリの準備

pip install -r requirements.txt

必要なファイルの準備

学習済みのdoc2vecモデルが必要です。 私は、pixiv小説で学習されたモデルをお借りしました。 下の3ファイルが必要です。

doc2vec.model
doc2vec.model.syn0.npy
doc2vec.model.syn1.npy

学習データセットの準備

1.文章ごとに改行で区切られたテキストファイルを作成

サンプルテキスト1
サンプルテキスト2

マストドンの場合は、outbox機能を使ってテキストファイルを作るコードがあります。 (extract_text_from_mastodon.py

2.データセット作成用のコマンドを実行

make_dataset.py

3.設定ファイルを用意

サンプル設定ファイル.json
{
  "dataset": {
    "char_path": "/path/to/dataset_char.json",
    "text_path": "/path/to/dataset_text.json",
    "doc2vec_model_path": "/path/to/doc2vec.model",
    "seed": 0,
    "num_test": 100
  },
  "network": {
    "n_layers": 2,
    "in_size": 2148,
    "hidden_size": 128,
    "out_size": 2049,
    "dropout": 0.2
  },
  "loss": {
  },
  "train": {
    "batchsize": 50,
    "gpu": 0,
    "log_iteration": 100,
    "prune_iteration": 10000,
    "snapshot_iteration": 10000,
    "stop_iteration": 100000,
    "optimizer": {
      "name": "adam"
    },
    "optimizer_gradient_clipping": 5.0,
    "linear_shift": {
      "attr": "alpha",
      "value_range": [
        0.01,
        0.001
      ],
      "time_range": [
        2000,
        50000
      ]
    }
  },
  "project": {
    "name": "",
    "tags": []
  }
}

4.学習

train.pyで学習できます。

文章の生成

generate.pyで文章を生成できます。

その他

hihobot_ttsでAPIとして使えます。

ライセンス

MIT License

About

自分のチャットボットを作る

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published