LlamaIndex

[lama-index]

Framework Python specializzato in RAG: prendere documenti, indicizzarli, far rispondere LLM su quelli. Più semplice di LangChain per quel caso d'uso.

LlamaIndex è un framework Python (e JS) specializzato per applicazioni RAG: prendere documenti tuoi, indicizzarli, e far rispondere un LLM su quei documenti. È il più focused su questo caso d'uso.

Differenza con LangChain:

  • LangChain: generalista, fa di tutto.
  • LlamaIndex: focused su data → LLM (RAG, indici, query engine).

Componenti:

  • Data loaders: PDF, Word, web, database, API. Tantissimi.
  • Indexes: vector index, list index, tree index, knowledge graph.
  • Query engines: come interrogare gli indici.
  • Agents: agenti che usano i dati come tool.

Workflow tipico:

  1. Carico documenti.
  2. Divido in chunks.
  3. Calcolo embedding di ogni chunk.
  4. Salvo in vector database.
  5. Su query: cerco i 5 chunks più rilevanti, li passo all'LLM, ottengo risposta basata su quelli.

Vantaggi:

  • API più semplice di LangChain per casi RAG.
  • Documentazione e tutorial focused.
  • Performance ottimizzata per il caso d'uso.

Svantaggi:

  • Meno flessibile per task non-RAG.
  • Meno community di LangChain.

Quando scegliere uno o l'altro:

  • Devi fare prevalentemente RAG su documenti aziendali → LlamaIndex.
  • Costruisci sistema agentico complesso con molti tool → LangChain.
  • Workflow misti → entrambi (sono compatibili).

Per chi inizia con RAG, LlamaIndex è probabilmente la scelta migliore di partenza.