Yek: git 리포지토리 텍스트 파일을 읽고 대형 모델을 위해 빠르게 청크 처리하기
일반 소개
Yek 是一个基于 Rust 的快速工具,用于读取存储库或目录中的文本文件,将其分块并序列化以供大型语言模型(LLM)使用。该工具默认使用 .gitignore 规则跳过不需要的文件,并利用 Git 历史推断重要文件。Yek 可以根据近似“令牌”计数或字节大小将内容分块,并自动检测输出是否被管道传输。它支持在单个命令中处理多个目录,并通过 yek.toml 文件进行配置。

기능 목록
- 使用 .gitignore 规则跳过不需要的文件
- 利用 Git 历史推断重要文件
- 推断额外的忽略模式(如二进制文件、大文件等)
- 根据近似“令牌”计数或字节大小将内容分块
- 自动检测输出是否被管道传输
- 支持在单个命令中处理多个目录
- 通过 yek.toml 文件进行配置
도움말 사용
설치 프로세스
Unix-like 系统(macOS, Linux)
curl -fsSL https://bodo.run/yek.sh | bash
Windows(PowerShell)
irm https://bodo.run/yek.ps1 | iex
从源码构建
git clone https://github.com/bodo-run/yek.git
cd yek
cargo build --release
사용법
Yek 具有合理的默认设置,您可以简单地在目录中运行 yek 来序列化整个存储库。默认情况下,它会将存储库中的所有文件序列化为 10MB 的块,并将文件写入临时目录,文件路径将打印到控制台。
일반적인 예
- 处理当前目录并写入临时目录:
yek
- 将输出管道传输到剪贴板(macOS):
yek src/ | pbcopy
- 将最大大小限制为 128K 令牌并仅处理 src 目录:
yek --max-size 128K --tokens src/
- 将最大大小限制为 100KB 并仅处理 src 目录,写入特定目录:
yek --max-size 100KB --output-dir /tmp/yek src/
- 处理多个目录:
yek src/ tests/
CLI 参考
yek --help
Yek 是一个用于 LLM 消费的存储库内容分块和序列化工具。
用法
yek [OPTIONS] [directories]...
参数
directories
:要处理的目录 [默认: .]
选项
--max-size <max-size>
:每块的最大大小(例如 '10MB', '128KB', '1GB')[默认: 10MB]
一句话描述(简介)
© 저작권 정책
이 글은 저작권이 있으며 무단으로 복제해서는 안 됩니다.
관련 문서
댓글 없음...