Rumah > Peranti teknologi > AI > Membina alat tersuai untuk ejen AI menggunakan smolagents

Membina alat tersuai untuk ejen AI menggunakan smolagents

Lisa Kudrow
Lepaskan: 2025-03-21 11:17:10
asal
199 orang telah melayarinya

LLM merevolusi pelbagai bidang, bergerak melampaui chatbots berasaskan web untuk mengintegrasikan ke dalam perusahaan dan kerajaan. Kemajuan yang ketara ialah penciptaan alat tersuai untuk ejen AI menggunakan smolagents , mengembangkan keupayaan mereka. smolagents memberi kuasa kepada ejen AI untuk menggunakan alat, melakukan tindakan dalam persekitaran yang ditetapkan, dan juga berinteraksi dengan ejen lain.

Pendekatan ini meningkatkan autonomi AI Systems berkuasa LLM, meningkatkan kebolehpercayaan mereka untuk pelaksanaan tugas akhir-ke-akhir yang lengkap.

Objektif pembelajaran

  • Memahami ejen AI, perbezaan mereka dari LLM tradisional, dan peranan mereka dalam aplikasi AI moden dengan alat tersuai.
  • Terokai mengapa ejen AI memerlukan alat tersuai untuk akses data masa nyata, pelaksanaan tindakan, dan pengambilan keputusan yang lebih baik.
  • Dapatkan pengalaman praktikal dalam mengintegrasikan dan menggunakan ejen AI menggunakan smolagents untuk senario dunia nyata.
  • Belajar untuk membuat dan mengintegrasikan alat tersuai untuk fungsi ejen AI yang dipertingkatkan menggunakan smolagents .
  • Master Hosting dan Berinteraksi dengan Ejen AI menggunakan alat tersuai anda, mewujudkan pengalaman chatbot yang lebih interaktif dan pintar.

*Artikel ini adalah sebahagian daripada *** Data Science Blogathon.

Jadual Kandungan

  • Prasyarat
  • Memahami ejen dalam generatif AI
  • Aliran kerja ejen
  • Komponen ejen AI
  • Keperluan alat
  • Perpustakaan smolagents
  • Asas kami
  • Membina alat pertama kami
  • Langkah Akhir: Penempatan
  • Ringkasan
  • Soalan yang sering ditanya

Prasyarat

Tutorial ini mensasarkan pemaju pertengahan dan profesional data yang biasa dengan LLM asas. Berikut ini diandaikan:

  • Kemahiran pengaturcaraan python pertengahan.
  • Penggunaan LLM asas dalam kod.
  • Kebiasaan dengan ekosistem genai.
  • Pemahaman asas mengenai platform muka yang memeluk dan Perpustakaan transformers di Python.

Latar belakang yang disyorkan lebih lanjut untuk pembelajaran optimum:

  • Pengalaman dengan perpustakaan LLM seperti Langchain atau Ollama.
  • Pengetahuan teori pembelajaran mesin asas.
  • Penggunaan API dan penyelesaian masalah dengan respons API.

Memahami ejen dalam generatif AI

Pertimbangkan chatgpt: Ia menjawab soalan, menulis kod, dan banyak lagi. Keupayaan ini meliputi penyelesaian tugas -anda memberikan permintaan, dan ia melaksanakan keseluruhan tugas.

Sebagai contoh, LLM boleh mencari web dan alasan; Menggabungkan ini, ia boleh membuat jadual perjalanan. Anda mungkin bertanya: "Rancang percutian Himachal Pradesh dari 1 hingga 7 April, memberi tumpuan kepada salji, ski, ropeways, dan landskap hijau. Cari penerbangan paling murah dari Kolkata."

AI kemudiannya akan membandingkan kos penerbangan, mencadangkan lokasi, dan mencari hotel, menunjukkan pendekatan yang agensi di AI.

Aliran kerja ejen

Ejen menggunakan LLM yang berinteraksi dengan dunia luaran semata -mata melalui teks.

Membina alat tersuai untuk ejen AI menggunakan smolagents

Ejen menerima input sebagai teks, sebab menggunakan bahasa, dan teks output. Alat adalah penting di sini, memberikan nilai yang digunakan oleh ejen untuk menghasilkan respons teksnya. Tindakan boleh terdiri daripada urus niaga pasaran kepada penjanaan imej.

Membina alat tersuai untuk ejen AI menggunakan smolagents

Aliran kerja adalah: memahami -> sebab -> berinteraksi, atau lebih luas: pemikiran -> tindakan -> pemerhatian.

Komponen ejen AI

Ejen AI terdiri daripada:

  • "Otak" ejen (LLM seperti llama3, phi4, atau gpt4).
  • Alat luaran Ejen boleh memohon (API, ejen lain, kalkulator, dll.).

smolagents membolehkan anda membuat sebarang fungsi python dengan LLM ditala untuk panggilan fungsi. Contoh kami termasuk alat untuk fakta anjing, pengambilan zon waktu, dan penjanaan imej, menggunakan Qwen LLM.

Keperluan alat

LLMs tidak lagi hanya alat penyempurnaan teks. Mereka adalah komponen dalam sistem yang lebih besar, sering memerlukan input dari bahagian AI bukan generatif.

Membina alat tersuai untuk ejen AI menggunakan smolagents

Alat menjembatani jurang antara genai dan komponen sistem lain. LLM mempunyai batasan:

  • Tarikh pemotongan pengetahuan.
  • Halusinasi.
  • Keengganan yang tidak dapat diramalkan untuk dijawab.
  • Pilihan carian web suboptimal.

Alat deterministik menangani isu -isu ini.

Perpustakaan smolagents

smolagents (memeluk muka) adalah rangka kerja untuk ejen bangunan. Tidak seperti beberapa perpustakaan yang mengeluarkan JSON, smolagents secara langsung mengeluarkan kod python, meningkatkan kecekapan.

Asas kami

Repositori GitHub mengandungi:

  • Gradio_UI.py : Kod UI Vadio untuk interaksi pengguna.
  • agent.json : Konfigurasi ejen.
  • requirements.txt : kebergantungan projek.
  • prompts.yaml : Contoh arahan dan respons (menggunakan templating jinja).
  • app.py : Logik aplikasi teras.

Membina alat pertama kami

Kami akan menggunakan API Fakta Anjing ( https://www.php.cn/link/0Feaf58e2a12936c84c2510541b6e75a ). Untuk membuat fungsi python boleh digunakan oleh ejen AI:

  • Gunakan penghias @tool .
  • Tulis docstring yang jelas.
  • Tambah anotasi jenis.
  • Pastikan nilai pulangan yang jelas.
  • Sertakan komen yang mencukupi.
 @tool
def get_amazing_dog_fact ()-> str:
    "" "Mengambil fakta anjing rawak dari API awam." ""
    # ... (panggilan API dan pengendalian ralat) ...
Salin selepas log masuk

Alat zon waktu:

 @tool
def get_current_time_in_timezone (zon waktu: str) -> str:
    "" "Mendapat masa semasa dalam zon waktu yang ditentukan." ""
    # ... (pengendalian zon zon) ...
Salin selepas log masuk

Alat penjanaan imej juga boleh diintegrasikan:

 image_generation_tool = load_tool ("ejen-course/text-to-image", trust_remote_code = true)
Salin selepas log masuk

Model QWEN2.5-CODER-32B-Instruct digunakan (memerlukan aplikasi untuk akses):

 model = hfapimodel (
    max_tokens = 2096,
    suhu = 0.5,
    model_id = 'qwen/qwen2.5-coder-32b-instruct',
    # ...
)
Salin selepas log masuk

Prompt dimuatkan dari prompts.yaml . Ejen dibuat:

 agen = codeagent (
    model = model,
    alat = [get_amazing_dog_fact, get_current_time_in_timezone, image_generation_tool],
    # ...
)
Salin selepas log masuk

Argumen tools menyenaraikan fungsi yang tersedia.

Langkah Akhir: Penempatan

Ejen itu boleh digunakan untuk memeluk ruang muka.

Ringkasan

Ejen AI meningkatkan keupayaan LLM melalui integrasi alat, meningkatkan autonomi dan membolehkan penyelesaian tugas yang kompleks. smolagents memudahkan penciptaan ejen, dan alat tersuai memanjangkan fungsi melebihi LLM standard. Penyebaran pada platform seperti memeluk ruang muka memudahkan perkongsian dan interaksi mudah.

Soalan yang sering ditanya

Q1. Apakah ejen AI? Ejen AI adalah sistem berkuasa LLM yang berinteraksi dengan alat untuk melaksanakan tugas.

S2. Mengapa alat tersuai diperlukan? Mereka membolehkan akses data masa nyata, pelaksanaan arahan, dan tindakan melebihi keupayaan LLM.

Q3. Apa itu smolagents ? Rangka kerja muka yang memeluk untuk membuat ejen AI menggunakan alat tersuai.

Q4. Bagaimana untuk membuat alat tersuai? Tentukan fungsi, menghiasi dengan @tool , dan mengintegrasikan ke dalam ejen.

S5. Di mana hendak digunakan? Platform seperti memeluk ruang muka.

(Nota: Imej diandaikan disertakan seperti dalam input asal.)

Atas ialah kandungan terperinci Membina alat tersuai untuk ejen AI menggunakan smolagents. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan