Developer: Bob Tianqi Wei
Date: June 2025
A React-based chat assistant for PartSelect e-commerce website, specializing in refrigerator and dishwasher parts. Features DeepSeek AI integration, product search, compatibility checks, installation guides, and troubleshooting support.
- AI-Powered Chat: DeepSeek language model integration for intelligent responses
- Product Search: Search for refrigerator and dishwasher parts by number or description
- Compatibility Checks: Verify part compatibility with appliance models
- Installation Guides: Step-by-step installation instructions with visual guides
- Troubleshooting Support: Common appliance issue solutions
- Modern UI/UX: Responsive React interface with real-time chat
- Vector Database: Semantic search using Pinecone (optional)
- Frontend: React.js, CSS3
- Backend: Node.js, Express.js
- AI: DeepSeek API
- Vector Database: Pinecone (optional)
- Images: SVG graphics for products and installation guides
System architecture flowchart of the PartSelect Chat Agent
ChatAgent_PartSelect/
├── src/
│ ├── components/
│ │ ├── ChatWindow.js # Main chat interface
│ │ ├── ProductCard.js # Product display component
│ │ └── CompatibilityChecker.js # Compatibility verification
│ ├── data/
│ │ └── sampleProducts.js # Sample product database
│ ├── services/
│ │ └── vectorDB.js # Vector database service
│ └── api/
│ └── api.js # API client
├── public/
│ └── images/products/ # Product images and installation guides
├── server.js # Express backend server
├── config.js # API configuration
└── package.json
- Node.js (v14 or higher)
- npm package manager
- DeepSeek API key
- Pinecone API key (optional)
-
Clone and install
git clone https://github.com/bobtianqiwei/ChatAgent_PartSelect.git cd ChatAgent_PartSelect npm install -
Configure API keys
Copy
config.example.jstoconfig.js:cp config.example.js config.js
Update
config.jswith your API keys:module.exports = { DEEPSEEK_API_KEY: 'your-deepseek-api-key-here', DEEPSEEK_API_URL: 'https://api.deepseek.com/v1/chat/completions', PINECONE_API_KEY: 'your-pinecone-api-key-here', // Optional PORT: 3001, NODE_ENV: 'development' };
-
Start the application
Start the backend server:
node server.js
Start the frontend (in a new terminal):
npm start
The application will be available at:
- Frontend: http://localhost:3000
- Backend API: http://localhost:3001
POST /api/chat- Send chat messages to AIGET /api/products- Search productsGET /api/compatibility/:partNumber- Check part compatibilityGET /api/installation/:partNumber- Get installation guideGET /api/troubleshooting- Get troubleshooting help
GET /api/semantic-search?query=<search_term>&limit=<number>- Semantic searchGET /api/products/enhanced?query=<search_term>&category=<category>- Enhanced product search
Run the test cases in test-cases.md to verify functionality:
-
Example Queries (Instalily Requirements):
- "How can I install part number PS11752778?"
- "Is this part compatible with my WDT780SAEM1 model?"
- "The ice maker on my Whirlpool fridge is not working. How can I fix it?"
-
Feature Testing:
- Basic chat functionality
- Product search and compatibility checks
- Installation guides and troubleshooting
- Responsive design on mobile/desktop
- Sign up at Pinecone
- Create a new project and get your API key
- Add the key to
config.js - Restart the server - the system will automatically create the index
If no vector database is configured, the system automatically falls back to keyword-based search.
User: "I need a water filter for my refrigerator"
AI: "I can help you find a water filter. What's your refrigerator model?"
User: "How can I install part number PS11752778?"
AI: [Provides detailed installation guide with steps and tools]
User: "Is this part compatible with my WDT780SAEM1 model?"
AI: [Shows compatibility results with product recommendations]
- Technical Documentation: See
TECHNICAL_DOCS.mdfor detailed architecture and implementation - Test Cases: See
test-cases.mdfor comprehensive testing scenarios - Project Summary: See
PROJECT_SUMMARY.mdfor project overview and achievements
This is a case study project by Bob Tianqi Wei for Instalily AI.
This project is created for educational and demonstration purposes.
Developer: Bob Tianqi Wei
Project: Instalily AI Case Study
Date: June 2025