HyDE手法によるRAGシステムを構築

はじめに

HyDE(Hypothetical Document Embeddings)というRAGを改善する手法を使ったRAGを構築した。 この投稿では、HyDEを試した内容をまとめた。 使用するLLMは、コストを抑えるためgpt-4o-miniを使用した。

[続きを読む]

MistaralAIのモデルがKnowledge graphsに使えるか?

モチベーション

半月前のこの投稿で、ナレッジグラフを使うために、6つのLLMを試した。そこで書いた通り、現時点で使えるLLMは、OpenAIとMistralである。 そこで、MistarlAIのLLMを自分のPC(ローカル環境)で動かしてみた。実際には、ナレッジグラフには使えないことが分かった。 この投稿では、Langchain経由でMistaralAIをAPI経由で使って、ナレッジグラフで使えるか試してみたので、その内容をまとめた。

[続きを読む]

knowledge graphsを使ったRAGへ初めの一歩

はじめに

少し前のこの投稿で、ナレッジグラフを使うため、neo4jをローカル環境(dockerコンテナとして)インストールしたことについて述べた。

この投稿ではネット記事を参考にしながら、簡単なナレッジグラフを構築し、RAGとして使用してみたので、その内容についてまとめたい。今回はネット記事をそのまま試したので初めの一歩とした。

[続きを読む]

PLaMo β版を試す

はじめに

8/8にこの記事を読んだ。それによると、GPT-4を超える日本語性能を持つLLMをPreferred Networksの子会社(PFE)が、商用版提供に先駆けて無料トライアルの提供開始すると。

早速、無料トライアルに申し込んで、受付完了のメールを受け取って、アカウント発行の通知を待っていた。通知メールは、8/9に受け取っていたのだが、自分が見過ごしてしまって、申し込んだこともすっかり忘れていた。最近、この記事を読んで、無料トライアルの件を思い出し、メールを再確認し、アカウント通知を見つけた。

この投稿では、無料トライアル版を試した内容をまとめる。

[続きを読む]

neo4jをインストールしてknowledge graphsを試す

モチベーション

これまで、FAISSやBM25を使ってRAGシステムを構築した。ベクトル検索は比較的簡単に構築できるが、必要な情報が"k"個の文書にない場合もあり、精度向上策を調べていた。たまたまこの記事を読んで、ナレッジグラフに興味を持って、自分でも試してみようと思った。

この投稿では、ナレッジグラフを使うため、nao4jをローカル環境にインストールし、ブラウザから使ってみるまでをまとめる。

[続きを読む]

RAGシステムを構築

はじめに

昨日までに、Wikipediaから天文関連の項目を抽出し、RAG向けにベクトルデータベースとキーワードベースを作成した。ここでは、それらのデータベースを使って、RAGシステムを構築する。

使用するLLMは、ChatGPT(gpt-4o)とLlama-3-ELYZA-JP-8Bを使う。

[続きを読む]

WikipediaダンプデータからRAG向けテキストデータ作成

モチベーション

LangChainを使ってRAGを試しているのだが、確認用に使用するデータに何を使おうかと考えていたところ、wikipediaのダンプデータを使うことにした。全体ではボリュームを大きいので、自分の興味のある天文関係のカテゴリーのデータを使うことにした。

ここでは、wikipediaダンプデータから特定のカテゴリーのデータのみを取り出す一連の手順をまとめた。

[続きを読む]

LlamaIndexを使ってRAGを試す

モチベーション

Chatbot UIを試したこの投稿で、今後挑戦したいことの一つにRAG(Retrieval Augmented Generation)との連携と述べた。この投稿ではLlamaIndexを使ってRAGを実現する方法についてまとめた。

実は昨年末にLangchainを使ってRAGを試してみた。その後、LlamaIndexとのキーワードを良く聞いてきたので、今回LlamaIndexを使ってRAGを実現することにした。

[続きを読む]