Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun · Pelajaran

Ketekalan Kendiri dan Pengetahuan Dijana

Laksanakan teknik yang membolehkan LLM menjana pelbagai laluan penaakulan dan memilih jawapan yang paling konsisten, atau menjana pengetahuan untuk membantu penaakulan.

Pelajaran 2 daripada 411 langkah

Ketekalan Kendiri dan Pengetahuan Dijana ialah pelajaran Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun merangkumi sejumlah 4 pelajaran.

Pengenalan: Ketekalan & Pengetahuan

Selamat datang ke Pelajaran 2! Dalam penyelesaian masalah kompleks, Model Bahasa Besar (LLM) kadangkala menghadapi kesukaran, lalu menghasilkan jawapan yang salah atau tidak konsisten.

Pelajaran ini memperkenalkan dua teknik berkuasa untuk meningkatkan kebolehpercayaan: Ketekalan Kendiri dan Pengetahuan Dijana. Kaedah ini membantu LLM 'berfikir' dengan lebih mendalam dan sistematik.

Mengapakah Penaakulan Lanjutan?

LLM sangat baik dalam menjana teks, tetapi kadangkala boleh menghasilkan kesilapan logik atau “berhalusinasi” (menghasilkan maklumat yang tidak benar dari segi fakta), terutamanya ketika melakukan penaakulan berbilang langkah.

Strategi penggesaan lanjutan seperti Ketekalan Kendiri dan Pengetahuan Dijana bertujuan untuk:

  • Meningkatkan ketepatan bagi tugasan yang kompleks.
  • Mengurangkan kemungkinan berlakunya kesilapan fakta.
  • Menjadikan respons LLM lebih kukuh dan boleh dipercayai.

Memahami Ketekalan Kendiri

Ketekalan Kendiri ialah teknik yang meminta LLM menjana beberapa laluan penaakulan atau jawapan yang berbeza untuk soalan yang sama.

Daripada bergantung pada satu output sahaja, anda kemudiannya menggabungkan output yang berbeza ini dan memilih jawapan yang paling konsisten (contohnya, jawapan yang paling kerap muncul). Ia seperti bertanya kepada beberapa orang pakar dan mengambil pendapat majoriti.

Ketekalan Kendiri dalam Tindakan

Bayangkan anda bertanya kepada LLM: “Jika sebuah kereta api bertolak dari stesen A pada pukul 8 AM dengan kelajuan 60 batu sejam, dan sebuah lagi bertolak dari stesen B (300 batu jauhnya) pada pukul 9 AM dengan kelajuan 70 batu sejam, bilakah kedua-duanya bertemu?”

Satu gesaan mungkin menghasilkan jawapan yang salah. Dengan ketekalan kendiri, anda akan bertanya soalan ini beberapa kali, mungkin dengan susunan kata yang sedikit berbeza, kemudian membandingkan hasilnya untuk mencari waktu pertemuan yang paling kerap muncul.

Kod: Ketekalan Kendiri Mudah

Contoh Python ini mensimulasikan panggilan kepada LLM beberapa kali untuk masalah matematik. Contoh ini kemudiannya memilih jawapan yang paling kerap muncul, sekali gus meningkatkan kebolehpercayaan.

import collections
import random

def call_llm(prompt):
    # Simulate LLM responses for a math problem
    # In a real app, this would be an actual LLM API call
    if "What is (15 * 3) - 7?" in prompt:
        return random.choice(["38", "The answer is 38.", "40 (Oops!)"])
    return "Simulated response."

def main():
    print("--- Self-Consistency Example ---")
    question_prompt = "What is (15 * 3) - 7? Give your final numeric answer only."
    answers = []
    num_attempts = 5

    for i in range(num_attempts):
        raw_output = call_llm(question_prompt)
        # Simple extraction of numeric part
        numeric_answer = ''.join(filter(str.isdigit, raw_output))
        if numeric_answer:
            answers.append(int(numeric_answer))
            print(f"Attempt {i+1}: {numeric_answer}")
        else:
            print(f"Attempt {i+1}: Could not parse '{raw_output}'")

    # Find the most common answer (voting)
    if answers:
        most_common = collections.Counter(answers).most_common(1)
        print(f"\nMost consistent answer: {most_common[0][0]}")
    else:
        print("\nNo valid answers generated.")

if __name__ == "__main__":
    main()

Memperkenalkan Pengetahuan Dijana

Pengetahuan Dijana ialah teknik yang meminta LLM menjana fakta, konteks atau pemikiran perantaraan yang berkaitan terlebih dahulu, kemudian menggunakan maklumat yang dijana sendiri ini untuk menjawab pertanyaan utama.

Teknik ini seumpama membuat penyelidikan sebelum menulis esei. LLM pada dasarnya “mengira terlebih dahulu” atau “mengingat kembali” pengetahuan yang berkaitan untuk membina asas yang lebih kukuh bagi jawapan akhirnya.

Pengetahuan Dijana dalam Amalan

Pertimbangkan soalan seperti: “Huraikan perbezaan utama antara lohong hitam dengan lubang cacing.”

Daripada menjawab secara langsung, anda boleh meminta LLM terlebih dahulu untuk:

  1. “Senaraikan ciri-ciri utama lohong hitam.”
  2. “Senaraikan ciri-ciri utama lubang cacing.”

Kemudian, gunakan senarai yang dijana ini sebagai konteks untuk soalan asal, lalu menghasilkan perbandingan yang lebih berinformasi dan tepat.

Kod: Pengiraan Awal dengan LLM

Contoh Python ini menunjukkan proses dua langkah: pertama, meminta LLM menjana pengetahuan, kemudian menggunakan pengetahuan tersebut dalam gesaan seterusnya untuk menjawab soalan yang kompleks.

def call_llm(prompt):
    # Simulate LLM responses for knowledge generation
    if "What are the key components of prompt injection?" in prompt:
        return "Malicious user input, LLM vulnerability to new instructions, attempt to bypass security or extract data."
    elif "Using the information about Malicious user input, LLM vulnerability to new instructions, attempt to bypass security or extract data., explain the concept of 'prompt injection' in cybersecurity." in prompt:
        return "Prompt injection is an attack where crafted malicious user input manipulates an LLM to override its original instructions, potentially leading to unauthorized actions, data exposure, or harmful content generation. It exploits the LLM's tendency to follow new directions even if they contradict its safety guidelines."
    return "Simulated response."

def main():
    print("--- Generated Knowledge Example ---")

    # Step 1: Generate knowledge
    knowledge_prompt = "What are the key components of prompt injection?"
    print(f"LLM generating knowledge...")
    generated_knowledge = call_llm(knowledge_prompt)
    print(f"Generated Knowledge:\n{generated_knowledge}\n")

    # Step 2: Use generated knowledge to answer the main question
    main_question = "explain the concept of 'prompt injection' in cybersecurity."
    final_prompt = f"Using the information about {generated_knowledge}, {main_question}"
    print(f"LLM answering main question using generated knowledge...")
    final_answer = call_llm(final_prompt)
    print(f"Final Answer:\n{final_answer}")

if __name__ == "__main__":
    main()

Sinergi: Menggabungkan Teknik

Walaupun berkuasa secara berasingan, Ketekalan Kendiri dan Pengetahuan Dijana juga boleh digabungkan untuk menghasilkan keteguhan yang lebih tinggi.

Contohnya, anda boleh menggunakan Pengetahuan Dijana terlebih dahulu untuk menghasilkan set fakta yang kukuh, kemudian menggunakan Ketekalan Kendiri pada peringkat penjanaan jawapan akhir bagi memastikan jawapan itu berasaskan fakta dan outputnya boleh dipercayai.

Uji Pemahaman Anda

Uji pengetahuan anda tentang Ketekalan Kendiri dan Pengetahuan Dijana.

Ringkasan: Memperkasa LLM

Dalam pelajaran ini, anda telah mempelajari dua strategi penggesaan lanjutan:

  • Ketekalan Kendiri: Menjana berbilang jawapan dan memilih jawapan yang paling kerap muncul untuk meningkatkan kebolehpercayaan.
  • Pengetahuan Dijana: Meminta LLM mencipta konteks yang berkaitan terlebih dahulu, kemudian menggunakan konteks tersebut untuk menjawab soalan utama.

Teknik-teknik ini membantu LLM menangani masalah yang kompleks dengan ketepatan yang lebih tinggi dan risiko kesilapan yang lebih rendah. Teruskan bereksperimen dengannya untuk membuka lebih banyak kemungkinan aplikasi LLM yang kukuh!

Percuma untuk bermula

Pelajari Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
12
Pelajaran
48

Soalan Lazim

Adakah pelajaran “Ketekalan Kendiri dan Pengetahuan Dijana” percuma?

Ya — teks penuh “Ketekalan Kendiri dan Pengetahuan Dijana” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun, tingkat taraf kepada CoddyKit PRO. Kursus Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Ketekalan Kendiri dan Pengetahuan Dijana”?

Laksanakan teknik yang membolehkan LLM menjana pelbagai laluan penaakulan dan memilih jawapan yang paling konsisten, atau menjana pengetahuan untuk membantu penaakulan. Anda berlatih Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.

Berapa lamakah pelajaran “Ketekalan Kendiri dan Pengetahuan Dijana” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun ini?

Ya. Setiap pelajaran Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Pemberian Gesaan Rantaian Pemikiran
  2. Ketekalan Kendiri dan Pengetahuan Dijana
  3. Gesaan Pepohon Pemikiran dan Graf
  4. ReAct: Penaakulan dan Tindakan dengan Alat
← Kembali ke Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun