🧠

Knowlegde Base Amazon BedrockのEmbeddings modelが追加されたので、Pineconeで試してみた

2024/01/21に公開

こんにちは。そのだです。
RAGを構築しているときに「Knowlegde Base Amazon BedrockのEmbeddings modelが追加された」というpostを見たので、Pineconeを使用して試してみました。
https://x.com/minorun365/status/1748923130117337109?s=20
Pineconeの初期設定に関しては別の記事にて解説予定ですので、今回は作成したと仮定して話していきます。

前提条件

  • Embeddings model: Embed Multilingual v3
  • PineconeはSign Upが完了している
  • Knowlegde Base Amazon BedrockでPineconeを使用するときに設定するsecret managerを作成している

Pineconeの設定

ここではPineconeのindexを作成します。
トップページの「Create Index」をクリックする。

下の画像の通りパラメータを入力する。
このとき、Dimensionsは「1024」で設定する。

設定が完了したら、「Create Index」をクリックする。
作成が完了したら、Connection stringをコピーする。

これはKnowlegde Base Amazon Bedrockの設定で使用するので、どこかにメモとっておいてください。

Knowledge base for amazon bedrockの設定

ここではKnowledge base for amazon bedrockを作成します。
Knowledge baseの画面で「create knowledge base」をクリック。
(東京リージョンはまだ使用できないので、オレゴンやバージニア北部などのリージョンを選ぶ必要あり)

Provide knowledge base details

任意のKnowledge base nameを入力する。
任意のIAM permissionsを選択する。

Set up data source

任意のDataSrouceを選択する。
任意でChunkサイズを設定する場合、Embed Multilingual v3だとMaxが512であることに注意してください。

Select embeddings model and configure vector store

Embeddings modelで「Embed Multilingual v3」を選択する。
前まではTitanしかありませんでしたが、このようにきちんと追加されています。

Pineconeを設定するために、「Choose a vector store you have created」をクリックし、Pineconeを選択します。
「Connection string」で先ほどコピーしたConnection stringを入力する。
「Credential secret ARN」はsecret managerのARNを入力する。

Metadata field mappingは'text'を'metadata'と入力すればいいと思います。

Review and create

内容を見て良さそうだったら「Create knowledge base」をクリックしたら作成されます。

作成後

作成したKnowledge baseの詳細に行き、設定したData sourceのSyncを行う。

Syncが完了したらModelを選択し、実際にTest Knowledgebaseにて検証を行う。

実際に触ってみた

弊社にはメンバー紹介ページがあるのですが、僕のページをRAGのデータとして食わせて、正しい内容が返ってくるのかどうかを検証してみました。
https://fusic.co.jp/members/108

まずは、苑田が誰なのか聞いてみましょう。

私は2021年の4月に新卒として入ったため、正しいです。また、京都出身なので、これに関しても正しいです。
次に仕事の担当範囲について聞いてみましょう。

Rubyを用いたWebアプリケーションの開発やAWSを利用したインフラ構築を行っているので、これも正しいです。
次に趣味について聞いてみましょう。プライベートの部分で「対人ゲームが趣味」とこそっと書いています。

謎の人物「Yoneda Asaaki」が爆誕し、いきなり英語になりましたが、内容としてはあっています。
DeepLにて翻訳してみましたが、ちゃんと内容が一致していることがわかると思います。

それでは全然関係ない話をしてみましょう。
本は読んでいませんが、私が読んだ本について聞いてみます。

また、「Yoneda Asaaki」が出てきましたが、最近読んだ本に関しての情報は記載していないので、これも正しいです。
DeepLにて翻訳してみましたが、ちゃんと内容が一致していることがわかると思います。

謎の人物が出てきたり、いきなり英語になった部分に関しては調査が必要ですが、追加されたEmbeddings modelでKnowlegde Base Amazon Bedrockが構築できました。

まとめ

Knowlegde Base Amazon BedrockのEmbeddings modelが追加されたので、Pineconeで試してみた。いきなり謎の人物が出てきたり、英語になったりしましたが、なんとか構築することができました。ぜひ試してみてください。

Discussion