FTUP
1.0.0
이 스크립트는 OpenAI 모델, 특히 GPT-3.5 및 Babbage에서 미세 조정을위한 데이터를 준비하는 프로세스를 자동화하는 데 도움이됩니다. 또한 데이터를 검증하고 데이터를 필요한 JSONL 형식으로 변환하고 Finetuning 프로세스의 비용을 추정하는 유틸리티를 제공합니다.
pyfiglet , openai , tiktoken , dotenv , argparse , json , re , os , 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 키. 선택적 인수, 그러나 기본 ENV에서는 Enviroment에 API 키를 갖기 위해 필요합니다. Openai_api_key-m, --model : 필수. 사용할 모델. 옵션 : gpt-3.5-turbo-0613 용 gpt 또는 babbage-002 용 bab .-f, --file : 필수. 입력 데이터 파일 (JSONL 형식).-s, --suffix : 선택 사항. Finetuned 모델에 접미사를 추가하십시오. 예를 들어, '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