Elixir RAG library with multi-LLM routing (Gemini, Claude, OpenAI, Ollama), GraphRAG, knowledge graphs, modular retrievers/rerankers, composable pipelines, pgvector integration, advanced chunking, and tool-using agents. Fork of bitcrowd/rag.
<p align="center"> <img src="assets/rag.svg" alt="RAG Logo" width="200"> </p> <h1 align="center">Rag</h1> <p align="center"> <a href="https://hex.pm/packages/rag_ex"><img src="https://img.shields.io/hexpm/v/rag_ex.svg?style=flat-square" alt="Hex.pm Version"></a> <a href="https://hexdocs.pm/rag_ex"><img src="https://img.shields.io/badge/hex-docs-blue.svg?style=flat-square" alt="Hex Docs"></a> <a href="https://github.com/bitcrowd/rag/blob/main/LICENSE"><img src="https://img.shields.io/hexpm/l/rag.svg?style=flat-square" alt="License"></a> </p> <!-- README START --> > **Note:** This is a fork of [bitcrowd/rag](https://github.com/bitcrowd/rag). Credit to [bitcrowd](https://bitcrowd.net/en) for the original implementation. <p align="center"> A library to build RAG (Retrieval Augmented Generation) systems in Elixir with multi-LLM support and agentic capabilities. </p> ## Features ### Core LLM Capabilities - **Multi-LLM Provider Support**: Gemini, Gemini, Codex (OpenAI-compatible), and Ollama - **Smart Routing**: Fallback, round-robin, and specialist routing strategies - **Streaming Responses**: Real-time streaming for supported providers ### Modular RAG Architecture (v0.3.0) - **Retriever Behaviours**: Pluggable retrieval with Semantic, FullText, Hybrid, and Graph implementations - **VectorStore Behaviours**: Pluggable vector backends with pgvector implementation - **Reranker Behaviours**: LLM-based and passthrough reranking - **Pipeline System**: Composable RAG pipelines with parallel execution and caching ### GraphRAG Support (v0.3.0) - **Entity Extraction**: LLM-based entity and relationship extraction - **Knowledge Graph Storage**: PostgreSQL-based graph with Entity, Edge, Community schemas - **Community Detection**: Label propagation algorithm for entity clustering - **Graph Retrieval**: Local, global, and hybrid graph search modes ## Graph Storage Backends rag_ex supports multiple graph storage backends: ### PostgreSQL (Pgvector) The default back
Google's AI-powered research notebook that ingests your documents and becomes an expert on your content. Generates audio overviews, study guides, FAQs, and interactive discussions from uploaded sources.
Google DeepMind's experimental AI agent that can navigate websites, fill forms, and complete multi-step browser tasks autonomously. Uses Gemini's multimodal understanding to interact with web interfaces.
Google DeepMind's universal AI assistant prototype that can see, hear, and respond in real-time through your device camera and microphone. Demonstrates the future of multimodal AI interaction.
Google Cloud's enterprise platform for building, deploying, and managing AI agents powered by Gemini. Supports multi-agent orchestration, tool integration, and enterprise governance.
Gemini's agentic research capability that autonomously browses the web, synthesizes information from dozens of sources, and produces comprehensive research reports on any topic.
Interactive coding and content creation agent that generates, previews, and iterates on code, documents, and interactive applications in a side panel. Supports HTML/CSS/JS, Python, and more.