SelFee 的安装和配置教程
2025-05-27 22:21:22作者:韦蓉瑛
项目的基础介绍和主要的编程语言
SelFee 是一个由韩国科学技术院(KAIST)人工智能研究团队开发的开源项目,旨在构建并共享一个指令遵循的LLaMA模型。该模型通过自我反馈机制进行迭代自我修正,从而提高其响应的质量和准确性。该项目主要使用 Python 编程语言,依赖于深度学习库 PyTorch 进行模型训练和推理。
项目使用的关键技术和框架
- PyTorch: 用于深度学习模型的训练和推理。
- Transformers: 一个基于 PyTorch 的库,提供了大量的预训练模型和易于使用的API。
- OpenAI API: 在数据生成过程中,使用 OpenAI 的 API 来生成指令和反馈。
项目安装和配置的准备工作和详细的安装步骤
准备工作
在开始安装之前,请确保您的系统满足以下要求:
- Python 3.7 或更高版本
- PyTorch
- Git
安装步骤
-
克隆项目仓库
打开命令行终端,运行以下命令克隆 SelFee 的项目仓库:
git clone https://github.com/kaistAI/SelFee.git cd SelFee -
安装依赖
在项目目录中,使用 pip 安装 requirements.txt 文件中列出的依赖项:
pip install -r requirements.txt -
下载预训练模型
根据项目文档,你可能需要下载预训练的 LLaMA 模型。由于项目文档中提到了使用
llama-7b模型,你需要从相应的资源下载该模型,并放置在合适的位置。 -
准备数据
SelFee 项目使用特定的数据集进行训练。你需要按照项目文档中的说明准备和合并数据集。这可能包括从不同来源收集数据、数据预处理和数据合并步骤。
-
训练模型
根据项目文档提供的命令,使用 torchrun 命令开始训练模型。以下是一个示例命令,但请注意,你需要根据你的系统资源调整
--nproc_per_node参数:torchrun --nproc_per_node=4 train/train_mem.py \ --model_name_or_path llama-7b \ --data_path outputs/feedback_gpt_3.5_turbo_merged_whole.json \ --bf16 True \ --output_dir ckpt/selfee-7b \ --num_train_epochs 3 \ --per_device_train_batch_size 16 \ --per_device_eval_batch_size 16 \ --gradient_accumulation_steps 2 \ --evaluation_strategy "no" \ --save_strategy "steps" \ --save_steps 5000 \ --save_total_limit 1 \ --learning_rate 2e-5 \ --weight_decay 0. \ --warmup_ratio 0.03 \ --lr_scheduler_type "cosine" \ --logging_steps 1 \ --fsdp "shard_grad_op auto_wrap" \ --fsdp_transformer_layer_cls_to_wrap 'LlamaDecoderLayer' \ --tf32 True \ --model_max_length 2048 \ --gradient_checkpointing True \ --lazy_preprocess True \ --training_objective full -
模型推理
训练完成后,你可以使用项目提供的推理脚本进行模型推理。以下是一个启动推理的示例命令:
python inference/inference.py --model-path "ckpt/selfee-7b" --model-id "selfee" --question-file "evaluation/template/question.jsonl" --answer-file "evaluation/answer/selfee_7b_autonomous.jsonl"
请确保在每一步中都仔细阅读项目文档,并根据你的具体环境调整配置和命令。
登录后查看全文
热门项目推荐
AutoGLM-Phone-9BAutoGLM-Phone-9B是基于AutoGLM构建的移动智能助手框架,依托多模态感知理解手机屏幕并执行自动化操作。Jinja00
Kimi-K2-ThinkingKimi K2 Thinking 是最新、性能最强的开源思维模型。从 Kimi K2 开始,我们将其打造为能够逐步推理并动态调用工具的思维智能体。通过显著提升多步推理深度,并在 200–300 次连续调用中保持稳定的工具使用能力,它在 Humanity's Last Exam (HLE)、BrowseComp 等基准测试中树立了新的技术标杆。同时,K2 Thinking 是原生 INT4 量化模型,具备 256k 上下文窗口,实现了推理延迟和 GPU 内存占用的无损降低。Python00
GLM-4.6V-FP8GLM-4.6V-FP8是GLM-V系列开源模型,支持128K上下文窗口,融合原生多模态函数调用能力,实现从视觉感知到执行的闭环。具备文档理解、图文生成、前端重构等功能,适用于云集群与本地部署,在同类参数规模中视觉理解性能领先。Jinja00
HunyuanOCRHunyuanOCR 是基于混元原生多模态架构打造的领先端到端 OCR 专家级视觉语言模型。它采用仅 10 亿参数的轻量化设计,在业界多项基准测试中取得了当前最佳性能。该模型不仅精通复杂多语言文档解析,还在文本检测与识别、开放域信息抽取、视频字幕提取及图片翻译等实际应用场景中表现卓越。00
GLM-ASR-Nano-2512GLM-ASR-Nano-2512 是一款稳健的开源语音识别模型,参数规模为 15 亿。该模型专为应对真实场景的复杂性而设计,在保持紧凑体量的同时,多项基准测试表现优于 OpenAI Whisper V3。Python00
GLM-TTSGLM-TTS 是一款基于大语言模型的高质量文本转语音(TTS)合成系统,支持零样本语音克隆和流式推理。该系统采用两阶段架构,结合了用于语音 token 生成的大语言模型(LLM)和用于波形合成的流匹配(Flow Matching)模型。 通过引入多奖励强化学习框架,GLM-TTS 显著提升了合成语音的表现力,相比传统 TTS 系统实现了更自然的情感控制。Python00
Spark-Formalizer-X1-7BSpark-Formalizer 是由科大讯飞团队开发的专用大型语言模型,专注于数学自动形式化任务。该模型擅长将自然语言数学问题转化为精确的 Lean4 形式化语句,在形式化语句生成方面达到了业界领先水平。Python00
项目优选
收起
deepin linux kernel
C
24
9
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
405
3.14 K
Ascend Extension for PyTorch
Python
225
251
暂无简介
Dart
672
159
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
663
319
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.21 K
657
React Native鸿蒙化仓库
JavaScript
262
325
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
9
1
openGauss kernel ~ openGauss is an open source relational database management system
C++
160
220
仓颉编译器源码及 cjdb 调试工具。
C++
135
868