地平線まで行ってくる。

記録あるいは忘備録。時には検討事項。

RAG

Open NotebookをollamaとさくらのAI Engineで試してみる。

GoogleのNotebook LMは大変有用なサービスです。しかし、利用しようにも利用できない事情が絡む場合があります。そこで、最近日本語の紹介文も増えてきたOpen Notebookを試してみます。 触った結果: ollamaでLLMとしてGemma3:4bでトライしましたが、回答精…

Doclingを使って図入りmarkdownを作成してみる。#2

図入りmarkdownに手元の資料を整えておくと便利だなと思って、改めてmakdown化を見直し見ました。あっという間に進歩があるかもしれないので、PyMuPDF4LLMらと改めて比較しつつ試行錯誤しましたが、Doclingが良好でした。そのため、Doclingのラッパーに落ち…

メモ:いろんなRAGを試せるようにしてみる。

目先を変えて色んなRAG方式による回答を試したいので、RAGお試しを作ってみることにしました。汎用的ではありませんが、新しい論文がでたらGemini CLIあたりを使って、追加実装できるような程度に設計用のドキュメントを用意して実装してみました。basicなRA…

簡単なFastAPIを利用したMCP RAG Serverを作成してみる。

Model Context Protocol (MCP)に準拠したRAG(Retrieval-Augmented Generation)機能を持つMCPサーバを機能を絞って簡単なものを作ってみます。ローカルで運用するのではなく、別サーバーで運用できるようにします。 ここのところお気に入りのjules君と作業…

メモ:Google julesのお題としてRAG戦略のテストができるものを作ってみた。

julesはGoogleのAIエージェントです。ベータテスト中のため、ごりごりお試しできそうだったので、RAGのお試し環境を構築してみます。 以下の様な機能を持つようなお試し環境をかんがえました。 0. 簡単なUIでRAGをお試しできる。 1. User管理ができ、User別…

メモ:論文を見ながらRAGを実装してみる。RAG+: Enhancing Retrieval-Augmented Generation with Application-Aware Reasoning

RAG+: Enhancing Retrieval-Augmented Generation with Application-Aware Reasoningという手法の論文が発表されていましたので試してみます。とにかく、動くところまで実装してみます。この方法のポイントは、RAGとして与えるコンテキストを、KnowledgeとAp…

メモ:RAGのハイブリッド検索を構築してみる

RAGのハイブリット検索を試してみます。ハイブリットということで複数の検索方法で検索した結果をRAGで利用するというものです。Langchainでは、multiple retrieversとして、EmsambleRetrieverを使った実装が紹介されています。 python.langchain.com ベクト…

メモ:RAGを実装してみる。理解、分解、再構築。

これまで、論文をヒントに幾つかのRAGを作成しました。折角なので、それらの機能を分解し、それぞれの機能を組み合わせてみます。今回もローカルLLMで挑戦です。ollamaで動作させたgemma3:4b-it-qatを利用します。4Bクラスとしては高い性能を有していますが…

メモ:Rag実装してみる。AgentRagだったんだけど・・・。

引き続き、RAG実装で遊んでみます。AgenticRagをChatGPTに読ませて骨子を確認したら、『「Retrieval → Evaluation → Query Refinement → 再検索 → Response Synthesis」という順序が、まさに論文中の処理パイプラインそのものになっています。各フェーズの出…

メモ:論文を見ながらRAGを実装してみる。

LLMを使ったプログラムはすっかり普通になりました。ローカルLLMでも、利用しやすいものも出てきて気軽に利用できます。一方で、RAGは様々な方法が提案がされています。読んだだけで、さくっと実装できて、利用できそうなコードなのかという感触は早めに得た…