Selamat datang di antarmuka obrolan Reddit Post Sumarizer. Aplikasi berbasis streamlit ini memungkinkan pengguna untuk mengekstrak dan merangkum konten dari URL Reddit dengan mulus dan mengadakan sesi QA. Ini adalah upaya pertama saya untuk menggunakan LLMS dengan DBS vektor untuk QA, peringkasan, tujuan penyempurnaan.

Aplikasi dimulai dengan antarmuka obrolan yang ramah pengguna. Pengguna dapat memasukkan URL Reddit ke dalam kotak pencarian, dan sistem melakukan langkah -langkah berikut:
Validasi URL : Aplikasi memverifikasi apakah URL yang dimasukkan milik Reddit.
Integrasi PRAW : Setelah validasi URL yang berhasil, Python Reddit API Wrapper (Praw) digunakan untuk mengekstrak isi pos Reddit. Ini termasuk teks diri dan komentar yang terkait dengan posting.
Data chunking dan embedding : Teks diri yang diambil dan komentar dipecah menjadi segmen yang lebih kecil dan dapat dicerna (potongan). Setiap potongan kemudian tertanam, dan embeddings disimpan dalam database vektor, pinus. Langkah ini sangat penting untuk pengambilan data yang efisien dan cepat.
Setelah proses ekstraksi dan penyematan, aplikasi menghasilkan ringkasan pos Reddit menggunakan model bahasa (LLM) seperti OpenAI GPT-3.5. Proses peringkasan dapat dipecah menjadi langkah -langkah berikut:
Generasi Chunk : Sepotong teks dengan ukuran yang sesuai dihasilkan oleh ringkasan rekursif sampai sesuai dengan batas token LLM.
Interaksi Model LLM : Prompt yang diringkas dikirim ke model LLM, yang kemudian mengembalikan ringkasan ringkas dari posting. Ringkasan ini menangkap esensi konten Reddit.
Aplikasi ini menyediakan antarmuka obrolan di mana pengguna dapat berinteraksi dengan sistem dan mengajukan pertanyaan tentang posting Reddit. Antarmuka obrolan memiliki beberapa fitur yang berbeda:
Pemrosesan Pertanyaan Kontekstual : Ketika seorang pengguna mengajukan pertanyaan, sistem menanamkan pertanyaan dan mencari database vektor untuk kesamaan konteks. Ini mengambil konteks yang relevan dan menambahkannya ke pertanyaan pengguna sebagai bagian dari prompt.
Generasi Jawaban : Prompt yang diperluas ini kemudian dikirim ke model LLM, yang menghasilkan jawaban yang terperinci dan sadar konteks.
Model fine-tuning : Untuk memastikan bahwa jawabannya bergaya Reddit, model LLM dapat disesuaikan dengan pasangan tanya jawab Reddit, memberikan tanggapan yang selaras dengan bahasa komunitas Reddit.
Salah satu fitur unik dari aplikasi ini adalah kemampuan bagi pengguna untuk memilih model bahasa yang ingin mereka gunakan. Fleksibilitas ini difasilitasi oleh Langchain, alat yang memungkinkan aplikasi untuk beralih dengan mulus antara model LLM yang berbeda sesuai dengan preferensi pengguna.
cp .env.example .env
docker build -t reddit-gpt .
docker run -d --env-file .env -p 8501:8501 reddit-gpt