{"id":19693709,"url":"https://github.com/the-full-stack/ask-fsdl","last_synced_at":"2025-04-05T03:12:56.404Z","repository":{"id":98449378,"uuid":"595728617","full_name":"the-full-stack/ask-fsdl","owner":"the-full-stack","description":"Document Q\u0026A over The Full Stack's Corpus","archived":false,"fork":false,"pushed_at":"2024-08-18T08:05:55.000Z","size":773,"stargazers_count":352,"open_issues_count":27,"forks_count":109,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-03-28T10:13:12.898Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://fsdl.me/join-discord-askfsdl","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/the-full-stack.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-01-31T17:33:49.000Z","updated_at":"2025-03-16T20:32:43.000Z","dependencies_parsed_at":null,"dependency_job_id":"ae65b0fe-e0a5-4302-917f-c27a842fd5e8","html_url":"https://github.com/the-full-stack/ask-fsdl","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/the-full-stack%2Fask-fsdl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/the-full-stack%2Fask-fsdl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/the-full-stack%2Fask-fsdl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/the-full-stack%2Fask-fsdl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/the-full-stack","download_url":"https://codeload.github.com/the-full-stack/ask-fsdl/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247280272,"owners_count":20912967,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-11T19:17:47.534Z","updated_at":"2025-04-05T03:12:56.375Z","avatar_url":"https://github.com/the-full-stack.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🥞🦜 askFSDL 🦜🥞\n\naskFSDL is a demonstration of a retrieval-augmented question-answering application.\n\nYou can try it out via the Discord bot frontend in the\n[Full Stack Discord](https://fsdl.me/join-discord-askfsdl)!\n\nWe use our educational materials as a corpus:\nthe [Full Stack LLM Bootcamp](https://fullstackdeeplearning.com/llm-bootcamp),\nthe [Full Stack Deep Learning course](https://fullstackdeeplearning.com/course), and\nthe [Opinionated LLM++ Lit Review](https://tfs.ai/llm-lit-review).\n\nSo the resulting application is great at answering questions like\n\n- Which is cheaper: running experiments on cheap, slower GPUs or fast, more expensive GPUs?\n- How do I build an ML team?\n- What's a data flywheel?\n- Should I use a dedicated vector store for my embeddings?\n- What is zero-shot chain-of-thought reasoning?\n\n## EXPERIMENTAL: run it yourself\n\nThis project is under rapid development, so expect sharp edges\nwhile setting it up in your environment.\n\nThanks to community contributions,\nwe can share a best-effort guide to running the application yourself\n[here](./setup/).\n\nNote that this application uses cloud services.\nFor most of these services, regular usage of the app will fall under the free tier.\nHowever, OpenAI API calls can easily become expensive,\nso make sure to se\n[usage limits](https://platform.openai.com/account/billing/limits)\nto prevent surprise bills.\n\n## Stack\n\nWe use [`langchain`](https://github.com/hwchase17/langchain)\nto organize our LLM invocations and prompt magic.\n\nWe stood up a MongoDB instance on\n[Atlas](https://www.mongodb.com/atlas/database)\nto store our cleaned and organized document corpus.\nSee the `Running ETL to Build the Document Corpus` notebook for details.\n\nFor fast search of relevant documents to insert into our prompt,\nwe use a [FAISS index](https://github.com/facebookresearch/faiss).\n\nWe host the application backend on\n[Modal](https://modal.com/),\nwhich provides serverless execution and scaling.\nThat's also where we execute batch jobs,\nlike writing to the document store and refreshing the vector index.\n\nFor creating a simple user interface in pure Python,\nwe use [Gradio](https://gradio.app/).\nThis UI is great for quick tests without deploying a full frontend\nbut with a better developer experience than curl-ing from the command line.\n\nWe host the Discord bot on\n[Modal](https://modal.com/)\nas well, relying on Discord's\n[interactions endpoints](https://discord.com/developers/docs/tutorials/upgrading-to-application-commands#adding-an-interactions-endpoint-url)\nto run the bot serverlessly.\n\nWe use\n[Gantry](https://gantry.io)\nto monitor model behvaior in production and collect feedback from users.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthe-full-stack%2Fask-fsdl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthe-full-stack%2Fask-fsdl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthe-full-stack%2Fask-fsdl/lists"}