SeaGOAT简介
SeaGOAT是一个为AI时代打造的代码搜索引擎。它是一个本地搜索工具,利用向量嵌入技术,使您能够语义化地搜索代码库。
🚀 快速入门
安装SeaGOAT
要安装SeaGOAT,您需要先安装以下依赖:
- Python 3.11或更新版本
- ripgrep
- bat(可选但强烈推荐)
使用pipx安装SeaGOAT:
pipx install seagoat
启动SeaGOAT服务器
在您的项目中使用以下命令启动SeaGOAT服务器:
seagoat-server start /path/to/your/repo
搜索代码库
服务器运行后,使用gt
或seagoat
命令查询代码库:
gt "Where are the numbers rounded"
您还可以在查询中使用正则表达式:
gt "function calc\_.* that deals with taxes"
📚 学习资源
🛠️ 高级功能
支持的编程语言
SeaGOAT目前支持以下格式的文件:
- 文本文件 (*.txt)
- Markdown (*.md)
- Python (*.py)
- C (*.c, *.h)
- C++ (*.cpp, *.cc, *.cxx, *.hpp)
- TypeScript (*.ts, *.tsx)
- JavaScript (*.js, *.jsx)
- HTML (*.html)
- Go (*.go)
- Java (*.java)
- PHP (*.php)
- Ruby (*.rb)
远程服务器部署
您可以在不同的计算机或云端自托管SeaGOAT服务器,并配置 seagoat
/gt
命令通过互联网连接到远程服务器。
🤔 常见问题
-
SeaGOAT如何工作?是否会将数据发送给ChatGPT?
SeaGOAT不依赖第三方API或任何远程API,所有功能都在本地执行。它使用名为ChromaDB的向量数据库,配合本地向量嵌入引擎,默认情况下禁用遥测。
-
SeaGOAT是否创建AI衍生作品?SeaGOAT是否合乎道德?
SeaGOAT是一个代码搜索引擎,而不是代码生成器,因此不会创建AI衍生作品。
-
SeaGOAT支持哪些字符编码?
首选的字符编码是UTF-8。大多数其他字符编码也应该可以工作。SeaGOAT仅支持文本文件,会忽略二进制文件。
🤝 贡献
SeaGOAT是一个开源项目,欢迎贡献!查看贡献指南了解如何参与项目开发。
通过这份全面的入门指南,您应该能够快速上手SeaGOAT,充分利用这个强大的AI代码搜索工具。如果您在使用过程中遇到任何问题,不要hesitate通过GitHub Issues寻求帮助。祝您使用愉快!