AgentC is a RAG (Retrieval-Augmented Generation) based chatbot that can learn from documents and URLs, and provide intelligent responses based on the learned content.
- 📚 Document Learning: Upload PDF and TXT files for the chatbot to learn from
- 🌐 Web Content Learning: Learn from web pages by providing URLs
- 💬 Interactive Chat: Chat with the AI about the learned content
- ⚙️ Customizable Settings: Configure API keys, model selection, and other parameters
- 🔄 Persistent Storage: Learned content is stored in a vector database for future use
- Python 3.10 or higher
- Poetry for dependency management
- OpenAI API key
- Clone the repository:
git clone https://github.com/yourusername/agentc-demo.git
cd agentc-demo
- Install dependencies using Poetry:
poetry install
- Create a
.env
file in the project root and add your OpenAI API key:
OPENAI_API_KEY=your_api_key_here
- Start the application:
poetry run streamlit run main.py
-
Open your web browser and navigate to the URL shown in the terminal (typically http://localhost:8501)
-
Use the application:
- Go to the "Learn" page to upload documents or add web content
- Use the "Chat" page to interact with the AI about the learned content
- Configure settings in the "Setting" page
agentc-demo/
├── main.py # Main application entry point
├── agentc_demo/
│ ├── pages/ # Streamlit pages
│ │ ├── page_chat.py # Chat interface
│ │ ├── page_learn.py # Document learning interface
│ │ └── page_setting.py # Settings interface
│ └── utils/
│ └── rag_utils.py # RAG implementation utilities
├── data/
│ └── vectorstore/ # Vector database storage
├── pyproject.toml # Project dependencies
└── README.md # This file
MIT License