Our great sponsors
-
dispatch
All of the ad-hoc things you're doing to manage incidents today, done for you, and much more!
-
chatgpt-retrieval-plugin
The ChatGPT Retrieval Plugin lets you easily find personal or work documents by asking questions in natural language.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
haystack
:mag: LLM orchestration framework to build customizable, production-ready LLM applications. Connect components (models, vector DBs, file converters) to pipelines or agents that can interact with your data. With advanced retrieval methods, it's best suited for building RAG, question answering, semantic search or conversational agent chatbots.
-
full-stack-fastapi-template
Full stack, modern web application template. Using FastAPI, React, SQLModel, PostgreSQL, Docker, GitHub Actions, automatic HTTPS and more.
-
fastapi-listing
Advanced items listing library that gives you freedom to design complex listing REST APIs that can be read by human.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
Easily my favorite production grade application made with FastAPI is Netflix's Dispatch platform https://github.com/Netflix/dispatch
OpenAI use it for their retrieval plugin's API and this uses async routes: https://github.com/openai/chatgpt-retrieval-plugin/server. My guess is because the plugin is mainly I/O bound in that it makes requests back and forth between OpenAI's Chat API and a vectorised document store.
Haystack also uses FastAPI for their default REST API offering: https://github.com/deepset-ai/haystack/tree/main/rest_api. This only uses sync routes, however, in the same vein as Netflix's dispatch. My guess is because Haystack's USP are ETL pipelines for running sequences of NLP tasks on incoming data. Such tasks are compute bound since they are performed on the local CPU or GPU.
How about fastapi-listing Library Its highly extendible and decoupled with really good interface with which you can manage complex code in a really structured way https://github.com/danielhasan1/fastapi-listing Do check it out.