Colorful Scoop

Chatbots change the world!😉

chat-balloon>

カラフルしゃべる

カラフルしゃべるは、Colorful Scoopが開発している楽しくおしゃべりできる会話AIです。

カラフルしゃべるは、あなたとの会話の流れに応じて適切な返答を生成します。

一般的なシステムでは事前に返答を用意する必要があるのですが、会話の流れは様々であるため事前に返答を準備しておくことは予想以上に難しいものです。 そこでカラフルしゃべるは、あらかじめ用意した返答を選択するのではなく、会話の流れに応じてその場で適切な返答を生成します。

カラフルしゃべるとのおしゃべりはページトップからお試しください!

学習済みモデル

Colorful Scoop は、自然言語処理に役立つ学習済みモデルを公開しています。

gpt2-small-ja

GPT-2 の small サイズを日本語 Wikipedia データセットで学習したモデルです。 トークナイザには SentencePiece を利用しています。

用途: 文の生成

🤗Model Hub
sbert-base-ja

bert-base-ja を日本語の Sentence BERT 用にファインチューニングしたモデルです。

用途: 文の類似度計算、意味が似た文を検索

🤗Model Hub 学習コード
bert-base-ja

BERT の base サイズのモデルを日本語 Wikipedia データセットで学習したモデルです。 トークナイザには SentencePiece を利用しています。

用途: 単語の穴埋め、ファインチューニング用の学習済みモデルとして利用

🤗Model Hub 学習コード

Software

Colorful Scoop は、会話AIの開発をサポートするソフトウェアを公開しています。


convmodel

convmodel は 🤗Transformers GPT-2 ベースの会話モデル学習・応答生成パッケージで以下のような特徴を備えています。

  • GPT2ベースの応答文生成
  • 複数ターンの会話に対応
  • 簡単・便利なインターフェース

対話応答文生成のためのシンプルなインターフェースを実装しています。

>>> from convmodel import ConversationModel
>>> model = ConversationModel.from_pretrained("model")
>>> model.generate(context=["こんにちは"], do_sample=True, top_p=0.9, top_k=50)
ConversationModelOutput(responses=['こんにちは♪'], context=['こんにちは'])

v0.1.0 から実験的機能として Streamlit で実装した会話モデルのテスト UI も提供しています。

convmodel_streamlit

ドキュメントやコードは以下からどうぞ。

GitHub PyPI Document


convf

convf は、会話データの前処理ライブラリです。 一連のフィルターと変換を YAML フォーマットで定義することで、読みやすく再現性に優れた前処理を提供します。

フィルターや変換は拡張可能であるため、必要に応じて自前のフィルターや変換を実装して追加することができます。

GitHub


msgflow

msgFlow はPython製のシンプルなチャットボットフレームワークです。

決められたインターフェースを実装することでコマンドライン上で動く物から Slack 等のサービス上で動くものまでを 一つのチャットボット実装で作成可能です。

GitHub PyPI

ドキュメント

Colorful Scoop は、自然言語処理に役立つドキュメントを公開しています。

PyTorchでの言語モデル学習

モデルの学習では、モデル自体の実装に比べて、データのロードや学習ループの作成といった箇所が大部分を占めます。

そこでこのドキュメントでは、言語モデル自体の詳細に踏み込むことはせず、 それ以外の Dataset, DataLoader, 学習ループの作成について解説します。 言語モデルは 🤗Transformers の OpenAI GPT2 モデルを使います。

Colorful Scoop Docs