---
lang: ja-jp
tags: Python
---
# dzo package
GitHub package repository: [dzo](https://github.com/moriaki3193/dzo)
## Roadmap
- **version 0.1.0**: Quickgetで利用される機能の安定稼働
- **version 0.2.0**: テストコードの導入
- **version 0.3.0**: Cythonによるボトルネックの解消
- **version 0.4.0**: Rankerの導入(not L2R)
- **version 0.5.0**: Sphinxによるドキュメントの生成と公開
- **version 1.0.0**: Production Ready
- **version 2.0.0**: Rankerの導入(L2Rの導入)
- - -
- **version 3.0.0**: Ambient Search(検索せずに検索される)
## version 0.0.2
- [x] CallableなLoggerをloggerモジュールに定義してまとめる
- ~~print関数にも対応する~~
## version 0.0.3
- [x] MeCabによる形態素解析によるトークン化に対応
## version 0.0.4
- [x] CircleCIの追加
- pytestによる単体テスト
- pylintによるフォーマットチェック
- mypyによる静的型チェック
- [x] codecovの追加
## version 0.0.5
- [x] Synonym(類義語)テーブルが登録&利用可能
- [x] `types`にType Hintingで利用しているものをまとめる
## version 0.0.6
- [x] WhitespaceTokenizerの追加
- [x] テストカバレッジ30%まで向上
## version 0.0.7
- [x] 抽象基底クラスをサブパッケージにまとめる
- [x] MySQLを対象にドキュメントを読み込むことができる
- 最低限Quickgetで必要な機能のみを実装してサンプルコードを書く
## version 0.0.8
- [ ] Preprocessorクラスの改修
- [ ] Stopwordsクラスの追加(下のようなイメージ)
- [ ] `stopword.read_txt()`の実装とテスト
- [ ] 各TokenizerクラスにDI可能なインタフェースを定義する
- [ ] Sphinxによるドキュメントの生成と公開
```python=
class AbstractTokenizer(metaclass=ABCMeta):
# 追加する
def remove(self) -> List[<Token>]:
res = [<token>, ...] # 形態素解析の結果
if not self._stopwords:
return res
return [t for t in res if t not in self._stopwords]
```
## version 0.0.9
- [ ] 複数インデックスへのEngineの対応
## version 0.1.0
- [ ] 日本語のREADMEを追加
- [ ] Quickgetでの安定稼働
## version 0.2.0
- [x] Typecheck coverage 100%
- mypyのチェックが通らない場合にはCircleCIが落ちるように設定済み
## version 0.3.0
- [ ] IndexerクラスのCython対応
- [ ] Engineの一部関数のCython対応
## version 0.4.0
- [ ] Okapi BM25によるスコアの可視化
## version 0.5.0
- [ ] Benchmarkの導入
## version 1.0.0
- [x] GitHub上でバージョンのタグ付けが行われている
- [ ] ベンチマークがREADMEに記載されている
- [ ] コマンドラインツールとしてのサブコマンドが前方一致で実行できる
- [ ] packageのdescriptionが正しい形式で記述されている&読み込まれている
- [ ] 実装されているクラスの関連図がREADMEに記載されている
## version 2.0.0
- [ ] コマンドにFeedbackデータを格納するための実装を追加
- [ ] 特徴量抽出のパイプラインクラスを追加
- [ ] ナイーブなランキング学習の実装による文書のランク付けが可能に