CoolFace
Apppublic

Bejoman/LLM_Evaluation_Demo

sourceHugging Faceupdated 7mo agoView on Hugging Face
0likes
App README

๐Ÿค– RAG Chatbot + LLM-as-a-Judge Evaluation

Streamlit chatbot demo yang menggunakan Vertex AI RAG Engine untuk menjawab pertanyaan, kemudian secara otomatis mengevaluasi respons menggunakan LLM-as-a-Judge.

๐Ÿ“ Struktur File

โ”œโ”€โ”€ Dockerfile          # Container config untuk HF Spaces
โ”œโ”€โ”€ README.md           # File ini (metadata HF Spaces)
โ”œโ”€โ”€ requirements.txt    # Python dependencies
โ”œโ”€โ”€ start.sh            # Startup script (reconstruct credentials)
โ”œโ”€โ”€ chatbot_demo.py     # Streamlit UI
โ”œโ”€โ”€ llm_engine.py       # Vertex AI RAG + Judge engine
โ”œโ”€โ”€ rate_limiter.py     # Pembatasan chat per hari (IP-based)
โ””โ”€โ”€ .gitignore          # Exclude credential files

๐Ÿ›ก๏ธ Keamanan

  • โ€”Semua kredensial dibaca dari HF Secrets (environment variables)
  • โ€”service-account.json di-reconstruct di runtime ke /tmp/ (tidak persisted)
  • โ€”.gitignore mencegah file sensitif ter-commit

๐Ÿšฆ Rate Limiting

  • โ€”Setiap pengguna dibatasi maksimal 15 chat per hari
  • โ€”Pembatasan berdasarkan IP address (diambil dari header X-Forwarded-For)
  • โ€”Counter disimpan di /tmp/rate_limits.json dan di-reset otomatis setiap hari
  • โ€”Indikator sisa chat ditampilkan di sidebar (hijau โ†’ kuning โ†’ merah)
  • โ€”Chat input otomatis di-disable ketika limit tercapai