BOM到订单
一个智能的物料清单(BOM)处理应用程序,可以从上传的文件中自动提取零件信息,并找到价格合理的卖家建议。
特性
- 📄 多格式支持:上传CSV、Excel或文本文件
- 🤖 AI驱动的解析:使用Olama LLM智能提取零件名称和数量
- 🔍 智能卖家查询:利用Google Gemini为每个零件找到价格合理的卖家
- 💻 现代用户界面:干净、响应迅速的React界面,具有实时预览功能
- 🚀 完整的管道:从上传到卖家推荐的无缝集成
快速开始
1.安装必备组件(如果尚未安装)
-奥拉玛:https://ollama.ai
-拉模型:美洲驼拉3.2:1b
-使用Gemini API密钥创建API_Key.txt
选项1:自动启动(推荐)
# Using bash script
./start.sh
# Or using Python script
python start.py选项2:手动设置
看 设置.md 详细说明。
快速摘要:
- 后端设置:
cd backend
pip install -r requirements.txt
python app.py- 前端设置:
cd "BOM to Order/frontend"
pnpm install
pnpm dev- 访问:
- 前端:http://localhost:5173 - 后端:http://localhost:5000
先决条件
- Python 3.8+
- Node.js 18+
- 奥拉玛(与
llama3.2:1b型号) - Google Gemini API密钥(in
API_Key.txt)
建筑
┌─────────────────────────────────────┐
│ React Frontend (Vite + TypeScript)│
│ - File upload & preview │
│ - Results display │
└──────────────┬──────────────────────┘
│ HTTP API
┌──────────────▼──────────────────────┐
│ Flask Backend (Python) │
│ - API endpoints │
│ - File processing │
└──────────────┬──────────────────────┘
│
┌──────────┴──────────┐
▼ ▼
┌─────────────┐ ┌──────────────┐
│ csv_parser │ │ gemini_seller│
│ (Ollama) │ │ (Gemini AI) │
└─────────────┘ └──────────────┘项目结构
calhacks-2025/
├── backend/ # Flask API server
│ ├── app.py # Main API server
│ ├── csv_parser.py # BOM parsing with Ollama
│ ├── gemini_seller.py # Seller lookup with Gemini
│ └── requirements.txt # Python dependencies
├── BOM to Order/
│ └── frontend/ # React frontend
│ ├── src/
│ │ ├── components/ # UI components
│ │ ├── lib/ # API client
│ │ └── pages/ # Page components
│ └── package.json
├── csv_parser.ipynb # Original parsing notebook
├── gemini_seller_info.ipynb # Original seller lookup notebook
├── start.sh # Bash startup script
├── start.py # Python startup script
├── SETUP.md # Detailed setup guide
└── README.md # This file用法
- 上传BOM文件:拖放或单击以上传BOM文件(CSV、XLSX或TXT)
- 预览:以表格形式查看上传的数据
- 过程:点击“查找卖家”运行AI管道
- 结果:通过直接链接查看卖家推荐
API文档
看 后端/README.md 获取完整的API文档。
关键终点
POST /api/process-bom-完整的管道(解析+卖家查找)POST /api/parse-bom-仅解析物料清单POST /api/get-sellers-为解析后的商品找到卖家GET /health-健康检查
发展
后端开发
cd backend
python app.py # Runs on http://localhost:5000前端开发
cd "BOM to Order/frontend"
pnpm dev # Runs on http://localhost:5173故障排除
看 设置.md 常见问题和解决方案。
技术
前端:
- 反应18
- TypeScript
- 维特
- 顺风CSS
- shadcn/ui组件
- React查询
后端:
- 烧瓶
- 熊猫
- Ollama(通话3.2:1b)
- 谷歌生成人工智能(Gemini)
许可证
麻省理工学院
贡献者
为CalHacks 2025创建
