#context #llm #prompt #extract #insight #queries #interaction

app cargo-context-ranger

快速获取 Rust 上下文,以构建 LLM 提示并帮助

2 个版本

0.0.2 2024 年 3 月 15 日
0.0.1 2024 年 3 月 14 日

#182 in Cargo 插件

MIT 许可证

18KB
184

cargo-context-ranger

概述

cargo-context-ranger 是一个用于通过大型语言模型 (LLM) 的力量丰富 Rust 开发调试和开发过程的工具。通过从 Rust 代码库中提取和优先考虑上下文,它为 LLM 查询准备详细的提示,重点关注特定函数及其在项目中的交互。这种针对性的方法使开发人员能够获得针对他们工作的确切范围定制的见解和帮助。

主要功能

  • 以函数为中心的上下文提取:从特定函数开始收集上下文,优化 LLM 查询的相关性。
  • 模块化窗口大小:可配置的上下文大小以千字符 (K 字符) 计算,允许调整提取文本的广度。
  • 全面上下文编译:汇总项目的基本信息,包括平台、编译器版本、项目依赖项等,为 LLM 形成一个完整的图像。
  • 简化的提示准备:便于创建丰富的、信息丰富的 LLM 提示,减少手动工作并提高查询效率。

入门指南

先决条件

在开始之前,请确保您的系统已安装 Rust 和 Cargo。如果您需要安装这些,请遵循 https://rustup.rs/ 上的设置说明。

安装

使用 Cargo 从 crates.io 直接安装 cargo-context-ranger。只需执行以下命令

cargo install cargo-context-ranger

此命令将检索并安装 cargo-context-ranger 以及所有必要的依赖项。

用法

安装 cargo-context-ranger 后,您可以按以下方式调用它

cargo-context-ranger -p <path_to_rust_project> -f <full_module_path_to_function> [-w <window_size_in_k_chars>]

参数

  • -p, --path:Rust 项目的路径。
  • -f, --function:要分析的目标函数的完整模块路径。

可选参数

  • -w, --window:限制输出的窗口大小,以千字符 (K 字符) 计算。如果未指定,默认为 32K。

示例命令

cargo-context-ranger -p /path/to/myproject -f src/lib::my_module::my_function -w 500

工作原理

cargo-context-ranger 通过

  1. 在Rust项目中识别指定的函数。
  2. 提取目标函数的主体、相关的调用或被调用函数,以及任何直接相关的单元测试。
  3. 按相关程度从高到低排序内容,在需要简洁时使用"..."。
  4. 可选地裁剪输出到指定的窗口大小,重点关注LLM查询的最相关文本。

输出包括详细的项目和环境上下文,例如

  • Rust编译器版本
  • 操作系统
  • 项目结构和依赖关系
  • 开发环境的详细信息
  • 等等,为LLM提示提供丰富的背景。

许可证

cargo-context-ranger在MIT许可证下提供。有关完整许可证文本,请参阅项目仓库中的LICENSE文件。

依赖项

~12–22MB
~304K SLoC