paint-brush
Hem Geliştirici hem de Hacker Olarak LLama2 Deneyimimile@morpheuslord
5,237 okumalar
5,237 okumalar

Hem Geliştirici hem de Hacker Olarak LLama2 Deneyimim

ile Morpheuslord18m2023/08/13
Read on Terminal Reader
Read this story w/o Javascript

Çok uzun; Okumak

LLama2'nin Gücünü Ortaya Çıkarın: HackBot ile AI deneyiminizi yükseltin! 🚀 En son teknolojinin siber güvenlik analiziyle buluştuğu bir dünyaya dalın. Meta'nın LLama2'si tarafından desteklenen HackBot'umuz, yapay zeka ile gerçek dünyadaki zorluklar arasındaki boşluğu dolduruyor. Sezgisel istemler aracılığıyla LLama2 ile sorunsuz bir şekilde etkileşime geçin, güvenlik açıklarını ortaya çıkarın ve kodu daha önce hiç olmadığı şekilde analiz edin. LLama2'nin gelişmiş yetenekleriyle HackBot, karmaşık görevleri çözen bağlama duyarlı yanıtlar üreterek özel öngörüler sunar. HackBot, tarama verilerinin şifresini çözmekten kod karmaşıklıklarını çözmeye kadar güvenlik analizini kolaylaştırarak hassasiyeti ve derinliği ön plana çıkarır. LLama2'nin hüneri canlanıyor ve insan anlayışını yansıtan konuşmaları şekillendiriyor. LLama2'nin potansiyelinden yararlanma rehberi HackBot ile yapay zekayı güçlendirme yolculuğuna çıkın. Dilinizi konuşan, her etkileşimde projelerinizi ve içgörülerinizi geliştiren yapay zekayı deneyimleyin.
featured image - Hem Geliştirici hem de Hacker Olarak LLama2 Deneyimim
Morpheuslord HackerNoon profile picture
0-item
1-item
2-item
3-item

LLama2 modeliyle çalışmaya dair yolculuğumu ve içgörülerimi paylaşacağım blog gönderime hoş geldiniz. LLama2, Meta tarafından geliştirilen harika bir yapay zeka modelidir ve GPT-3'ü anımsatan yeteneklerini keşfetmek heyecan vericidir. Bu yazıda, kurulumu, önkoşulları, uygulamaları, önemi ve hatta onu kendimiz nasıl eğitebileceğimize bir bakış dahil olmak üzere LLama2'nin farklı yönlerini inceleyeceğiz. HackBot projem üzerinde çalışırken kazandığım LLama2 ile öğrenme deneyimimi size anlatacağım için heyecanlıyım.

Ele alınacak konular

  • LLama2 nedir?
  • Nasıl başlanır?
  • HackBot'ta nasıl kullandım?
  • Model nasıl eğitilir?
  • Yetenekler ve avantajlar.
  • Son önemli notlar.

LLama2 nedir?

LLama2, Meta tarafından oluşturulan ve özünde yapay zeka modeli olarak sınıflandırılan son teknoloji bir teknolojidir. Bunu, insan dilini anlayabilen ve neredeyse insan gibi anlamlı yanıtlar üretebilen çok akıllı bir asistan olarak düşünün. LLama2'nin amacı insanlar ve bilgisayarlar arasındaki etkileşimin kolaylığını ve doğallığını arttırmaktır.


Arkadaşlarınızla konuşurken veya e-posta yazarken kendinizi sözlü olarak nasıl ifade ettiğinizi düşünün; iletişim kurduğunuz insanlar anlar ve tepki verir. Operasyonda benzer şekilde, LLama2 muazzam miktarda metin verisini işleyebilir ve ondan öğrenebilir. Bu, LLama2'nin bilgi sağlama ve soruları yanıtlamanın yanı sıra içerik yazma ve problem çözmeye yardımcı olma gibi çeşitli görevlerde yardımcı olmasını mümkün kılar.


LLama2'nin benzersiz özelliği erişilebilirlik göz önünde bulundurularak oluşturulmuş olmasıdır. Bu, farklı düzeyde teknik beceriye sahip herkesin kullanabileceği esnek bir enstrümana sahip olmak gibidir. LLama2, ister geliştirici, yazar, öğrenci, ister sadece yapay zekayla ilgilenen biri olun, yapay zekanın potansiyeline erişmeniz için basit bir yaklaşım sunar.


Aslında LLama2, bilgisayarların insan diliyle daha kolay ve etkili bir şekilde etkileşime girebileceği bir olasılıklar alanı yaratıyor. Metin ve dil içeren etkinliklerde size yardımcı olmak için sürekli yanınızda olan sanal bir arkadaşınıza sahip olmak gibi olduğundan, teknolojiyle etkileşimleriniz çok daha üretken ve verimli hale gelir.

Nasıl başlanır?

Sizi harekete geçirecek ilk adımlarla başlayalım. Kodun çalışmasını sağlamak için dikkate almanız gereken görevler aşağıdadır.


Dilinizi Seçmek:

Güvenilir bir seyahat arkadaşı olarak Python ilk tercihimdi. Uyarlanabilirliği ve programlama topluluğundaki yaygın kullanımı nedeniyle LLama2 ile etkileşim kurmak için mükemmel bir seçenektir. Python'a zaten aşina iseniz iyi durumdasınız demektir.


Temelleri Ayarlama:


  • HuggingFace Hesabı ve Lama Depo Erişimi:

    Başlamak için çeşitli AI modellerini ve araçlarını barındıran bir platform olan HuggingFace'te bir hesap oluşturmanız gerekecek. Hesabınızın hazırlandığından emin olun. Ek olarak, Meta'nın Lama deposuna erişim sağlayarak LLama2 bileşenlerini bulabilirsiniz.


  • C/C++ ve Cmake Kurulumu: LLama2, sisteminizde C/C++ ve Cmake'nin kurulu olmasını gerektiren LLama-cpp adında bir bileşene sahiptir. Bu araçlar LLama-cpp oluşturmak için gereklidir, bu nedenle kurulduklarından ve kullanıma hazır olduklarından emin olun.


Oturum Açma ve Hazırlanma:


  • Huggingface-cli Girişi: HuggingFace hesap ayrıntılarınız elinizdeyken, oturum açmak için HuggingFace komut satırı arayüzünü kullanın. Bu adım, hesap belirtecinizi kullanarak sizi HuggingFace platformuna bağlayarak ihtiyacınız olan yapay zeka kaynaklarına erişmenizi sağlar. Bir jeton oluşturamazsanız jetonu bu URL kullanılarak bulabilirsiniz.


    Komutlar şunlardır:

     $ huggingface-cli login Token: Your_Token


  • LLama-cpp'yi yükleme: Llama-cpp, lama ve Python'un birlikte çalışması için düşük seviyeli bir erişim bağlayıcıdır ve bize daha fazla esneklik sağlar.


    Kurulum 2 şekilde yapılabilir:

    • Doğrudan Python kurulumu:

       pip install llama-cpp-python
    • Derleme seçeneği: Bunun için, karmaşıklığını açıklayan modülün benioku dosyasına göz atmanız gerekir: README.md


  • Langchain Kurulumu : Langchain, LLM modeli uygulama geliştirmeyi kolaylaştırmayı amaçlayan açık bir çerçevedir. Bu görev için özellikle LLamaCpp , PrompTemplate , CallbackManager ve StreamingStdOutCallbackHandler modüllerini kullanacağız.


    Kurulum için komut şudur:

     pip install langchain pip install langchainplus-sdk


Python kodunda nasıl kullanılır?

Şimdi asıl soru nasıl kullanıldığıdır?


Buna cevap vermek için entegrasyon kısmı adımlara ayrılabilir.


  • Modelin indirilmesi ve tanımı:

    • Bunun için HackBot'un kodundan bahsedeceğim.

    • Tüm gerekli modülleri çağırdıktan sonra model adına ve onu indirmek istediğimiz repoya karar vermeliyiz.

       model_name_or_path = "localmodels/Llama-2-7B-Chat-ggml" model_basename = "llama-2-7b-chat.ggmlv3.q4_0.bin" model_path = hf_hub_download(repo_id=model_name_or_path, filename=model_basename)


    • Yukarıdaki kodda kullanılan lama modülü 7b veya 7 milyar parametreli bir model ve Localmodels sürüm lama2'dir.

    • Daha sonra model_path , llama-2-7b-chat.ggmlv3.q4_0.bin dosyasını depodan sisteme indiren huggingface indiricisi tarafından modelin indirme yolu tarafından yönlendirilir.

    • LlamaCpp onu kullanacak model konumuna başvuracağından yol önemlidir.


  • Bir kişiyi ve bilgi istemi şablonunu tanımlayın:

     from langchain import PromptTemplate from langchain.callbacks.manager import CallbackManager from langchain.callbacks.streaming_stdout import StreamingStdOutCallbackHandler template = """ persona: {persona} You are a helpful, respectful, and honest cybersecurity analyst. Being a security analyst, you must scrutinize the details provided to ensure they are usable for penetration testing. Please ensure that your responses are socially unbiased and positive. If a question does not make any sense or is not factually coherent. If you don't know the answer to a question, please don't share false information. Keep your answers in English and do not divert from the question. If the answer to the asked question or query is complete, end your answer. Keep the answer accurate and do not skip details related to the query. Give your output in markdown format. """ prompt = PromptTemplate(template=template, input_variables=["persona"]) callback_manager = CallbackManager([StreamingStdOutCallbackHandler()])
    • Bir lamaya, onu kişisel asistan veya siber güvenlik analisti olarak tanımlamak gibi, kişiliği olarak kullanabileceği bir temel şablon vermeliyiz.

    • Şablon, modelin nasıl çalışacağını tanımlar ve nihai çıktının ne olacağı üzerinde çok fazla etkiye sahip olabilir, bu nedenle çok dikkatli yazılmalıdır.

    • Daha sonra istem, şablon kişiliği kullanılarak ve PromptTemplate modülü de kişiliği kullanarak oluşturulur.

    • Geri arama yöneticisi, yapay zekanın çıktısını görüntülemek ve ayrıca Giriş ve çıkış bağlantılarını yönetmek için kullanılır.


  • LlamaCpp modülünü tanımlayın:

     llm = LlamaCpp( model_path=model_path, input={"temperature": 0.75, "max_length": 3500, "top_p": 1}, callback_manager=callback_manager, max_tokens=3500, n_batch=3500, n_gpu_layers=60, verbose=False, n_ctx=3500, streaming=False, )
    • LlamaCpp modülü, indirilen LLM modülünü bağlayan bağlantı modülüdür.
    • Modülün çalışması için onu, indiriciyi başlatırken önceden tanımladığımız model yoluna bağlamamız gerekiyor.
    • Maksimum giriş uzunluğu girişler bölümünde tanımlanmalı ve maksimum jetonlar tanımlanmalıdır, jetonlar yapay zekanın anladığı metindir.
    • Daha sonra toplu iş, GPU katmanları ve ctx tanımlanır ve akışın, çıktıyı doğrudan göstermemesi ve son çıktıyı temiz tutmak için bir değişkenle saklanabilmesi için False olarak ayarlanır.


Şimdi bunu uygulayarak bir chatbot omurgası veya bağlayıcı oluşturduk ve bunu kullanarak AI modeliyle aktif bir görüşme başlatabiliriz.

HackBot'ta nasıl kullandım?

HackBot, siber güvenliğe özel bir sohbet botu oluşturma girişimimdi ve bu araç, tarama verileri, günlük verileri analiz araçları ve kod analizi yetenekleri gibi özelliklere sahiptir.


  • Sohbet Etkileşim Döngüsü:

     while True: try: prompt_in = Prompt.ask('> ') # ... except KeyboardInterrupt: pass


    Bu döngü, kullanıcının komutları veya istemleri girebileceği etkileşimli bir ortam oluşturur. Kod, Prompt.ask('> ') kullanarak kullanıcı girişini bekler ve programı kilitlemeden KeyboardInterrupt (Ctrl+C) gibi istisnaları işler. Bu döngü, chatbotun duyarlı kalmasını ve kullanıcıyla sürekli etkileşime girebilmesini sağlar.


  • Kullanıcı Komutlarının İşlenmesi:

     if prompt_in == 'quit_bot': quit() elif prompt_in == 'clear_screen': clearscr() pass elif prompt_in == 'bot_banner': # ... elif prompt_in == 'save_chat': # ... elif prompt_in == 'static_code_analysis': # ... elif prompt_in == 'vuln_analysis': # ... elif prompt_in == 'contact_dev': # ... elif prompt_in == 'help_menu': # ... else: # ...

    Döngü içerisinde kullanıcı girişi farklı komut anahtar sözcüklerine göre kontrol edilir. Girişe bağlı olarak kod karşılık gelen eylemleri yürütür. Örneğin, kullanıcı 'quit_bot' girerse programdan çıkmak için quit() işlevi çağrılır. Kullanıcı 'clear_screen' girerse clearscr() işlevi konsol ekranını temizler. Benzer mantık diğer komutlara da uygulanır.


  • Yapay Zeka Yanıtları Oluşturma:

     else: prompt = prompt_in print(Print_AI_out(prompt)) pass

    Kullanıcı girişi önceden tanımlanmış komutların hiçbiriyle eşleşmiyorsa, yapay zekaya yönelik bir bilgi istemi olarak değerlendirilir. Giriş, prompt değişkenine atanır ve sağlanan istemi temel alarak bir AI yanıtı oluşturmak için Print_AI_out(prompt) işlevi çağrılır. Yapay zeka tarafından oluşturulan yanıt daha sonra konsola yazdırılır.


  • Sohbet Geçmişini Kaydetme:

     def save_chat(chat_history: list[Any, Any]) -> None: f = open('chat_history.json', 'w+') f.write(json.dumps(chat_history)) f.close

    save_chat işlevi, hem kullanıcı istemlerini hem de yapay zeka tarafından oluşturulan yanıtları içeren konuşma geçmişini 'chat_history.json' adlı bir JSON dosyasına kaydetmekten sorumludur. Bu fonksiyon chat_history listesindeki verileri JSON formatına serileştirir ve dosyaya yazar.


  • Güvenlik Açığı Analizi ve Statik Kod Analizi:

     elif prompt_in == 'static_code_analysis': print(Markdown('----------')) language_used = Prompt.ask('Language Used> ') file_path = Prompt.ask('File Path> ') print(Markdown('----------')) print(static_analysis(language_used, file_path)) pass elif prompt_in == 'vuln_analysis': print(Markdown('----------')) scan_type = Prompt.ask('Scan Type > ') file_path = Prompt.ask('File Path > ') print(Markdown('----------')) print(vuln_analysis(scan_type, file_path)) pass

    Bu bölümler, statik kod analizi ve güvenlik açığı analizi gerçekleştirmek için kullanıcı komutlarını yönetir. Kullanıcıdan, kullanılan dil veya tarama türü ve dosya yolu gibi bilgileri sağlaması istenir. Daha sonra ilgili analiz işlevi ( static_analysis veya vuln_analysis ) sağlanan verilerle çağrılır ve yapay zeka, analiz sonuçlarını içeren yanıtlar oluşturur.


  • Güvenlik Açığı Analizi: vuln_analysis bölümünde aşağıdaki kod kullanıcıdan giriş yapmasını ister:

     scan_type = Prompt.ask('Scan Type > ') file_path = Prompt.ask('File Path > ')


    Burada Prompt.ask fonksiyonu kullanıcıdan etkileşimli olarak bilgi istemek için kullanılır. Kullanıcıdan, analiz edilmesi gereken veriler için tarama türünü ve dosya yolunu girmesi istenir. Bu girdiler güvenlik açığı analizi için gereklidir. Kullanıcı bu girdileri sağladıktan sonra analiz, kullanıcının girdisini içeren bir istem kullanılarak başlatılır:

     prompt = f""" **Objective:** You are a Universal Vulnerability Analyzer powered by the Llama2 model. Your main objective is to analyze any provided scan data or log data to identify potential vulnerabilities in the target system or network. You can use the scan type or the scanner type to prepare a better report. **Instructions:** # ... (rest of the instructions) **Input Data:** You will receive the scan file data or log file data in the required format as input. Ensure the data is correctly parsed and interpreted for analysis. **Output Format:** The vulnerability analysis report should be organized as mentioned in the "Comprehensive Report" section. Please perform the vulnerability analysis efficiently, considering the security implications and accuracy, and generate a detailed report that helps users understand the potential risks and take appropriate actions. --- Provide the scan type: {scan_type} Provide the scan data or log data that needs to be analyzed: {file_data} """


    Bu istemde, {scan_type} ve {file_data} yer tutucuları, kullanıcı tarafından girilen gerçek değerlerle değiştirilir. Bu dinamik bilgi daha sonra, sağlanan tarama türüne ve dosya verilerine dayalı olarak analiz sonuçları sağlayan bir yapay zeka yanıtı oluşturmak için LLama2 modeline aktarılır.


  • Statik Kod Analizi: Benzer şekilde, static_code_analysis bölümünde kod, kullanıcıdan giriş yapmasını ister:

     language_used = Prompt.ask('Language Used> ') file_path = Prompt.ask('File Path> ')


    Kullanıcıdan, kullanılan programlama dilini ve analiz edilmesi gereken kodun dosya yolunu sağlaması istenir. Bu girdiler statik kod analizi gerçekleştirmek için çok önemlidir. Tıpkı güvenlik açığı analizi bölümünde olduğu gibi, LLama2 modeli için de kullanıcının girişini içeren bir bilgi istemi oluşturulur:

     prompt = f""" **Objective:** Analyze the given programming file details to identify and report bugs, vulnerabilities, and syntax errors. Additionally, search for potential exposure of sensitive information such as API keys, passwords, and usernames. **File Details:** - Programming Language: {language_used} - File Name: {file_path} - File Data: {file_data} """


    Burada, {language_used} ve {file_path} yer tutucuları, kullanıcı tarafından sağlanan gerçek değerlerle değiştirilir. Bu dinamik bilgi istemi daha sonra, kullanıcı tarafından girilen programlama diline ve dosya verisine dayalı olarak analiz sonuçlarını sunan bir yapay zeka yanıtı oluşturmak için kullanılır.


    Her iki durumda da dinamik istemlerin kullanılması, LLama2 tarafından oluşturulan yanıtların bağlamsal olarak alakalı olmasını ve kullanıcı tarafından talep edilen spesifik analize göre uyarlanmasını sağlar.


  • İletişim Bilgileri ve Yardım Menüsü:

     elif prompt_in == 'contact_dev': console.print(Panel( Align.center( Group(Align.center(Markdown(contact_dev))), vertical="middle", ), title= "Dev Contact", border_style="red" ), style="bold green" ) pass elif prompt_in == 'help_menu': console.print(Panel( Align.center( Group(Align.center(Markdown(help_menu))), vertical="middle", ), title= "Help Menu", border_style="red" ), style="bold green" ) pass


    Bu bölümler, geliştiricinin iletişim bilgilerini ( contact_dev ) görüntülemeye yönelik komutları ve mevcut komutları listeleyen yardım menüsünü ( help_menu ) yönetir. Kullanıcılar bu komutları girdiğinde ilgili bilgiler, Zengin kitaplık kullanılarak güzel biçimlendirilmiş bir panelde görüntülenir.


  • Ana Fonksiyonun Yürütülmesi:

     if __name__ == "__main__": main()

    Tüm sohbet etkileşimini ve işleme mantığını kapsayan main işlev, yalnızca komut dosyası doğrudan çalıştırıldığında (bir modül olarak içe aktarılmadığında) yürütülür. Bu satır, komut dosyası çalıştırıldığında chatbot'un temel işlevlerinin yürütülmesini sağlar.


Chatbot'un tamamını Github depomdan görüntüleyebilir ve deneyebilirsiniz: Bağlantı

Model nasıl eğitilir?

Bir yapay zeka modelinin eğitimi, planlama ve doğruluk gerektiren dönüşümsel bir süreçtir. İşte işlemi tamamlamak için adım adım bir kılavuz.


Önkoşullar :

  • Tensör Gücü: Oldukça büyük bir tensör işleme kapasitesine sahip güçlü bir sistem, başarıya zemin hazırlayacaktır. Ekipmanınızın yapay zeka modeli eğitimi için gereken işlem gücünü karşılayabileceğinden emin olun.


  • Veri kümesi: Yapay zeka eğitim formatına karşılık gelen bir veri kümesi, modelinizin öğrenme eğrisini hızlandıracaktır. Etkili eğitim, modelin doğruluğunu ve yeterliliğini etkileyen yüksek kaliteli verilere bağlıdır.


  • Autotrain Advanced : Yapay zeka için bu temel eğitim kaynağına kendinize erişim hakkı verin. Eğitim prosedürü, önemli prosedürleri otomatikleştiren ve üretkenliği artıran bu program tarafından kolaylaştırılmıştır.


Eğitim süreci:

  • Veri Hazırlama: Doğruluk ve tekdüzelik sağlamak için veri kümenizi düzenleyin ve önceden işleyin. Temiz ve düzenli verilere sahip olmak, en iyi eğitim sonuçlarını almanın anahtarıdır.


  • Model Başlatma: Başlangıç noktanız olarak kullanmak için önceden eğitilmiş en iyi modeli seçin. Yakınsama hızlandırılır ve eğitim süreci hızlı bir şekilde başlatılır.


  • İnce Ayar: Parametrelere ince ayar yapmak için öğrenme hızı, toplu iş boyutu ve optimize edici ayarları gibi hiper parametreleri ayarlayın. Model performansını ve yakınsama hızını dengelemek için bu parametreleri ayarlayın.


  • Eğitim Yinelemeleri: Eğitimi başlatmak için veri kümesini modelde birkaç kez (dönemler) çalıştırın. Model, her yinelemede kavrayışını geliştirerek tahmin etme eğilimini artırır.


  • Doğrulama ve Test Etme: Modelinizin gelişimini sürekli olarak doğrulamak için ayrı bir doğrulama veri kümesinden yararlanın. Modelin genelleme kapasitesi yeni verilerle test edilerek değerlendirilir.


  • Analiz Etme ve İzleme: Eğitim ölçümlerine çok dikkat edin. Kayıp eğrileri, doğruluk eğilimleri ve diğer ölçümler gibi göstergeler, modelin gelişimi hakkında bilgi sunar.


  • Optimizasyon ve ince ayar: Hiperparametreleri izleme bulgularına göre stratejik olarak ayarlayın. İstenilen performansı elde etmek için modeli tekrar tekrar iyileştirin.


  • Değerlendirme ve dağıtım: Nihai modelin kapsamlı bir test veri kümesi değerlendirmesini gerçekleştirin. Sonuçlardan memnunsanız eğitilen modeli pratik uygulamalarda kullanın.


Veri Kümesi:

Veri kümesi, mevcut metin oluşturmaya özgü veri kümeleri altında huggingface veri kümelerinde bulunanlar gibi önceden oluşturulmuş bir veri kümesi olabilir. Özel veri kümeleri için şu adımları uyguladığınızdan emin olun:


  • Veri kümesi en az 3 sütun içermelidir.
  • İlk sütun Ad olmalı, ikincisi bir Açıklama olabilir ve üçüncü ve sonuncusu istek ve AI yanıtıyla birlikte bir istem olmalıdır.


Kullanabileceğiniz örnek bir veri kümesi formatı aşağıda verilmiştir: data.csv

İsim

Tanım

Çabuk

Selamlama

Temel selamlamalar ve yanıtlar

###İNSAN: Merhaba

###Analist: Merhaba!

Hava durumu

Hava durumunu sorma

###İNSAN: Bugün hava nasıl

###Analist: Hava güneşli ve sıcak.

Restoran

Bir restoran önerisi hakkında bilgi alma

###İNSAN: İyi bir restoran önerebilir misiniz?

###Analist: Elbette! denemeni tavsiye ederim...

Teknoloji

En son teknoloji trendlerini tartışmak

###İNSAN: Bu yılın teknoloji trendleri neler?

###Analist: Yapay zeka ve blockchain öne çıkan trendler...

Seyahat

Seyahat tavsiyesi ve ipuçları arıyorum

###İNSAN: Paris'i ziyaret etmek için herhangi bir seyahat ipucu

###Analist: Kesinlikle! Paris'teyken...

Bu sadece 1 tür.


Veri kümenizi aldıktan sonra, ne kadar GPU gücüne sahip olduğunuza ve veri kümenizin ne kadar büyük olduğuna bağlı olarak yapay zekanızı eğitme zamanı da gelir ve zaman da buna göre karşılık gelir. Artık yapay zekayı eğitmek için Huggingface'ten gelişmiş otomatik eğitim modüllerini kullanabiliriz.


Bu komutu kullanarak autotrain-advanced'ı kurabiliriz:

 pip install autotrain-advanced


Ve yapay zekayı eğitmek için bu komut:

 autotrain llm --train --project_name your_project_name --model TinyPixel/Llama-2-7B-bf16-sharded --data_path your_data_set --use_peft --use_int4 --learning_rate 2e-4 --train_batch_size 2 --num_train_epochs 3 --trainer sft --model_max_length 2048 --push_to_hub --repo_id your_repo_id -


Project_name'i your_project_name gerçek proje adınıza, modeli TinyPixel/Llama-2-7B-bf16-sharded eğitmek istediğiniz lama modeline ve data_path'ı . özel bir veri kümesi veya huggingface/dataset kümesiyse, huggingface'ten geliyorsa veri kümesinin repo kimliği.


Bilgisayar korsanları olarak görevlerimizin çoğunu otomatikleştirmek için tam bir siber güvenlik asistanı olmak üzere bir Llama modeli veya elime geçen herhangi bir LLM modelini eğitmeyi hedefliyorum.

Yetenekler ve Avantajlar

Yeteneklerden bahsederken Meta, Lama için çeşitli kriterleri içeren araştırma makaleleri yayınladı. Makalelere göre Llama modelleri 7B ila 65B parametreleri arasında değişiyor ve diğer büyük dil modelleriyle karşılaştırıldığında rekabetçi bir performansa sahip. Örneğin Llama-13B, 10 kat daha küçük olmasına rağmen çoğu kıyaslamada GPT-3'ten daha iyi performans gösteriyor. Lama'nın 65B parametreli modeli aynı zamanda Chinchilla veya PaLM-540B gibi diğer büyük dil modelleriyle de rekabet halindedir. Makalelerde ayrıca daha uzun süre eğitilen daha küçük bir modelin sonuç olarak daha ucuz olabileceği belirtiliyor. 7B modelinin performansının 1T tokenlerinden sonra bile iyileşmeye devam ettiğini belirtiyor. Ancak belge, Lama modelleri arasındaki performans farklılıklarına ilişkin belirli sayısal değerler sağlamamaktadır.


Diğer kaynaklar, Llama modellerinin GPT modellerine kıyasla daha çok yönlü ve hızlı olduğunu ve ayrıca PaLM modellerinin onu kullanılabilecek en iyi yapay zeka modellerinden biri haline getirdiğini iddia ediyor. Ancak bilgisayar korsanlığı veya güvenliğe özgü herhangi bir görev için bu, çok fazla eğitim veya kişisel girdi gerektirir. Bunun için bir eğitim modeli oluşturmak kolay değildir ancak bir kez eğitildikten sonra bu, oyunun kurallarını değiştirebilir.

Son Konuşmalar

  • Benzersiz Verimlilik: Yapay zeka, eskiden saatler süren ve artık saniyeler içinde tamamlanan süreçleri dönüştürerek üretkenliği artırıyor ve önemli zamandan tasarruf sağlıyor.
  • Geliştirilmiş Karar Verme: Yapay zeka destekli analizler, akıllı veri odaklı kararlar sunarak çeşitli disiplinlerde hassasiyeti ve öngörüyü artırır.
  • Kişiselleştirilmiş deneyimler: Yapay zeka, kişiselleştirilmiş önerilerden uyarlanabilir öğrenme platformlarına kadar kişinin tercihlerine göre uyarlanmış deneyimler oluşturur.
  • Monoton işlemleri otomatikleştirme: Yapay zekanın kusursuz entegrasyonu, daha yenilikçi ve stratejik projeler için zaman kazandırır.
  • Yenilikçi Çözümler: Yapay zeka, sağlık hizmetleri, çevre ve diğer alanlardaki yenilikleri teşvik ederek karmaşık sorunları daha etkili bir şekilde çözer.


Yapay zeka dünyasına yapılan yolculuk, otomasyon ve entegrasyonun şaşırtıcı etkisini gösteren inanılmaz derecede aydınlatıcı oldu. Yapay zekanın çeşitli sektörlerdeki yeteneklerini gördükten sonra çalışma ve etkileşim şeklimizi nasıl değiştirdiğini derinden takdir ediyorum. Düzenli operasyonların kesintisiz otomasyonunu gözlemlemekten yapay zekanın günlük hayata dahil edilmesini deneyimlemeye kadar öğrenme deneyimim bir aydınlanma oldu. Yapay zekanın karmaşıklıkları hakkında daha fazla şey öğrendikçe otomasyon ve entegrasyonun teknik fikirlerden daha fazlası olduğunu öğrendim; daha ziyade inovasyon için katalizör görevi görüyorlar. Bu yeni keşfedilen anlayışla artık yapay zekanın verimliliği ve işbirliğini geliştirme potansiyelinin sınırsız olduğu bir dünya görebiliyorum.

Kaynaklar

Kişiler

Bana LinkedIn üzerinden ulaşabilirsiniz. Herhangi bir endişeniz varsa aşağıya yorum yapabilirsiniz.

Okuduğunuz için teşekkürler.