Ejen AI · Pelajaran

Mentakrifkan Skema Alat (JSON Schema)

Tulis takrif JSON Schema untuk parameter alat dengan jenis, huraian, enum dan medan yang diperlukan.

Pelajaran 2 daripada 413 langkah

Mentakrifkan Skema Alat (JSON Schema) ialah pelajaran Ejen AI 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 Ejen AI, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Ejen AI merangkumi sejumlah 4 pelajaran.

Skema Alat ialah JSON Schema

OpenAI, Anthropic dan kebanyakan penyedia lain menggunakan JSON Schema untuk parameter alat.

Jika anda pernah menggunakan OpenAPI / Swagger, anda sudah mengetahui 90% daripadanya.

Tiga Medan yang Diperlukan

Setiap takrifan alat mempunyai:

  1. name — pengecam unik (snake_case)
  2. description — perkara yang dilakukan oleh alat dan masa untuk menggunakannya
  3. parameters — JSON Schema bagi input

Skema Minimum

Sebuah objek dengan satu medan rentetan yang diperlukan:

schema = {
    'name': 'search_orders',
    'description': 'Find orders by customer email',
    'parameters': {
        'type': 'object',
        'properties': {
            'email': {
                'type': 'string',
                'description': 'Customer email address'
            }
        },
        'required': ['email']
    }
}
import json
print(json.dumps(schema, indent=2))

Jenis JSON Schema

  • string — teks
  • integer, number — nombor
  • boolean — benar/palsu
  • array — senarai (juga memerlukan items)
  • object — kamus (juga memerlukan properties)

Enum untuk Set Tertutup

Gunakan enum apabila terdapat tepat N nilai yang dibenarkan:

unit_param = {
    'unit': {
        'type': 'string',
        'enum': ['C', 'F'],
        'description': 'Temperature unit'
    }
}
# The model will only ever output C or F
print(unit_param)
print("Allowed values:", unit_param['unit']['enum'])

Parameter Tatasusunan

Untuk input senarai, tetapkan items:

tags_param = {
    'tags': {
        'type': 'array',
        'items': {'type': 'string'},
        'description': 'List of tags to filter by'
    }
}
print(tags_param)

Objek Bersarang

Anda boleh menyusun objek secara bersarang — tetapi pastikan skema ringkas (maksimum 2-3 tahap) untuk kebolehpercayaan model:

filter_param = {
    'filter': {
        'type': 'object',
        'properties': {
            'min_price': {'type': 'number'},
            'in_stock': {'type': 'boolean'}
        }
    }
}
print(filter_param)

Medan Huraian Sangat Penting

Model memilih alat dan mengisi argumen berdasarkan description. Anggap huraian sebagai dokumentasi API:

# Bad
bad = {'description': 'gets data'}

# Good
good = {'description': 'Fetch the most recent 50 orders for the given customer email. Returns order_id, status, total. Use this when the user asks about their order history or order status.'}
print("Bad description:", bad['description'])
print("Good description:", good['description'])

Tatasusunan required

Tandakan medan yang diperlukan secara eksplisit. Model akan sentiasa mengisi medan ini; medan pilihan hanya diisi apabila berkaitan:

tool_params = {
    'parameters': {
        'properties': {
            'city': {'type': 'string'},
            'unit': {'type': 'string', 'enum': ['C', 'F']}
        },
        'required': ['city']
    }
}
print(tool_params)
print("Required fields:", tool_params['parameters']['required'])

Pydantic -> JSON Schema

Anda boleh menjana skema daripada model Pydantic secara automatik:

from pydantic import BaseModel, Field

class SearchArgs(BaseModel):
    email: str = Field(description='Customer email')
    limit: int = Field(50, description='Max orders to return')

schema = SearchArgs.model_json_schema()

Mod Ketat (Output Berstruktur OpenAI)

Menambahkan strict: true dan additionalProperties: false menjamin keluaran model sepadan dengan skema secara tepat:

tools = [{
    'type': 'function',
    'function': {
        'name': 'get_weather',
        'strict': True,
        'parameters': {
            'type': 'object',
            'properties': {'city': {'type': 'string'}},
            'required': ['city'],
            'additionalProperties': False
        }
    }
}]
import json
print(json.dumps(tools, indent=2))

Kepentingan Huraian

Mengapakah description alat begitu penting?

Imbas Kembali

Skema memandu model. Huraian yang baik, enum untuk set tertutup, tatasusunan required dan mod ketat ialah pengungkit kebolehpercayaan anda.

Percuma untuk bermula

Pelajari Ejen AI 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
60
Pelajaran
239

Soalan Lazim

Adakah pelajaran “Mentakrifkan Skema Alat (JSON Schema)” percuma?

Ya — teks penuh “Mentakrifkan Skema Alat (JSON Schema)” 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 Ejen AI, tingkat taraf kepada CoddyKit PRO. Kursus Ejen AI merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Mentakrifkan Skema Alat (JSON Schema)”?

Tulis takrif JSON Schema untuk parameter alat dengan jenis, huraian, enum dan medan yang diperlukan. Anda berlatih Ejen AI 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 Ejen AI?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Ejen AI 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 “Mentakrifkan Skema Alat (JSON Schema)” 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 Ejen AI ini?

Ya. Setiap pelajaran Ejen AI 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. Cara Panggilan Fungsi Berfungsi
  2. Mentakrifkan Skema Alat (JSON Schema)
  3. Memilih Alat semasa Masa Jalan
  4. Memulangkan Hasil kepada Model
← Kembali ke Ejen AI