pathwaycom/llm-app is now serviette: a YAML-configured live RAG server on Pathway, with the old templates moved out
Ready-to-run cloud templates for RAG, AI pipelines, and enterprise search with live data. Docker-friendly.Always in sync with Sharepoint, Google Drive, S3, Kafka, PostgreSQL, real-time data APIs, and more.
At a glance
- What is it?
- The repository that hosted Pathway's llm-app templates has been renamed and repurposed as serviette, a no-code RAG server that keeps answers in sync with a folder of documents. Anyone arriving for the old templates needs to go elsewhere; anyone evaluating serviette needs a Pathway license key, pip 23.1 or newer, and a clear view of what it does not do yet.
- Who is it for?
- serviette fits teams that want a self-hosted question-answering service over a document folder, Google Drive, S3 or SharePoint that picks up edits and deletions without a re-index step, configured in one YAML file. It does not fit anyone who needs conversation memory, user accounts or a hosted service today, and people looking for the old llm-app templates should go to examples/llm-app in the Pathway repository.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 3 days ago.
- What is it written in?
- Mainly Jupyter Notebook, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on November 13, 2026, and from our analysis. They are not legal advice.
Star history
- pathwaycom/llm-app58,710 ★ · -247
| Repository | 2026-07-28 | 2026-11-13 |
|---|---|---|
| pathwaycom/llm-app | 59k | 58.7k |
-247 Stars in the last 108 days, measured from the daily GitHub snapshot. Compare with other projects
Editorial analysis
The llm-app templates moved to the Pathway repository
The release v0.1.8, published on 2 November 2026, carries the note that llm-app is now serviette. The repository at pathwaycom/llm-app now holds a different project, and the ready-to-run cloud templates, cookbooks and examples it used to contain are still available in full in the main Pathway repository under examples/llm-app. Bookmarks and tutorials that point to template folders here will no longer match what you find. If you came for a specific RAG or enterprise search template, go to github.com/pathwaycom/pathway/tree/main/examples/llm-app instead of cloning this repository. The last push was on 2 November 2026.
Every command expects a Pathway license key
serviette is a thin layer over the Pathway Live Data Framework, and Pathway needs a license key. The key is free and comes from pathway.com/framework/get-license after a GitHub or LinkedIn sign-in. Every serviette command expects it in the PATHWAY_LICENSE_KEY environment variable. That is a sign-up step before you can even try the demo, and in an air-gapped or automated setup you have to obtain and inject the key yourself. The package requires CPython 3.10 or newer, because Pathway does.
The demo indexes a fictional coffee-machine company and watches the folder
The fastest trial is four commands:
pip install serviette
export PATHWAY_LICENSE_KEY=... # free: https://pathway.com/framework/get-license
export OPENAI_API_KEY=sk-...
serviette demo --embedder openai # → chat at http://localhost:8989This indexes a small bundled corpus about a fictional coffee-machine company into ./serviette-demo/docs and opens a chat at port 8989. Editing or adding files in that folder while it runs changes the answers within seconds. Use pip 23.1 or newer first; older pip lacks resolver improvements this dependency tree needs and can take hours to resolve it.
The [local] extra brings PyTorch, and one flag decides between 0.8 GB and 5 GB
For your own documents with free local embeddings, the install is:
pip install "serviette[local]" --extra-index-url https://download.pytorch.org/whl/cpuThe [local] extra is the wizard's default and pulls in PyTorch. The extra index URL selects the CPU build, about 0.8 GB, instead of the default build with CUDA libraries, about 5 GB. Drop the flag only if you will embed on an NVIDIA GPU. If you plan to embed with OpenAI, a plain pip install serviette is enough. Configuration lives in one YAML file, which serviette wizard can generate.
One port serves both the chat UI and the /api/v1 REST API
The server hosts the web chat on / and the versioned REST API under /api/v1 on the same port. A retrieval call looks like this:
curl -X POST http://localhost:8989/api/v1/retrieve \
-H 'Content-Type: application/json' \
-d '{"query": "how does persistence work?", "k": 5}'The stack is two processes, an indexer and a server. The up command supervises both for convenience; production deployments run serviette indexer and serviette server separately, so plan for two services rather than one.
DuckDB by default, seven other vector stores behind the same YAML
The default backend is DuckDB, an embedded database in a single local file with built-in vector search and nothing extra to run. The other seven are pgvector, Qdrant, Milvus, ChromaDB, Weaviate, Pinecone and MongoDB Atlas Vector Search, all eight under integration tests against real instances. Writes go through Pathway's native connectors, so a file edit or deletion becomes a real upsert or delete in the store. Sources include the local filesystem, Google Drive, S3 or MinIO, SharePoint, and anything PyFilesystem opens, such as FTP, SFTP, WebDAV and ZIP archives, mixed in one config.
It answers one question at a time, with no memory, accounts or hosting
serviette answers each question from the current state of the documents and nothing else. Conversation memory, user accounts and a hosted offering are not built in; the project invites requests for them through issues, Discord or [email protected]. If you need follow-up questions that refer to earlier answers, or per-user access control, you have to build those around it. Data handling depends on your choices. With the default local embedder, documents, embeddings and the index stay on your machine or chosen database, and only the passages retrieved for a question go to the model API that writes the answer, if you configure one. Choosing an API embedder sends the document text through that API as well.
Editorial conclusion
serviette fits teams that want a self-hosted question-answering service over a document folder, Google Drive, S3 or SharePoint that picks up edits and deletions without a re-index step, configured in one YAML file. It does not fit anyone who needs conversation memory, user accounts or a hosted service today, and people looking for the old llm-app templates should go to examples/llm-app in the Pathway repository. Before adopting it, get the free Pathway license key, upgrade pip to 23.1 or newer, and decide whether embeddings run locally or through an API, because that choice decides whether document text leaves your machine.
Frequently asked questions
What is llm app, the pathwaycom/llm-app repository?
pathwaycom/llm-app is now serviette, a no-code RAG server built on Pathway that answers questions from your documents and cites sources. The former llm-app templates are in the Pathway repository under examples/llm-app.
Where did the pathwaycom/llm-app templates go?
All templates, cookbooks and examples are still available in full in the Pathway repository under examples/llm-app. Release v0.1.8 marked the rename of llm-app to serviette.
Does serviette from pathwaycom/llm-app need a license key?
Yes. It runs on Pathway, which needs a free license key from pathway.com/framework/get-license, and every command expects it in PATHWAY_LICENSE_KEY.
Which vector databases does serviette (pathwaycom/llm-app) support?
Eight: DuckDB as the default, plus pgvector, Qdrant, Milvus, ChromaDB, Weaviate, Pinecone and MongoDB Atlas Vector Search.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/pathwaycom-llm-app)Star history chart for your README
[](https://hysenlabs.com/projects/pathwaycom-llm-app)Was this useful?