Mengintegrasikan AI ke dalam Laravel

Kebanyakan tutorial AI mengandaikan anda menggunakan Python. Ini menyebabkan pembangun PHP ketinggalan.

Baru-baru ini, saya telah menambah ciri AI ke dalam papan pemuka (dashboard) Laravel pengeluaran. Saya menggunakan API Claude dan OpenAI untuk menjana ringkasan laporan daripada data mentah. Ia tidak sukar. Cabarannya adalah mencari dokumentasi PHP yang baik.

Berikut adalah cara anda membina integrasi AI yang bersih dan sedia untuk pengeluaran dalam Laravel.

  1. Sediakan kredensial anda

Tambahkan kunci anda ke dalam fail .env. Jangan sesekali melakukan hardcode pada nilai ini.

AI_PROVIDER=claude ANTHROPIC_API_KEY=your_key OPENAI_API_KEY=your_key

Daftarkan ini dalam config/services.php. Ini membolehkan anda menggunakan fungsi config caching Laravel.

  1. Gunakan Corak Pemandu (Driver Pattern)

Jangan taburkan panggilan API di dalam pengawal (controller) anda. Cipta satu antara muka (interface) terlebih dahulu.

Takrifkan AiClientInterface dengan kaedah yang lengkap. Kemudian, cipta dua kelas: ClaudeClient dan OpenAiClient. Kedua-duanya melaksanakan antara muka yang sama.

Ini membolehkan anda menukar penyedia dengan hanya mengubah satu baris dalam fail .env anda. Jika satu perkhidmatan tergendala, aplikasi anda tetap berfungsi.

  1. Gunakan HTTP Client Laravel

Laravel memudahkan panggilan API. Anda tidak memerlukan kod cURL yang kompleks.

• Gunakan withToken() untuk OpenAI. • Gunakan withHeaders() untuk Claude. • Gunakan timeout() untuk mengelakkan permintaan yang tergantung (hanging requests). • Gunakan retry() untuk mengendalikan had kadar (rate limits) secara automatik.

  1. Amalan Terbaik Pengeluaran

Panggilan AI adalah perlahan dan mahal. Ikuti peraturan ini untuk menjimatkan kos dan meningkatkan kelajuan:

• Simpan cache keputusan: Jika data input adalah sama, kembalikan ringkasan yang telah disimpan dalam cache. Ini mengurangkan kos saya sebanyak 70%. • Gunakan Queue: Jangan biarkan pengguna menunggu selama 10 saat untuk respons. Gunakan tugasan bergiliran (queued job) untuk memproses tugasan AI di latar belakang. • Kendalikan kegagalan: Bungkus panggilan AI anda dalam blok try-catch. Jika AI gagal, paparkan data mentah dan bukannya halaman ralat. • Tetapkan had: Sentiasa tetapkan nilai max_tokens untuk mengawal perbelanjaan anda.

Anda tidak perlu mempelajari Python untuk membina ciri AI. Kemahiran PHP anda berfungsi dengan sempurna di sini.

Adakah anda telah menambah AI ke dalam aplikasi PHP anda? Adakah anda menggunakan SDK atau HTTP mentah?

Sumber: https://dev.to/sunakshi_thakur_84a5f59fd/integrating-claudeopenai-api-into-a-laravel-app-a-practical-guide-1hig

Komuniti pembelajaran pilihan: https://t.me/GyaanSetuAi