FTUP
1.0.0
該腳本有助於自動化為OpenAI模型(特別是GPT-3.5和Babbage)進行填充數據的數據的過程。它還提供了實用程序來驗證數據,將數據轉換為所需的JSONL格式,並估算列出過程的成本。
pyfiglet , openai , tiktoken , dotenv , argparse , json , re , os ,SYS, sys , time , clint要安裝所需的庫:
pip install pyfiglet openai tiktoken python-dotenv argparse clint或者
pip install requirements.txt python ftup.py [-k <API_KEY>] -m <MODEL_NAME> -f <INPUT_FILE> [-s <SUFFIX>] [-e <EPOCHS>]
參數:
-k, --key :可選。 API鍵。可選的參數,但在默認設備中需要具有環境中的API鍵。 OpenAI_API_KEY-m, --model :必需。要使用的型號。選擇: gpt gpt-3.5-turbo-0613或bab for babbage-002 。-f, --file :必需。輸入數據文件(JSONL格式)。-s, --suffix :可選。為您的固定型號添加後綴。例如,“ my-suffix-title-v-1”。-e, --epoch :可選。訓練時期的數量。默認值為3。 將您的API密鑰存儲在.env文件中的格式:
OPENAI_API_KEY=your_api_key_here
默認情況下,腳本將加載此密鑰,如果不是-k / --key作為參數傳遞。
check_key(key) :驗證OpenAI API鍵的格式。check_model(model) :驗證模型名稱。check_jsonl_file(file) :檢查提供的文件是否具有有效的JSONL名稱以及是否存在。create_update_jsonl_file(model, file) :檢查JSONL是否具有正確的格式並將文件上傳到OpenAI。update_ft_job(file_id_name, model, suffix, epoch) :在OpenAI上創建或更新Finetuning作業。check_jsonl_gpt35(file) :驗證GPT-3.5培訓的格式。check_jsonl_babbage(file) :驗證Babbage-002培訓的格式。cost_gpt(file, epochs) :估計填充過程的成本。 $ python ftup.py --key your_api_key_here --file train_gpt3_5.jsonl --model gpt --epoch 1 --suffix custom-model-name
or
$ python ftup.py -f train_gpt3_5.jsonl -m gpt -e 1 -s custom-model-name
____________ __ ______
/ ____/_ __/ / / / / __
/ /_ / / ______ / / / / /_/ /
/ __/ / / /_____/ / /_/ / ____/
/_/ /_/ ____/_/
Checking API key ...
- API Key
Checking model ...
- Model gpt
Checking if jsonl is valid ...
- JSON File train_gpt3_5.jsonl
Checking if jsonl format is valid for GPT-3.5 training ...
- Num examples: 225
- JSONL train_gpt3_5.jsonl correct format
Uploading jsonl train file ...
- File ID: file-abcd123
Dataset has ~15153 tokens that will be charged for during training
You'll train for 1 epochs on this dataset
By default, you'll be charged for ~15153 tokens
Total cost: $0.1212 ?
Creating a finetuning job ...
- Fintetuning job id: ftjob-abc123
Status: succeeded
Finetuning succeeded! ☑️
Finetune model: ft:gpt-3.5-turbo:openai:custom-model-name:7p4lURe