surabayacoder/laravel-sage
Composer 安装命令:
composer require surabayacoder/laravel-sage
包简介
A Laravel package for Retrieval-Augmented Generation (RAG) with Google Gemini.
README 文档
README
Laravel Sage adalah package all-in-one untuk mengintegrasikan kemampuan Retrieval-Augmented Generation (RAG) ke dalam aplikasi Laravel Anda. Tanyakan pertanyaan dalam bahasa natural pada dokumen Anda sendiri (PDF dan Markdown) menggunakan kekuatan Google Gemini.
Fitur Utama
- RAG Siap Pakai: Implementasikan fungsionalitas "tanya dokumen Anda" dalam hitungan menit.
- Multi-Driver Vector Store: Pilih sistem penyimpanan yang sesuai untuk kebutuhan Anda:
file: Sederhana, berbasis file JSON, cocok untuk demo dan prototipe.pgvector: Kuat dan efisien, menggunakan ekstensi vector di PostgreSQL untuk produksi.mysql: Pilihan untuk environment MySQL (lebih lambat, tidak disarankan untuk data besar).
- Berbagai Sumber Data: Lakukan ingest (indeks) dari berbagai sumber file (PDF dan Markdown)
Instalasi
Anda bisa menginstal package ini melalui Composer.
composer require surabayacoder/laravel-sage
Selanjutnya, pastikan Anda sudah mengatur API Key Gemini dan RAG Vector Driver (pgvector, mysql, atau file) di file .env
Anda:
GEMINI_API_KEY="AIzaSy...kunci_api_anda" RAG_VECTOR_DRIVER=mysql
Periksa Ekstensi jika menggunakan pgvector sebagai Driver Anda
Jika Anda menggunakan pgvector, pastikan ekstensi vector sudah diaktifkan di database Anda. Jika belum aktif, hubungkan ke database Anda sebagai superuser dan jalankan:
CREATE EXTENSION vector;
Konfigurasi
1. Publikasikan File Konfigurasi
Jalankan perintah vendor:publish untuk menyalin file konfigurasi utama
ke direktori config aplikasi Anda.
php artisan vendor:publish --provider="Surabayacoder\Sage\SageServiceProvider" --tag="sage-config"
Ini akan membuat file config/sage.php di mana Anda bisa mengatur model Gemini, driver vector store, dan path sumber dokumen.
4. Publikasikan Migrasi
Jalankan vendor:publish untuk menyalin file migrasi yang sesuai dengan driver Anda.
php artisan vendor:publish --provider="Surabayacoder\Sage\SageServiceProvider" --tag="sage-migrations"
Setelah itu, jalankan migrasi seperti biasa:
php artisan migrate
Penggunaan
1. Ingest (Indexing) Dokumen
Sebelum bisa bertanya, Anda harus memproses dokumen sumber Anda. Tempatkan semua file Anda (misal: .pdf, .md) di dalam direktori storage/app/rag_sources. Kemudian, jalankan perintah ingest.
php artisan sage:ingest
2. Bertanya pada AI
Gunakan Facade Sage di mana saja dalam aplikasi Anda untuk mulai
bertanya.
use Surabayacoder\Sage\Facades\Sage; // Di dalam Controller atau Route Route::get('/ask', function () { $question = "Bagaimana kebijakan cuti tahunan?"; $result = Sage::ask($question); // $result adalah sebuah array yang berisi 'answer' dan 'sources' // dd($result); return view('hasil', ['result' => $result]); });
3. Multi-turn Chat (Chat History)
Untuk membuat percakapan berkelanjutan (AI mengingat konteks pertanyaan sebelumnya), tambahkan session_id sebagai argumen kedua pada method ask.
// User bertanya $response1 = Sage::ask("Siapa penemu lampu?", "session-user-1"); // AI: Thomas Alva Edison... // User bertanya lagi (Referensial) $response2 = Sage::ask("Kapan dia lahir?", "session-user-1"); // AI: Thomas Alva Edison lahir pada tahun 1847...
Pastikan Anda telah menjalankan migrasi sage_chat_histories untuk menggunakan fitur ini.
Method ask() akan mengembalikan sebuah array:
answer: Jawaban yang dihasilkan oleh AI.sources: Daftar sumber dokumen yang digunakan untuk menghasilkan jawaban tersebut.
Lisensi
Package ini berlisensi MIT. Silakan lihat File Lisensi untuk informasi lebih lanjut.
surabayacoder/laravel-sage 适用场景与选型建议
surabayacoder/laravel-sage 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 4 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 09 月 08 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 surabayacoder/laravel-sage 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 surabayacoder/laravel-sage 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 4
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 31
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-09-08