GitGPT 是一个基于 Flask 构建的 Web 应用程序,旨在通过 GPT 模型和 GitHub API 帮助用户根据关键词查找和筛选 GitHub 仓库。它可以根据用户输入的关键词,提取出中文和英文的关键词,并根据这些关键词在 GitHub 上搜索相关的仓库,最终根据匹配度对结果进行排序和展示。
- 关键词提取:通过 GPT 模型从用户输入中提取出中英文关键词。
- 仓库搜索:根据关键词在 GitHub 上搜索仓库,支持根据仓库名、描述和 README 文件进行搜索。
- 去重合并:将多个来源的搜索结果去重并合并。
- 匹配度计算:根据仓库名、描述与关键词的匹配度以及仓库的星标数,计算仓库的匹配度得分。
- 结果展示:将排序后的仓库结果以友好的方式展示给用户。
- Python 3.x
- Flask
- requests
-
克隆本仓库到本地:
git clone https://github.com/tamikip/GitGPT.git cd GitGPT
-
创建并激活虚拟环境(可选):
python3 -m venv venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # Windows
-
安装依赖:
pip install -r requirements.txt
-
配置环境变量:
在项目根目录下创建一个
.env
文件,添加以下内容:API_KEY=your_gpt_api_key BASE_URL=your_gpt_api_base_url GITHUB_TOKEN=your_github_token # 可选 IS_GITHUB_API_VERIFY=number # 此处填写 1 或 0 (是/否)
请将
your_gpt_api_key
、your_gpt_api_base_url
、your_github_token
和number
替换为你的实际 API 密钥和 GitHub Token。API_KEY
GPT的api密钥BASE_URL
GPT的api请求地址GITHUB_TOKEN
github申请的token值(可选)IS_GITHUB_API_VERIFY
是否跳过ssl检查
-
启动 Flask 应用:
python app.py
-
在浏览器中打开
http://127.0.0.1:5000/
,进入应用主页。 -
在搜索框中输入你想要查找的关键词,点击搜索按钮,应用将显示与关键词匹配的 GitHub 仓库列表。
GET /search?q=<keyword>&if_md=<off/on>
:根据关键词搜索 GitHub 仓库。q
:用户输入的关键词。if_md
:是否启用 README 文件搜索,off
表示不启用,on
表示启用。
欢迎对本项目进行贡献!你可以通过以下方式参与:
- 提交问题(Issues)和功能请求。
- 提交 Pull Request 以修复问题或添加新功能。
- 改进文档。
本项目采用 MIT 许可证。