Farfalle
Open-source AI search engine with local model support
Farfalle is an open-source AI-powered search engine that can run with local language models. It provides conversational, sourced answers while keeping queries on your own infrastructure.
Key features
- Run with local or cloud LLMs
- Cited conversational answers
- Self-hostable search pipeline
- Expert agent modes
Pros & cons
Strengths
- Supports fully local operation
- Clean UI
Trade-offs
- Newer project with rough edges
Farfalle replaces
Last reviewed Sep 13, 2026 · 864 words
Farfalle is a pipeline rather than a product: a search backend fetches 5 to 10 web results, a language model reads them and writes a cited answer, and a chat UI shows you both. Every one of those pieces can stay on your own hardware, which is the entire point. Run it with SearXNG as the search provider and Ollama as the model, and you have a Perplexity-style answer engine in which no query leaves your network. Run it with the cloud options it also supports (OpenAI, Groq, Tavily, Serper) and you have a nicer front end to services that already see your queries, which is a legitimate but different thing.
What the fully local stack costs
The listed 1 GB minimum is for Farfalle itself: a Next.js frontend, a FastAPI backend and an optional Redis for rate limiting. The model is the expensive part and it is not included in that number. An 8B-parameter model at 4-bit quantisation, which is the floor for answers that do not embarrass you, wants about 6 GB of RAM or VRAM through Ollama and produces 5 to 15 tokens a second on a modern CPU, or 40 plus on a mid-range GPU. Add SearXNG at around 200 MB. Realistically that is a 16 GB machine for a usable local setup and a GPU if you want answers in under 10 seconds. Sizing models is its own topic; the short version is that a 3B model makes Farfalle feel fast and wrong, and a 70B model makes it feel right and slow.
Setup is a compose file and an env file
Clone the repository, copy .env-template to .env, and set three things: SEARCH_PROVIDER=searxng, SEARXNG_BASE_URL pointing at your instance, and OLLAMA_HOST (the default assumes host.docker.internal:11434, which works on Docker Desktop and needs an extra_hosts entry on Linux). Then docker compose -f docker-compose.dev.yaml up -d starts the frontend on port 3000 and the backend on 8000. In the UI, pick a local model from the dropdown; the project ships presets for the Llama 3, Gemma, Mistral and Phi-3 families and reads whatever else Ollama has pulled. SearXNG needs its JSON output format enabled in settings.yml (formats: [html, json]) or the backend gets HTML and returns nothing; that single line is the most common reason a first run produces empty answers.
Expert mode is the interesting feature and the slowest one
Ordinary mode does one search and one generation. Expert mode has the model first decompose your question into sub-queries, search each, then synthesise, which turns "compare the power draw of an N100 and a Raspberry Pi 5 under load" from a shallow paragraph into an answer with numbers from several pages. It also multiplies model calls by 3 to 5, so on CPU inference a query can take a minute or more. It is worth it for research questions and wasteful for lookups; toggle it per query rather than leaving it on. Answers cite sources inline and show the fetched pages in a sidebar, and related-question suggestions appear after each answer, which are the two Perplexity habits people miss most when they switch.
The rough edges, stated plainly
This is a 2024 project largely built by one developer, and the pace of commits has been uneven since. There is no user system, no history beyond what the browser keeps locally, and no admin panel; configuration is the env file and a restart. Error handling when a model times out is thin. Search quality is entirely SearXNG's, so tune SearXNG's engines first if results look poor. If you need multi-user accounts, saved chats and a maintained release cadence, the comparable projects are Morphic, which is the same idea with a more active codebase, and Perplexica, which adds more search modes. Farfalle wins on simplicity of the stack and a UI that gets out of the way, and loses on everything that requires ongoing maintenance. Check the commit log before you commit to it.
What it is a replacement for
The honest framing is not Google Search but Perplexity. Farfalle does not index the web; it borrows results from engines through SearXNG and adds a synthesis layer. What it replaces is sending your questions to a hosted answer engine that retains them. If that is your concern, the Perplexity alternatives list is the right starting point and Farfalle is the smallest thing on it that works fully offline.
What I'd do
Run it if you already have SearXNG and Ollama up and a GPU with 8 GB or more of VRAM; it is a compose file and 20 minutes on top of that stack, and the local-only answer engine it gives you is genuinely useful for research questions. Without the GPU, try it with a cloud model key to see if you like the interface, but do not expect a CPU-only box to make it pleasant. If you want a project that will still be getting releases in a year, look at Morphic first and keep Farfalle as the lighter alternative.
Compare Farfalle
16 head-to-head comparisons.
- Farfalle vs SearXNG
- Farfalle vs Vane
- Farfalle vs SearX
- Farfalle vs Whoogle Search
- Farfalle vs Morphic
- Farfalle vs YaCy
- Farfalle vs Stract
- Farfalle vs Marginalia Search
- Farfalle vs Mwmbl
- Farfalle vs Websurfx
- Farfalle vs LibreX
- Farfalle vs 4get
- Farfalle vs Araa Search
- Farfalle vs LibreY
- Farfalle vs MetaGer
- Farfalle vs PeARS
Similar search engines apps
Elasticsearch
Search EnginesDistributed search and analytics engine
Replaces Algolia, Splunk
Meilisearch
Search EnginesFast, typo-tolerant search engine for applications
Replaces Algolia, Elasticsearch
Milvus
Search EnginesOpen-source vector database built for scalable similarity search
Replaces Pinecone, Elasticsearch
SearXNG
Search EnginesPrivacy-respecting metasearch engine aggregating many sources
Replaces Google Search, Bing
Vane
Search EnginesAI-powered search engine, formerly Perplexica
Replaces Google Search
Qdrant
Search EnginesHigh-performance open-source vector search engine
Replaces Pinecone, Algolia