πŸš€ Introducing my latest application, Docu Talk

Hey Streamlit Community! :waving_hand:

I’m excited to share Docu Talk, a Streamlit-powered web app that lets you create custom Chat Bots from your PDF documents in just seconds! :robot::page_facing_up:

:small_blue_diamond: Key Features:
:white_check_mark: AI-Powered Responses: Structured and formatted replies based on document content
:white_check_mark: Cloud Integration: Secure communication with cloud-stored files via Gemini
:white_check_mark: Machine Learning Optimization: Predicts response times using historical data

:small_blue_diamond: Streamlit-Powered Frontend:
:white_check_mark: Google/Microsoft/Email Authentication (thanks to Streamlit 1.42.0!)
:white_check_mark: Session & Cookie Management for user persistence
:white_check_mark: Dynamic HTML Components for an interactive UI

:small_blue_diamond: Security & Deployment:
:white_check_mark: Encrypted Password Storage with hashing
:white_check_mark: Whitelisted Database Access via VPC/NAT for enhanced security
:white_check_mark: Cloud Deployment on Google Cloud Run & Streamlit Cloud
:white_check_mark: Automated Email Service with AWS SES
:white_check_mark: Secure File Storage using Google Cloud Storage

:small_blue_diamond: Code Quality & Best Practices:
:white_check_mark: Linted & Verified with ruff
:white_check_mark: Modular Architecture (authentication, pages, services…)

:link: Try the App: https://docu-talk-ai-apps.streamlit.app
:laptop: Explore the Open-Source Code: GitHub Repo

Would love to hear your feedback! :rocket:

streamlit #Python #MachineLearning ai #ChatBots #OpenSource #TechInnovation #GoogleCloud aws #SoftwareEngineering #DevCommunity

@Antoine3 nice work! how do you perform search on the document? I don’t see you put it into vector database or anything.

Thank you @mojsilo ! Yes, there is no RAG, but β€œin-context processing”, capable of handling up to 1,000 pages of documents with Gemini!

In-context processing is becoming increasingly interesting compared to RAG for several reasons: models can accept longer inputs, generate faster, and are becoming less and less expensive