llama-factory生成Meta-Llama-3-8B-Instruct模型api服务

 使用llama-factory完成模型的微调训练后,需要开启其api服务进行调用,参考官方https://github.com/hiyouga/LLaMA-Factory/blob/main/examples/inference/llama3_lora_sft.yaml 中的内容进行改写

API 实现的标准是参考了OpenAI的相关接口协议,基于uvicorn服务框架进行开发, 使用如下的方式启动:

下述为官方使用模型的示例

model_name_or_path: meta-llama/Meta-Llama-3-8B-Instruct
adapter_name_or_path: saves/llama3-8b/lora/sft
template: llama3
finetuning_type: lora

 下述为启动api服务示例,此处展示的为直接使用原始本地模型进行api服务启动

set CUDA_VISIBLE_DEVICES=0
set API_PORT=8000
python src\api.py ^
    --model_name_or_path F:\models\Meta-Llama-3-8B-Instruct ^
    --template llama3
可选
    --infer_backend vllm ^
    --vllm
### LLaMA-Factory 模型量化方法 对于希望减少模型大小并提高推理速度而不显著损失性能的应用场景,可以采用后训练量化(Post Training Quantization, PTQ)技术来处理 LLaMA-Factory 中的大规模语言模型。支持的量化方案包括但不限于 GPTQ 和 AWQ (Activation-aware Weight Quantization)[^2]。 #### 使用AWQ进行量化 当选择使用激活感知权重量化(AWQ)时,需提供待量化的预训练模型名或其存储路径作为参数输入给脚本。例如,在配置文件中设置 `model_name_or_path` 参数指向已有的量化版本模型位置,像这样: ```yaml model_name_or_path: TechxGenus/Meta-Llama-3-8B-Instruct-AWQ ``` 此操作会加载特定于 AWQ 的优化过的 Meta-Llama 版本[^3]。 #### 实施GPTQ量化过程 另一种常见的做法是利用 GPTQ 方法来进行量化工作。这通常涉及到调整原有的训练流程以适应新的约束条件,并可能涉及修改源码中的某些部分以便更好地集成量化逻辑。具体实现细节取决于项目需求以及所使用的框架特性[^4]。 ```python from llmfactory.quantize.gptq import apply_gptq_quantization apply_gptq_quantization(model=model, bits=4) ``` 上述代码片段展示了如何通过调用自定义函数 `apply_gptq_quantization()` 来应用四比特精度级别的 GPTQ 量化到目标模型实例上。 #### 执行量化命令 一旦选择了合适的量化策略并将必要的更改应用于代码库之后,则可以通过 CLI 工具执行实际的量化任务。假设已经准备好了一个名为 `train_lora.yaml` 的 YAML 配置文件用于指导整个过程,那么就可以运行如下指令启动量化进程: ```bash llamafactory-cli train examples/train_lora/llama3_lora_predict.yaml ``` 这条命令将会依据所提供的配置项完成对指定模型架构实施选定类型的量化转换[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

码不动了鸭

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

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

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

打赏作者

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

抵扣说明:

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

余额充值