Hikayeler

Reklam vermek için turkmmo@gmail.com

KERİM ERBAY

Ne Mutlu Türküm Diyene!
TM Üye
Katılım
29 Mar 2009
Konular
2,176
Mesajlar
9,577
Online süresi
1y 4ay
Reaksiyon Skoru
5,071
Altın Konu
497
Başarım Puanı
449
TM Yaşı
17 Yıl 25 Gün
MmoLira
136,976
DevLira
27

Metin2 EP, Valorant VP dahil tüm oyun ürünlerini en uygun fiyatlarla bulabilir, Item ve Karakterlerinizi hızlıca satabilirsiniz. HEMEN TIKLA!

DeepSeek , kodlama, matematiksel akıl yürütme ve doğal dil işleme yetenekleri bakımından öncülünü geride bırakan DeepSeek-V3 modelini tanıtarak önemli bir ilerleme kaydetti .

DeepSeek-V3 ve Gradio kullanarak yapay zeka destekli bir kod inceleme asistanının nasıl oluşturulacağını öğrenin.

Bu eğitimde, DeepSeek-V3 ile bir kod inceleme yardımcısı oluşturma konusunda adım adım size rehberlik edeceğim. Ayrıca, uygulamaya kullanıcı dostu bir arayüz kazandırmak için bunu Gradio ile entegre etmeyi de öğreneceğiz.

DeepSeek-V3 Nedir?​

DeepSeek V3, 671 milyar parametreye sahip , uzmanların karışımı (MoE) dil modelidir ve bu parametrelerin 37 milyarı token başına etkinleştirilir.

14,8 trilyon yüksek kaliteli token üzerinde eğitilmiştir ve kod üretimi ve analizi dahil olmak üzere çeşitli görevlerde mükemmeldir. Model mimarisi, çok başlı gizli dikkat (MLA) ve yük dengeleme için yardımcı kayıpsız bir strateji gibi yenilikleri içerir ve verimli çıkarım ve uygun maliyetli eğitim sağlar.

Çok başlı gizli dikkat (MLA) mekanizması, modelin girdinin birden fazla yönüne aynı anda odaklanmasını sağlayarak çıkarım verimliliğini artırır. DeepSeekMoE mimarisi, eğitim maliyetlerini ve performansını optimize etmek için uzmanların bir karışımı yaklaşımını kullanır.



Yardımcı kayıpsız yük dengeleme stratejisi, yardımcı kayıp fonksiyonlarına güvenmeden hesaplama yükünü eşit şekilde dağıtır ve eğitim kararlılığını artırır. Ek olarak, çoklu belirteç tahmin hedefi, modelin birden fazla belirteci aynı anda tahmin etmesini sağlayarak performansı artırır ve daha hızlı çıkarım için spekülatif kod çözmeyi mümkün kılar.

DeepSeek-V3'ü benim için özellikle heyecan verici kılan nedenlerden bazıları şunlardır:

  • Gelişmiş muhakeme ve anlayış yeteneği sunarak kod tamamlama ve analizi gibi karmaşık görevler için uygundur.
  • Saniyede 60 token işlem hızına sahip olan DeepSeek-V3, selefi DeepSeek-V2'den 3 kat daha hızlı.
  • Hem model hem de ona eşlik eden araştırma makaleleri tamamen açık kaynaklıdır ve şeffaflığı ve topluluk işbirliğini teşvik eder.

DeepSeek-V3 API'sine Nasıl Bağlanılır​

DeepSeek V3'ü uygulamamıza entegre etmek için API anahtarını ayarlamamız gerekiyor. API anahtarınıza erişmek için aşağıdaki adımları izleyin:

adresine gidin ve “API’ye Erişim”e tıklayın.

Yardımcı kayıpsız yük dengeleme stratejisi, yardımcı kayıp fonksiyonlarına güvenmeden hesaplama yükünü eşit şekilde dağıtır ve eğitim kararlılığını artırır. Ek olarak, çoklu belirteç tahmin hedefi, modelin birden fazla belirteci aynı anda tahmin etmesini sağlayarak performansı artırır ve daha hızlı çıkarım için spekülatif kod çözmeyi mümkün kılar.

DeepSeek-V3'ü benim için özellikle heyecan verici kılan nedenlerden bazıları şunlardır:

  • Gelişmiş muhakeme ve anlayış yeteneği sunarak kod tamamlama ve analizi gibi karmaşık görevler için uygundur.
  • Saniyede 60 token işlem hızına sahip olan DeepSeek-V3, selefi DeepSeek-V2'den 3 kat daha hızlı.
  • Hem model hem de ona eşlik eden araştırma makaleleri tamamen açık kaynaklıdır ve şeffaflığı ve topluluk işbirliğini teşvik eder.

DeepSeek-V3 API'sine Nasıl Bağlanılır​

DeepSeek V3'ü uygulamamıza entegre etmek için API anahtarını ayarlamamız gerekiyor. API anahtarınıza erişmek için aşağıdaki adımları izleyin:

adresine gidin ve “API’ye Erişim”e tıklayın.

1738158272849.png


2. DeepSeek'in API platformuna kaydolun.

3. "Top up"a tıklayın ve hesabınıza gereken miktarı ekleyin. Bu makaleyi yazarken, DeepSeek API fiyatlandırması şu şekildedir:

  • Giriş (önbellek ıskalaması): 0,27$/M token
  • Giriş (önbellek isabeti): 0,07$/M token
  • Çıktı: 1,10$/M token
1738158346856.png


3. Sol taraftaki API Anahtarları sekmesine gidin ve “Yeni API anahtarı oluştur”a tıklayın. Son olarak, API anahtarı için bir ad belirleyin ve gelecekteki kullanım için kopyalayın.

1738158399590.png


Demo Proje Özeti: Gradio ile Kod İnceleme Asistanı​

Oluşturacağımız uygulama, DeepSeek V3'ün yeteneklerini kullanarak kullanıcı dostu bir arayüz aracılığıyla bilgilendirici kod incelemeleri sağlayan etkileşimli bir asistandır.

Başlamadan önce aşağıdakilerin yüklü olduğundan emin olun:

  • Python 3.8+
  • Gerekli kütüphaneler : Pip kullanarak gerekli Python paketlerini kurun:
Kod:
pip install requests gradio

Artık tüm bağımlılıklar yüklendiğine göre DeepSeek API'sini ayarlayalım.

Adım 1: DeepSeek'in API'sine bağlanma​

Aşağıdaki betik, kullanıcı istemlerine dayalı yanıtlar almak için DeepSeek API'siyle nasıl etkileşim kurulacağını gösterir. DeepSeek'in API'sinin OpenAI'nin formatıyla uyumlu olduğunu ve API istekleri için
Kod:
import requests
import json

# Replace 'YOUR_API_KEY' with your actual DeepSeek API key
API_KEY = 'YOUR_API_KEY'
API_URL = 'https://api.deepseek.com/chat/completions'

HEADERS = {
    'Content-Type': 'application/json',
    'Authorization': f'Bearer {API_KEY}'
}

def get_deepseek_response(prompt):
    """Fetches a response from the DeepSeek API based on the given prompt."""
    data = {
        'model': 'deepseek-chat',  # Specifies the DeepSeek V3 model
        'messages': [
            {'role': 'system', 'content': 'You are a helpful code reviewer.'},
            {'role': 'user', 'content': prompt}
        ],
        'stream': False  # Set to True for streaming responses
    }

    response = requests.post(API_URL, headers=HEADERS, data=json.dumps(data))

    if response.status_code == 200:
        result = response.json()
        return result['choices'][0]['message']['content'].strip()
    else:
        raise Exception(f"Error {response.status_code}: {response.text}")

Yukarıdaki kodu daha detaylı inceleyelim:

  • requestsve kütüphaneleri JSON, DeepSeek API'sine HTTP POST istekleri yapmak ve istek yükünün JSON formatına kodlanmasını yönetmek için sırasıyla içe aktarılır.
  • Sohbet tamamlamaları için DeepSeek API uç noktasını belirten API anahtarınızı ve ayarlayın .
  • Fonksiyon get_deepseek_response, kullanıcıya API'ye bir istem gönderir ve yanıtı alır.
  • Belirtilen model, mesaj geçmişi ve akış tercihiyle istek yükünü oluşturuyoruz, ardından uygun başlıklar ve JSON yüküyle API uç noktasına bir POST isteği gönderiyoruz. Yanıtın durum kodu 200 ise, bu başarıyı gösterir; yardımcının yanıtı ayrıştırılır ve döndürülür. Aksi takdirde, hata ayrıntılarıyla bir istisna oluşturulur.
Daha sonra uygulamanın temel özelliklerini tasarlıyoruz.

Adım 2: Temel Özellikleri Tasarlamak​

Giriş olarak bir kod parçacığı alan ve bunu analiz etmek için DeepSeek-V3'ü kullanan, geri bildirim ve öneriler sağlayan bir fonksiyon tanımlayacağız.

Kod:
def review_code(code_snippet):
    prompt = f"""
    Code Snippet:
    {code_snippet}

    Task: Analyze the provided code snippet. Identify any errors or potential improvements, suggest optimizations, and provide alternative implementations if applicable.
    """
    return get_deepseek_response(prompt)

Bir kod parçacığını alan, bunu bir görev istemiyle birlikte bir istemin içine yerleştiren ve modelden bir yanıt almak için son istemi geçiren bir kod inceleyicimiz var.

Daha sonra kod inceleme uygulamamız için basit bir Gradio web arayüzü geliştiriyoruz.

Adım 3: Gradio Arayüzünü Oluşturma​

Gradio, uygulamamız için etkileşimli bir web arayüzü oluşturmamızı sağlar. Aşağıdaki kod parçası, fonksiyon için kullanıcı dostu bir Gradio web arayüzü oluşturur review_code(). Gradio arayüzü, kullanıcının girdilerini alır ve doğrulama için bunları modele iletir.

Kod:
import gradio as gr

def code_reviewer_ui(code):
    return review_code(code)

interface = gr.Interface(
    fn=code_reviewer_ui,
    inputs=gr.Code(language='python', lines=20, label="Paste your code here"),
    outputs=gr.Textbox(label="Review Feedback"),
    title="AI Code Reviewer Assistant",
    description="Analyze your code snippets, receive feedback, and discover improvements.",
)

interface.launch(share=True)

Yukarıdaki kurulum üç bileşenden oluşmaktadır:

  • Giriş: gr.CodeKullanıcıların kodlarını yapıştırabilecekleri bir bileşen.
  • Çıktı : gr.TextboxDeepSeek V3'ten gelen geri bildirimi görüntüleyen bir görüntü.
  • Arayüz : gr.InterfaceGiriş ve çıkışı birbirine bağlayarak kullanıcı etkileşimi için bir web uygulaması başlatır.

Adım 4: Uygulamayı test edin​

Uygulamamızı basit bir örnek üzerinden test edelim:

1738158591726.png


Bu modeli test etmek için birden fazla kod örneği denedim ve her seferinde doğru değerlendirmeyi sağladı.

1738158609615.png
 
Paylaşım için teşekkürler.
 
Bir tane yapıp paylaşacağım.
 
paylaşım için teşekkürler
 

Şu an konuyu görüntüleyenler (Toplam : 1, Üye: 0, Misafir: 1)

Geri
Üst