Claude Architect · Pelajaran

Contoh untuk Format dan Kes Pinggir

Tetapkan bentuk output dan jelaskan sempadan yang rumit

Pelajaran 2 daripada 413 langkah

Contoh untuk Format dan Kes Pinggir ialah pelajaran Claude Architect percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Claude Architect, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Claude Architect merangkumi sejumlah 4 pelajaran.

Mengapa Contoh Format Wujud

Arahan memberitahu Claude apa yang perlu dilakukan. Contoh menunjukkan kepadanya rupa output yang tepat.

Pemberian gesaan dengan beberapa contoh bermaksud memasukkan 2-4 contoh bersasar ke dalam gesaan anda. Model membuat generalisasi daripadanya — ia bukan sekadar menyalinnya kembali. Dalam pelajaran ini, kita menggunakan contoh untuk dua tugas: menetapkan bentuk output dan menjelaskan kes tepi yang sukar.

Inilah dua tugas yang menjadikan pemberian gesaan dengan beberapa contoh sangat berbaloi: kekonsistenan, format output dan pengurangan halusinasi bagi input yang pelik.

Masalahnya: Bentuk yang Berubah-ubah

Bayangkan anda meminta Claude mengekstrak tarikh. Kadangkala anda mendapat 2026-06-10, kadangkala June 10, 2026, dan kadangkala 10/06/2026. Setiap variasi memecahkan kod yang menggunakan output tersebut.

Arahan prosa seperti "pulangkan tarikh" adalah kabur. Panduan yang kabur menghasilkan kekonsistenan yang kabur. Penyelesaiannya ialah menunjukkan bentuk tepat yang anda kehendaki, bukannya menghuraikannya.

Menetapkan Bentuk dengan Contoh

Letakkan beberapa pasangan input dan output dalam gesaan sistem. Model akan memahami format output dan menghasilkannya semula untuk input baharu.

Perhatikan bahawa setiap contoh menetapkan struktur yang sama: tarikh ISO, status huruf besar, tanpa ulasan tambahan.

system = (
    "Extract the event into JSON. Match this shape exactly.\n\n"
    "Input: Launch is on June 10th, all systems go.\n"
    'Output: {"date": "2026-06-10", "status": "GO"}\n\n'
    "Input: Demo slipped to the 3rd of July, still pending.\n"
    'Output: {"date": "2026-07-03", "status": "PENDING"}'
)

resp = client.messages.create(
    model="claude-sonnet-4-5",
    max_tokens=256,
    system=system,
    messages=[{"role": "user", "content": "Input: Kickoff is set for May 1st and confirmed."}],
)

Contoh Mengatasi Kata Sifat

Kriteria yang jelas mengatasi permintaan yang kabur. "Jadikan lebih konsisten" atau "formatkannya dengan kemas" tidak memberikan model apa-apa titik rujukan.

Bandingkan dua cara untuk meminta perkara yang sama:

  • Kabur: "Pulangkan status dalam format yang kemas."
  • Konkrit: tunjukkan dua output yang kedua-duanya ialah {"status": "GO"} / {"status": "PENDING"}.

Versi konkrit menghapuskan tekaan. Model melihat sasaran lalu mencapainya.

Penting dari Segi Format? Gabungkan dengan Output Berstruktur

Contoh menjadikan bentuk itu berkemungkinan. Skema JSON melalui tool_use menjadikannya terjamin — ia menghapuskan ralat sintaks dan menguatkuasakan medan yang diperlukan.

Menetapkan tool_choice kepada "any" memaksa model memanggil mana-mana alat, yang menjamin anda menerima output berstruktur dan bukannya teks bebas. Gunakan contoh beberapa contoh untuk menjelaskan kandungan, dan skema untuk mengunci struktur.

tools = [{
    "name": "record_event",
    "description": "Save the parsed event.",
    "input_schema": {
        "type": "object",
        "properties": {
            "date": {"type": "string", "description": "ISO 8601, e.g. 2026-06-10"},
            "status": {"type": "string", "enum": ["GO", "PENDING", "OTHER"]},
            "status_detail": {"type": "string"}
        },
        "required": ["date", "status"]
    }
}]

resp = client.messages.create(
    model="claude-sonnet-4-5",
    max_tokens=256,
    tools=tools,
    tool_choice={"type": "any"},  # must call a tool -> structured output
    messages=msgs,
)

Perangkap Medan yang Diperlukan

Skema hanya selamat jika anda menandai medan dengan betul. Peraturannya: tandakan medan sebagai diperlukan HANYA jika medan itu sentiasa hadir.

Jika anda mewajibkan medan yang mungkin tiada daripada sumber, model akan mereka-reka nilai untuk memenuhi skema. Itu ialah pepijat kualiti data yang senyap.

Dalam contoh di atas, date dan status sentiasa boleh diperoleh, jadi kedua-duanya diperlukan. status_detail mungkin tiada, jadi medan itu kekal pilihan.

Mereka Bentuk untuk Kes Tepi

Sekarang tugas kedua: sempadan yang sukar. Output lalai meliputi laluan biasa. Contoh kes tepi mengajar model perkara yang perlu dilakukan apabila input pelik, tidak lengkap atau tidak sepadan.

Pilih 2-4 contoh yang menyasarkan kekaburan khusus yang benar-benar anda hadapi — bukan sampel rawak. Setiap contoh harus menyelesaikan satu sempadan yang sebaliknya terpaksa diteka oleh model.

Tunjukkan Kes Kosong / Tiada

Kes pinggir yang paling biasa: jawapan itu sememangnya tiada dalam input. Bezakan hasil kosong yang sah (tiada data tersedia) daripada kegagalan akses (sumber tidak dapat dibaca).

Tunjukkan contoh apabila medan tiada dan model mengembalikan penanda khas seperti "OTHER" bersama butiran — jangan sekali-kali mereka-reka nilai.

system = (
    "Extract status. If the text states no status, use OTHER and explain.\n\n"
    "Input: Meeting moved to Friday.\n"
    'Output: {"status": "OTHER", "status_detail": "no status stated"}\n\n'
    "Input: Release approved by the board.\n"
    'Output: {"status": "GO", "status_detail": "approved"}'
)

Enum dengan Jalan Keluar 'Lain-lain'

Kes pinggir memecahkan enum yang tegar. Input yang tidak sesuai dengan mana-mana kategori memaksa model sama ada mereka-reka kategori yang sesuai atau menyebabkan skema gagal.

Pola yang boleh dikembangkan ialah enum ditambah nilai "lain-lain" dan medan butiran teks bebas. Dengan ini, model dapat mengelaskan dengan kemas apabila mampu, dan mengendalikan limpahan dengan baik apabila input tidak dijangka — tanpa Anda menggunakan semula skema.

"properties": {
    "category": {
        "type": "string",
        "enum": ["GO", "PENDING", "BLOCKED", "OTHER"]
    },
    "category_detail": {
        "type": "string",
        "description": "Required when category is OTHER; free text"
    }
}

Contoh Membuat Generalisasi — Jangan Senaraikan Terlalu Banyak

Kesilapan biasa ialah menganggap arahan berbilang contoh seperti jadual carian — memasukkan 30 contoh dengan harapan dapat merangkumi setiap input. Model membuat generalisasi daripada beberapa pasangan yang dipilih dengan baik; model tidak memerlukan senarai yang menyeluruh.

Lebih banyak contoh juga menggunakan konteks, dan arahan yang panjang mengalami kesan hilang di tengah: model memberikan perhatian paling banyak kepada permulaan dan penghujung, serta paling sedikit kepada bahagian tengah. Blok contoh yang terlalu besar menenggelamkan pola yang sebenarnya penting bagi Anda.

Hadkan kepada 2–4 contoh yang tajam dan menyasarkan sempadan.

Apabila Output Masih Salah

Walaupun contoh Anda baik, hasil yang cacat masih mungkin diperoleh. Cuba semula dengan maklum balas membaiki ralat format, struktur dan aritmetik: hantar semula input asal, output yang salah dan ralat pengesahan yang tepat.

Namun, ketahui hadnya: cubaan semula tidak membantu apabila maklumat itu sememangnya tiada dalam sumber. Sebanyak mana pun arahan semula tidak dapat mereka-reka data yang tiada — ini ialah kes pinggir yang patut dikendalikan lebih awal oleh contoh dan skema Anda melalui laluan "OTHER"/kosong.

try:
    event = validate(tool_input)  # Pydantic-style schema check
except ValidationError as err:
    retry = client.messages.create(
        model="claude-sonnet-4-5",
        max_tokens=256,
        tools=tools,
        tool_choice={"type": "any"},
        messages=msgs + [
            {"role": "assistant", "content": [tool_use_block]},
            {"role": "user", "content": f"Validation failed: {err}. Fix and resubmit."},
        ],
    )

Semakan Pantas: Medan Pilihan

Anda mengekstrak invois ke dalam JSON. Kebanyakan invois mempunyai nombor purchase_order, tetapi kira-kira 30% tidak menyertakannya. Anda menambah dua contoh berbilang contoh untuk menetapkan bentuk output.

Bagaimanakah Anda patut mengendalikan medan purchase_order dalam Skema JSON Anda?

Imbas Kembali: Tetapkan Bentuk, Jinakkan Kes Pinggir

Perkara utama:

  • Tunjukkan, jangan huraikan: 2–4 pasangan input/output menetapkan format jauh lebih baik daripada kata sifat seperti "kemas" atau "konsisten".
  • Contoh + skema: arahan berbilang contoh menjadikan bentuk itu berkemungkinan; Skema JSON melalui tool_use (dengan tool_choice: "any") menjadikannya terjamin.
  • Wajib hanya jika sentiasa tersedia: mewajibkan medan yang mungkin tiada akan memaksa rekaan.
  • Gunakan enum + "lain-lain" + butiran untuk kebolehluasan, dan tunjukkan contoh tiada/kosong supaya model tidak pernah mereka-reka data.
  • Model membuat generalisasi: beberapa contoh yang tajam dan menyasarkan sempadan lebih baik daripada senarai besar yang menenggelamkan pola di bahagian tengah.
  • Cuba semula dengan maklum balas membaiki output yang cacat, tetapi bukan maklumat yang sememangnya tiada dalam sumber.
Percuma untuk bermula

Pelajari Python 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
26
Pelajaran
104

Soalan Lazim

Adakah pelajaran “Contoh untuk Format dan Kes Pinggir” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Claude Architect, termasuk “Contoh untuk Format dan Kes Pinggir”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Claude Architect merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Contoh untuk Format dan Kes Pinggir”?

Tetapkan bentuk output dan jelaskan sempadan yang rumit Anda berlatih Claude Architect 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 Claude Architect?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Claude Architect 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 “Contoh untuk Format dan Kes Pinggir” 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 Claude Architect ini?

Ya. Setiap pelajaran Claude Architect 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. Mengapa 2-4 Contoh Berkesan
  2. Contoh untuk Format dan Kes Pinggir
  3. Pengitlakan berbanding Pengulangan
  4. Few-Shot untuk Mengurangkan Halusinasi
← Kembali ke Claude Architect