Repolode
retrage

retrage/gpt-macro

一个基于 ChatGPT 的 Rust 过程宏,在编译期自动生成函数实现和测试代码。

Star
667
Fork
8
未关闭 Issue
1
最近提交
2个月前

这是什么?

gpt-macro 是一个 Rust 过程宏库,在编译期把自然语言提示和目标代码发送给 ChatGPT API,再将模型返回的代码替换进源文件,之后由编译器继续编译。函数体留空的占位代码可以由模型自动补全,周围的测试用例则作为实现需要满足的约束。

该库提供两个宏。`auto_impl!{}` 接收一段提示字符串和待补全的代码(如函数签名及其测试),并替换为生成的实现。`#[auto_test(...)]` 附加在函数上,按指定的场景生成测试用例。使用前需要在环境变量 `OPENAI_API_KEY` 中设置 OpenAI API 密钥。

由于代码在构建时生成,产物与手写代码一样参与编译。该项目更适合作为 LLM 辅助代码生成的尝试,而非用于生产构建的依赖。

核心功能

  • 01通过 `auto_impl!{}` 根据自然语言提示生成函数实现。
  • 02通过 `#[auto_test(...)]` 为函数生成测试用例。
  • 03在编译期调用 ChatGPT,生成的代码与手写代码一同编译。
  • 04从环境变量 `OPENAI_API_KEY` 读取 OpenAI API 密钥。

适用场景

  • 原型阶段依据测试用例快速补全简单、定义清晰的函数。
  • 在 Rust 构建流程中试验 LLM 辅助代码生成。
  • 为已有函数生成额外的测试用例。

快速上手

  1. 1

    将 gpt-macro crate 添加到你的 Rust 项目中

  2. 2

    获取 ChatGPT API 密钥并将其设置为 OPENAI_API_KEY 环境变量

  3. 3

    在代码中使用 auto_impl! 或 #[auto_test] 并进行构建

使用前须知

  • 需要在 OPENAI_API_KEY 中设置付费的 ChatGPT API 密钥。
  • 生成的代码来自外部模型,使用前必须经过审查。

收录于专题

标签

常见问题

gpt-macro 是什么?
一个基于 ChatGPT 的 Rust 过程宏,在编译期自动生成函数实现和测试代码。 gpt-macro 是一个 Rust 过程宏库,在编译期把自然语言提示和目标代码发送给 ChatGPT API,再将模型返回的代码替换进源文件,之后由编译器继续编译。函数体留空的占位代码可以由模型自动补全,周围的测试用例则作为实现需要满足的约束。
gpt-macro 可以免费使用吗?用的什么许可证?
gpt-macro 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
gpt-macro 还在维护吗?
半年内有更新。gpt-macro 最近一次提交是在 2026年9月14日。
gpt-macro 适合用来做什么?
原型阶段依据测试用例快速补全简单、定义清晰的函数。 在 Rust 构建流程中试验 LLM 辅助代码生成。 为已有函数生成额外的测试用例。
gpt-macro 怎么安装和运行?
将 gpt-macro crate 添加到你的 Rust 项目中 获取 ChatGPT API 密钥并将其设置为 OPENAI_API_KEY 环境变量 在代码中使用 auto_impl! 或 #[auto_test] 并进行构建
在哪里获取 gpt-macro?
源代码和安装说明在 GitHub 上:https://github.com/retrage/gpt-macro

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目