コンテンツにスキップ

ChilmAI

ChilmAI

pytest pytest windows coverage
PyPI Python 3.10-3.12 Apache-2.0 arXiv 2401.07761

ChilmAI は、自治体の保育所利用調整における入所選考処理を支援する Python アプリケーションです。入力データのバリデーション、列名マッピング、きょうだい条件を含むマッチング、結果データの整形を行います。

このサイトでは、ChilmAI を理解・評価・拡張するための情報をまとめています。自治体ごとに異なる業務ルールや帳票の違いに対応できるよう、コアロジックとリファレンス実装を分けて説明しています。

ダウンロードして試す(プログラミング不要)

自治体の方へ では、配布されている ZIP をダウンロードし、プログラミングの知識がなくても Web UI(ブラウザで操作する画面)から入所選考を試す方法を説明しています。

Python から利用する

インストールと実行 では、PyPI またはソースコードから ChilmAI をセットアップし、サンプル CSV でマッチングを実行します。

組み込む

Python API では、MatchingService を使ったアプリケーションへの組み込み方法を説明します。

拡張する

カスタマイズ では、自治体ごとの差分を前処理クラスで扱う方法を説明します。

リポジトリ内容

ChilmAI リポジトリのコアとなるコードベースは chilmai/ 以下の Python ライブラリです。apps/ 以下には、HTTP API と Web UI のリファレンス実装があります。

領域 パス 内容
コアライブラリ chilmai/generic ファイル読込、列名マッピング、バリデーション、マッチング実行、結果整形
ソルバー chilmai/algorithm/cp_use_transfer OR-Tools CP-SAT を用いたマッチング実装
リファレンス実装 apps FastAPI による HTTP API と Web UI
サンプルデータ sample 動作確認用の合成データ
テストコード test 単体テスト、API テスト、ブラウザテスト

利用者・コントリビューター

ChilmAI は次のような方を想定しています。

  • 自治体で保育所利用調整を担当し、画面操作で ChilmAI を試す方
  • ChilmAI を試用・評価する自治体、事業者、研究者
  • 自治体ごとのデータ形式や選考ルールに合わせて拡張する開発者
  • Issue、Pull Request、ドキュメント改善などでプロジェクトに参加するコントリビューター