{"id":13671390,"url":"https://github.com/michaelthwan/searchGPT","last_synced_at":"2025-04-27T18:31:12.696Z","repository":{"id":135824137,"uuid":"600294838","full_name":"michaelthwan/searchGPT","owner":"michaelthwan","description":"Grounded search engine (i.e. with source reference) based on LLM / ChatGPT / OpenAI API. It supports web search, file content search etc.","archived":false,"fork":false,"pushed_at":"2024-08-25T05:02:21.000Z","size":1232,"stargazers_count":654,"open_issues_count":17,"forks_count":67,"subscribers_count":12,"default_branch":"master","last_synced_at":"2024-11-09T17:42:56.451Z","etag":null,"topics":["ai","chatgpt","grounded-api","grounded-bot","language-model","llm","machine-learning","nlp","nlp-machine-learning","openai","python","retrieval","retrieval-model"],"latest_commit_sha":null,"homepage":"","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/michaelthwan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","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-02-11T03:28:59.000Z","updated_at":"2024-11-06T09:24:45.000Z","dependencies_parsed_at":"2024-01-14T15:21:40.667Z","dependency_job_id":"51008b7d-cafe-483c-94c5-63467060d023","html_url":"https://github.com/michaelthwan/searchGPT","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michaelthwan%2FsearchGPT","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michaelthwan%2FsearchGPT/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michaelthwan%2FsearchGPT/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michaelthwan%2FsearchGPT/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/michaelthwan","download_url":"https://codeload.github.com/michaelthwan/searchGPT/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224079332,"owners_count":17252268,"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":["ai","chatgpt","grounded-api","grounded-bot","language-model","llm","machine-learning","nlp","nlp-machine-learning","openai","python","retrieval","retrieval-model"],"created_at":"2024-08-02T09:01:08.289Z","updated_at":"2024-11-11T09:30:23.720Z","avatar_url":"https://github.com/michaelthwan.png","language":"Python","readme":"searchGPT - An Open-Source RAG-based LLM Search Engine\n==================================================\n\n**searchGPT** is an open-source project to build a search engine based on Large Language Model (LLM) technology to give natural language answers.\n\nYou may take this is a **minimal implementation of new Bing mainly for search engine and question answering**. \n\nIt supports answers based on web search content or file content.\n\nPlease give me a star if you like it! 🌟\n\n### **(Demo page link is available below!)**\n\n![webui](/img/webui.png)\n![explainability](/img/explainability.png)\n\nFeatures\n--------\n\n* Source:\n  * Web search with real-time results\n  * File content search (PPT/DOC/PDF, etc.)\n* Sematic search from source ([FAISS](https://github.com/facebookresearch/faiss) / [pyterrier](https://github.com/terrier-org/pyterrier))\n* LLM integration: ([OpenAI](https://platform.openai.com/docs/api-reference?lang=python) / [GooseAI](https://goose.ai/), etc.)\n* Frontend: Easy-to-use and intuitive user interface\n\nDemo page\n---------------\nhttps://searchgpt-demo.herokuapp.com/index\n- Please do not abuse it with any programs.\n- Please be patient with the loading time, which usually takes ~10 seconds.\n\nArchitecture and roadmap\n------------------------\n![architecture_roadmap](/img/architecture_roadmap.png)\n\nWhy RAG?\n---------------\nBecause it is impossible for the LLM to learn everything during the training, thus real-time factual information is needed for reference.\n\nExample of ungrounded false answers (both using `text-curie-001` model):\n\n**Prompt: what is ghost kitchen**\n\n| Original answer                                                                                                                                                                                                           | RAG-based answer (SearchGPT)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |\n|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| The Ghost Kitchen is a place where the departed spirits of cooks and dishwashers can cook and wash dishes with ease. The kitchen is said to be especially busy on Full Moon nights                                        | A ghost kitchen is a physical space for operators to create food for off-premises consumption. [1] This type of kitchen doesn't have waiters, no dining room, and no parking lot – really, no public presence whatsoever. [1] This kitchen is designed to cut unnecessary costs, allowing a restaurant to expand easily with low capital. [2] With apps like GrubHub and DoorDash, restaurant owners can easily find orders and exceed their expected revenue. [3]                                                                                                                                                                                                                                                |\n| Ghost Kitchen is a pop-up restaurant in London that is completely without food. Instead, the restaurant is filled with spirits, who banish negative energy and help to make the guests' dining experience more enjoyable. | A ghost kitchen is a professional kitchen that is set up to cook food for delivery or take-out but does not have a dine-in option. [1] Ghost kitchens are often located in areas with high foot traffic and are used by multiple restaurants. [1] This allows restaurant chains to test new menu items without the investment of a brick-and-mortar location. [2] By having all of your orders in one place, a ghost kitchen can minimize the chances of errors and increase efficiency. [3] Additionally, by being located close to customers, a ghost kitchen can increase revenue. [4] While ghost kitchens are here to stay, they will likely face competition from other restaurants in the near future. [1] |\n\n**Prompt: what is the meaning of wwww in Japanese**\n\n| Original answer                                                                                                                                                                                                           | RAG-based answer (SearchGPT)                                                                                                                                                                                                                                                                                  |\n|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Japanese \"www\" is typically used as a placeholder for \"www.\" For example, \"This is www.\" is typically translated to \"Kore wa www.\". Japanese \"www\" is also used to indicate that a webpage is not currently being viewed. | The meaning of \"www\" in Japanese is typically used to show amusement or to convey sarcasm. [1] It can also be used as a casual way to say \"yes\" or \"okay.\" Additionally, speakers of Japanese may use \"w\" to represent the kana \"笑\" in online chat because it looks similar to the character for \"laugh.\" [2] | \n\n\nGetting Started\n---------------\n\n### Prerequisites\n\nTo run `searchGPT`, you'll need:\n\n* [Python 3.10.8](https://www.python.org/downloads/)\n* [OpenAI API Key](https://beta.openai.com/signup) or [GooseAI API Key](https://goose.ai/)\n    * OpenAI: First $18 is free (enough for 3000+ searches)\n    * GooseAI: First $10 is free\n* [Azure Bing Search Subscription Key](https://www.microsoft.com/en-us/bing/apis/bing-web-search-api/)\n    * Free version is available (3 searches per second, 1000 searches per month\n\n### Installation\n\n1. Create your python or anaconda env and install python packages\n\nNative\n```\n# using python=3.10.8\npip install -r requirements.txt\n```\n\nAnaconda\n```\nconda create --name searchgpt python=3.10.8\nconda activate searchgpt\npip install -r requirements.txt\n```\n\n2. Input API keys (OpenAI/Azure Bing Search) in `backend/src/config/config.yaml` (or via UI if web app is used)\n3. Run `app.py`, (or `flask_app.py`) for frontend web app launching.\n4. For quick testing, run `main.py`. Stdout output only.\n\nContributing\n------------\n\nWe welcome contributions to **searchGPT**! (Especially frontend developers)\n\nIf you're interested in contributing, please take a look at our [contributing guidelines](./CONTRIBUTING.md) for more information.\n\nLicense\n-------\n\n`searchGPT` is licensed under the [MIT License](./LICENSE).\n","funding_links":[],"categories":["Python","Documentation and examples"],"sub_categories":["Lists, Guides and examples"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmichaelthwan%2FsearchGPT","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmichaelthwan%2FsearchGPT","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmichaelthwan%2FsearchGPT/lists"}