0
0

MARISA Trie 非公式 Python バインディングを作ってみた

Last updated at Posted at 2024-08-20

MARISA Trie 公式の SWIG による Python バインディングが最新の Python バージョンでビルドできなくなっていたので、非公式にラッピングしてみました。

ソースコードはオリジナルのまま、pip による管理、Python 3.10 以降でのビルドをできるようにしています。

名称は、Cython によるバインディングの marisa-trie が既に存在し、marisa-swig だと将来的に SWIG 以外を利用できなくなるため、maria-bindings としました。

macOS (Apple silicon / ARM64)、Windows (x86-64)、Amazon Linux 2023 (x86-64) で pip によるインストールができることを確認できたので、ver.1.0.0 として PyPI へ正式にアップロードしました。

インストールは README に書いてある通りです。

PyPI の場合:

% pip install marisa-bindings

GitHub の場合:

% pip install git+https://github.com/juno-rmks/marisa-bindings.git

尚、Python 拡張 (C++ ネイティブライブラリ) のコンパイルが発生するため、GCC や Visual Studio Build Tools などのコンパイラや C++ 標準ライブラリがインストールには必須です。

API リファレンスは、SWIG が自動生成した Python のラッパーコードを形式的にドキュメント化し、Read the Docs へも配置しています。自動生成コードに docstring を追記していないため、現在は説明書きがありません。

今後は、marisa-build をはじめとするコマンドラインツールの追加とドキュメントの充実をおこないます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0