A sophisticated chatbot system built with LangGraph, featuring intent detection, personal information handling, and multi-agent workflow orchestration.
- 🤖 Multi-intent detection and handling
- 🔒 Personal information detection and secure storage
- 📝 Conversation history tracking
- 🔄 State management with MongoDB checkpointing
- 📊 Performance monitoring with Langfuse
- 🌐 Multi-language support
- Node.js (v14 or higher)
- Docker and Docker Compose
- MongoDB
- OpenAI API Key
- Clone the repository:
git clone <repository-url>
cd <project-directory>
- Install dependencies:
npm install
- Create a
.env
file in the root directory:
OPENAI_API_KEY=your_openai_api_key
MONGODB_URI=mongodb://root:example@localhost:27027
INTERNAL_API_URL=http://your-internal-api-url
- Start the required services:
docker-compose up -d
The project consists of several key components:
- Intent Detection: Analyzes user input to determine the intended action
- Personal Info Detection: Identifies and securely handles personal information
- Multi-Agent System: Orchestrates different specialized agents for various tasks
- State Management: Maintains conversation state and history using MongoDB
To start the chatbot:
node semantic.js
The system supports various commands:
- Search number information
- Label search
- Contact counting
- Spam marking
- General chat interactions
The project includes several Docker services (reference to docker-compose.yml):
startLine: 1
endLine: 37
The project includes Langfuse integration for monitoring and analytics:
startLine: 9
endLine: 16
- LangGraph for the workflow orchestration framework
- OpenAI for the language models
- MongoDB for state management
- Langfuse for monitoring capabilities