Llama 4'ü AWS, Azure ve Hugging Face'e Nasıl Dağıtırım?

Bu rehber, Meta'nın Llama 4 modellerini (Scout ve Maverick) AWS, Azure ve Hugging Face'de adım adım dağıtımı anlatır.

Efe Demir

Efe Demir

5 June 2025

Llama 4'ü AWS, Azure ve Hugging Face'e Nasıl Dağıtırım?

Bu kılavuz, Meta'nın Llama 4 modellerini (Scout ve Maverick) üç büyük platformda (AWS, Azure ve Hugging Face) dağıtmak için adım adım talimatlar sağlar. Bu modeller, çok modlu işleme, devasa bağlam pencereleri ve son teknoloji performans dahil olmak üzere gelişmiş yetenekler sunar.

💡
Geliştirici İpucu: Dağıtıma dalmadan önce, API test araç setinizi yükseltmeyi düşünün! Apidog, yapay zeka modeli uç noktaları, işbirliğine dayalı test ve otomatik API dokümantasyonu için daha iyi destekle Postman'e göre daha sezgisel, özellik açısından zengin bir alternatif sunar. LLM dağıtım iş akışınız, bu geçişi yaptığınız için size teşekkür edecek.
button

Llama 4 Dağıtımı için Önkoşullar ve Donanım Gereksinimleri

AWS (TensorFuse aracılığıyla)

Azure

(Bu, büyük dil modelleri için genel Azure ML rehberliği ile uyumludur, ancak kesin gereksinimleri doğrulamak için Llama 4'e özgü hiçbir dokümantasyon bulunamadı.)

Hugging Face

1. Llama 4'ü TensorFuse kullanarak AWS'ye Dağıtma

1.1 AWS ve TensorFuse'i Kurun

TensorFuse CLI'yı yükleyin:

pip install tensorfuse

AWS kimlik bilgilerini yapılandırın:

aws configure

TensorFuse'i AWS hesabınızla başlatın:

tensorkube init

1.2 Gerekli Sırları Oluşturun

Hugging Face belirtecinizi saklayın:

tensorkube secret create hugging-face-secret YOUR_HF_TOKEN --env default HUGGING_FACE_HUB_TOKEN=

API kimlik doğrulama belirteci oluşturun:

tensorkube secret create vllm-token vllm-key --env default VLLM_API_KEY=

1.3 Llama 4 için Dockerfile Oluşturun

Scout modeli için:

FROM vllm/vllm-openai:v0.8.3
ENV HF_HUB_ENABLE_HF_TRANSFER=1
EXPOSE 80
ENTRYPOINT ["python3", "-m", "vllm.entrypoints.openai.api_server", \\\\
            "--model", "meta-llama/Llama-4-Scout-17B-16E-Instruct", \\\\
            "--dtype", "bfloat16", \\\\
            "--trust-remote-code", \\\\
            "--tensor-parallel-size", "8", \\\\
            "--max-model-len", "1000000", \\\\
            "--port", "80", \\\\
            "--override-generation-config", "{\\\\"attn_temperature_tuning\\\\": true}", \\\\
            "--limit-mm-per-prompt", "image=10", \\\\
            "--kv-cache-dtype", "fp8", \\\\
            "--api-key", "${VLLM_API_KEY}"]

Maverick modeli için:

FROM vllm/vllm-openai:v0.8.3
ENV HF_HUB_ENABLE_HF_TRANSFER=1
EXPOSE 80
ENTRYPOINT ["python3", "-m", "vllm.entrypoints.openai.api_server", \\\\
            "--model", "meta-llama/Llama-4-Maverick-17B-128E-Instruct", \\\\
            "--dtype", "bfloat16", \\\\
            "--trust-remote-code", \\\\
            "--tensor-parallel-size", "8", \\\\
            "--max-model-len", "430000", \\\\
            "--port", "80", \\\\
            "--override-generation-config", "{\\\\"attn_temperature_tuning\\\\": true}", \\\\
            "--limit-mm-per-prompt", "image=10", \\\\
            "--kv-cache-dtype", "fp8", \\\\
            "--api-key", "${VLLM_API_KEY}"]

1.4 Dağıtım Yapılandırması Oluşturun

deployment.yaml oluşturun:

gpus: 8
gpu_type: h100
secret:
  - huggingfacesecret
  - vllmtoken
min-scale: 1
readiness:
  httpGet:
    path: /health
    port: 80

1.5 AWS'ye Dağıtın

Hizmetinizi dağıtın:

tensorkube deploy --config-file ./deployment.yaml

1.6 Dağıtılan Hizmetinize Erişim

Uç nokta URL'nizi almak için dağıtımları listeleyin:

tensorkube deployment list

Dağıtımınızı test edin:

curl --request POST \\\\
  --url YOUR_APP_URL/v1/completions \\\\
  --header 'Content-Type: application/json' \\\\
  --header 'Authorization: Bearer vllm-key' \\\\
  --data '{
    "model": "meta-llama/Llama-4-Scout-17B-16E-Instruct",
    "prompt": "Earth to Llama 4. What can you do?",
    "max_tokens": 1000
  }'

2. Llama 4'ü Azure'a Dağıtma

2.1 Azure ML Çalışma Alanını Kurun

Azure CLI ve ML uzantılarını yükleyin:

pip install azure-cli azure-ml
az login

Azure ML çalışma alanı oluşturun:

az ml workspace create --name llama4-workspace --resource-group your-resource-group

2.2 İşlem Kümesi Oluşturun

az ml compute create --name llama4-cluster --type amlcompute --min-instances 0 \\\\
  --max-instances 1 --size Standard_ND40rs_v2 --vnet-name your-vnet-name \\\\
  --subnet your-subnet --resource-group your-resource-group --workspace-name llama4-workspace

2.3 Llama 4 Modelini Azure ML'de Kaydedin

model.yml oluşturun:

$schema: <https://azuremlschemas.azureedge.net/latest/model.schema.json>
name: llama-4-scout
version: 1
path: .
properties:
  model_name: "meta-llama/Llama-4-Scout-17B-16E-Instruct"

Modeli kaydedin:

az ml model create --file model.yml --resource-group your-resource-group --workspace-name llama4-workspace

2.4 Dağıtım Yapılandırması Oluşturun

deployment.yml oluşturun:

$schema: <https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json>
name: llama4-deployment
endpoint_name: llama4-endpoint
model: azureml:llama-4-scout@latest
instance_type: Standard_ND40rs_v2
instance_count: 1
environment_variables:
  HUGGING_FACE_HUB_TOKEN: ${{secrets.HF_TOKEN}}
  VLLM_API_KEY: ${{secrets.VLLM_KEY}}
environment:
  image: vllm/vllm-openai:v0.8.3
  conda_file: conda.yml

conda.yml oluşturun:

channels:
  - conda-forge
dependencies:
  - python=3.10
  - pip
  - pip:
    - vllm==0.8.3
    - transformers
    - accelerate

2.5 Uç Nokta Oluşturun ve Dağıtın

az ml online-endpoint create --name llama4-endpoint \\\\
  --resource-group your-resource-group --workspace-name llama4-workspace

az ml online-deployment create --file deployment.yml \\\\
  --resource-group your-resource-group --workspace-name llama4-workspace

2.6 Dağıtımı Test Edin

az ml online-endpoint invoke --name llama4-endpoint --request-file request.json \\\\
  --resource-group your-resource-group --workspace-name llama4-workspace

request.json şunları içerir:

{
  "model": "meta-llama/Llama-4-Scout-17B-16E-Instruct",
  "prompt": "Earth to Llama 4. What can you do?",
  "max_tokens": 1000
}

3. Llama 4'ü Hugging Face'e Dağıtma

3.1 Hugging Face Hesabı Kurun

  1. https://huggingface.co/ adresinde bir Hugging Face hesabı oluşturun
  2. https://huggingface.co/meta-llama adresinde Llama 4 modelleri için lisans sözleşmesini kabul edin

3.2 Hugging Face Spaces Kullanarak Dağıtın

https://huggingface.co/spaces adresine gidin ve "Create new Space" (Yeni Alan Oluştur) öğesine tıklayın

Alanınızı yapılandırın:

Space deposunu klonlayın:

git clone <https://huggingface.co/spaces/YOUR_USERNAME/llama4-deployment>
cd llama4-deployment

3.3 Uygulama Dosyaları Oluşturun

app.py oluşturun:

import gradio as gr
import torch
from transformers import pipeline, AutoModelForCausalLM, AutoTokenizer
import os

# HF belirtecinizi ortama veya Sır'lara ekleyin
os.environ["HUGGING_FACE_HUB_TOKEN"] = "YOUR_HF_TOKEN"

# Modeli ve belirteci uygun yapılandırmayla yükleyin
model_id = "meta-llama/Llama-4-Scout-17B-16E-Instruct"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    torch_dtype=torch.bfloat16,
    device_map="auto",
    trust_remote_code=True
)

# Boru hattı oluşturun
pipe = pipeline(
    "text-generation",
    model=model,
    tokenizer=tokenizer,
    max_length=2048
)

def generate_text(prompt, max_length=1000, temperature=0.7):
    # Llama 4 formatına göre istemi biçimlendirin
    formatted_prompt = f"<|begin_of_text|><|user|>\\\\n{prompt}<|end_of_text|>\\\\n<|assistant|>"

    outputs = pipe(
        formatted_prompt,
        max_length=len(tokenizer.encode(formatted_prompt)) + max_length,
        temperature=temperature,
        do_sample=True,
    )

    return outputs[0]['generated_text'].replace(formatted_prompt, "")

# Gradio arayüzü oluşturun
demo = gr.Interface(
    fn=generate_text,
    inputs=[
        gr.Textbox(lines=4, placeholder="İsteminizi buraya girin...", label="İstem"),
        gr.Slider(minimum=100, maximum=2000, value=1000, step=100, label="Maksimum Uzunluk"),
        gr.Slider(minimum=0.1, maximum=1.0, value=0.7, step=0.1, label="Sıcaklık")
    ],
    outputs="text",
    title="Llama 4 Demosu",
    description="Meta'nın Llama 4 modelini kullanarak metin oluşturun",
)

demo.launch()

requirements.txt oluşturun:

accelerate>=0.20.3
bitsandbytes>=0.41.1
gradio>=3.50.0
torch>=2.0.1
transformers>=4.34.0

3.4 Hugging Face'e Dağıtın

Hugging Face Space'inize gönderin:

git add app.py requirements.txt
git commit -m "Llama 4 dağıtımı ekle"
git push

3.5 Dağıtımı İzleyin

  1. Space URL'nizi ziyaret edin: https://huggingface.co/spaces/YOUR_USERNAME/llama4-deployment
  2. İlk derleme, modeli indirmesi ve kurması gerektiğinden zaman alacaktır
  3. Dağıtıldıktan sonra, modelle etkileşim kurabileceğiniz bir Gradio arayüzü göreceksiniz

4. Dağıtımlarınızı Test Etme ve Onlarla Etkileşim Kurma

4.1 API Erişimi için Python İstemcisi Kullanma (AWS ve Azure)

import openai

# AWS için
client = openai.OpenAI(
    base_url="YOUR_AWS_URL/v1",  # tensorkube dağıtım listesinden
    api_key="vllm-key"  # Yapılandırılmış API anahtarınız
)

# Azure için
client = openai.AzureOpenAI(
    azure_endpoint="YOUR_AZURE_ENDPOINT",
    api_key="YOUR_API_KEY",
    api_version="2023-05-15"
)

# Bir metin tamamlama isteği yapın
response = client.completions.create(
    model="meta-llama/Llama-4-Scout-17B-16E-Instruct",
    prompt="Yapay zeka hakkında kısa bir şiir yazın.",
    max_tokens=200
)

print(response.choices[0].text)

# Çok modlu yetenekler için (destekleniyorsa)
import base64

# Görüntüyü base64 olarak yükleyin
with open("image.jpg", "rb") as image_file:
    image_base64 = base64.b64encode(image_file.read()).decode('utf-8')

# Görüntüyle sohbet tamamlama oluşturun
response = client.chat.completions.create(
    model="meta-llama/Llama-4-Scout-17B-16E-Instruct",
    messages=[
        {
            "role": "user",
            "content": [
                {"type": "text", "text": "Bu görüntüyü açıklayın:"},
                {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{image_base64}"}}
            ]
        }
    ],
    max_tokens=300
)

print(response.choices[0].message.content)

Sonuç

Artık Llama 4 modellerini AWS, Azure ve Hugging Face'e dağıtmak için adım adım talimatlara sahipsiniz. Her platform farklı avantajlar sunar:

Maliyet, ölçek, performans ve yönetim kolaylığı için özel gereksinimlerinize en uygun platformu seçin.

Explore more

Fathom-R1-14B: Hindistan'dan Gelişmiş Yapay Zeka Muhakeme Modeli

Fathom-R1-14B: Hindistan'dan Gelişmiş Yapay Zeka Muhakeme Modeli

Yapay zeka hızla gelişiyor. FractalAIResearch/Fathom-R1-14B, 14.8 milyar parametreyle matematik ve genel akıl yürütmede başarılı.

5 June 2025

Mistral Code: İşletmeler için En Özelleştirilebilir Yapay Zeka Destekli Kodlama Asistanı

Mistral Code: İşletmeler için En Özelleştirilebilir Yapay Zeka Destekli Kodlama Asistanı

Mistral Code'u keşfedin: Kurumsal kullanıma özel, en özelleştirilebilir yapay zeka destekli kodlama asistanı.

5 June 2025

Claude Code'un 2025'te Yapay Zeka Kodlamasını Nasıl Dönüştürdüğü

Claude Code'un 2025'te Yapay Zeka Kodlamasını Nasıl Dönüştürdüğü

Claude Code, 2025'te yapay zeka destekli kodlamayı nasıl devrimleştiriyor? Özelliklerini, kullanımını ve Windsurf kısıtlamalarından sonra neden popüler olduğunu öğrenin. Geliştiriciler için okunması gereken!

5 June 2025

API Tasarım-Öncelikli Yaklaşımı Apidog'da Uygulayın

API'leri oluşturmanın ve kullanmanın daha kolay yolunu keşfedin