AskFlow is an intelligent chatbot application that leverages advanced AI decision-making to provide accurate responses by either answering directly from its knowledge or performing real-time internet searches using Tavily Search API.
- Intelligent Decision Making: LangGraph-powered agent that decides whether to answer directly or search the web
- Real-time Internet Access: Integrated Tavily Search API for up-to-date information
- Conversational Memory: Maintains context throughout conversations
- RESTful API: FastAPI backend with comprehensive endpoints
- Modern Web Interface: Streamlit-based responsive UI
- Cloud Deployment: Fully deployed and accessible online
- Web Interface: AskFlow Streamlit App
- AI Framework: LangChain, LangGraph
- Search API: Tavily Search
- Backend: FastAPI, Uvicorn, Pydantic
- Frontend: Streamlit
- LLM Integration: OpenAI GPT (or your preferred LLM)
- Deployment: Render, Streamlit Cloud
- Environment Management: Poetry/Pipenv
- User Input: User submits a question through the interface
- Agent Decision: LangGraph agent analyzes whether to answer directly or search the web
- Execution: Direct answer or web search via Tavily API
- Response Delivery: Formatted response returned to user
- Python 3.10 or higher
- Tavily Search API key
- OpenAI API key (or alternative LLM provider)
- Poetry or Pipenv
- Clone the repository
git clone https://github.com/Jospin6/askflow.git
cd askflow ```bash
# Start API server
cd api && uvicorn main:app --reload
# Start UI (in separate terminal)
cd ui && streamlit run app.py
```
Built with ❤️ by Jospin Ndagano
