Repo Chat快速上手教程:10分钟从零搭建你的GitHub仓库AI代码问答系统
【免费下载链接】repo-chatUse AI to ask questions about any GitHub repo.项目地址: https://gitcode.com/gh_mirrors/re/repo-chat
Repo Chat 是一个开源的GitHub 仓库 AI 代码问答系统:把你指定的任意仓库克隆下来,将代码"记忆"进向量数据库,之后在终端里直接用自然语言提问,AI 就能基于真实代码给你解答。只需要 Python + OpenAI 密钥 + 免费的向量数据库,新手10 分钟即可从零跑通 🚀
Repo Chat 是什么?它解决了什么问题
接手一个陌生仓库时,你是否还在逐个文件翻代码?Repo Chat 的定位很直接:Use AI to ask questions about any GitHub repo(用 AI 询问任意 GitHub 仓库)。
它的核心是 RAG(检索增强生成)思路,由三个 Python 脚本各司其职:
| 脚本 | 职责 |
|---|---|
load.py | 按配置克隆目标仓库到本地 |
embed.py | 读取代码文件,分块、向量化并写入向量数据库 |
main.py | 启动终端问答循环,边检索边回答 |
技术上使用 OpenAI Embeddings 做向量化,Supabase(pgvector 扩展)做向量数据库,LangChain 负责把检索结果交给大模型生成答案。这两者都可以按自己的偏好替换,项目文档中已说明。
Repo Chat 安装步骤:3分钟完成环境配置
git clone https://gitcode.com/gh_mirrors/re/repo-chat cd repo-chat pip install -r requirements.txt依赖非常轻量,requirements.txt中只包含 LangChain、Supabase、OpenAI 等几个核心库,安装速度很快 ✅
最快配置方法:.env 参数一次写对
在项目根目录创建.env文件(可参考README.md中的配置说明),填好以下关键参数:
| 参数 | 说明 |
|---|---|
SUPABASE_URL/SUPABASE_SERVICE_KEY | 在 Supabase 控制台创建项目后自动生成的地址与服务密钥 |
OPENAI_API_KEY | 你的 OpenAI 密钥,同时驱动向量化和大模型问答 |
REPO_URL/REPO_BRANCH | 你想提问的仓库地址与分支 |
TABLE_NAME | 向量表名,需与初始化 SQL 中创建的表一致 |
初始化 pgvector 向量数据库
- 进入 Supabase 控制台,打开左侧边栏的SQL Editor
- 把
schema.sql的内容粘贴进去,点击运行 - 执行后会创建
repo_chat向量表(1536 维,正好匹配 OpenAI embeddings)和一个按相似度排序的检索函数 💡
这一步只需做一次,之后所有仓库的"记忆"都存放在这张表中。
10分钟跑通 Repo Chat:克隆 → 嵌入 → 问答三步曲
python3 load.py # 第1步:克隆 .env 中指定的仓库 python3 embed.py # 第2步:代码分块、向量化并入库 python3 main.py # 第3步:开始用自然语言提问两个小细节值得了解:
embed.py默认会跳过.git、node_modules、图片等无关文件,并按 2000 字符一块(重叠 200 字符)切分,兼顾检索精度与上下文完整度main.py启动后终端会循环询问 "What question do you have about your repo?",输入问题即可先看到检索到的代码片段、再看到 AI 的答案,输入exit退出
Repo Chat 常见报错排查
- 向量检索报错:确认已完整运行过
schema.sql,且.env中的TABLE_NAME与表中名称一致 - 回答质量不理想:检查
REPO_URL与REPO_BRANCH是否真的指向目标分支 - 想更换技术栈:OpenAI Embeddings 和 Supabase 均非强绑定,可按官方说明替换为自己的向量方案
总结
从零到能问出第一句话,Repo Chat 只需要:克隆项目 → 配置.env→ 初始化向量表 → 运行三个脚本。10 分钟后,你就拥有了一个专属的GitHub 仓库 AI 代码问答助手,无论是理解陌生代码库还是回答"这个函数在哪里被调用",都能快人一步 🎉
【免费下载链接】repo-chatUse AI to ask questions about any GitHub repo.项目地址: https://gitcode.com/gh_mirrors/re/repo-chat
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考