Autodoc 项目介绍
项目概述
Autodoc 是一个实验性的工具包,专为使用大型语言模型(LLMs)自动生成 Git 代码库文档而设计。通过像 GPT-4 或 Alpaca 这样强大的语言模型,Autodoc 能够在短短几分钟内安装并开始运作。它通过对代码库进行深度优先遍历,自动为每个文件和文件夹撰写文档。这些生成的文档被整合在一起,以描述系统的不同组件及其协作方式。
生成的文档直接存储于代码库中并随代码迁移,开发者在下载代码后可以使用 doc
命令就代码库提出问题,Autodoc 将提供具体的答案,并附上代码文件的参考链接。未来,文档还将作为持续集成(CI)流水线的一部分进行重新索引,以确保其始终保持最新。
项目现状
Autodoc 目前处于早期开发阶段,虽然功能上基本可用,但尚未达到生产使用的标准。过程中可能会遇到问题,或功能未按预期运行。若有兴趣参与 Autodoc 核心框架的开发,欢迎贡献力量。
常见问题解答
问:我得到的响应质量不高,该如何改进?
答:由于 Autodoc 仍处于早期阶段,响应质量可能会因项目类型和问题的描述方式而有所不同。以下是一些提高查询质量的建议:
- 提问时尽量具体,例如“系统中授权组件有哪些?”比起“解释授权”这样的问题能帮助 Autodoc 更好地选择合适的上下文。
- 使用 GPT-4,因为在理解代码方面,GPT-4 的能力显著优于 GPT-3.5,这种理解能力也反映在文档质量上。
使用示例
- Autodoc 自己使用 Autodoc 生成的文档保存在
.autodoc
文件夹中。 - TolyGPT 是一个使用 Autodoc 训练的聊天机器人,它的训练数据源自 Solana 验证器代码库,并已经部署到网络上。
快速入门
环境要求
运行 Autodoc 需要 Node.js 版本 18.0.0 或更高,建议使用 19.0.0 以上版本。确认当前 Node.js 版本:
$ node -v
安装全球 NPM 模块 Autodoc CLI 工具:
$ npm install -g @context-labs/autodoc
执行 doc
命令以查看可用命令。
查询
安装了 Autodoc 的代码库可以通过命令行工具进行查询。以 Autodoc 仓库为例来演示如何进行查询:
下载并进入 Autodoc 项目:
$ git clone https://github.com/context-labs/autodoc.git
$ cd autodoc
确保你的 OpenAI API 密钥在当前会话中导出:
$ export OPENAI_API_KEY=<YOUR_KEY_HERE>
启动 Autodoc 查询 CLI:
$ doc q
选择你可以访问的 GPT 模型以开始查询:
查询界面是 Autodoc 的核心体验,目前界面较简单,但改进空间很大。若你有兴趣改善 Autodoc CLI 查询体验,欢迎贡献力量。
索引
按照以下步骤为自己的代码库生成文档:
进入项目根目录:
cd $PROJECT_ROOT
确保 OpenAI API 密钥在当前会话中可用:
$ export OPENAI_API_KEY=<YOUR_KEY_HERE>
运行 init
命令初始化:
doc init
按提示输入项目名称、GitHub URL,并选择能够使用的 GPT 模型。本次操作将生成 autodoc.config.json
配置文件,用于存储上述信息。
运行 index
命令为项目生成索引:
doc index
此操作会为你的项目估算索引成本。在第一次运行后,doc index
将只会重新索引变更的文件。
社区
当前,有一个小团队全职致力于 Autodoc 的发展。可以通过 Discord 或 Twitter 来获取项目更新,如果希望参与贡献,请查看相关指导。
如何贡献
Autodoc 是一个开放源码项目,欢迎通过新功能、改进基础设施或更好的文档来贡献力量。详细的贡献指南可以在项目 GitHub 中找到。