flex_ai
0.42
Twitter (alias X)
from flex_ai import FlexAI
from openai import OpenAI
import time
# Initialize the Flex AI client
client = FlexAI ( api_key = "your_api_key_here" )
# Create dataset - for all datasets [here](https://docs.getflex.ai/quickstart#upload-your-first-dataset)
dataset = client . create_dataset (
"API Dataset New" ,
"instruction/train.jsonl" ,
"instruction/eval.jsonl"
)
# Start a fine-tuning task
task = client . create_finetune (
name = "My Task New" ,
dataset_id = dataset [ "id" ],
model = "meta-llama/Llama-3.2-1B-Instruct" ,
n_epochs = 5 ,
train_with_lora = True ,
lora_config = {
"lora_r" : 64 ,
"lora_alpha" : 8 ,
"lora_dropout" : 0.1
},
n_checkpoints_and_evaluations_per_epoch = 1 ,
batch_size = 4 ,
learning_rate = 0.0001 ,
save_only_best_checkpoint = True
)
# Wait for training completion
client . wait_for_task_completion ( task_id = task [ "id" ])
# Wait for last checkpoint to be uploaded
while True :
checkpoints = client . get_task_checkpoints ( task_id = task [ "id" ])
if checkpoints and checkpoints [ - 1 ][ "stage" ] == "FINISHED" :
last_checkpoint = checkpoints [ - 1 ]
checkpoint_list = [{
"id" : last_checkpoint [ "id" ],
"name" : "step_" + str ( last_checkpoint [ "step" ])
}]
break
time . sleep ( 10 ) # Wait 10 seconds before checking again
# Create endpoint
endpoint_id = client . create_multi_lora_endpoint (
name = "My Endpoint New" ,
lora_checkpoints = checkpoints_list ,
compute = "A100-40GB"
)
endpoint = client . wait_for_endpoint_ready ( endpoint_id = endpoint_id )
# Use the model
openai_client = OpenAI (
api_key = "your_api_key_here" ,
base_url = f" { endpoint [ 'url' ] } /v1"
)
completion = openai_client . completions . create (
model = "meta-llama/Llama-3.2-1B-Instruct" ,
prompt = "Translate the following English text to French" ,
max_tokens = 60
)
print ( completion . choices [ 0 ]. text )Tabel ini memberikan gambaran umum tentang model bahasa besar (LLM) yang tersedia untuk penyesuaian, dipesan kira-kira dari yang paling terkenal hingga paling tidak akrab. Ini mencantumkan detail utama untuk setiap model, termasuk nama, keluarga, jumlah parameter, panjang konteks, dan fitur tambahan.
| Nama model | Keluarga | Parameter (b) | Panjang konteks | Dukungan VLLM | Dukungan Lora |
|---|---|---|---|---|---|
| Nvidia-llama-3.1-nemotron-70b-instruct-hf | llama3.1 | 70 | 131.072 | Ya | Ya |
| Meta-llama-3.2-3b-instruct | llama3.2 | 3 | 131.072 | Ya | Ya |
| Meta-llama-3.2-1b-instruct | llama3.2 | 1 | 131.072 | Ya | Ya |
| Mistral-Small-instruct-2409 | Mistral | 7.2 | 128.000 | Ya | Ya |
| Ministral-8b-instruct-2410 | Mistral | 8 | 128.000 | Ya | Ya |
| MathStral-7b-V0.1 | Mistral | 7 | 32.000 | Ya | Ya |
| QWEN2.5-CODER-7B-INSTRUCT | Qwen2.5 | 7 | 32.768 | Ya | Ya |
| AYA-EXPANSE-32B | Aya | 32 | 128.000 | Ya | TIDAK |
| AYA-EXPANSE-8B | Aya | 8 | 8.000 | Ya | TIDAK |
| Nemotron-mini-4b-instruct | Nemotron | 4 | 4.096 | Ya | TIDAK |
| GEMMA-2-2B-IT | Gemma2 | 2 | 8.192 | Ya | Ya |
| Meta-llama-3.1-70b-instruct | llama3.1 | 70 | 131.072 | Ya | Ya |
| Meta-llama-3.1-70b-instruct | llama3.1 | 70 | 131.072 | Ya | Ya |
| Meta-llama-3.1-70b | llama3.1 | 70 | 131.072 | Ya | Ya |
| Meta-llama-3.1-8b-instruct | llama3.1 | 8 | 131.072 | Ya | Ya |
| Meta-llama-3.1-8b | llama3.1 | 8 | 131.072 | Ya | Ya |
| Meta-llama-3-70b-instruct | llama3 | 70 | 8.192 | Ya | Ya |
| Meta-llama-3-70b | llama3 | 70 | 8.192 | Ya | Ya |
| Meta-llama-3-8b-instruct | llama3 | 8 | 8.192 | Ya | Ya |
| Meta-Llama-3-8B | llama3 | 8 | 8.192 | Ya | Ya |
| Mixtral-8x7b-instruct-V0.1 | Mixtral | 46.7 | 32.768 | Ya | Ya |
| Mistral-7b-instruct-V0.3 | Mistral | 7.2 | 32.768 | Ya | Ya |
| Mistral-Nemo-instruct-2407 | Mistral | 12.2 | 128.000 | TIDAK | TIDAK |
| Mistral-nemo-base-2407 | Mistral | 12.2 | 128.000 | TIDAK | TIDAK |
| GEMMA-2-27B-IT | Gemma2 | 27 | 8.192 | Ya | Ya |
| Gemma-2-27b | Gemma2 | 27 | 8.192 | Ya | Ya |
| GEMMA-2-9B-IT | Gemma2 | 9 | 8.192 | Ya | Ya |
| Gemma-2-9b | Gemma2 | 9 | 8.192 | Ya | Ya |
| PHI-3-Medium-128K-Instruksi | phi3 | 14 | 128.000 | Ya | TIDAK |
| PHI-3-Medium-4K-instruct | phi3 | 14 | 4.000 | Ya | TIDAK |
| PHI-3-SMALL-128K-INSTRUCT | phi3 | 7.4 | 128.000 | Ya | TIDAK |
| PHI-3-SMALL-8K-INSTRUCT | phi3 | 7.4 | 8.000 | Ya | TIDAK |
| PHI-3-MINI-128K-INSTRUCT | phi3 | 3.8 | 128.000 | Ya | TIDAK |
| PHI-3-mini-4K-instruksi | phi3 | 3.8 | 4.096 | Ya | TIDAK |
| QWEN2-72B-INSTRUCT | Qwen2 | 72 | 32.768 | Ya | Ya |
| QWEN2-72B | Qwen2 | 72 | 32.768 | Ya | Ya |
| QWEN2-57B-A14B-INSTRUCT | Qwen2 | 57 | 32.768 | Ya | Ya |
| QWEN2-57B-A14B | Qwen2 | 57 | 32.768 | Ya | Ya |
| QWEN2-7B-INSTRUCT | Qwen2 | 7 | 32.768 | Ya | Ya |
| QWEN2-7B | Qwen2 | 7 | 32.768 | Ya | Ya |
| QWEN2-1.5B-INSTRUCT | Qwen2 | 1.5 | 32.768 | Ya | Ya |
| Qwen2-1.5b | Qwen2 | 1.5 | 32.768 | Ya | Ya |
| QWEN2-0.5B-INSTRUCT | Qwen2 | 0,5 | 32.768 | Ya | Ya |
| QWEN2-0.5B | Qwen2 | 0,5 | 32.768 | Ya | Ya |
| Tinyllama_v1.1 | Tinyllama | 1.1 | 2.048 | TIDAK | TIDAK |
| Deepseek-coder-v2-lite-base | Deepseek-Coder-V2 | 16 | 163.840 | TIDAK | TIDAK |
| Internlm2_5-7b-chat | internlm2.5 | 7.74 | 1.000.000 | Ya | TIDAK |
| Internlm2_5-7b | internlm2.5 | 7.74 | 1.000.000 | Ya | TIDAK |
| Jamba-V0.1 | Jamba | 51.6 | 256.000 | Ya | Ya |
| YI-1.5-34B-CHAT | Yi-1.5 | 34.4 | 4.000 | Ya | Ya |
| Yi-1.5-34b | Yi-1.5 | 34.4 | 4.000 | Ya | Ya |
| YI-1.5-34B-32K | Yi-1.5 | 34.4 | 32.000 | Ya | Ya |
| YI-1.5-34B-CHAT-16K | Yi-1.5 | 34.4 | 16.000 | Ya | Ya |
| Yi-1.5-9b-chat | Yi-1.5 | 8.83 | 4.000 | Ya | Ya |
| Yi-1.5-9b | Yi-1.5 | 8.83 | 4.000 | Ya | Ya |
| YI-1.5-9B-32K | Yi-1.5 | 8.83 | 32.000 | Ya | Ya |
| YI-1.5-9B-CHAT-16K | Yi-1.5 | 8.83 | 16.000 | Ya | Ya |
| YI-1.5-6B-CHAT | Yi-1.5 | 6 | 4.000 | Ya | Ya |
| Yi-1.5-6b | Yi-1.5 | 6 | 4.000 | Ya | Ya |
| C4AI-Command-R-V01 | Command-r | 35 | 131.072 | Ya | TIDAK |
Tabel ini memberikan tinjauan komprehensif dari model yang tersedia, ukuran, kemampuan, dan dukungannya untuk berbagai teknik penyempurnaan. Saat memilih model untuk menyempurnakan, pertimbangkan faktor-faktor seperti ukuran model, panjang konteks, dan dukungan untuk teknik optimasi spesifik seperti VLLM dan LORA.