On this page
Overview
Haystack is a Python orchestration framework for production-ready LLM applications. Retrieval, indexing, prompting, generation, memory, and tools are explicit components that can be connected into Pipelines and Agent workflows with branches, loops, synchronous or asynchronous execution.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Key features
Connect modular components into explicit RAG pipelines
Haystack connects retrievers, document stores, prompt builders, generators, and other components into Pipelines with explicit data flow and synchronous or asynchronous execution.
Combine Agents, tools, memory, and lifecycle hooks
Agents support tool calling, memory, lifecycle hooks, and tracking for steps, token usage, and tool calls, allowing controlled agentic workflows with branching and loops.
Sources: [1]
Best fit
Before adoption
Manage provider credentials, costs, data boundaries, and telemetry
The Get Started examples pass model-provider API keys through Haystack Secrets, while the README states that anonymous component-usage telemetry is collected. Production deployments should review credentials, external data flows, cost controls, and telemetry settings.
Official sources
- [1]Haystack v3.3.0 README(2026-10-04)
- [2]Haystack v3.3.0 Get Started(2026-10-04)
- [3]Haystack v3.3.0 package metadata(2026-10-04)
- [4]Haystack v3.3.0 release(2026-10-04)
- [5]Haystack Apache-2.0 license(2026-10-04)
Supplemental curator note
Haystack fits RAG and agent systems where retrieval and generation should remain explicit component graphs rather than a black box. When integrating external models or vector databases, define credentials, costs, and data boundaries separately, and opt out of anonymous telemetry if it is not appropriate for the environment.
Try it in 3 steps
- 1
Create an isolated Python virtual environment
Use Python 3.10 or newer as required by Haystack 3.3.0.
python3 -m venv .venv && . .venv/bin/activate - 2
Install Haystack 3.3.0
Pin the core framework without configuring any external LLM-provider credentials yet.
python -m pip install haystack-ai==3.3.0 - 3
Run in-memory BM25 retrieval without an API key
Validate the DocumentStore and Retriever components without calling an external model API. Review provider credentials, cost, and data destinations before adding an LLM.
python -c 'from haystack import Document; from haystack.document_stores.in_memory import InMemoryDocumentStore; from haystack.components.retrievers import InMemoryBM25Retriever; s=InMemoryDocumentStore(); s.write_documents([Document(content="Haystack builds RAG pipelines"),Document(content="Dask runs parallel computing")]); print(InMemoryBM25Retriever(document_store=s).run(query="RAG")["documents"][0].content)'
Growth
Growth trends · Last 30 days
26,647 Stars
Trend data is still being collected.
Development activity
Last 90 days · weekly
- Commits (last 30 days)
- 255
- Open PRs
- 58
Development activity is still being collected.
Built with
Categories and tags
GitHub data
GitHub dataView detailed GitHub data
GitHub Topics
- semantic-search
- information-retrieval
- ai
- python
- large-language-models
- generative-ai
- llm
- rag
- retrieval-augmented-generation
- agents
- orchestration
- agent-framework
- Stars
- 26,647
- Forks
- 3,228
- Watchers
- 166
- Open issues
- 96
- Contributors
- 446
- Owner type
- Organization
- Primary language
- Python
- License
- Apache-2.0
- Repository last updated
- Oct 2, 2026
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- CrewAI59,327 Stars
5 shared tag(s) · 2 shared category(s) · Same language
combine role-based Crews with event-driven Flows to build multi-agent automation
Python - Dify157,734 Stars
5 shared tag(s) · 2 shared category(s)
design and publish AI workflows, retrieval, and agents on one platform
TypeScript - PipesHub3,811 Stars
5 shared tag(s) · 1 shared category(s) · Same language
preserve source-system permissions at query time while exposing enterprise knowledge to search, RAG, and MCP
Python - Skyvern23,131 Stars
4 shared tag(s) · 2 shared category(s) · Same language
automate browser workflows with LLM reasoning and visual understanding instead of fixed selectors
Python - Langflow155,477 Stars
4 shared tag(s) · 1 shared category(s) · Same language
make AI workflows visible, then publish them as APIs and MCP tools
Python - LangChain147,390 Stars
4 shared tag(s) · 1 shared category(s) · Same language
compose models, tools, retrieval, and middleware into agents
Python
Report incorrect information
Tell us if any listing information is incorrect or outdated.