0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

社内Q&AのDB化と“育てるチャットボット”への挑戦

Posted at

チャットボットって、導入して終わりだと思っていませんか?

実際には、Botは“育てる存在”であり、“組織の記憶”になる仕組みです。過去に私が構築・運用していた社内Botは、ただのFAQ回答ツールではありませんでした。Bot自身が学習し、現場がBotに教えることで、組織全体が強くなる──そんな理想を実現するプロジェクトでした。

今回は、以下のようなテーマで語ります:

  • 社内Q&Aがどう蓄積され、Botの精度を高めたか
  • DB構造と設計のポイント
  • Botの“育成方法”と現場との共育プロセス
  • 質問文化を成熟させるための工夫

🤔 なぜQ&Aの蓄積が重要なのか?

業務の中で「質問→回答」という流れは毎日繰り返されています。でも、答えた内容はどこに残っているのか?Slackの過去ログ?その場の記憶?メールの下書き?

放置しているとこうなります:

  • 同じ質問が何度も出る
  • 前回の回答と違うことを言ってしまう
  • 担当者しか知らない「空気の回答」が増えていく

これを防ぐため、私は「質問と回答の履歴を全部蓄積して、Botが“組織の口”になれるようにしよう」と考えました。


📚 DB構築:Botの“脳みそ”を作る

まずやったのは、過去の質問履歴の整備です。Botに答えさせるには、「何を聞かれた」「何と答えた」「何が正しかったか」を明確にする必要があります。

DBの構造は以下の通り:

項目 説明
id 一意のQ&A識別子
question 原文に近い質問文
category 質問タイプ(操作/判断/例外/確認など)
answer 回答文(テンプレ+事例ベース)
context_tag 業務種別・部署・対象業務など
verified 正式に確認された内容かどうか(True/False)
updated_at 更新日時(履歴を取るため)

この構造により、「Botが検索するときに正確性・鮮度・業務適用範囲を判断できる」状態を作れました。


🔎 検索・応答の仕組み(Python×SQLite)

Botが使う検索エンジンは、シンプルですが効果的なものにしました。TF-IDF+コサイン類似度で類似質問を引っ張り、該当する回答を提示。

def search_similar_question(user_input):
    corpus = [q['question'] for q in db_records]
    vectorizer = TfidfVectorizer()
    vecs = vectorizer.fit_transform([user_input] + corpus)
    sims = cosine_similarity(vecs[0:1], vecs[1:])
    return db_records[sims.argmax()]

このように、Botは“似てる質問”を探す→“検証済みなら優先して出す”→“不明なら、補足付きで返す”という流れにしています。


💬 回答文設計:Botが“伝え方”を持てるようにする

Botの回答は、単なる文章の返却ではありません。以下の要素を意識して設計しています:

  • ✅ テンプレートで語調を統一(敬語・断定口調・補足あり)
  • ✅ リンク・資料への導線を明示(「詳細はこちら」)
  • ✅ 判断不能時は「他の事例はこちら」「SVへの確認をおすすめします」と補完する
  • ✅ 質問履歴から、感情が出ている場合には「安心コメント」を追加

Botが“人間的”に感じられるように、一定の柔らかさを持たせる設計を心がけました。


🌱 Botを“育てる仕組み”も運用に組み込んだ

Botは作って終わりじゃありません。むしろ、運用開始からが育成のスタート。

私がやっていたBot育成のルールはこちら:

① 回答が不正確 or 不足している場合、ユーザーからフィードバック受付

  • Botの画面下に「この回答は役立ちましたか?」を設置
  • NGなら、自由記述欄に「こういう言い方のほうがいい」など書けるようにする
  • 週1回で改善チームがレビューし、DB更新

② リーダー・SVが「Botに教える役」を担う

  • 現場の判断事例を、Botの履歴に反映するルールを整備
  • 「これはBot対応に適しているか?」を月次で検討する仕組み

③ Botの“学習履歴”を可視化して周知

  • 「今週新しく覚えた質問:●件」などをスプレッドシートで共有
  • チームメンバーがBotの成長を意識し、「教える」文化を醸成

👥 チームの使い方:Botが“業務の入り口”になる

運用を続けると、以下のような使い方が定着していきました:

ユーザータイプ Botの使い方
一般社員 「とりあえず聞いてみる」「質問履歴を参考にする」
リーダー 「事前にBotで確認してから質問に答える」「Botに履歴を登録する」
スーパーバイザー 「Botで一次対応させて、自分は確認だけ」「Botの精度管理」
教育担当 「新人への業務導入でBotを使わせる」「BotをFAQ代わりに使う」

つまり、Botが「人に聞く前に確認する習慣」になる。さらに、「Botが回答できたかどうかが教育の進捗指標になる」という使い方も生まれてきました。


🧠 結び:Botは“組織の言葉”になる装置

Botはあくまで仕組みです。でも、その仕組みに「みんなの質問」「みんなの答え」「みんなの工夫」が載っていくことで、組織の声、組織の記憶、組織の思想が育っていきます。

私はBotに対して、単に便利なツールではなく、「成長する存在」「みんなで育てていくコミュニティの中の一員」として接していました。

だから、Botを作ってよかったのは、精度が上がったからじゃない。質問されること、考えること、それを共有することが“資産になる”という文化が生まれたからなんです。


📘 次回:
第10回|“開発者としての私”を忘れないために
── 現場の多忙に飲まれながら、それでも設計と技術の価値を追い続けた軌跡

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?