
DifyでRAG実装レポ
はじめに
以前noteで紹介した、誰でもAITuberお試しキット 使ってみた|もりおきさん (note.com)の団員に、ソフトボールのルールを知識として持たせたい!
→DifyでRAGを実装できる(LLMに知識を持たせることができる)!らしい!
ということで触ってみたレポです。
初心者である私がつまずいたポイントをいくつか書いてます。
完全に初心者+備忘録なので、Dify玄人は読まないことをおススメします。
使っている技術はこれです(GitHub - tegnike/nike-ChatVRM: 誰でもAITuberお試しキット)
今回、こちらのURLを参考にして(Dify で RAG を試す|npaka (note.com))DifyへRAGを実装しました。
ナレッジは、こちらのサイトのテキストを使用させて頂きました。
【2020年に改正あり】10分でわかる!ソフトボールの基本ルールを簡単に解説 | みんレク (xn--cbkxbye7k.com)
行った手順
ナレッジ→知識を作成

URLからルールをコピーしてテキストファイルに貼り付けて保存
どんなデータがいいのかも全くわかってないので、
とりあえずこんな感じで↓↓↓

テキストファイルからインポート
を選び、テキストファイルをドラッグアンドドロップ

チャンク設定も、初めてのユーザーは自動がおススメって書いてあったので、自動で
インデックスモードも経済的に
とにかく早く動かしたいw

逆インデックスとかも全然わからん、後日ちゃんと勉強します
とりあえず今日はノータッチ

そんで「保存して処理」を押すと、、、、、

おおおおおおおお
RAGのナレッジこんな簡単にできちゃっていいん!?驚愕。。。
「ドキュメントに移動」します。
スタジオからChatBotつくります
npakaさんのように「最初から作成」しようと思ったのですが、
LLMの設定で「コンテキスト」が上手く反映されず困ったので、
テンプレートから作成→「Knowledge Retreival + Chatbot」 を選択しました。


その他の処理は一緒です。
デバックとプレビューしてみました。

ぜんぜんダメやんw

まあこれは常識よ

ナレッジには
”””
#タイブレーク制度(延長戦)
7回までと定められているソフトボールでは、8回目からタイブレーク制度が導入されています。
タイブレーク制度では、前回で打撃手だった人が2塁に入り、無死2塁の状況でゲームがスタート。これを勝敗が決まるまで繰り返し行います。
タイブレークでの2塁の走者には、代走を送ることも可能です。
”””
と書いたので、合っているような、合ってないような・・・

ナレッジには
”””
#再出場(リエントリー)
ソフトボールでは、スターティングプレイヤーが交代されても、もう一度試合に出場することができます。
ただし、自分が交代した選手と入れ替わるのが条件です。違反すると違反した選手と監督が退場処分となってしまうので気をつけましょう。
”””
と書いたので、ナレッジから取ってきてないな・・・?

ナレッジには
”””
#DP(Designated Player)とFP(Flex Player)
DP(Designated Player)とは、指名打者として10人目に登録できるプレイヤー、FP(Flex Player)は、守備を専門とするプレイヤーです。
DP・FP共に、スターティングメンバーに入れると、再出場が可能になります。
DPは、FPと入れ替わって守備に徹することも可能です。ただし、DPが守備のみ、FPが打撃のみでのプレーはNG。
”””
と書いたので、ハルシネーションしてますね~~~~~
このあたりの精度は今後改善していくとして・・・・
とりあえず少年に喋らせよ~~~
バーチャル団員ゴローに喋らせてみる
AIサービスを選択欄で dify を選択

ねえねえ、ソフトボールのルールを教えてよゴロー君。

ねえねえってば~

全然私の声届いてない・・・切ない・・・( ^ω^)・・・
API通信しない問題の原因と解決策
API通らない問題に数日溶かしましたが、
結論としては、
Dify APIのURL設定で
と記入していたのを、
https://api.dify.ai/v1/chat-messages
と記入しないといけなかった
という初心者設定ミスをやらかしていました。
これでAPI使いこなせるようになったし、もう何でもできるぞ・・・!!!

ちなみにDify選択だとキャラクター設定は反映されない

次はゴロー君の性格をDifyに移植して、ハルシネーション起こさないように教育します~