vscode調(diào)試launch.json常用格式完整的案例
1、簡單的模版
定義一個(gè)簡單的模版如下:
{
// 使用 IntelliSense 了解相關(guān)屬性。
// 懸停以查看現(xiàn)有屬性的描述。
// 欲了解更多信息,請?jiān)L問: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python 調(diào)試一", // 可自定義
"type": "debugpy",
"request": "launch",
"program": "運(yùn)行腳本的程序", // 使用.py 腳本路徑(相對路徑)、which torchrun、which deepspeed等命令查看位置
"console": "integratedTerminal",
"justMyCode": false, // 調(diào)試允許進(jìn)入他人的代碼
"env": {
"PYTHONPATH": "${workspaceRoot}" // 設(shè)置vscode家路徑為項(xiàng)目根路徑, 搜索包時(shí)優(yōu)先從該目錄進(jìn)行,防止發(fā)生import包錯(cuò)誤
},
"args": [ // 參數(shù),每個(gè)參數(shù)的參數(shù)值無論是否是數(shù)字都需用引號
"--參數(shù)1","值1",
"--model_name_or_path","facebook/opt-350m",
"--per_device_train_batch_size", "4",
"--per_device_eval_batch_size", "4"
]
}
]
}
2、簡單的案例
2.1、python 執(zhí)行.py 文件
bash 命令
# 加入當(dāng)前目錄的絕對路徑
PYTHONPATH=$PWD
export PYTHONPATH
echo "當(dāng)前bash執(zhí)行目錄: $PWD, 已經(jīng)將PYTHONPATH設(shè)置為: $PYTHONPATH"
batch_dir=data/gpt3_generations_ceshi/
# 命令行python 進(jìn)行執(zhí)行
python self_instruct/bootstrap_instructions.py \
--batch_dir ${batch_dir} \
--num_instructions_to_generate 5
命令行 python 進(jìn)行執(zhí)行腳本,構(gòu)建launch.json 思路
- bash 為python執(zhí)行腳本.py,直接修改"program"為.py腳本相對路徑
- 其他參數(shù)照抄
{
// 使用 IntelliSense 了解相關(guān)屬性。
// 懸停以查看現(xiàn)有屬性的描述。
// 欲了解更多信息,請?jiān)L問: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python 調(diào)試",
"type": "debugpy",
"request": "launch",
"program": "self_instruct/bootstrap_instructions.py", // .py腳本文件相對路徑位置
"console": "integratedTerminal",
"justMyCode": false,
"env": {
"PYTHONPATH": "${workspaceRoot}" // 設(shè)置vscode項(xiàng)目根路徑,搜索包時(shí)優(yōu)先從該目錄進(jìn)行,防止發(fā)生import包錯(cuò)誤
},
"args": [
"--batch_dir","data/gpt3_generations_ceshi",// TODO 修改官方線上數(shù)據(jù)集為自己的路徑
"--num_instructions_to_generate","5"
]
}
]
}
2.2、調(diào)式多個(gè)文件
與調(diào)試單個(gè)文件同理,只是重復(fù)
{
// 使用 IntelliSense 了解相關(guān)屬性。
// 懸停以查看現(xiàn)有屬性的描述。
// 欲了解更多信息,請?jiān)L問: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
// 第一個(gè)文件
{
"name": "Python 調(diào)試 bootstrap_instructions.py",
"type": "debugpy",
"request": "launch",
"program": "self_instruct/bootstrap_instructions.py", // .py腳本文件相對路徑位置
"console": "integratedTerminal",
"justMyCode": false,
"env": {
"PYTHONPATH": "${workspaceRoot}" // 設(shè)置vscode項(xiàng)目根路徑,搜索包時(shí)優(yōu)先從該目錄進(jìn)行,防止發(fā)生import包錯(cuò)誤
},
"args": [
"--batch_dir","data/gpt3_generations_ceshi",// TODO 修改官方線上數(shù)據(jù)集為自己的路徑
"--num_instructions_to_generate","5"
]
},
// 第二個(gè)文件
{
"name": "Python 調(diào)試 identify_clf_or_not.py",
"type": "debugpy",
"request": "launch",
"program": "self_instruct/identify_clf_or_not.py", // .py腳本文件相對路徑位置
"console": "integratedTerminal",
"justMyCode": false,
"env": {
"PYTHONPATH": "${workspaceRoot}" // 設(shè)置vscode項(xiàng)目根路徑,搜索包時(shí)優(yōu)先從該目錄進(jìn)行,防止發(fā)生import包錯(cuò)誤
},
"args": [
"--batch_dir","data/gpt3_generations_ceshi",// TODO 修改官方線上數(shù)據(jù)集為自己的路徑
"--num_instructions_to_generate","5"
]
}
]
}
2.3、torchrun、deepspeed 調(diào)試
bash 命令
# 加入當(dāng)前目錄的絕對路徑
PYTHONPATH=$PWD
export PYTHONPATH
echo "當(dāng)前bash執(zhí)行目錄: $PWD, 已經(jīng)將PYTHONPATH設(shè)置為: $PYTHONPATH"
batch_dir=data/gpt3_generations_ceshi/
# 命令行python 進(jìn)行執(zhí)行
deepspeed --num_gpus 1 self_instruct/bootstrap_instructions.py \
--batch_dir ${batch_dir} \
--num_instructions_to_generate 5命令行 deepspeed/torchrun 進(jìn)行執(zhí)行腳本,構(gòu)建launch.json 思路
- 構(gòu)建launch.json腳本時(shí)需要找到“deepspeed”命令的路徑,bash命令行:which deepspeed,直接修改"program"為該路徑。
- self_instruct/bootstrap_instructions.py 是執(zhí)行的腳本的相對路徑,不在主目錄中,因此我們需要加入 "PYTHONPATH": "${workspaceRoot}" 指定項(xiàng)目目錄到環(huán)境變量中,以防代碼運(yùn)行時(shí)出現(xiàn) import 錯(cuò)誤
{
// 使用 IntelliSense 了解相關(guān)屬性。
// 懸停以查看現(xiàn)有屬性的描述。
// 欲了解更多信息,請?jiān)L問: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python 調(diào)試一階段LORA",
"type": "debugpy",
"request": "launch",
"program": "/opt/conda/envs/dsc/bin/deepspeed", // which deepspeed 查看位置
"console": "integratedTerminal",
"justMyCode": false,
"env": {
"PYTHONPATH": "${workspaceRoot}" // 設(shè)置vscode項(xiàng)目根路徑,搜索包時(shí)優(yōu)先從該目錄進(jìn)行,防止發(fā)生import包錯(cuò)誤
},
"args": [
"--num_gpus", "1",
"self_instruct/bootstrap_instructions.py", // 給定腳本地址(相對路徑)
"--batch_dir","data/gpt3_generations_ceshi",
"--num_instructions_to_generate","5"
]
}
]
}
2.4、accelerate launch (模塊)
# bash
accelerate launch --config_file "examples/sft/configs/deepspeed_config_z3_qlora.yaml" examples/sft/train.py \
--seed 100 \
--model_name_or_path "/workspace/Llama-2-7b-chat-hf" \
--dataset_name "smangrul/ultrachat-10k-chatml" \
--chat_template_format "chatml" \
--add_special_tokens False \
--append_concat_token False \
--splits "train,test" \
2>&1 | tee -a examples/sft/qlora_ds_zero3_log.outlaunch.json
{
// 使用 IntelliSense 了解相關(guān)屬性。
// 懸停以查看現(xiàn)有屬性的描述。
// 欲了解更多信息,請?jiān)L問: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python ds_z3_qlora_multigpu 微調(diào)",
"type": "debugpy",
"request": "launch",
"module": "accelerate.commands.launch", //調(diào)試accelerate launch
"console": "integratedTerminal",
"justMyCode": false,
"env": {
"PYTHONPATH": "${workspaceRoot}"
},
"args": [
"--config_file", "examples/sft/configs/deepspeed_config_z3_qlora.yaml",
"examples/sft/train.py",
"--seed", "100",
"--model_name_or_path", "/workspace/Llama-2-7b-chat-hf",
"--dataset_name", "smangrul/ultrachat-10k-chatml",
"--chat_template_format", "chatml",
"--add_special_tokens", "False",
"--append_concat_token", "False",
"--splits", "train,test"
]
}
]
}3、完整的案例
{
// 使用 IntelliSense 了解相關(guān)屬性。
// 懸停以查看現(xiàn)有屬性的描述。
// 欲了解更多信息,請?jiān)L問: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
// py 腳本
{
"name": "Python lora 微調(diào)",
"type": "debugpy",
"request": "launch",
"program": "finetune_demo/finetune_hf.py",
"console": "integratedTerminal",
"justMyCode": false,
"env": {
"PYTHONPATH": "${workspaceRoot}"
},
"args": [
"/workspace/AdvertiseGen_fix",
"/workspace/chatglm3-6b",
"finetune_demo/configs/lora.yaml"
]
},
// torchrun 分布式
{
"name": "Python lora_ds 微調(diào)",
"type": "debugpy",
"request": "launch",
"program": "/opt/conda/envs/llm/bin/torchrun",
"console": "integratedTerminal",
"justMyCode": false,
"env": {
"PYTHONPATH": "${workspaceRoot}"
},
"args": [
"--nproc_per_node","1",
"finetune_demo/finetune_hf.py",
"/workspace/AdvertiseGen_fix",
"/workspace/chatglm3-6b",
"finetune_demo/configs/lora.yaml"
]
}
]
}總結(jié)
到此這篇關(guān)于vscode調(diào)試launch.json常用格式的文章就介紹到這了,更多相關(guān)vscode調(diào)試launch.json格式內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Source?Insight?4.0.093?安裝破解詳細(xì)圖文教程
這篇文章主要介紹了Source?Insight?4.0.093?安裝破解詳細(xì)圖文教程,source?insight?4是一款非常強(qiáng)大的程序編輯器,如果你沒有一款合適的代碼編輯器,那么這款軟件不妨試試,可能你會喜歡2022-08-08
關(guān)于解決?“Error:?listen?EACCES:?permission?denied?0.0.0.0:
這篇文章主要介紹了在開發(fā)過程中常見的錯(cuò)誤Error:listenEACCES:permissiondenied0.0.0.0:80,并提供了兩種解決方法,大家可以根據(jù)需求選擇對應(yīng)的方法,需要的朋友可以參考下2024-12-12
BurpSuite超詳細(xì)安裝和基礎(chǔ)使用教程(已破解)
Burp?Suite?是用于攻擊web?應(yīng)用程序的集成平臺包含了許多Burp工具,它主要用來做安全性滲透測試,可以實(shí)現(xiàn)攔截請求、Burp?Spider爬蟲、漏洞掃描(付費(fèi))等類似Fiddler和Postman但比其更強(qiáng)大的功能,今天給大家介紹下BurpSuite安裝破解使用教程,感興趣的朋友一起看看吧2022-10-10
Trie樹_字典樹(字符串排序)簡介及實(shí)現(xiàn)
有時(shí),我們會碰到對字符串的排序,若采用一些經(jīng)典的排序算法,則時(shí)間復(fù)雜度一般為O(n*lgn),但若采用Trie樹,則時(shí)間復(fù)雜度僅為O(n)2014-03-03
chatgpt?1020?錯(cuò)誤碼成功解決的三種方案(推薦)
造成1020錯(cuò)誤的主要原因是代理問題,當(dāng)打開代理時(shí),登錄該網(wǎng)站會直接顯示上述錯(cuò)誤“Access?denied?Error?code?1020”,怎么解決這個(gè)問題呢,下面小編給大家?guī)砹薱hatgpt?1020?錯(cuò)誤碼成功解決的三種方案,感興趣的朋友一起看看吧2023-02-02
Prometheus和NodeExporter安裝監(jiān)控?cái)?shù)據(jù)說明
這篇文章主要為大家介紹了Prometheus和node?exporter安裝監(jiān)控?cái)?shù)據(jù)說明,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07
使用阿里大于(大魚)平臺進(jìn)行發(fā)送手機(jī)驗(yàn)證碼的流程
這篇文章主要介紹了使用阿里大于(大魚)平臺進(jìn)行發(fā)送手機(jī)驗(yàn)證碼的流程,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-10-10

