openai/chatgpt-retrieval-plugin
OfficialThe ChatGPT Retrieval Plugin lets you easily find personal or work documents by asking questions in natural language.
OpenAI's ChatGPT Retrieval Plugin earned 21,201 GitHub stars as the official reference for RAG backends in GPT apps. Developers deploy it to add granular control over chunking, embeddings, and 12+ vector stores to Custom GPTs and Assistants API -- beating native retrieval's black box.
Best for
Our Review
ChatGPT Retrieval Plugin is OpenAI's FastAPI server for semantic document retrieval -- 21,201 GitHub stars and MIT license. It provides full control over RAG pipelines where ChatGPT's native file upload acts as a black box.
What ChatGPT Retrieval Plugin does:
- •Semantic search query personal or org documents with natural language for precise retrieval in GPT apps.
- •12+ vector DB integrations connect Pinecone, Weaviate, Chroma, Qdrant, Milvus, Redis, PGVector, Elastic, and more.
- •FastAPI OpenAPI server plug directly into Custom GPTs via Actions schema or Assistants API retrieval.
- •Multi-embedding support use OpenAI embeddings or swap in custom models for flexibility.
- •Batch document upload scripts handle PDF, text, and code files for quick indexing.
- •Conversation memory store chat context to maintain retrieval relevance across turns.
- •PII detection optional service flags sensitive data in documents before indexing.
Auth and deployment:
- •Bearer token auth secure API access with simple tokens.
- •OAuth 2.0 support enable org-scale access control.
Getting started:
Clone the repo, install with pip install -e ., set env vars for OpenAI API key and vector DB. Run uvicorn chatgpt_retrieval_plugin.server:app. Upload docs via /documents endpoint, then point Custom GPT Actions to http://localhost:8000/openapi.json. Test queries at /query.
Limitations:
Last push in July 2024 means no active maintenance or new features. You deploy and manage vector DB separately, adding ops overhead. Native ChatGPT retrieval covers most cases without setup -- use this only for custom needs. No built-in UI or monitoring.
Cons
- Last updated July 2024 -- treat as reference code, not production-ready with ongoing fixes.
- Requires Python env, FastAPI, and separate vector DB setup -- steep for quick prototypes.
- No versioned releases or Docker image -- manual deployment each time.
- Narrow scope: RAG server only, no agentic features like LangChain.
Our Verdict
OpenAI's ChatGPT Retrieval Plugin stands as the reference FastAPI implementation for custom RAG in Custom GPTs and Assistants API.
Developers gain precise control over document chunking, embeddings, and vector stores like Pinecone or Chroma. It integrates via OpenAPI schema for zero-code changes in GPT Actions. Skip if native file upload meets your needs.
Choose it when black-box retrieval limits your pipeline. Native works for simple uploads; plugin fits advanced RAG with DB choice.
Frequently Asked Questions
What is the ChatGPT Retrieval Plugin and how does it work?
ChatGPT Retrieval Plugin runs a FastAPI server that indexes documents into vector DBs for semantic search. You upload files via batch scripts, query with natural language, and integrate the OpenAPI endpoint into Custom GPTs or Assistants API. OpenAI built it as a reference for granular RAG control.
Is the ChatGPT Retrieval Plugin still maintained in 2026?
No active maintenance exists since the last push on July 4, 2024. It remains functional as reference architecture in 2026 for developers forking or adapting the code. OpenAI shifted focus to native Assistants API retrieval.
ChatGPT Retrieval Plugin vs native ChatGPT file upload -- which should I use?
Native ChatGPT file upload handles basic retrieval without setup. Plugin adds custom vector DBs and embeddings control. Choose native for speed, plugin when you need Pinecone integration or custom chunking.
What vector databases does the plugin support?
Plugin supports 12+ vector DBs including Pinecone, Weaviate, Chroma, Qdrant, Milvus, Redis, PGVector, and Elasticsearch. Pick based on your scale -- Pinecone for serverless, Chroma for local dev. All connect via config env vars.
How do I deploy the ChatGPT Retrieval Plugin for a Custom GPT?
Install via `pip install -e .[all]`, set `OPENAI_API_KEY` and DB creds, run `uvicorn chatgpt_retrieval_plugin.server:app --host 0.0.0.0 --port 8000`. Copy `/openapi.json` into Custom GPT Actions. Upload docs first with `python ingest.py`.
What is chatgpt-retrieval-plugin?
OpenAI's ChatGPT Retrieval Plugin earned 21,201 GitHub stars as the official reference for RAG backends in GPT apps. Developers deploy it to add granular control over chunking, embeddings, and 12+ vector stores to Custom GPTs and Assistants API -- beating native retrieval's black box.
What license does chatgpt-retrieval-plugin use?
chatgpt-retrieval-plugin uses the MIT license.
What are alternatives to chatgpt-retrieval-plugin?
Search My AI Guide for similar tools in this category.
Great for: Pro Vibe Builders
Skip if: You need something more beginner-friendly or guided
Open source & community-verified
MIT licensed — free to use in any project, no strings attached. 21,208 developers have starred this, meaning the community has reviewed and trusted it.
Reviewed by My AI Guide for relevance, quality, and active maintenance before listing.