Slide 1

Slide 1 text

Amazon Neptuneを使ってRAGをつくってみた 清水 厚志(Atsushi Shimizu)

Slide 2

Slide 2 text

2 清水 厚志(Atsushi Shimizu) 株式会社HBA ICTソリューション本部 テクニカルエキスパート 2005年入社(20年目)/ 45歳、3人兄弟の父親 好きなこと • 検索技術とAI コミュニティ歴 • Elasticsearch勉強会(2023/04~) • JAWS-UG(2023/09~) • JAZUG(2024/03~)など 発表は個人の見解に基づくものであり、 所属組織を代表するものではありません。 @shimizuxa 自己紹介

Slide 3

Slide 3 text

3 「グラフデータ」って何? AWS Summit 2024 「Amazon Neptune Analytics と 生成AI 活用」より

Slide 4

Slide 4 text

4 「グラフデータ」って何? AWS Summit 2024 「Amazon Neptune Analytics と 生成AI 活用」より

Slide 5

Slide 5 text

5 「Amazon Neptune」って何?

Slide 6

Slide 6 text

6 AWS Summit 2024 「Amazon Neptune Analytics と 生成AI 活用」より 「Amazon Neptune」って何?

Slide 7

Slide 7 text

7 https://diptimanrc.medium.com/amazon-bedrock-part-3-amazon-neptune-graph-database-q-a-langchain-agent-with-amazon- bedrock-and-10f5dde1e2c5 NeptuneでRAGを作れるハンズオン、ありました! ※Neptuneは料金が高いので、終わったらすぐ削除しましょう NeptuneでRAGをつくって動作確認

Slide 8

Slide 8 text

8 Pipでのライブラリ導入は多少手順を直したが、ハンズオン通り ベクトル検索なしで関連する情報を自然言語で得られた。 グラフの構造をもとにCypherクエリを生成していることもわかった。 chain = NeptuneOpenCypherQAChain.from_llm(llm = llm, graph=graph,verbose=True,) chain.run("who played in Top Gun ?") > Entering new NeptuneOpenCypherQAChain chain... Generated Cypher: MATCH (p:Person)-[:ACTED_IN]->(m:Movie {title:'Top Gun'}) RETURN p.name Full Context: {'ResponseMetadata': {'HTTPStatusCode': 200, 'HTTPHeaders': {'transfer-encoding': 'chunked', 'content-type': 'application/json;charset=UTF-8'}, 'RetryAttempts': 0}, 'results': [{'p.name': 'Tom Cruise'}, {'p.name': 'Kelly McGillis'}, {'p.name': 'Val Kilmer'}, {'p.name': 'Anthony Edwards'}, {'p.name': 'Tom Skerritt'}, {'p.name': 'Meg Ryan'}]} > Finished chain. ' Based on the provided information, the main actors in Top Gun were Tom Cruise, Kelly McGillis, Val Kilmer, Anthony Edwards, Tom Skerritt, and Meg Ryan.' NeptuneでRAGをつくって動作確認

Slide 9

Slide 9 text

9 ナレッジグラフやビヘイビアグラフなどを用いることで、 事実や事象の関連に基づいた多層的な検索ができるため、より高度な インサイトをAIの自然言語問い合わせで得ることができるようになる。 グラフデータをAIで使うモチベーション AWS Summit 2024 「AWS 環境におけるセキュリティ調査の⾼度化と生成AI 活用」より

Slide 10

Slide 10 text

10 ・グラフデータは、データの関係性を表現できるデータ構造である ・Neptuneは、AWSが提供するグラフデータベースサービスで、 LangChainにも統合されているので、簡単にRAGで利用できる ・グラフを利用すれば、より多層的な検索ができるようになるので、 AIのユースケースがより広がっていくかも! まとめ LlamaIndexの「PropertyGraphStore」がNeptuneでも 使えるようになる(8/18)など、進化中! 今のうちに、皆さんも触ってみませんか?

Slide 11

Slide 11 text

No content