NPOの支援者マッチングをAIで効率化する~自由記述も活かして候補を絞り込む

外国人の生活支援や地域での相談支援などを行うNPOでは、支援を必要としている人と支援したい人を個別にマッチングしていることがあります。

例えば、日本での生活に慣れていない外国人が、役所での手続き、病院への同行、学校とのやり取り、日本語学習、買い物、地域生活について相談したいとします。一方で、地域には外国語を話せる人や、行政手続きに詳しい人、子育て経験のある人など、できる範囲で支援したいと考えている人がいます。

こうした双方をつなぐのがNPOスタッフの役割です。

ただし、福祉的な支援では、単純に条件が一致すればよいわけではありません。本人の希望や生活状況、相性、安全面への配慮なども必要になるため、マッチングそのものをAIに任せるべきではありません。

一方で、数十人、数百人の登録者の中から今回の相談者に合いそうな候補を探す作業は、AIでかなり効率化できます。

kintoneに情報はあるが、人が探すのに時間がかかる

例えば、支援を必要としている人と支援者の情報をkintoneで管理しているとします。

支援を必要としている人には、使用できる言語、居住地域、相談内容、希望する支援時間帯などが登録されています。支援者側には、話せる言語、活動可能地域、対応可能な曜日、これまでの経験などが登録されています。このような項目だけであれば、kintoneの検索条件を使ってある程度絞り込むことができます。

しかし実際には、それだけでは判断できないことも多いでしょう。

例えば「日本語は少し話せるが、病院では専門用語が難しいので英語で説明してほしい」「小さな子どもがいるので、子育て経験のある人だと安心」「平日の昼間しか時間が取れない」「同じ母語でなくてもよいが、ゆっくり日本語で話してくれる人を希望」といった情報は、自由記述欄に書かれていることがあります。

こうした文章を人が一件ずつ読んで候補を探すのは大変です。

AIなら自由記述の内容もマッチング条件として扱える

AIを使う大きなメリットは、この自由記述を処理できることです。

例えば支援希望者のkintoneレコードに、次のような文章が登録されていたとします。

「日本に来て半年です。日常会話は少しできますが、市役所や病院の説明が難しいです。小学生の子どもがいて、学校から届く書類もよく分かりません。できれば子育てについて分かる方に相談したいです。」

従来のシステムでは、この文章をそのまま検索条件にするのは難しいでしょう。

AIであれば、この内容から「行政手続き支援」「医療機関での説明支援」「学校関係書類」「子育て経験がある支援者が望ましい」といった意味を整理できます。

一方で支援者側の自由記述に、「以前、自治体の窓口で勤務していた」「子どもが2人いる」「英語で日常会話ができる」と書かれていれば、今回の相談者に比較的合いそうな候補として抽出できます。

単語が完全に一致していなくても、文章の意味が近いものを探せることがAIの強みです。

条件による絞り込みとAIによる意味の判定を組み合わせる

実際の仕組みでは、すべてをAIに判断させる必要はありません。例えば居住地域や活動可能曜日など、明確な条件は通常のデータ検索で処理します。そのうえで、残った候補についてAIが自由記述欄を比較します。

情報判定方法の例
活動可能地域kintoneの項目で絞り込み
活動可能曜日kintoneの項目で絞り込み
対応言語kintoneの項目で絞り込み
支援経験項目と自由記述をAIが確認
相談内容との相性AIが自由記述を比較
配慮事項AIが内容を整理しスタッフへ提示
最終的なマッチングNPOスタッフが判断

このように、明確な条件は通常のプログラムで処理し、文章を読まなければ分からない部分だけAIを使います。AIを使うからといって、すべての処理をAIに置き換える必要はありません。

性別や年齢などは単純な点数にしない

支援者情報には、年齢や性別などが登録されている場合もあります。

ただし、こうした項目をAIが一律に「同年代だから高得点」「同じ性別だから高得点」といった形で評価する設計には注意が必要です。

例えば支援を必要としている本人が、安全面や文化的な事情から「女性の支援者を希望する」と明確に伝えている場合には、その希望を候補選定の条件として扱うことが考えられます。一方で、本人からそのような希望がない場合まで、AIが勝手に属性から相性を推測する必要はありません。大切なのは、AIが本人の意思を置き換えるのではなく、本人が伝えた希望や配慮事項を正確に拾うことです。

kintoneから候補を取得してAIに比較させる

システムとしては、kintone APIを利用して対象者のデータを取得する方法が考えられます。例えばスタッフが支援希望者のレコードを開き、「候補者検索」というボタンを押します。

システムは、その人の活動地域、必要な言語、希望曜日などから、まずkintone上の支援者を絞り込みます。その後、絞り込まれた支援者の自由記述欄と、支援希望者の相談内容をAIに渡します。AIはそれぞれを比較し、例えば3人から5人程度の候補をスタッフへ提示します。第1位はこの人と自動決定するのではなく、なぜ候補になったのかを表示することが大事でしょう。

候補者AIが確認した共通点スタッフが確認したい点
支援者A英語対応可、行政窓口勤務経験あり平日昼間の活動可否
支援者B子育て経験あり、学校関係の支援経験あり英語での対応レベル
支援者C同じ地域に在住、医療通訳経験あり学校関係の支援経験

こうすれば、スタッフはAIの結論を信じるのではなく、候補を比較するための材料として利用できます。

マッチング後の結果も次回に活かせる

さらに、実際にマッチングした結果をkintoneへ残しておくと、次回以降の候補抽出にも活かせます。

例えば、支援開始後に「コミュニケーションが取りやすかった」「相談内容が想定より専門的だった」「活動時間が合わなかった」といった記録を残しておきます。AIは、単にプロフィールが似ているかだけでなく、過去にどのような支援でうまくいったかを参考にできます。ただし、ここでもAIに人物を自動評価させるのではなく、スタッフが残した事実や記録を整理して、次の判断材料として提示させることが重要です。

福祉的な支援では、一度の結果だけで人を向いている、向いていないと固定的に評価する運用は避けたほうがよいでしょう。

スタッフの経験を補助する仕組みにする

この仕組みの目的は、NPOスタッフの経験や判断をAIに置き換えることではありません。むしろ、スタッフが本来時間を使うべき「この人には誰が合いそうか」「どんな配慮が必要か」という判断に集中できるようにすることが目的です。

登録者が50人なら、人の記憶だけでも対応できるかもしれません。しかし200人、500人と増えてくると、以前登録した支援者の細かな経験や希望まで覚えておくのは難しくなります。AIがkintoneの情報を横断して候補を探せれば、「以前登録されたこの人も今回の支援に合いそうだ」とスタッフが気づけるようになります。

まとめ

外国人の生活支援などを行うNPOでは、支援を必要としている人と支援者のマッチングは非常に重要な業務です。だからこそ、マッチングそのものをAIに任せるのではなく、AIには候補を探すところまでを担当させる方法が適しています。

kintoneに登録されている地域、言語、活動可能時間などの明確な条件で候補を絞り込み、その後、AIが自由記述欄を読み、相談内容や支援経験、本人が伝えた配慮事項などを比較します。AIは複数の候補と、その候補を選んだ理由をスタッフへ提示します。最終的に誰を紹介するか、実際にマッチングするかはNPOスタッフが判断します。

AIに人間関係を決めさせるのではなく、多くの登録情報の中からスタッフが検討する価値のある候補を見つけてもらう。このような使い方であれば、福祉的な業務で人の判断を残しながら、AIによる業務効率化を取り入れることができます。