{"id":22107675,"url":"https://github.com/airmomo/github-star-rag","last_synced_at":"2025-10-07T06:52:53.245Z","repository":{"id":255981773,"uuid":"850267479","full_name":"Airmomo/github-star-rag","owner":"Airmomo","description":"一个基于RAG架构和LLM能力开发的AI搜索工具，专为检索GitHub用户Star项目中与查询相关的内容，并提供简洁的项目信息。","archived":false,"fork":false,"pushed_at":"2024-09-08T08:38:44.000Z","size":643,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-24T03:25:47.647Z","etag":null,"topics":["github-api","llm","rag"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Airmomo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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":"2024-08-31T10:07:48.000Z","updated_at":"2024-12-22T06:12:15.000Z","dependencies_parsed_at":"2024-09-08T09:38:25.398Z","dependency_job_id":"09ba1a18-8d2f-4aec-b2ec-6a52de4f0791","html_url":"https://github.com/Airmomo/github-star-rag","commit_stats":null,"previous_names":["airmomo/github-star-rag"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Airmomo/github-star-rag","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Airmomo%2Fgithub-star-rag","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Airmomo%2Fgithub-star-rag/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Airmomo%2Fgithub-star-rag/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Airmomo%2Fgithub-star-rag/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Airmomo","download_url":"https://codeload.github.com/Airmomo/github-star-rag/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Airmomo%2Fgithub-star-rag/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278734407,"owners_count":26036404,"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","status":"online","status_checked_at":"2025-10-07T02:00:06.786Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["github-api","llm","rag"],"created_at":"2024-12-01T08:18:45.803Z","updated_at":"2025-10-07T06:52:53.218Z","avatar_url":"https://github.com/Airmomo.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# github-star-rag\n\n`github-star-rag`是一个基于简初级 RAG 架构的实现的检索器，能够用于检索 Github 用户 Star 的项目中与提问内容具备相关性的结果，并简要地展示相关的项目信息。你可以视作这是一个具备理解能力、评估和检索能力的 Github-Star 项目 AI 搜索功能。\n\n# 环境部署\n\n```bash\ngit clone https://github.com/Airmomo/github-star-rag.git\ncd github-star-rag\npip install -r requirements.txt\ncd client\nnpm install\n```\n\n# 运行\n\n```bash\n# 启动服务端\ncd github-star-rag/service\npython main.py\n# 启动客户端\ncd github-star-rag/client\nnpm start\nopen localhost:3000\n```\n\n# RAG 架构设计\n\n![alt text](rag.png)\n\n# 主页\n\n![alt text](show_index.png)\n\n# 设置\n\n![alt text](show_settings.png)\n\n- GITHUB_TOKEN：GITHUB 的密钥，到设置去申请，需要开启必要的访问权限，这里只用于获取用户 Star 的项目信息。\n- LLM_API_BASE：大语言模型的 API 接口地址\n- LLM_API_KEY：大语言模型的 API 访问密钥\n- LLM_MODEL_NAME：大语言模型的名称（这里需要选择上下文在 8K 以上的模型，有些 Star 项目信息过长会被模型限制。）\n- EMBEDDING_API_BASE：嵌入模型的 API 接口地址\n- EMBEDDING_API_KEY：嵌入模型的 API 访问密钥\n- EMBEDDING_MODEL_NAME：嵌入模型的名称\n- 检索结果数量：指的是在进行向量检索后返回的数量，非 LLM 最终回答的结果数量。（数量越高，则需要更长的上下文长度，但能得到更多样的回答。）\n\n设置在首次保存后，会自动开始初始化，届时将进行对 Github 中用户已 Star 的项目信息，并进行向量存储。**Star 的项目越多，初始化的过程则越慢，可以通过查看服务端的运行日志获得更详细的信息。**\n\n## 模型支持\n\n本项目使用`OpenAI`和`智谱AI`两个框架进行开发，所以基本只要支持使用这两个框架的`聊天模型`和`嵌入模型`都是支持的。\n\n目前已测试的有`DeepSeek`、`OpenAI`和`智谱AI`，国内推荐使用`DeepSeek`或者`智谱AI`的模型，最新的模型上下文长度都是非常足够的。\n\n# 提问（提示）\n\n在初始化成功后，则可以通过客户端中的输入框，输入想要检索的信息或问题作为提示，LLM 将在您的 Github 中 Star 的项目中，根据问题检索出那些能够解决问题或具备强相关性的项目信息。\n\n## 提示注意事项\n\n- 不支持提问如`请列出Star数目排名前10的项目`等与 Star 数量相关的问题，最终输出结果的排名不分前后。\n- 不是每一个提问都会有结果返回，需要 Star 的项目中具有与问题有一定的相关性的项目。\n- **输出结果的展示默认为`简体中文`，如果想要得到其他语言检索结果，可以在提问中增加如`用XX语言回答我`的提示来得到预期语言的检索结果。**\n\n# 检索结果展示\n\n![alt text](show_results.png)\n\n# Enjoy it!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fairmomo%2Fgithub-star-rag","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fairmomo%2Fgithub-star-rag","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fairmomo%2Fgithub-star-rag/lists"}