Rumah >pembangunan bahagian belakang >Tutorial Python >OpenRAG: Aplikasi GenAI Sumber Terbuka untuk Melebihkan Pertanyaan Data dengan Model Bahasa Besar

OpenRAG: Aplikasi GenAI Sumber Terbuka untuk Melebihkan Pertanyaan Data dengan Model Bahasa Besar

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-22 14:17:02971semak imbas

OpenRAG: An Open-Source GenAI Application to Supercharge Data Queries with Large Language Models

Dalam era kecerdasan buatan, perniagaan dan pembangun semakin memanfaatkan Model Bahasa Besar (LLM) untuk memperkemas analisis data dan interaksi pelanggan. OpenRAG, aplikasi Generative AI (GenAI) sumber terbuka, memperkasakan pengguna dengan menggabungkan fleksibiliti LLM dengan keupayaan pertanyaan data yang cekap merentas pelbagai pangkalan data vektor. Sama ada anda bekerja dengan PDF, menanyakan set data yang besar atau mencari cerapan daripada data yang disimpan, OpenRAG menjadikannya lancar untuk berinteraksi dengan data anda menggunakan pertanyaan bahasa semula jadi.

Ciri-ciri Utama OpenRAG

  1. Sokongan untuk Semua Model LLM Sumber Terbuka OpenRAG direka bentuk untuk disepadukan dengan pelbagai LLM sumber terbuka, memberikan pengguna kebebasan untuk memilih model yang paling sesuai dengan kes penggunaan unik mereka. Kebolehlanjutan platform membolehkan pengembangan pada masa hadapan, memastikan pengguna dapat memanfaatkan kemajuan terkini dalam bidang AI tanpa sebarang sekatan.

  2. Pangkalan Data Vektor Sumber Terbuka Berbilang Penyepaduan OpenRAG diprakonfigurasikan untuk menyokong pangkalan data vektor sumber terbuka yang popular seperti Chroma, FAISS dan Qdrant. Pangkalan data ini memudahkan carian dan perolehan vektor berprestasi tinggi, memastikan pengguna mendapat hasil yang tepat apabila menanyakan data mereka.

  3. Muat Naik PDF dan Pertanyaan Data Satu ciri menonjol OpenRAG ialah keupayaan untuk memuat naik fail PDF dan menukarnya menjadi koleksi data berstruktur. Ini menjadikan aplikasi ini sangat berguna untuk profesional yang berurusan dengan jumlah besar maklumat berasaskan PDF. Setelah PDF dimuat naik, pengguna boleh menanyakan kandungan menggunakan LLM pilihan mereka, mengekstrak cerapan dengan cepat dan cekap.

  4. Nama Koleksi Berterusan untuk Kebolehgunaan Semula OpenRAG memperuntukkan nama koleksi unik kepada PDF yang dimuat naik, membolehkan pengguna memulangkan dan menanyakan data tanpa perlu memuat naik semula fail yang sama. Ciri ini menjimatkan masa dan menjadikan pengurusan data lebih lancar.

  5. Ketekalan dalam Pangkalan Data Vektor Penggunaan OpenRAG mengekalkan ketekalan dengan mengikat pengumpulan data ke pangkalan data vektor tertentu. Pengguna tidak boleh menukar pangkalan data sebaik sahaja ia dipilih untuk koleksi, memastikan pengambilan data yang stabil dan tepat setiap kali.

Bermula dengan OpenRAG

Sebelum terjun ke dunia pertanyaan data dipacu AI, pastikan anda memenuhi prasyarat berikut untuk pemasangan yang lancar:

Prasyarat

Versi Python: Pastikan anda memasang Python 3.9 atau lebih tinggi.
Imej Docker Qdrant: OpenRAG disepadukan dengan Qdrant, dan imej harus dijalankan. Pastikan port 6333 pada localhost boleh diakses.

Pemasangan

  1. Klon Repo:

klon git https://github.com/yourrepo/openrag.git

  1. Buat Persekitaran Maya:
python3 -m venv openrag-env
source openrag-env/bin/activate
  1. Pasang Ketergantungan:

pip install -r requirements.txt

  1. Muat turun Model Bahasa Spacy:

python3 -m spacy muat turun en_core_web_sm

  1. Jalankan Aplikasi:

apl utama uvicorn --muat semula

Dockerization untuk Penggunaan Mudah

Untuk pembangun yang lebih suka menggunakan Docker untuk penggunaan, OpenRAG boleh disimpan dalam bekas:

  1. Bina Imej Docker:

docker build -t openrag-app .

  1. Jalankan Bekas:

larian docker -d -p 8000:8000 openrag-app

Setelah apl berjalan, aksesnya melalui http://localhost:8000 dalam penyemak imbas anda.

Penggunaan: Berinteraksi dengan OpenRAG melalui API

Senibina yang mengutamakan API OpenRAG membolehkannya disepadukan ke dalam pelbagai aplikasi bahagian hadapan. Berikut ialah contoh cara memuat naik PDF dan menanyakan kandungannya melalui API:

Muat naik PDF

curl -X POST "http://localhost:8000/upload" \
-H "accept: application/json" \
-H "Content-Type: multipart/form-data" \
-F "file=@yourfile.pdf" \
-F "model_name=GPT-3.5" \
-F "vector_db_name=qdrant"

Mulakan Sesi Sembang
Selepas memuat naik PDF, anda boleh memulakan pertanyaan berasaskan sembang:

curl -X POST "http://localhost:8000/chat" \
-H "Content-Type: application/json" \
-d '{
  "collection_name": "your_collection_name",
  "query": "your_query",
  "model_name": "GPT-3.5",
  "vector_db_name": "qdrant",
  "device": "cpu"
}'

Skalabiliti dengan OpenRAG
Salah satu kekuatan terbesar OpenRAG ialah kebolehskalaannya. Walaupun ia boleh dijalankan pada mesin tempatan menggunakan alatan seperti uvicorn, ia sedia pengeluaran dan boleh digunakan menggunakan penyedia awan, Docker atau Kubernetes. Dalam persekitaran pengeluaran, OpenRAG menyokong penskalaan melalui alatan seperti Gunicorn, memberikan prestasi yang mantap untuk kes penggunaan trafik tinggi.

Ralat dan Penyelesaian Biasa
Semasa pembangunan, pengguna mungkin menghadapi ralat biasa berikut:

TypeError: Deskriptor tidak boleh dibuat secara langsung.

Untuk menyelesaikan masalah ini, pertimbangkan untuk menurunkan taraf pakej protobuf kepada versi 3.20.x atau lebih rendah, atau tetapkan pembolehubah persekitaran

PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python

Kesimpulan
OpenRAG menonjol sebagai penyelesaian sumber terbuka yang fleksibel untuk pengguna yang ingin memanfaatkan kuasa LLM dan pangkalan data vektor untuk pertanyaan dan cerapan data. Sama ada anda seorang pembangun, penyelidik atau pengguna perusahaan, OpenRAG menyediakan alatan untuk bekerja dengan data anda dengan cara yang sangat cekap dan intuitif.

Untuk dokumentasi API terperinci dan lebih banyak contoh, lawati Dokumentasi API OpenRAG.

Menyumbang kepada OpenRAG
Kami mengalu-alukan sumbangan daripada komuniti! Untuk butiran tentang cara menyumbang, menyerahkan isu atau meminta ciri, lihat CONTRIBUTING.md.

Pautan Repo Github
Buka Repo Rag

Atas ialah kandungan terperinci OpenRAG: Aplikasi GenAI Sumber Terbuka untuk Melebihkan Pertanyaan Data dengan Model Bahasa Besar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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