Tüm Ürünler
Search
Belge Merkezi

Platform For AI:Fully managed Qwen on Lingjun

Son Güncelleme:Oct 05, 2026

Megatron kullanarak Lingjun Akıllı Bilgi İşlem platformunda Qwen (7B/14B/72B) modellerini eğitin, ince ayar yapın ve dağıtın. Bu kılavuzda örnek olarak Qwen-7B kullanılmıştır.

Ön koşullar

Bu kılavuzda Qwen-7B v1.1.4 sürümü kullanılmaktadır. Aşağıdaki hazırlıkları tamamlayın:

Sınırlamalar

Bu en iyi uygulama yalnızca Çin (Ulanqab) bölgesinde kullanılabilir.

Adım 1: Qwen modelini hazırlayın

Qwen modelini aşağıdaki yöntemlerden birini kullanarak indirin:

  1. PAI DSW geliştirme ortamına gidin.

    1. PAI konsoluna giriş yapın.

    2. Sayfanın sol üst köşesinde hizmeti kullanmak istediğiniz bölgeyi seçin: Çin (Ulanqab).

    3. Sol gezinme bölmesinde Workspaces seçeneğini tıklayın. Açılan sayfada yönetmek istediğiniz çalışma alanının adını tıklayın.

    4. Sol gezinme bölmesinde Model Training > Data Science Workshop (DSW) seçeneklerini belirleyin.

    5. Hedef örneğin Actions sütununda Open seçeneğini tıklayın.

  2. Üst menü çubuğunda Terminal seçeneğini tıklayın. Açılan sekmede create a terminal seçeneğini tıklayın.

  3. Qwen modelini indirin.

    ModelScope topluluğundan modeli indirin

    1. Terminalde ModelScope'u yüklemek için aşağıdaki komutu çalıştırın.

    2. pip install modelscope

      Çıktıyı görüntülemek için tıklayın. Sonuçlardaki WARNING mesajlarını yoksayın.

      Looking in indexes: https://mirrors.cloud.aliyuncs.com/pypi/simple
      Collecting modelscope
        Downloading https://mirrors.cloud.aliyuncs.com/pypi/packages/ac/05/75b5d750608d7354dc3dd023dca7101e5f3b4645cb3e5b816536d472a058/modelscope-1.9.5-py3-none-any.whl (5.4 MB)
           ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.4/5.4 MB 104.7 MB/s eta 0:00:00
      Requirement already satisfied: pyyaml in /opt/*/lib/python3.8/site-packages (from modelscope) (5.4.1)
      Requirement already satisfied: pandas in /opt/*/lib/python3.8/site-packages (from modelscope) (1.5.3)
      Requirement already satisfied: addict in /opt/*/lib/python3.8/site-packages (from modelscope) (2.4.0)
      Requirement already satisfied: numpy in /opt/*/lib/python3.8/site-packages (from modelscope) (1.22.2)
      Collecting simplejson>=3.3.0
        Downloading https://mirrors.cloud.aliyuncs.com/pypi/packages/33/5f/b9506e323ea89737b34c97a6eda9d22ad6b771190df93f6eb72657a3b996/simplejson-3.19.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (136 kB)
           ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 136.6/136.6 kB 70.2 MB/s eta 0:00:00
      Collecting gast>=0.2.2
        Downloading https://mirrors.cloud.aliyuncs.com/pypi/packages/fa/39/5aae571e5a5f4de9c3445dae08a530498e5c53b0e74410eeeb0991c79047/gast-0.5.4-py3-none-any.whl (19 kB)
      Requirement already satisfied: Pillow>=6.2.0 in /opt/*/lib/python3.8/site-packages (from modelscope) (9.3.0)
      Requirement already satisfied: oss2 in /opt/*/lib/python3.8/site-packages (from modelscope) (2.17.0)
      Requirement already satisfied: filelock>=3.3.0 in /opt/*/lib/python3.8/site-packages (from modelscope) (3.11.0)
      Requirement already satisfied: urllib3>=1.26 in /opt/*/lib/python3.8/site-packages (from modelscope) (1.26.12)
      Requirement already satisfied: datasets<=2.13.0,>=2.8.0 in /opt/*/lib/python3.8/site-packages (from modelscope) (2.11.0)
      Requirement already satisfied: attrs in /opt/*/lib/python3.8/site-packages (from modelscope) (22.2.0)
      Requirement already satisfied: scipy in /opt/*/lib/python3.8/site-packages (from modelscope) (1.9.3)
      Requirement already satisfied: yapf in /opt/*/lib/python3.8/site-packages (from modelscope) (0.32.0)
      Requirement already satisfied: pyarrow!=9.0.0,>=6.0.0 in /opt/*/lib/python3.8/site-packages (from modelscope) (11.0.0)
      Requirement already satisfied: setuptools in /opt/*/lib/python3.8/site-packages (from modelscope) (65.5.0)
      Requirement already satisfied: requests>=2.25 in /opt/*/lib/python3.8/site-packages (from modelscope) (2.28.1)
      Requirement already satisfied: einops in /opt/*/lib/python3.8/site-packages (from modelscope) (0.6.0)
      Requirement already satisfied: python-dateutil>=2.1 in /opt/*/lib/python3.8/site-packages (from modelscope) (2.8.2)
      Collecting sortedcontainers>=1.5.9
        Downloading https://mirrors.cloud.aliyuncs.com/pypi/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl (29 kB)
      Requirement already satisfied: tqdm>=4.64.0 in /opt/*/lib/python3.8/site-packages (from modelscope) (4.65.0)
      Requirement already satisfied: dill<0.3.7,>=0.3.0 in /opt/*/lib/python3.8/site-packages (from datasets<=2.13.0,>=2.8.0->modelscope) (0.3.6)
      Requirement already satisfied: multiprocess in /opt/*/lib/python3.8/site-packages (from datasets<=2.13.0,>=2.8.0->modelscope) (0.70.14)
      Requirement already satisfied: aiohttp in /opt/*/lib/python3.8/site-packages (from datasets<=2.13.0,>=2.8.0->modelscope) (3.8.4)
      Requirement already satisfied: responses<0.19 in /opt/*/lib/python3.8/site-packages (from datasets<=2.13.0,>=2.8.0->modelscope) (0.18.0)
      Requirement already satisfied: huggingface-hub<1.0.0,>=0.11.0 in /opt/*/lib/python3.8/site-packages (from datasets<=2.13.0,>=2.8.0->modelscope) (0.16.4)
      Requirement already satisfied: fsspec[http]>=2021.11.1 in /opt/*/lib/python3.8/site-packages (from datasets<=2.13.0,>=2.8.0->modelscope) (2023.4.0)
      Requirement already satisfied: packaging in /opt/*/lib/python3.8/site-packages (from datasets<=2.13.0,>=2.8.0->modelscope) (21.3)
      Requirement already satisfied: xxhash in /opt/*/lib/python3.8/site-packages (from datasets<=2.13.0,>=2.8.0->modelscope) (3.2.0)
      Requirement already satisfied: six>=1.5 in /opt/*/lib/python3.8/site-packages (from python-dateutil>=2.1->modelscope) (1.16.0)
      Requirement already satisfied: certifi>=2017.4.17 in /opt/*/lib/python3.8/site-packages (from requests>=2.25->modelscope) (2022.9.24)
      Requirement already satisfied: charset-normalizer<3,>=2 in /opt/*/lib/python3.8/site-packages (from requests>=2.25->modelscope) (2.0.4)
      Requirement already satisfied: idna<4,>=2.5 in /opt/*/lib/python3.8/site-packages (from requests>=2.25->modelscope) (3.4)
      Requirement already satisfied: aliyun-python-sdk-kms>=2.4.1 in /opt/*/lib/python3.8/site-packages (from oss2->modelscope) (2.16.0)
      Requirement already satisfied: aliyun-python-sdk-core>=2.13.12 in /opt/*/lib/python3.8/site-packages (from oss2->modelscope) (2.13.36)
      Requirement already satisfied: crcmod>=1.7 in /opt/*/lib/python3.8/site-packages (from oss2->modelscope) (1.7)
      Requirement already satisfied: pycryptodome>=3.4.7 in /opt/*/lib/python3.8/site-packages (from oss2->modelscope) (3.15.0)
      Requirement already satisfied: pytz>=2020.1 in /opt/*/lib/python3.8/site-packages (from pandas->modelscope) (2022.7.1)
      Requirement already satisfied: cryptography>=2.6.0 in /opt/*/lib/python3.8/site-packages (from aliyun-python-sdk-core>=2.13.12->oss2->modelscope) (38.0.3)
      Requirement already satisfied: jmespath<1.0.0,>=0.9.3 in /opt/*/lib/python3.8/site-packages (from aliyun-python-sdk-core>=2.13.12->oss2->modelscope) (0.10.0)
      Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in /opt/*/lib/python3.8/site-packages (from aiohttp->datasets<=2.13.0,>=2.8.0->modelscope) (4.0.2)
      Requirement already satisfied: yarl<2.0,>=1.0 in /opt/*/lib/python3.8/site-packages (from aiohttp->datasets<=2.13.0,>=2.8.0->modelscope) (1.8.2)
      Requirement already satisfied: frozenlist>=1.1.1 in /opt/*/lib/python3.8/site-packages (from aiohttp->datasets<=2.13.0,>=2.8.0->modelscope) (1.3.3)
      Requirement already satisfied: multidict<7.0,>=4.5 in /opt/*/lib/python3.8/site-packages (from aiohttp->datasets<=2.13.0,>=2.8.0->modelscope) (6.0.4)
      Requirement already satisfied: aiosignal>=1.1.2 in /opt/*/lib/python3.8/site-packages (from aiohttp->datasets<=2.13.0,>=2.8.0->modelscope) (1.3.1)
      Requirement already satisfied: typing-extensions>=3.7.*.* in /opt/*/lib/python3.8/site-packages (from huggingface-hub<1.0.0,>=0.11.0->datasets<=2.13.0,>=2.8.0->modelscope) (4.4.0)
      Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /opt/*/lib/python3.8/site-packages (from packaging->datasets<=2.13.0,>=2.8.0->modelscope) (3.0.9)
      Requirement already satisfied: cffi>=1.12 in /opt/*/lib/python3.8/site-packages (from cryptography>=2.6.0->aliyun-python-sdk-core>=2.13.12->oss2->modelscope) (1.15.1)
      Requirement already satisfied: pycparser in /opt/*/lib/python3.8/site-packages (from cffi>=1.12->cryptography>=2.6.0->aliyun-python-sdk-core>=2.13.12->oss2->modelscope) (2.21)
      Installing collected packages: sortedcontainers, simplejson, gast, modelscope
      Successfully installed gast-0.5.4 modelscope-1.9.5 simplejson-3.19.2 sortedcontainers-2.4.0
      WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
    3. Python ortamına girin.

    4. python
    5. Aşağıdaki kod, Qwen-7B model dosyalarını indirir.

    6. # ### Loading Model and Tokenizer
      from modelscope.hub.snapshot_download import snapshot_download
      model_dir = snapshot_download('qwen/Qwen-7B', 'v1.1.4')
      # model_dir = snapshot_download('qwen/Qwen-14B', 'v1.0.4')
      # model_dir = snapshot_download('qwen/Qwen-72B')
      # Get the download path.
      print(model_dir)
      # /root/.cache/modelscope/hub/qwen/Qwen-7B
    7. Python ortamından çıkmak için Ctrl+D tuşlarına basın.

    8. İndirilen Qwen modelini ilgili klasöre taşımak için aşağıdaki komutu çalıştırın.

    9. # mkdir -p /mnt/workspace/qwen-ckpts/${ckpt_folder_with_hf_suffix}
      mkdir -p /mnt/workspace/qwen-ckpts/qwen-7b-hf
      # cp -r ${path_to_downloaded_model}/* /mnt/workspace/qwen-ckpts/${ckpt_folder_with_hf_suffix}
      cp -r /root/.cache/modelscope/hub/qwen/Qwen-7B/* /mnt/workspace/qwen-ckpts/qwen-7b-hf

    HuggingFace topluluğundan modeli indirin

    DSW Terminalinde modeli indirmek için aşağıdaki komutu çalıştırın. Bu kılavuzda örnek olarak Qwen-7B modeli kullanılmıştır. Qwen-14B veya Qwen-72B model dosyalarını indirmek için aşağıdaki kodu gerektiği gibi değiştirin.

    mkdir /mnt/workspace/qwen-ckpts
    cd /mnt/workspace/qwen-ckpts
    git clone https://huggingface.co/Qwen/Qwen-7B
    # git clone https://huggingface.co/Qwen/Qwen-7B-Chat
    # git clone https://huggingface.co/Qwen/Qwen-14B
    # git clone https://huggingface.co/Qwen/Qwen-14B-Chat
    # git clone https://huggingface.co/Qwen/Qwen-72B
    # git clone https://huggingface.co/Qwen/Qwen-72B-Chat

Adım 2: Ön eğitim verilerini hazırlayın

DSW'de ön eğitim verilerini hazırlayın. Bu örnekte Megatron veri ön işleme işlemini göstermek amacıyla WuDaoCorpora2.0 (yalnızca araştırma amaçlı) kullanılmıştır. PAI tarafından sağlanan örnek verileri indirin veya kendi verilerinizi hazırlayın.

PAI tarafından işlenen küçük ölçekli örnek verileri kullanın

PAI, işlenmiş örnek veriler sağlar. İndirmek için aşağıdaki komutu çalıştırın.

mkdir /mnt/workspace/qwen-datasets/
cd /mnt/workspace/qwen-datasets
wget https://atp-modelzoo-wlcb-pai.oss-cn-wulanchabu.aliyuncs.com/release/models/pai-megatron-patch/qwen-datasets/alpaca_zh-qwen-train.json
wget https://atp-modelzoo-wlcb-pai.oss-cn-wulanchabu.aliyuncs.com/release/models/pai-megatron-patch/qwen-datasets/alpaca_zh-qwen-valid.json
mkdir -p /mnt/workspace/qwen-datasets/wudao
cd /mnt/workspace/qwen-datasets/wudao
wget https://atp-modelzoo-wlcb-pai.oss-cn-wulanchabu.aliyuncs.com/release/models/pai-megatron-patch/qwen-datasets/wudao_qwenbpe_content_document.bin
wget https://atp-modelzoo-wlcb-pai.oss-cn-wulanchabu.aliyuncs.com/release/models/pai-megatron-patch/qwen-datasets/wudao_qwenbpe_content_document.idx

Verileri kendiniz işleyin

  1. WuDaoCorpora2.0 veri kümesini /mnt/workspace/qwen-datasets dizinine indirin. Sıkıştırması açılan klasörün adı wudao_200g'dir.

    PAI, gösterim amaçlı örnek veriler sağlar. Veri kümesini indirmek ve sıkıştırmayı açmak için aşağıdaki komutu çalıştırın.

    mkdir /mnt/workspace/qwen-datasets
    cd /mnt/workspace/qwen-datasets
    wget https://atp-modelzoo.oss-cn-hangzhou.aliyuncs.com/release/datasets/WuDaoCorpus2.0_base_sample.tgz
    tar zxvf WuDaoCorpus2.0_base_sample.tgz 
    mv WuDaoCorpus2.0_base_sample wudao_200g
  2. Terminalde Wudao verileri üzerinde veri temizleme ve dosya biçimi dönüştürme işlemlerini gerçekleştirmek için aşağıdaki komutu çalıştırın. Bu işlem, birleştirilmiş merged_wudao_cleaned.json dosyasını oluşturur.

    #! /bin/bash
    set -ex
    # Set the path where the raw data is stored.
    data_dir=/mnt/workspace/qwen-datasets/wudao_200g
    
    # Start the data cleansing process.
    dataset_dir=$(dirname $data_dir)
    mkdir -p ${dataset_dir}/cleaned_wudao_dataset
    cd ${dataset_dir}/cleaned_wudao_dataset
    wget https://atp-modelzoo-wlcb-pai.oss-cn-wulanchabu.aliyuncs.com/release/models/pai-megatron-patch/llama2-codes/preprocess_wudao2.py
    # Unlike the previous section, the key parameter is added and set to text.
    python preprocess_wudao2.py -i ${data_dir} -o ${dataset_dir}/cleaned_wudao_dataset -k text -p 32
    
    # Merge the cleansed data.
    mkdir ${dataset_dir}/wudao
    cd ${dataset_dir}/wudao
    find ${dataset_dir}/cleaned_wudao_dataset -name "*.json" -exec cat {} + > ${dataset_dir}/wudao/merged_wudao_cleaned.json
    rm -rf ${dataset_dir}/cleaned_wudao_dataset
    

    Komut çalıştırıldıktan sonra qwen-datasets dizininin dosya yapısı aşağıdaki gibidir. Yeni bir wudao klasörü eklenmiştir.

    qwen-datasets
    ├── wudao_200g 
    └── wudao
        └── merged_wudao_cleaned.json
  3. Terminalde merged_wudao_cleaned.json dosyasını birden çok gruba bölmek ve sıkıştırmak için aşağıdaki komutu çalıştırın. Bu işlem, sonraki adımlarda çoklu iş parçacığı kullanımını kolaylaştırır.

    apt-get update
    apt-get install zstd
    
    # The number of chunks is set to 10. increase this value if data processing is slow.
    NUM_PIECE=10
    
    # Process the merged_wudao_cleaned.json file.
    mkdir -p ${dataset_dir}/cleaned_zst/
    # Query the total data length and split the data.
    NUM=$(sed -n '$=' ${dataset_dir}/wudao/merged_wudao_cleaned.json)
    echo "total line of dataset is $NUM, data will be split into $NUM_PIECE pieces for processing"
    NUM=`expr $NUM / $NUM_PIECE`
    echo "each group is processing $NUM sample"
    split_dir=${dataset_dir}/split
    mkdir $split_dir
    split -l $NUM --numeric-suffixes --additional-suffix=.jsonl ${dataset_dir}/wudao/merged_wudao_cleaned.json $split_dir/
    
    # Compress the data.
    o_path=${dataset_dir}/cleaned_zst/
    mkdir -p $o_path
    files=$(ls $split_dir/*.jsonl)
    for filename in $files
    do
       f=$(basename $filename)
       zstd -z $filename -o $o_path/$f.zst &
    done
    rm -rf $split_dir
    rm ${dataset_dir}/wudao/merged_wudao_cleaned.json
    

    Komut çalıştırıldıktan sonra qwen-datasets dizininin dosya yapısı aşağıdaki gibidir. İçinde 10 sıkıştırılmış dosya bulunan yeni bir cleaned_zst klasörü eklenmiştir.

    qwen-datasets
    ├── wudao_200g
    ├── wudao
    └── cleaned_zst
        ├── 00.jsonl.zst
    		│   ...
        └── 09.jsonl.zst
  4. MMAP biçiminde bir ön eğitim veri kümesi oluşturun.

    MMAP, eğitim ve ince ayar sırasında verilerin okunması için beklenen süreyi azaltan önceden tokenize edilmiş bir veri biçimidir. Bu durum, özellikle büyük ölçekli verileri işlerken avantaj sağlar. Aşağıdaki adımları izleyin:

    1. DSW Terminalinde, Megatron için bir model eğitim aracı olan PAI-Megatron-Patch kaynak kodunu DSW çalışma dizinine /mnt/workspace/ kopyalamak için aşağıdaki komutu çalıştırın.

      cd /mnt/workspace/
      # Method 1: Obtain the training code from the open source website.
      git clone --recurse-submodules https://github.com/alibaba/Pai-Megatron-Patch.git
      # Method 2: Obtain the training code using wget. run tar zxvf Pai-Megatron-Patch.tgz to decompress the file.
      wget https://atp-modelzoo.oss-cn-hangzhou.aliyuncs.com/release/models/Pai-Megatron-Patch.tgz
    2. Terminalde verileri MMAP biçimine dönüştürmek için aşağıdaki komutu çalıştırın.

      Komut çalıştırıldıktan sonra /mnt/workspace/qwen-datasets/wudao dizininde .bin ve .idx dosyaları oluşturulur.

      # Install the tokenizer library required by Qwen.
      pip install tiktoken
      # Set the dataset path and working directory.
      export dataset_dir=/mnt/workspace/qwen-datasets
      export WORK_DIR=/mnt/workspace
      
      # Generate MMAP-format pre-training datasets for the training and validation sets.
      cd ${WORK_DIR}/Pai-Megatron-Patch/toolkits/pretrain_data_preprocessing
      bash run_make_pretraining_dataset.sh \
      ../../Megatron-LM-23.04 \
      ${WORK_DIR}/Pai-Megatron-Patch/ \
      ${dataset_dir}/cleaned_zst/ \
      qwenbpe \
      ${dataset_dir}/wudao/ \
      ${WORK_DIR}/qwen-ckpts/qwen-7b-hf
      rm -rf ${dataset_dir}/cleaned_zst

      Aşağıdaki tabloda run_make_pretraining_dataset.sh betiğinin parametreleri açıklanmıştır.


      Parametre


      Açıklama


      MEGATRON_PATH=$1


      açık kaynak Megatron kodunun yolu.


      MEGATRON_PATCH_PATH=$2


      Megatron Patch kodunun yolu.


      input_data_dir=$3


      paketlenmiş WuDao veri kümesini içeren klasörün yolu.


      tokenizer=$4


      tokenizer türü. Bunu qwenbpe olarak ayarlayın.


      output_data_dir=$5


      çıktı .bin ve .idx dosyalarının kaydedileceği yol.


      load_dir=$6


      oluşturulan tokenizer_config.json dosyasının yolu.

      Sonuç olarak elde edilen qwen-datasets dizin yapısı:

      qwen-datasets
      ├── wudao_200g
      └── wudao
         ├── wudao_qwenbpe_content_document.bin
         └── wudao_qwenbpe_content_document.idx

Adım 3: Modeli Megatron ile eğitin

Modeli Megatron ile eğitin.

Model biçimini dönüştürün

HuggingFace model dosyalarını Megatron biçimine dönüştürün.

Dönüştürülmüş Megatron modelini indirin

PAI, önceden dönüştürülmüş bir model sağlar. İndirin:

cd /mnt/workspace/
mkdir qwen-ckpts
cd qwen-ckpts
wget https://atp-modelzoo-wlcb-pai.oss-cn-wulanchabu.aliyuncs.com/release/models/pai-megatron-patch/qwen-ckpts/qwen-7b-hf-to-mg-tp1-pp1.tgz
tar -zxf qwen-7b-hf-to-mg-tp1-pp1.tgz
mv qwen-7b-hf-to-mg-tp1-pp1 qwen-7b-hf-to-megatron-tp1-pp1

HuggingFace modelini Megatron biçimine dönüştürün

HuggingFace modelini Megatron biçimine dönüştürmek için aşağıdaki komutu çalıştırın:

# Convert the model.
cd /mnt/workspace/Pai-Megatron-Patch/toolkits/model_checkpoints_convertor/qwen
sh model_convertor.sh \
../../../Megatron-LM-main        \
/mnt/workspace/qwen-ckpts/qwen-7b-hf         \
/mnt/workspace/qwen-ckpts/qwen-7b-hf-to-megatron-tp1-pp1  \
1  \
1  \
qwen-7b \
0 \
false

Aşağıdaki tabloda model_convertor.sh betiğinin parametreleri açıklanmıştır.

Parametre

Açıklama

MEGATRON_PATH=$1

açık kaynak Megatron kodunun yolu.

SOURCE_CKPT_PATH=$2

HuggingFace model dosyalarının yolu.

TARGET_CKPT_PATH=$3

dönüştürülen Megatron modelinin kaydedileceği yol.

TP=$4

tensor paralelliği parça sayısı. Bu değer, eğitimde kullanılan sayı ile aynı olmalıdır. Parça sayısı model boyutuna göre değişir. Modeli dönüştürürken bu parametreyi gerektiği gibi değiştirin:

  • Qwen-7B: 1.

  • Qwen-14B: 2.

  • Qwen-72B: 8.

PP=$5

işlem hattı paralelliği parça sayısı. Bu değer, eğitimde kullanılan sayı ile aynı olmalıdır. Parça sayısı model boyutuna göre değişir. Modeli dönüştürürken bu parametreyi gerektiği gibi değiştirin:

  • Qwen-7B: 1.

  • Qwen-14B: 1.

  • Qwen-72B: 2.

MN=$6

model adı: qwen-7b, qwen-14b veya qwen-72b.

EXTRA_VOCAB_SIZE=$7

ek sözlük boyutu.

mg2hf=$8

Bir Megatron modelinin HuggingFace modeline dönüştürülüp dönüştürülmeyeceğini belirtir.

Ön eğitilmiş model

Tek bir DSW örneğinde ön eğitim yapın veya DLC'de dağıtılmış bir görev gönderin. Eğitim yaklaşık iki saat sürer. Model dosyaları /mnt/workspace/output_megatron_qwen/ dizinine kaydedilir.

DSW tek başına ön eğitilmiş model

Terminalde Qwen-7B modeli için aşağıdaki komutu çalıştırın:

export WORK_DIR=/mnt/workspace
cd ${WORK_DIR}/Pai-Megatron-Patch/examples/qwen
sh run_pretrain_megatron_qwen.sh  \
dsw  \
${WORK_DIR}/Pai-Megatron-Patch  \
7B   \
1    \
8 \
1e-5   \
1e-6   \
2048  \
2048  \
85   \
fp16  \
1   \
1  \
sel  \
true   \
false  \
false   \
false  \
100000  \
${WORK_DIR}/qwen-datasets/wudao/wudao_qwenbpe_content_document   \
${WORK_DIR}/qwen-ckpts/qwen-7b-hf-to-megatron-tp1-pp1   \
100000000   \
10000   \
${WORK_DIR}/output_megatron_qwen/   

run_pretrain_megatron_qwen.sh betiğinin parametreleri:

Parametre

Açıklama

ENV=$1

Çalışma ortamı:

  • dsw

  • dlc

MEGATRON_PATH=$2

Açık kaynak Megatron kodunun yolu.

MODEL_SIZE=$3

Model boyutu: 7B, 14B veya 72B.

BATCH_SIZE=$4

Her GPU'da bir eğitim iterasyonu için örnek sayısı: 4 veya 8.

GLOBAL_BATCH_SIZE=$5

Toplam eğitim örneği sayısı.

LR=$6

Öğrenme oranı: 1e-5 veya 5e-5.

MIN_LR=$7

Minimum öğrenme oranı: 1e-6 veya 5e-6.

SEQ_LEN=$8

Dizi uzunluğu.

PAD_LEN=${9}

Dolgu uzunluğu.

EXTRA_VOCAB_SIZE=${10}

Ek sözlük boyutu:

  • Qwen-7B: 85.

  • Qwen-14B: 213.

  • Qwen-72B: 213.

PR=${11}

Eğitim hassasiyeti: fp16 veya bf16.

TP=${12}

Model paralelliği derecesi.

PP=${13}

İşlem hattı paralelliği derecesi.

AC=${14}

Aktivasyon kontrol noktası modu:

  • full

  • sel

DO=${15}

VRAM kullanımını azaltmak için Zero-1 optimize edicisinin Megatron sürümünün kullanılıp kullanılmayacağını belirtir:

  • true

  • false

FL=${16}

Flash Attention'ın etkinleştirilip etkinleştirilmeyeceğini belirtir:

  • true

  • false

SP=${17}

Dizi paralelliğinin kullanılıp kullanılmayacağını belirtir:

  • true

  • false

TE=${18}

Transformer-engine hızlandırmanın etkinleştirilip etkinleştirilmeyeceğini belirtir. Bu özellik gu8xf GPU'lar gerektirir.

SAVE_INTERVAL=${19}

Kontrol noktası dosyalarının kaydedilme aralığı.

DATASET_PATH=${20}

Eğitim veri kümesinin yolu.

PRETRAIN_CHECKPOINT_PATH=${21}

Ön eğitilmiş modelin yolu.

TRAIN_TOKENS=${22}

Eğitim belirteçleri

WARMUP_TOKENS=${23}

Isınma belirteci sayısı.

OUTPUT_BASEPATH=${24}

Çıktı model dosyalarının kaydedileceği yol.

DLC Dağıtılmış Ön Eğitilmiş Model

Tek örnek hata ayıklamasından sonra, DLC'de dağıtılmış çoklu GPU görevini yapılandırın:

  1. Create Job sayfasına gidin.

    1. PAI konsoluna giriş yapın, hedef bölgeyi ve çalışma alanını seçin ve Deep Learning Containers (DLC) seçeneğini tıklayın.

    2. Deep Learning Containers (DLC) sayfasında Create Job seçeneğini tıklayın.

  2. Create Job sayfasında aşağıdaki anahtar parametreleri yapılandırın ve diğer parametreler için varsayılanları koruyun. Bir eğitim görevi oluşturun.

    Parametre

    Açıklama

    Basic Information

    Job Name

    Özel bir görev adı girin. Bu kılavuzda test_qwen_dlc kullanılmaktadır.

    Environment Information

    Image Configuration

    Image Address seçeneğini belirleyin ve metin kutusuna pai-image-manage-registry.cn-wulanchabu.cr.aliyuncs.com/pai/pytorch-training:1.12-ubuntu20.04-py3.10-cuda11.3-megatron-patch-llm adresini girin.

    Mount dataset

    Custom Dataset seçeneğini tıklayın ve aşağıdaki parametreleri yapılandırın:

    • Custom Dataset: Oluşturduğunuz NAS veri kümesini seçin.

    • Mount Path: Bunu /mnt/workspace/ olarak ayarlayın.

    Startup Command

    Aşağıdaki komutu yapılandırın. run_pretrain_megatron_qwen.sh betiğinin başlangıç parametreleri, tek bir DSW örneğinde modeli ön eğitmek için kullanılan parametrelerle aynıdır.

    export WORK_DIR=/mnt/workspace
    cd ${WORK_DIR}/Pai-Megatron-Patch/examples/qwen
    sh run_pretrain_megatron_qwen.sh  \
    dlc  \
    ${WORK_DIR}/PAI-Megatron-Patch  \
    7B   \
    1    \
    8 \
    1e-5   \
    1e-6   \
    2048  \
    2048  \
    85   \
    fp16  \
    1   \
    1  \
    sel  \
    true   \
    false  \
    false   \
    false \
    100000  \
    ${WORK_DIR}/qwen-datasets/wudao/wudao_qwenbpe_content_document   \
    ${WORK_DIR}/qwen-ckpts/qwen-7b-hf-to-megatron-tp1-pp1   \
    100000000   \
    10000   \
    ${WORK_DIR}/output_megatron_qwen/    

    Resource Information

    Resource Type

    Lingjun Intelligent Computing seçeneğini belirleyin.

    Source

    Resource Type seçeneğini belirleyin.

    Resource Type

    Lingjun kaynakları için oluşturduğunuz kaynak kotasını seçin.

    Framework

    PyTorch seçeneğini belirleyin.

    Job Resource

    Worker düğümü için aşağıdaki parametreleri yapılandırın:

    • Nodes: 2. Çok düğümlü eğitim gerçekleştirmek için Nodes değerini gereken makine sayısına ayarlayın.

    • GPUs: 8

    • vCPUs: 90

      Not

      CPU çekirdek sayısı 96'yı aşamaz.

    • Memory (GiB): 1024

    • Shared Memory (GiB): 1024

  3. OK seçeneğini tıklayın. Sayfa otomatik olarak Deep Learning Containers (DLC) sayfasına gider. Status durumu Succeeded olarak değiştiğinde eğitim görevi başarılı olur.

Denetimli öğrenme ile modeli ince ayarlayın

Modeli tek bir DSW örneğinde ince ayarlayın veya DLC ortamında dağıtılmış bir görev gönderin. Eğitim yaklaşık iki saat sürer. Model dosyaları /mnt/workspace/output_megatron_qwen/ dizinine kaydedilir.

  1. İnce ayar yapmadan önce Adım 2: Ön eğitim verilerini hazırlayın bölümüne gidin ve Use the small-scale sample data processed by PAI sekmesinden JSON dosyasını indirin.

  2. Modeli ince ayarlayın.

    Modeli tek bir DSW örneğinde ince ayarlayın

    Terminalde Qwen-7B modeli için aşağıdaki komutu çalıştırın:

    export WORK_DIR=/mnt/workspace
    cd ${WORK_DIR}/Pai-Megatron-Patch/examples/qwen
    sh run_finetune_megatron_qwen_withGA.sh  \
    dsw  \
    ${WORK_DIR}/Pai-Megatron-Patch  \
    7B     \
    1      \
    96 \
    1e-5   \
    1e-6   \
    2048   \
    2048     \
    85      \
    bf16   \
    1      \
    1      \
    sel    \
    true   \
    false  \
    false  \
    false \
    1000 \
    ${WORK_DIR}/qwen-datasets/alpaca_zh-qwen-train.json   \
    ${WORK_DIR}/qwen-datasets/alpaca_zh-qwen-valid.json   \
    ${WORK_DIR}/qwen-ckpts/qwen-7b-hf-to-megatron-tp1-pp1   \
    2000   \
    10 \
    ${WORK_DIR}/output_megatron_qwen/

    run_finetune_megatron_qwen_withGA.sh betiğinin parametreleri:

    Parametre

    Açıklama

    ENV=$1

    çalışma ortamı:

    • dlc

    • dsw

    MEGATRON_PATH=$2

    açık kaynak Megatron kodunun yolu.

    MODEL_SIZE=$3

    model boyutu: 7B, 14B veya 72B.

    BATCH_SIZE=$4

    her GPU'da bir eğitim iterasyonu için örnek sayısı: 1, 2, 4 veya 8.

    GLOBAL_BATCH_SIZE=$5

    bir ince ayar iterasyonu için toplam örnek sayısı: 64, 96 veya 128.

    LR=$6

    öğrenme oranı: 1e-5 veya 5e-5.

    MIN_LR=$7

    minimum öğrenme oranı: 1e-6 veya 5e-6.

    SEQ_LEN=$8

    dizi uzunluğu.

    PAD_LEN=$9

    dolgu dizi uzunluğu.

    EXTRA_VOCAB_SIZE=${10}

    ek sözlük boyutu:

    • Qwen-7B: 85.

    • Qwen-14B: 213.

    • Qwen-72B: 213.

    PR=${11}

    eğitim hassasiyeti: fp16 veya bf16.

    TP=${12}

    model paralelliği derecesi.

    PP=${13}

    işlem hattı paralelliği derecesi.

    AC=${14}

    aktivasyon kontrol noktası modu: full veya sel.

    DO=${15}

    VRAM kullanımını azaltmak için Zero-1 optimize edicisinin Megatron sürümünün kullanılıp kullanılmayacağını belirtir:

    • true

    • false

    FL=${16}

    Flash Attention'ın etkinleştirilip etkinleştirilmeyeceğini belirtir:

    • true

    • false

    SP=${17}

    Dizi paralelliğinin kullanılıp kullanılmayacağını belirtir:

    • true

    • false

    TE=${18}

    Transformer-engine hızlandırmanın etkinleştirilip etkinleştirilmeyeceğini belirtir. Bu özellik gu8xf GPU'lar gerektirir.

    SAVE_INTERVAL=${19}

    modelin kaydedilmesi için adım aralığı.

    DATASET_PATH=${20}

    eğitim veri kümesinin yolu.

    VALID_DATASET_PATH=${21}

    doğrulama kümesinin yolu.

    PRETRAIN_CHECKPOINT_PATH=${22}

    ön eğitilmiş modelin yolu.

    TRAIN_ITERS=${23}

    eğitim iterasyonu sayısı.

    LR_WARMUP_ITERS=${24}

    öğrenme oranının en çok arttığı adım.

    OUTPUT_BASEPATH=${25}

    çıktı model dosyalarının kaydedileceği yol.

    Modeli DLC üzerinde dağıtılmış eğitimle ince ayarlayın

    Tek bir DSW örneğinde hata ayıkladıktan sonra, DLC ortamında çoklu GPU sunucularıyla dağıtılmış bir görev yapılandırın. DLC eğitim görevini gönderirken Startup Command seçeneğini aşağıdaki gibi yapılandırın. Diğer parametreler Adım 2: Modeli ön eğitin bölümündekilerle aynıdır.

    export WORK_DIR=/mnt/workspace
    cd ${WORK_DIR}/Pai-Megatron-Patch/examples/qwen
    sh run_finetune_megatron_qwen_withGA.sh  \
    dlc  \
    ${WORK_DIR}/Pai-Megatron-Patch  \
    7B     \
    1      \
    96 \
    1e-5   \
    1e-6   \
    2048   \
    2048     \
    85      \
    bf16   \
    1      \
    1      \
    sel    \
    true   \
    false  \
    false  \
    false \
    1000 \
    ${WORK_DIR}/qwen-datasets/alpaca_zh-qwen-train.json   \
    ${WORK_DIR}/qwen-datasets/alpaca_zh-qwen-valid.json   \
    ${WORK_DIR}/qwen-ckpts/qwen-7b-hf-to-megatron-tp1-pp1   \
    2000   \
    10 \
    ${WORK_DIR}/output_megatron_qwen/

    run_finetune_megatron_qwen_withGA.sh betiğinin parametreleri, tek bir DSW örneğinde ince ayar yapmak için kullanılan parametrelerle aynıdır.

Adım 4: Çevrimdışı çıkarım gerçekleştirin

Eğitimden sonra çevrimdışı çıkarım ve model değerlendirmesi için Megatron çıkarım işlem hattını kullanın.

  1. Test örneğini pred_input.jsonl indirin ve DSW'deki /mnt/workspace dizinine yükleyin. Dosyaları yükleyin ve indirin.

    Not

    Çıkarım için veri yapısı, ince ayar sırasında kullanılan yapıyla eşleşmelidir.

  2. Tüm JSON dosyalarını ve tokenizer.model dosyasını ön eğitim modeli yolundan oluşturulan model yoluna kopyalayın. Oluşturulan model yolu, {OUTPUT_BASEPATH }/checkpoint altındaki alt dizindir ve latest_checkpointed_iteration.txt dosyası ile aynı düzeydedir.

    Not

    Komuttaki yolları gerçek yollarınızla değiştirin.

    cd /mnt/workspace/qwen-ckpts/qwen-7b-hf-to-megatron-tp1-pp1
    cp *.json /mnt/workspace/output_megatron_qwen/checkpoint/dswXXX/
    cp tokenizer.model /mnt/workspace/output_megatron_qwen/checkpoint/dswXXX/
  3. Terminalde çevrimdışı çıkarım gerçekleştirmek için aşağıdaki komutu çalıştırın. Çıkarım sonuçları /mnt/workspace/qwen_pred.txt dosyasına kaydedilir. Modelin performansını sonuçlara göre değerlendirin.

    Not

    Komutu çalıştırmadan önce run_text_generation_megatron_qwen.sh betiğinde CUDA_VISIBLE_DEVICES parametresini 0 ve GPUS_PER_NODE parametresini 1 olarak ayarlayın.

    export WORK_DIR=/mnt/workspace
    cd ${WORK_DIR}/Pai-Megatron-Patch/examples/qwen
    bash run_text_generation_megatron_qwen.sh \
    dsw \
    ${WORK_DIR}/PAI-Megatron-Patch \
    /mnt/workspace/output_megatron_qwen/checkpoint/dswXXX \
    7B \
    1 \
    1 \
    1024 \
    1024 \
    85 \
    fp16 \
    10 \
    512 \
    512 \
    ${WORK_DIR}/pred_input.jsonl \
    ${WORK_DIR}/qwen_pred.txt \
    0 \
    1.0 \
    1.2

    Aşağıdaki tabloda run_text_generation_megatron_qwen.sh betiğinin parametreleri açıklanmıştır.

    Parametre

    Açıklama

    ENV=$1

    çalışma ortamı:

    • dlc

    • dsw

    MEGATRON_PATCH_PATH=$2

    Megatron Patch kodunun yolu.

    CHECKPOINT_PATH=$3

    modelin eğitim aşamasında kaydedildiği yol.

    Önemli

    Bu değeri kendi model yolunuzla değiştirin.

    MODEL_SIZE=$4

    model boyutu: 7B, 14B veya 72B.

    TP=$5

    model paralelliği derecesi.

    Önemli
    • Bu parametre 1 olarak ayarlanırsa çıkarım için tek bir GPU kullanın.

    • Bu parametre 1'den büyük bir değere ayarlanırsa çıkarım için ilgili sayıda GPU kullanın.

    BS=$6

    her GPU'da bir çıkarım iterasyonu için örnek sayısı: 1, 4 veya 8.

    SEQ_LEN=$7

    dizi uzunluğu: 256, 512 veya 1024.

    PAD_LEN=$8

    PAD uzunluğu: Metnin doldurulduğu uzunluk.

    EXTRA_VOCAB_SIZE=${9}

    model dönüştürme sırasında eklenen belirteç sayısı:

    • Qwen-7B: 85.

    • Qwen-14B: 213.

    • Qwen-72B: 213.

    PR=${10}

    çıkarım için kullanılan hassasiyet: fp16 veya bf16.

    TOP_K=${11}

    top-k filtreleme için korunacak en yüksek olasılıklı sözlük belirteci sayısı (0 ile n arasında): 0, 5, 10 veya 20.

    INPUT_SEQ_LEN=${12}

    giriş dizi uzunluğu: 512.

    OUTPUT_SEQ_LEN=${13}

    çıktı dizi uzunluğu: 256.

    INPUT_FILE=${14}

    çıkarım için metin dosyası: pred_input.jsonl. Her satır bir örnektir.

    OUTPUT_FILE=${15}

    çıkarım için çıktı dosyası: qwen_pred.txt.

    TOP_P=${16}

    top-p filtreleme için kümülatif olasılık (0 ile 1 arasında): 0, 0,85 veya 0,95.

    Not

    TOP_K ve TOP_P parametrelerinden yalnızca biri sıfırdan farklı olabilir.

    TEMPERATURE=${17}

    (örnekleme)(policy) içindeki sıcaklık cezası: 1–n.

    REPETITION_PENALTY=${18}

    tekrar cezası. Değer 1 ile 2 arasında olabilir. Varsayılan değer 1,2'dir.

Adım 5: Model biçimini dönüştürün

Eğitilen Megatron modelini çevrimiçi dağıtım için HuggingFace biçimine dönüştürün.

  1. Megatron modelini HuggingFace biçimine dönüştürmek için aşağıdaki komutu çalıştırın.

    export WORK_DIR=/mnt/workspace
    cd /mnt/workspace/Pai-Megatron-Patch/toolkits/model_checkpoints_convertor/qwen
    sh model_convertor.sh \
    ../../../Megatron-LM-main        \
    ${WORK_DIR}/output_megatron_qwen/checkpoint/${path}/iter_*******         \
    /mnt/workspace/qwen-ckpts/qwen-7b-mg-to-hf-tp1-pp1/  \
    1  \
    1  \
    qwen-7b \
    0 \
    true

    Aşağıdaki tabloda model_convertor.sh betiğinin parametreleri açıklanmıştır.

    Parametre

    Açıklama

    MEGATRON_PATH=$1

    açık kaynak Megatron kodunun yolu.

    SOURCE_CKPT_PATH=$2

    eğitimden elde edilen Megatron modelinin yolu. Yol, iter_ dizinine özel olmalıdır. Örneğin: ${WORK_DIR}/output_megatron_qwen/checkpoint/dsw-pretrain-megatron-qwen-7B-lr-1e-5-bs-1-seqlen-2048-pr-bf16-tp-1-pp-1-ac-sel-do-true-sp-false-tt--wt-/iter_**.

    Önemli
    • Bu değeri kendi model yolunuzla değiştirin.

    • Dönüştürme için ön eğitilmiş bir model kullanıyorsanız model yolundaki tüm distrib_optim.pt dosyalarını silin.

    TARGET_CKPT_PATH=$3

    dönüştürülen HuggingFace modelinin kaydedileceği yol.

    TP=$4

    tensor paralelliği parça sayısı. Bu değer, eğitimde kullanılan sayı ile aynı olmalıdır.

    PP=$5

    işlem hattı paralelliği parça sayısı. Bu değer, eğitimde kullanılan sayı ile aynı olmalıdır.

    MN=$6

    model adı: qwen-7b, qwen-14b veya qwen-72b.

    EXTRA_VOCAB_SIZE=$7

    ek sözlük boyutu.

    mg2hf=$8

    Bir Megatron modelinin HuggingFace modeline dönüştürülüp dönüştürülmeyeceğini belirtir.

  2. Açık kaynak HuggingFace model klasörü /mnt/workspace/qwen-ckpts/qwen-7b-hf içindeki .json, .py ve .tiktoken dosyalarını /mnt/workspace/qwen-ckpts/qwen-7b-mg-to-hf-tp1-pp1 dizinine kopyalayarak modelin kullanılabilir olduğundan emin olun.

    Önemli

    pytorch_model.bin.index.json dosyasını kopyalamanız gerekmediğini unutmayın.

HuggingFace modelinde çevrimdışı çıkarım gerçekleştirin

Dönüştürülen modelde çevrimdışı çıkarım gerçekleştirmek için HuggingFace ve DeepSpeed çıkarım işlem hattını kullanın. Qwen-7B için aşağıdaki içeriğe sahip bir infer.py dosyası oluşturun ve model performansını değerlendirmek için çalıştırın.

#!/usr/bin/env python
#encoding=utf-8
from transformers import AutoTokenizer, LlamaTokenizer
from transformers import LlamaForCausalLM
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
 
checkpoint = '/mnt/workspace/qwen-ckpts/qwen-7b-mg-to-hf-tp1-pp1'
print(checkpoint)
device = "cuda"
tokenizer = AutoTokenizer.from_pretrained(checkpoint, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(checkpoint,device_map="auto", trust_remote_code=True)
 
prompts= 'Write a quicksort algorithm'
p = f"Human:{prompts}"
print(p)
inputs = tokenizer.encode(p, return_tensors="pt").to(model.device)
outputs = model.generate(inputs,max_new_tokens=512)
print(tokenizer.decode(outputs[0]))

checkpoint değerini dönüştürdüğünüz HuggingFace model yoluyla değiştirin. Bu kılavuzda /mnt/workspace/qwen-ckpts/qwen-7b-mg-to-hf-tp1-pp1 kullanılmaktadır.

Adım 6: Model hizmetini dağıtın ve çağırın

HuggingFace modelini çevrimiçi çıkarım hizmeti olarak dağıtın.

Model hizmetini dağıtın

  1. PAI konsoluna giriş yapın. Sayfanın üst kısmından bir bölge seçin. Ardından istenen çalışma alanını seçin ve Enter Elastic Algorithm Service (EAS) seçeneğini tıklayın.

  2. Deploy Service seçeneğini tıklayın. Inference Service bölümünde, Custom Model Deployment bölümündeki Custom Deployment seçeneğini tıklayın.

  3. Custom Deployment sayfasında aşağıdaki anahtar parametreleri yapılandırın ve diğer parametreler için varsayılanları koruyun.

    Parametre

    Açıklama

    Basic Information

    Service Name

    Bölge içinde benzersiz olan özel bir model hizmeti adı girin. Bu kılavuzda test_qwen kullanılmaktadır.

    Environment Information

    Deployment Method

    Image-based Deployment seçeneğini belirleyin ve Enable Web App seçeneğini işaretleyin.

    Image Configuration

    Image Address seçeneğini belirleyin ve metin kutusuna aşağıdaki kayıt defteri adresini girin: eas-registry-vpc.cn-wulanchabu.cr.aliyuncs.com/pai-eas/chat-llm-webui:3.0.4-vllm.

    Directly Mount

    Bağlama türü olarak NAS seçeneğini belirleyin. Standard NAS seçeneğini tıklayın ve aşağıdaki parametreleri yapılandırın:

    • Select File System: Veri kümesini oluşturmak için kullandığınız NAS dosya sistemini seçin.

    • Mount Target: Veri kümesini oluşturmak için kullandığınız bağlama hedefini seçin.

    • File System Path: Bunu, NAS'ta depolanan dönüştürülmüş HuggingFace modelinin yoluna ayarlayın. Bu kılavuzda /qwen-ckpts/qwen-7b-mg-to-hf-tp1-pp1 kullanılmaktadır.

    • Mount Path: Bağlandıktan sonraki yolu belirtin. Bu kılavuzda /qwen-7b kullanılmaktadır.

    Command

    Bunu python webui/webui_server.py --port=8000 --model-path=/qwen-7b --tensor-parallel-size 1 --backend=vllm olarak ayarlayın.

    Burada:

    • --model-path: Model yapılandırmasındaki bağlama yolu ile aynı olmalıdır.

    • --tensor-parallel-size: Model için tensor paralelliği parça sayısı. Bu değer, GPU sayısına göre ayarlanmalıdır. 7B model için 1, 72B model için 8 olarak ayarlayın (sekiz GPU'lu örnek gerekir).

    Port Number

    Bunu 8000 olarak ayarlayın.

    Resource Information

    Resource Type

    Resource Quota seçeneğini belirleyin.

    Resource Quota

    Lingjun kaynakları için oluşturduğunuz kaynak kotasını seçin.

    Instance Count

    Bunu modele ve seçilen kaynaklara göre yapılandırın. 7B model için Instance Count değerini 1 olarak ayarlayın.

    Deployment

    7B model için her örneğin kullandığı kaynakları aşağıdaki gibi yapılandırın:

    • vCPUs: 16.

    • Memory (GB): 64.

    • GPUs: 1.

    Service Access

    VPC

    NAS bağlama hedefini yapılandırdıktan sonra sistem, VPC, vSwitch ve güvenlik grubunu önceden ayarlanmış NAS dosya sistemiyle otomatik olarak eşleştirir.

    vSwitch

    Security Group Name

  4. Deploy seçeneğini tıklayın.

    Service Status durumu Running olarak değiştiğinde hizmet dağıtılmış olur.

Hizmeti çağırın

Dağıtılan hizmeti çıkarım için çağırın.

  1. Hizmet listesinde hedef hizmetin adını tıklayın. Sayfanın sağ üst köşesinde View Web App seçeneğini tıklayın.

  2. WebUI sayfasında model çıkarımı gerçekleştirin.