Show HN: RAG in 3 Lines of Python

Show HN (score: 7)
Found: December 04, 2025
ID: 2557

Description

Other
Show HN: RAG in 3 Lines of Python Got tired of wiring up vector stores, embedding models, and chunking logic every time I needed RAG. So I built piragi.

  from piragi import Ragi

  kb = Ragi(\["./docs", "./code/\*\*/\*.py", "https://api.example.com/docs"\])

  answer = kb.ask("How do I deploy this?")
That's the entire setup. No API keys required - runs on Ollama + sentence-transformers locally.

What it does:

  - All formats - PDF, Word, Excel, Markdown, code, URLs, images, audio

  - Auto-updates - watches sources, refreshes in background, zero query latency

  - Citations - every answer includes sources

  - Advanced retrieval - HyDE, hybrid search (BM25 + vector), cross-encoder reranking

  - Smart chunking - semantic, contextual, hierarchical strategies

  - OpenAI compatible - swap in GPT/Claude whenever you want
Quick examples:

  # Filter by metadata
  answer = kb.filter(file_type="pdf").ask("What's in the contracts?")

  #Enable advanced retrieval

    kb = Ragi("./docs", config={
     "retrieval": {
        "use_hyde": True,
        "use_hybrid_search": True,
        "use_cross_encoder": True
     }
   })


  # Use OpenAI instead  
  kb = Ragi("./docs", config={"llm": {"model": "gpt-4o-mini", "api_key": "sk-..."}})
Install:

  pip install piragi
  PyPI: https://pypi.org/project/piragi/
Would love feedback. What's missing? What would make this actually useful for your projects?

More from Show

Show HN: Marten – Elegant Go web framework (nothing in the way)

Show HN: Marten – Elegant Go web framework (nothing in the way)

Show HN: I vibecoded an ARM64 operating system that boots on real hardware

Show HN: I vibecoded an ARM64 operating system that boots on real hardware VibeOS is a retro operating system that boots on qemu and Pi Zero 2W. I built this with Claude code in about 4 weeks.

Show HN: Seapie – a Python debugger where breakpoints drop into a REPL

Show HN: Seapie – a Python debugger where breakpoints drop into a REPL

Show HN: Memory Graph – Interactive Python execution and memory visualizer

Show HN: Memory Graph – Interactive Python execution and memory visualizer Hello everybody,<p>I built Memory Graph to help students (and myself) build a correct mental model of Python references, mutability, and copying, and to make debugging data structures less “print-driven”. It’s inspired by Python Tutor, but focuses on clearer graphs and on running locally in many different environments and debuggers. The Memory Graph Web Debugger quickly turns your web browser into a Python debugger where the whole program state is visualized in each step, clearly showing aliasing and the structure of the data, giving insight that is hard to get with just printing.<p>Some interesting examples:<p>- Recursion, decimal to binary conversion: <a href="https:&#x2F;&#x2F;memory-graph.com&#x2F;#codeurl=https:&#x2F;&#x2F;raw.githubusercontent.com&#x2F;bterwijn&#x2F;memory_graph&#x2F;refs&#x2F;heads&#x2F;main&#x2F;src&#x2F;binary_convert.py&amp;timestep=1.0&amp;play" rel="nofollow">https:&#x2F;&#x2F;memory-graph.com&#x2F;#codeurl=https:&#x2F;&#x2F;raw.githubusercont...</a><p>- Binary Tree data structure: <a href="https:&#x2F;&#x2F;memory-graph.com&#x2F;#codeurl=https:&#x2F;&#x2F;raw.githubusercontent.com&#x2F;bterwijn&#x2F;memory_graph&#x2F;refs&#x2F;heads&#x2F;main&#x2F;src&#x2F;bin_tree.py&amp;timestep=0.2&amp;play" rel="nofollow">https:&#x2F;&#x2F;memory-graph.com&#x2F;#codeurl=https:&#x2F;&#x2F;raw.githubusercont...</a><p>- Cocktail Shaker Sort: <a href="https:&#x2F;&#x2F;memory-graph.com&#x2F;#codeurl=https:&#x2F;&#x2F;raw.githubusercontent.com&#x2F;bterwijn&#x2F;memory_graph&#x2F;refs&#x2F;heads&#x2F;main&#x2F;src&#x2F;cocktail_sort.py&amp;breakpoints=16,45&amp;continues=1&amp;timestep=0.2&amp;play" rel="nofollow">https:&#x2F;&#x2F;memory-graph.com&#x2F;#codeurl=https:&#x2F;&#x2F;raw.githubusercont...</a><p>Here you can find some difficult Python Data Model exercises for use in education where Memory Graph helps explain the correct answer:<p><pre><code> https:&#x2F;&#x2F;github.com&#x2F;bterwijn&#x2F;memory_graph_videos&#x2F;blob&#x2F;main&#x2F;exercises&#x2F;exercises.md</code></pre>

No other tools from this source yet.