rStar开源项目使用教程

rStar开源项目使用教程

rStar rStar 项目地址: https://gitcode.com/gh_mirrors/rst/rStar

1. 项目介绍

rStar是一个基于自我玩耍双向推理(Self-play Mutual Reasoning)的框架,旨在显著提升小型语言模型(Small Language Models, SLMs)在推理任务上的能力。该框架不依赖于微调或高级模型,而是通过一个自我玩耍的生成-判别过程来实现。具体来说,目标SLM通过增强蒙特卡洛树搜索(Monte Carlo Tree Search, MCTS)的方式构建更高质量的推理轨迹,而另一个能力相似的SLM作为判别器验证这些轨迹的正确性。双方一致的推理轨迹被认为是相互一致的,因此更有可能是正确的。

2. 项目快速启动

环境准备

  • Python 3.10
  • CUDA 12
  • 最新版本的PyTorch
  • 最新版本的transformers
  • 最新版本的vllm

生成器启动

以下是一个运行rStar生成器的示例:

bash scripts/run_gsm8k_generator.sh

该脚本run_gsm8k_generator.sh包含以下可配置参数:

  • --dataset_name: 数据集名称(从[MATH, GSM8K, GSM8KHARD, STG, SVAMP, MULTIARITH]中选择)
  • --test_json_filename: 测试JSON文件的名称(默认:test_all)
  • --model_ckpt: 模型检查点的路径
  • --note: 输出文件夹的额外注释
  • --num_rollouts: 滚动次数(默认:16)

确保根据你的需求调整这些参数。

生成器评估

以下是一个评估rStar生成器结果的示例:

python eval_src/do_eval.py --dataset_name GSM8K --exp_dir_path <generator_output_folder>

替换<generator_output_folder>为你生成器输出的目录路径。

判别器启动

以下是一个运行rStar判别器的示例:

bash scripts/run_gsm8k_discriminator.sh

该脚本run_gsm8k_discriminator.sh包含以下可配置参数:

  • --model_ckpt: 判别器模型的检查点路径
  • --root_dir: 评估结果文件夹的路径
  • --dataset_name: 数据集名称(从[MATH, GSM8K, GSM8KHARD, STG, SVAMP, MULTIARITH]中选择)
  • --note: 输出文件夹的额外注释

确保根据你的需求调整这些参数。

3. 应用案例和最佳实践

rStar已经在多个推理任务上进行了测试,并取得了显著的效果。例如,在GSM8K数据集上,LLaMA2-7B模型的准确率从12.51%提升到了63.91%。以下是几个应用案例:

  • 数学推理
  • 代码生成
  • 自然语言推理

最佳实践建议:

  • 针对不同数据集选择合适的模型和参数
  • 使用充分的滚动次数以获得更稳定的性能
  • 在实际应用中,可以根据任务需求调整生成器和判别器的配置

4. 典型生态项目

rStar作为小型语言模型的推理能力提升框架,可以与其他开源项目相结合,构建更加强大的应用生态。以下是一些典型的生态项目:

  • 与自然语言处理相关的工具和库集成
  • 为在线教育平台提供智能推理支持
  • 在智能客服系统中实现复杂问题的自动解决

rStar rStar 项目地址: https://gitcode.com/gh_mirrors/rst/rStar

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汤怡唯Matilda

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值