This project implements a flexible AI chatbot application supporting multiple language models (Claude, GPT-3.5, Gemini) with a Node.js backend and a vanilla JavaScript frontend.
- Real-time chat interface
- Support for multiple AI models
- PDF file upload and parsing
- Seamless model switching
- Responsive design
- Node.js (v14+)
- npm or yarn
-
Clone the repository:
git clone https://github.com/derekleiro/multi-llm-chat-bot.git
cd multi-llm-chat-bot
-
Install dependencies:
yarn install
-
Set up environment variables: Create a
.env
file in the root directory and add your API keys:
CLAUDE_API_KEY=your_claude_api_key
OPENAI_API_KEY=your_openai_api_key
GEMINI_API_KEY=your_gemini_api_key
- Start the server:
yarn start
- Start the server:
- Open a web browser and navigate to
http://localhost:3000
- Type messages in the input field to interact with the AI
- Use the dropdown to switch between AI models
- Upload PDF files using the attachment button
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.