LongChat 开源项目使用教程

LongChat 开源项目使用教程

LongChat Official repository for LongChat and LongEval LongChat 项目地址: https://gitcode.com/gh_mirrors/lo/LongChat

1. 项目目录结构及介绍

LongChat 项目目录结构如下:

LongChat/
├── data/                     # 存储训练和评估数据
├── docs/                     # 项目文档
├── longchat/                 # LongChat 的主要代码
├── longeval/                 # LongEval 的评估代码
├── .gitignore                # Git 忽略文件
├── LICENSE                   # Apache-2.0 许可文件
├── README.md                 # 项目说明文件
└── pyproject.toml            # 项目配置文件
  • data/:该目录包含了项目所需的训练数据和评估数据。
  • docs/:项目文档目录,存放项目的使用说明和相关文档。
  • longchat/:包含了 LongChat 的主要实现代码,包括训练和模型定义等。
  • longeval/:包含了 LongEval 的评估代码,用于对模型进行性能评估。
  • .gitignore:指定了 Git 应该忽略的文件和目录。
  • LICENSE:项目的许可文件,本项目采用 Apache-2.0 许可。
  • README.md:项目说明文件,提供了项目的基本信息和安装使用指南。
  • pyproject.toml:项目配置文件,定义了项目的依赖和其他元数据。

2. 项目的启动文件介绍

项目的启动主要是通过 longchat/ 目录下的 Python 脚本进行的。以下是一些主要的启动文件:

  • train Condense_16K.py:这是用于训练 LongChat 模型的 Python 脚本。它使用分布式训练来提高训练效率。
  • eval.py:这是 LongEval 中的评估脚本,用于对训练好的模型进行评估。

启动训练脚本的基本命令如下:

python -m torch.distributed.run --nproc_per_node=8 \
longchat/train/fine_tune/train_condense_16K.py \
--model_name_or_path <path-to-llama> \
--data_path data/dummy_conversation.json  \
--bf16 \
--output_dir outputs \
--num_train_epochs 3    \
--per_device_train_batch_size 1 \
--per_device_eval_batch_size 4  \
--gradient_accumulation_steps 1 \
--evaluation_strategy no \
--save_strategy steps \
--save_steps 1000  \
--save_total_limit 1 \
--learning_rate 2e-5 \
--weight_decay 0.  \
--warmup_ratio 0.03  \
--lr_scheduler_type "cosine" \
--logging_steps 1  \
--fsdp "full_shard auto_wrap" \
--fsdp_transformer_layer_cls_to_wrap 'LlamaDecoderLayer' \
--tf32 True  \
--model_max_length 16384  \
--gradient_checkpointing True  \
--lazy_preprocess True

请根据你的实际情况修改 --model_name_or_path 和其他参数。

3. 项目的配置文件介绍

项目的配置主要是通过 pyproject.toml 文件来管理的。这个文件定义了项目的依赖项和其他元数据。下面是一个 pyproject.toml 文件的示例:

[build-system]
requires = ["setuptools", "wheel"]
build-backend = "setuptools.build_meta"

[tool.setuptools]
name = "LongChat"
version = "0.1.0"
description = "An open-source project for training and evaluating long-context LLM based chatbots."
long_description = "..."
long_description_content_type = "text/markdown"
packages = ["longchat", "longeval"]
python_requires = ">=3.10"
install_requires = [
    "torch",
    "transformers",
    "torch-distributed-run",
    # 其他依赖项
]

这个文件指定了项目名称、版本、描述、依赖项等信息。在项目的开发和使用过程中,这些配置项可能会被修改以适应不同需求。

以上就是 LongChat 开源项目的使用教程,希望能帮助您顺利开始使用该项目。

LongChat Official repository for LongChat and LongEval LongChat 项目地址: https://gitcode.com/gh_mirrors/lo/LongChat

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

郜里富

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

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

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

打赏作者

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

抵扣说明:

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

余额充值