GaosuAPI Analysis
ๅบไบFastAPIไปฅๅFastMCPใๆ นๆฎ้ซ้API่ทๅๅฎๆถๆฐๆฎๆ็ๆAIๅๆๆฅๅใ
Ask AI about GaosuAPI Analysis
Powered by Claude ยท Grounded in docs
I know everything about GaosuAPI Analysis. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
ๆถ่ดน็ฎก็็ณป็ป - ๆบ่ฝๆฐๆฎๅๆๅนณๅฐ
๐ฏ ้กน็ฎๆฆ่ฟฐ
่ฟๆฏไธไธชๅบไบFastAPIๅMCP๏ผModel Context Protocol๏ผ็ๆบ่ฝๆถ่ดนๆฐๆฎๅๆๅนณๅฐ๏ผๆไพๅฎๆถๆฐๆฎๆฅ่ฏขใๆบ่ฝๆฅๅ็ๆๅAIๅฏน่ฏๅๆๅ่ฝใ
๐๏ธ ็ณป็ปๆถๆ
ๆดไฝๆถๆๅพ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๅ็ซฏ็้ข (ๅทฆๅณๅๆ ๅธๅฑ) โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ ๆฅๅ็ๆ็้ข โ ๆบ่ฝๅฏน่ฏ็้ข โ โ
โ โ โข ๆฅๅๅๆฐ่ฎพ็ฝฎ โ โข ่ช็ถ่ฏญ่จๆฅ่ฏข โ โ
โ โ โข ๅพ่กจๅฑ็คบ โ โข AIๆบ่ฝๅ็ญ โ โ
โ โ โข ๆฅๅไธ่ฝฝ โ โข ๅฏน่ฏๅๅฒ็ฎก็ โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ HTTP่ฏทๆฑ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ FastAPIๆๅก (ๅ็ซฏๆ ธๅฟ) โ
โ โโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ ๆฅๅAPI โ ่ๅคฉAPI โ ๅฅๅบทๆฃๆฅAPI โ โ
โ โ (report_api) โ (chat) โ (health) โ โ
โ โโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโ
โ โ
โผ โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๆฅๅ็ๆๆจกๅ โ โ ๆบ่ฝๅฏน่ฏๆจกๅ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ ReportGenerator โ โ โ โ MCPๅฎขๆท็ซฏ โ โ
โ โ โข ๆฐๆฎ่ทๅ โ โ โ โ โข ๅทฅๅ
ท่ฐ็จ็ฎก็ โ โ
โ โ โข ๅพ่กจ็ๆ โ โ โ โ โข ไผ่ฏ็ฎก็ โ โ
โ โ โข AIๅๆ โ โ โ โ โข OpenAI้ๆ โ โ
โ โ โข ๆฅๅๅๆ โ โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ โ โ
โโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโ
โ โ
โผ โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๅค้จAPI่ฐ็จ โ โ MCPๆๅกๅจ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ HTTPๅฎขๆท็ซฏ โ โ โ โ platformbilling_mcp โ โ
โ โ โข ้่ฏๆบๅถ โ โ โ โ โข 12ไธชMCPๅทฅๅ
ท โ โ
โ โ โข ่ถ
ๆถๅค็ โ โ โ โ โข ๆฐๆฎๆ ผๅผๅ โ โ
โ โ โข ้่ฏฏๅค็ โ โ โ โ โข APIไปฃ็ โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโ
โ โ
โผ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโ
โ ๅค้จAPIๆๅก โ โ
โ http://116.182.4.67:8088/gssfApi2 โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ APIๆฅๅฃๅ่กจ โ โ
โ โ โข trade/realTimeTurnover - ๅฎๆถไบคๆๆฐๆฎ โ โ
โ โ โข trade/companyPayTypeTurnover - ๅๅ
ฌๅธๆฏไปไบคๆๆฐๆฎ โ โ
โ โ โข trade/companyVehTypeTurnover - ๅๅ
ฌๅธ่ฝฆๅไบคๆๆฐๆฎ โ โ
โ โ โข trade/stationPayTypeTurnover - ๆถ่ดน็ซๆฏไปไบคๆๆฐๆฎ โ โ
โ โ โข trade/stationVehTypeTurnover - ๆถ่ดน็ซ่ฝฆๅไบคๆๆฐๆฎ โ โ
โ โ โข traffic/realTimeTrafficFlow - ๅฎๆถ่ฝฆๆต้ๆฐๆฎ โ โ
โ โ โข traffic/companyPayTypeTrafficFlow - ๅๅ
ฌๅธๆฏไป่ฝฆๆต้ๆฐๆฎ โ โ
โ โ โข traffic/companyVehTypeTrafficFlow - ๅๅ
ฌๅธ่ฝฆๅ่ฝฆๆต้ๆฐๆฎ โ โ
โ โ โข traffic/stationPayTypeTrafficFlow - ๆถ่ดน็ซๆฏไป่ฝฆๆต้ๆฐๆฎ โ โ
โ โ โข traffic/stationVehTypeTrafficFlow - ๆถ่ดน็ซ่ฝฆๅ่ฝฆๆต้ๆฐๆฎ โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ๆจกๅๅๆถๆ่ฎพ่ฎก
backend/
โโโ start_server.py # ๐ ๆๅกๅฏๅจๅ
ฅๅฃ
โโโ apis/ # ๐ APIๆฅๅฃๅฑ
โ โโโ fastapi_server.py # โโ FastAPIไธปๆๅก
โ โโโ report_api.py # โโ ๆฅๅ็ๆAPI
โ โโโ platformbilling_mcp.py # โโ MCPๆๅกๅจ
โโโ clients/ # ๐ ๅฎขๆท็ซฏๅฑ
โ โโโ mcp_client.py # โโ MCPๅฎขๆท็ซฏ
โ โโโ api_client.py # โโ ๅค้จAPIๅฎขๆท็ซฏ
โโโ reports/ # ๐ ๆฅๅๆจกๅ
โ โโโ report_generator.py # โโ ๆฅๅ็ๆๅจ
โโโ config/ # โ๏ธ ้
็ฝฎๆจกๅ
โ โโโ settings.py # โโ ้
็ฝฎ็ฎก็
โ โโโ .env # โโ ็ฏๅขๅ้
โโโ utils/ # ๐ ๏ธ ๅทฅๅ
ทๆจกๅ
โโโ test_api.py # โโ APIๆต่ฏๅทฅๅ
ท
frontend/
โโโ start_frontend.py # ๐ ๅ็ซฏๅฏๅจ่ๆฌ
โโโ index.html # ๐ ไธป็้ข
โโโ report.js # ๐ ๆฅๅๅ่ฝ่ๆฌ
โโโ chat.js # ๐ฌ ๅฏน่ฏๅ่ฝ่ๆฌ
โโโ styles.css # ๐จ ๆ ทๅผๆไปถ
ๆฐๆฎๆตๅๅพ
โโโโโโโโโโโโโโโ HTTP โโโโโโโโโโโโโโโ MCP โโโโโโโโโโโโโโโ
โ ็จๆท่ฏทๆฑ โ โโโโโโโโโบ โ FastAPI โ โโโโโโโโโโโบ โ MCPๆๅกๅจ โ
โ (ๅ็ซฏ) โ โ ๆๅกๅจ โ โ โ
โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ
โ โ
โผ โผ
โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ
โ ๆฅๅ็ๆๅจ โ โ ๅค้จAPI โ
โ โ โ ่ฐ็จ โ
โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ
โ โ
โผ โผ
โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ
โ ๅพ่กจ+AIๅๆ โ โ ๆถ่ดน็ณป็ป โ
โ ็ปๆ โ โ ๆฐๆฎๆบ โ
โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ
โ โ
โผ โ
โโโโโโโโโโโโโโโ โ
โ ๅ็ซฏๅฑ็คบ โ โโโโโโโโโโโโโโโโโโโโ
โ (JSON) โ
โโโโโโโโโโโโโโโ
ๆๆฏๆถๆๆ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๆๆฏๆ ๆถๆ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ ๅ็ซฏๅฑ (Frontend) โ
โ โโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโ โ
โ โ HTML5 โ CSS3 โ JavaScript โ Chart.js โ โ
โ โ ็ปๆๅฑ โ ๆ ทๅผๅฑ โ ้ป่พๅฑ โ ๅพ่กจๅฑ โ โ
โ โโโโโโโโโโโโโโโดโโโโโโโโโโโโโโดโโโโโโโโโโโโโโดโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ ๅ็ซฏๅฑ (Backend) โ
โ โโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโ โ
โ โ FastAPI โ MCP โ Matplotlib โ HTTPX โ โ
โ โ Webๆกๆถ โ ๅ่ฎฎๅฑ โ ๅพ่กจ็ๆ โ HTTPๅฎขๆท็ซฏ โ โ
โ โโโโโโโโโโโโโโโดโโโโโโโโโโโโโโดโโโโโโโโโโโโโโดโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ ๆฐๆฎๅฑ (Data) โ
โ โโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโ โ
โ โ Pandas โ NumPy โ JSON โ ๅค้จAPI โ โ
โ โ ๆฐๆฎๅค็ โ ๆฐๅผ่ฎก็ฎ โ ๆฐๆฎๆ ผๅผ โ ๆฐๆฎๆบ โ โ
โ โโโโโโโโโโโโโโโดโโโโโโโโโโโโโโดโโโโโโโโโโโโโโดโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ AIๅฑ (Intelligence) โ
โ โโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโ โ
โ โ OpenAI โ Qwenๆจกๅ โ MCP โ ่ช็ถ่ฏญ่จ โ โ
โ โ API โ AIๆจ็ โ ๅทฅๅ
ท่ฐ็จ โ ๅค็ โ โ
โ โโโโโโโโโโโโโโโดโโโโโโโโโโโโโโดโโโโโโโโโโโโโโดโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ๅฏๅจๆนๅผ
# ๅฏๅจๅฎๆดๆๅก๏ผๅ็ซฏ+ๅ็ซฏ๏ผ
cd backend
python statrt_server.py
cd frontend
python start_frontend.py
# ไป
ๅฏๅจๅ็ซฏ
python statrt_server.py
# ไป
ๅฏๅจๅ็ซฏ
python start_frontend.py
## ๐ ๆฅๅ็ๆๅ่ฝ่ฏฆ่งฃ
### ๐ ๆง่กๆต็จ
ๅฝ็จๆท็นๅป"็ๆๆฅๅ"ๆ้ฎๆถ๏ผ็ณป็ปๆไปฅไธๆญฅ้ชคๆง่ก๏ผ
#### 1. **ๅ็ซฏ่งฆๅ** (`frontend/report.js`)
```javascript
// ็จๆท็นๅป็ๆๆฅๅๆ้ฎ
generateReport() {
// ๅ้POST่ฏทๆฑๅฐๅ็ซฏAPI
fetch('/api/report/generate', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ start_date, end_date })
})
}
2. ๅ็ซฏAPIๆฅๆถ (backend/apis/report_api.py)
@app.post("/api/report/generate")
async def generate_report(request: ReportRequest, background_tasks: BackgroundTasks):
# ๅๅปบๆฅๅไปปๅก
report_id = str(uuid.uuid4())
background_tasks.add_task(generate_report_task, report_id, request.start_date, request.end_date)
return ReportResponse(report_id=report_id, status="processing")
3. ๆฅๅ็ๆๅจๆง่ก (backend/reports/report_generator.py)
ๆ ธๅฟๆนๆณ๏ผgenerate_report()
async def generate_report(self, start_date: str, end_date: str) -> ReportData:
# ๆญฅ้ชค1: ่ฎก็ฎๅฏนๆฏๆฅๆ่ๅด
prev_start, prev_end, year_ago_start, year_ago_end = self._calculate_date_ranges(start_date, end_date)
# ๆญฅ้ชค2: ้กบๅบ่ทๅๅคๆๆฐๆฎ๏ผ้ฟๅ
ๅนถๅ้ๅถ๏ผ
current_period_data = await self._make_request("trade/companyPayTypeTurnover", "POST", {"beginTime": start_date, "endTime": end_date})
previous_period_data = await self._make_request("trade/companyPayTypeTurnover", "POST", {"beginTime": prev_start, "endTime": prev_end})
year_ago_data = await self._make_request("trade/companyPayTypeTurnover", "POST", {"beginTime": year_ago_start, "endTime": year_ago_end})
traffic_flow_data = await self._make_request("traffic/companyPayTypeTrafficFlow", "POST", {"beginTime": start_date, "endTime": end_date})
year_ago_traffic_data = await self._make_request("traffic/companyPayTypeTrafficFlow", "POST", {"beginTime": year_ago_start, "endTime": year_ago_end})
vehicle_data = await self._make_request("traffic/companyVehTypeTrafficFlow", "POST", {"beginTime": start_date, "endTime": end_date})
# ๆญฅ้ชค3: ๅๅนถๆฐๆฎ
current_period_data['trafficFlow'] = traffic_flow_data
current_period_data['vehicleData'] = vehicle_data
year_ago_data['trafficFlow'] = year_ago_traffic_data
# ๆญฅ้ชค4: ็ๆๅพ่กจๆฐๆฎ
charts_data = self._generate_charts_data(current_period_data, previous_period_data, year_ago_data, traffic_flow_data)
# ๆญฅ้ชค5: ็ๆAIๅๆๆๅญ
analysis_text = self._generate_analysis_text(current_period_data, previous_period_data, year_ago_data)
return ReportData(...)
๐ก ๆฐๆฎๆฅๆบ่ฏฆ่งฃ
ๅค้จAPIๆฅๅฃ
็ณป็ป่ฐ็จไปฅไธ6ไธชAPIๆฅๅฃ่ทๅๆฐๆฎ๏ผ
-
trade/companyPayTypeTurnover(ๅฝๅๆ้ด)- ่ทๅ๏ผๅๅ ฌๅธๆฏไป็ฑปๅไบคๆ้ขๆฐๆฎ
- ็จ้๏ผไธป่ฆๅๆๆฐๆฎ๏ผๅ ๅซETCใ็ฐ้ใ็งปๅจๆฏไป็ญ
-
trade/companyPayTypeTurnover(ไธๆๅฏนๆฏ)- ่ทๅ๏ผไธๆๅๅ ฌๅธๆฏไป็ฑปๅไบคๆ้ขๆฐๆฎ
- ็จ้๏ผ็ฏๆฏๅๆ๏ผ่ฎก็ฎ็ญๆ่ถๅฟ
-
trade/companyPayTypeTurnover(ๅปๅนดๅๆ)- ่ทๅ๏ผๅปๅนดๅๆๅๅ ฌๅธๆฏไป็ฑปๅไบคๆ้ขๆฐๆฎ
- ็จ้๏ผๅๆฏๅๆ๏ผ่ฎก็ฎ้ฟๆ่ถๅฟ
-
traffic/companyPayTypeTrafficFlow(ๅฝๅๆ้ด)- ่ทๅ๏ผๅๅ ฌๅธๆฏไป็ฑปๅ่ฝฆๆต้ๆฐๆฎ
- ็จ้๏ผ่ฝฆๆต้ๅๆ๏ผ็ๆ่ฝฆๆต้ๅพ่กจ
-
traffic/companyPayTypeTrafficFlow(ๅปๅนดๅๆ)- ่ทๅ๏ผๅปๅนดๅๆๅๅ ฌๅธๆฏไป็ฑปๅ่ฝฆๆต้ๆฐๆฎ
- ็จ้๏ผ่ฝฆๆต้ๅๆฏๅๆ
-
traffic/companyVehTypeTrafficFlow(ๅฝๅๆ้ด)- ่ทๅ๏ผๅๅ ฌๅธ่ฝฆๅ่ฝฆๆต้ๆฐๆฎ
- ็จ้๏ผ่ฝฆๅๅๆ๏ผไธฐๅฏๆฅๅๅ ๅฎน
ๆฐๆฎๆตๅ
ๅค้จAPI โ ๆฅๅ็ๆๅจ โ ๆฐๆฎๅค็ โ ๅพ่กจ็ๆ + AIๅๆ โ ๅ็ซฏๅฑ็คบ
๐ ๅพ่กจ็ๆ้ป่พ
็ณป็ป็ๆ6็งไธๅ็ฑปๅ็ๅพ่กจ๏ผ
- ๅๅ
ฌๅธไบคๆ้ขTOP10 - ๅบไบ
current_period_data['data']['payTypeTurnoverList'] - ๅๅ
ฌๅธ่ฝฆๆต้TOP10 - ๅบไบ
traffic_flow_data['data']['payTypeTrafficFlowList'] - ่ฝฆๆต้ๅๆฏๅข้ฟๅๆ - ๅบไบๅฝๅๅๅปๅนดๅๆ่ฝฆๆต้ๆฐๆฎๅฏนๆฏ
- ETC่ฝฆๆต้ไธ้่ก่ดน็พๅๆฏๆ็บฟๅพ - ๅบไบไบคๆ้ขๅ่ฝฆๆต้ๆฐๆฎไบคๅๅๆ
- ๅๅๅ
ฌๅธๅฎๆถ้่ก่ดนๅๆฏไป็ฑปๅๅ ๆฏ - ๅบไบ
current_period_data['data']['payTypeTurnoverList'] - ๅฎๆถ้่ก่ดนๅๆฏๅข้ฟๅๆ - ๅบไบๅฝๅๅๅปๅนดๅๆไบคๆ้ขๆฐๆฎๅฏนๆฏ
๐ค AIๅๆ็ๆ้ป่พ
ๆ ธๅฟๆนๆณ๏ผ_generate_analysis_text()
def _generate_analysis_text(self, current_data: Dict, previous_data: Dict, year_ago_data: Dict) -> str:
# ่ฐ็จ่ฏฆ็ปๅๆ็ๆๅจ
detailed_analysis = self._generate_detailed_analysis(current_data, previous_data, year_ago_data)
# ่ฝฌๆขไธบๆๆฌๆ ผๅผ
return self._convert_analysis_to_text(detailed_analysis)
่ฏฆ็ปๅๆๅ ๅซ๏ผ
-
ๆง่กๆ่ฆ (
_generate_executive_summary)- ไธๅกๆดๅฏใๆฏไป็ๆ็ณป็ปๅๆใ่ฟ่ฅๆ็่ฏไผฐ
-
ๅ ณ้ฎๆๆ (
_generate_key_metrics)- ๆ ธๅฟ่ดขๅกๆๆ ใ่ฟ่ฅๆ็ๆๆ ใ็ป็ปๆ็ๆๆ ใๆๆฏๆธ้ๆๆ ใๅธๅบ่กจ็ฐๆๆ
-
็ปฉๆๅๆ (
_generate_performance_analysis)- ๅบ็ก็ปฉๆๆๅใ็ปฉๆๅๅฑใ่ฏฆ็ป็ฏๆฏๅๆฏๅๆใๆ็ๅฏนๆ ใๅบๅ็ซไบๅๅๆ
-
่ถๅฟๅๆ (
_generate_trend_analysis)- ๆดไฝ่ถๅฟๅๆใ็ปๆๆง่ถๅฟๅๆใๆฏไปๆนๅผ่ถๅฟๅๆใ่ถๅฟ้ขๆตใๅญฃ่ๆงๅๆ
-
ๆฏไปๅๆ (
_generate_payment_analysis)- ๅบ็กๆฏไป็ปๆใๆฏไป็ๆ็ณป็ปๅฅๅบทๅบฆใ็จๆท่กไธบๆดๅฏใๆๆฏๆธ้็ใๆฏไปๆ็ใๅธๅบ็ซไบๅใๅๅฑ่ถๅฟ้ขๆต
-
ๆดๅฏๅปบ่ฎฎ (
_generate_insights,_generate_recommendations,_generate_risk_alerts)- ไธๅกๆดๅฏใๆน่ฟๅปบ่ฎฎใ้ฃ้ฉ้ข่ญฆ
๐ ๆฐๆฎๅค็จ็ญ็ฅ
ๆฅๅ็ๆๅจ้็จๆบ่ฝๆฐๆฎๅค็จ็ญ็ฅ๏ผ
-
ๅๆฌกAPI่ฐ็จ๏ผๅค็จ้ไฝฟ็จ
- ๅไธไปฝ
current_period_data็จไบ๏ผๅพ่กจ็ๆ + AIๅๆ + ๆฐๆฎๆฆ่ง - ้ฟๅ ้ๅค่ฐ็จAPI๏ผๆ้ซๆ็
- ๅไธไปฝ
-
ๆฐๆฎๅๅนถไผๅ
# ๅฐ่ฝฆๆต้ๆฐๆฎๅๅนถๅฐไธปๆฐๆฎ็ปๆไธญ current_period_data['trafficFlow'] = traffic_flow_data current_period_data['vehicleData'] = vehicle_data -
ๅพ่กจๅๅๆๅ ฑไบซๆฐๆฎๆบ
- ๅพ่กจ็ๆๅๅๆๆๅญไฝฟ็จ็ธๅ็ๆฐๆฎๆบ
- ็กฎไฟๆฐๆฎไธ่ดๆง
โก ๆง่ฝไผๅ
- ้กบๅบ่ฏทๆฑ - ้ฟๅ ๅนถๅ้ๅถ
- ้่ฏๆบๅถ - ๅค็็ฝ็ปๆณขๅจ
- ๆฐๆฎ็ผๅญ - ้ฟๅ ้ๅค่ฎก็ฎ
- ๅๅฐๅค็ - ไธ้ปๅก็จๆท็้ข
๐ฌ ๆบ่ฝๅฏน่ฏๅ่ฝ
MCPๅทฅๅ ท้ๆ
็ณป็ป้ๆไบ12ไธชMCPๅทฅๅ ท๏ผๆฏๆ่ช็ถ่ฏญ่จๆฅ่ฏข๏ผ
get_realtime_transaction- ่ทๅ้ๅขๅฎๆถไบคๆๆฐๆฎget_company_payment_transaction- ่ทๅๅๅ ฌๅธๆฏไปไบคๆๆฐๆฎget_company_vehicle_transaction- ่ทๅๅๅ ฌๅธ่ฝฆๅไบคๆๆฐๆฎget_station_payment_transaction- ่ทๅๆถ่ดน็ซๆฏไปไบคๆๆฐๆฎget_station_vehicle_transaction- ่ทๅๆถ่ดน็ซ่ฝฆๅไบคๆๆฐๆฎget_realtime_traffic_flow- ่ทๅๅฎๆถไบค้ๆต้ๆฐๆฎget_company_payment_traffic_flow- ่ทๅๅๅ ฌๅธๆฏไป็ฑปๅไบค้ๆต้get_company_vehicle_traffic_flow- ่ทๅๅๅ ฌๅธ่ฝฆๅไบค้ๆต้get_station_payment_traffic_flow- ่ทๅๆถ่ดน็ซๆฏไป็ฑปๅไบค้ๆต้get_station_vehicle_traffic_flow- ่ทๅๆถ่ดน็ซ่ฝฆๅไบค้ๆต้get_all_company_ids- ่ทๅๆๆๅๅ ฌๅธIDgenerate_report- ๅจๅฏน่ฏไธญ็ๆๆฐๆฎๆฅๅ
ๅฏน่ฏ่พๅบไผๅ
- ้่ๅทฅๅ ท่ฐ็จ่ฏฆๆ - ๅชๆพ็คบAIๆ็ปๅ็ญ
- ๆบ่ฝๆฐๆฎๆ ผๅผๅ - ่ชๅจ็พๅJSONๆฐๆฎๅฑ็คบ
- ๅฎๆถ็ถๆๅ้ฆ - ๆพ็คบๅค็่ฟๅบฆ
๐ ๅฟซ้ๅผๅง
็ฏๅข่ฆๆฑ
- Python 3.8+
- ็ฐไปฃๆต่งๅจ
ๅฎ่ฃ ไพ่ต
pip install -r requirements.txt
้ ็ฝฎ็ฏๅขๅ้
ๅคๅถ็ฏๅขๅ้ๆจกๆฟ๏ผ
cp backend/.env.example backend/.env
็ผ่พ backend/.env ๆไปถ๏ผ้
็ฝฎๅฟ
่ฆๅๆฐ๏ผ
# OpenAIๅฎขๆท็ซฏ้
็ฝฎ(็จไบAIๆจ็)
QWEN_MODEL=qwen2.5-32b-instruct
QWEN_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
QWEN_API_KEY=your_api_key_here
# FastAPIๆๅก้
็ฝฎ
FASTAPI_HOST=0.0.0.0
FASTAPI_PORT=8000
FASTAPI_RELOAD=false
# MCPๅฎขๆท็ซฏ้
็ฝฎ
MAX_TOOL_CALLS=6
MAX_TOOL_RESULT_CHARS=6000
# ๆฅๅฟ้
็ฝฎ
LOG_LEVEL=INFO
ๅฏๅจๆๅก
ๆบ่ฝๅฏๅจ๏ผๆจ่๏ผ
# ไป้กน็ฎๆ น็ฎๅฝๅฏๅจ๏ผ่ชๅจๆฅๆพ้
็ฝฎๆไปถ๏ผ
python backend/start_server.py
# ไปbackend็ฎๅฝๅฏๅจ
cd backend
python start_server.py
้ซ็บงๅฏๅจ้้กน
# ๅผๅๆจกๅผ๏ผ็ญ้่ฝฝ๏ผ
python backend/start_server.py --reload --log-level debug
# ็ไบงๆจกๅผ๏ผๅค่ฟ็จ๏ผ
python backend/start_server.py --workers 4 --log-level warning
# ่ชๅฎไน้
็ฝฎ
python backend/start_server.py --host 127.0.0.1 --port 8080 --env-file custom.env
# ๆฅ็ๆๆ้้กน
python backend/start_server.py --help
### ่ฎฟ้ฎ็ณป็ป
- ๅ็ซฏ็้ข๏ผhttp://localhost:8080
- ๅ็ซฏAPI๏ผhttp://localhost:8000
- APIๆๆกฃ๏ผhttp://localhost:8000/docs
## ๐ APIๆฅๅฃ
### ๆฅๅ็ๆๆฅๅฃ
- `POST /api/report/generate` - ็ๆๆฅๅ
- `GET /api/report/status/{report_id}` - ๆฅ่ฏขๆฅๅ็ถๆ
- `GET /api/report/result/{report_id}` - ่ทๅๆฅๅ็ปๆ
- `GET /api/report/list` - ๅๅบๆๆๆฅๅ
- `DELETE /api/report/{report_id}` - ๅ ้คๆฅๅ
### ่ๅคฉๆฅๅฃ
- `POST /v1/chat/completions` - OpenAIๅ
ผๅฎน็่ๅคฉๆฅๅฃ
## ๐จ ๅ็ซฏๅ่ฝ
### ๆฅๅ็ฎก็
- ๐ ๆบ่ฝๆฅๅ็ๆ
- ๐ ๅค็ปดๅบฆๅพ่กจๅฑ็คบ
- ๐ฅ ๆฅๅไธ่ฝฝ๏ผWordๆ ผๅผ๏ผ
- ๐ ๅพ่กจๅ
จๅฑๆฅ็
- ๐ ๆฅๅๅๅฒ็ฎก็
### ๆบ่ฝๅฏน่ฏ
- ๐ฌ ่ช็ถ่ฏญ่จๆฅ่ฏข
- ๐ค AIๆบ่ฝๅ็ญ
- ๐ ๆฐๆฎๅฏ่งๅๅฑ็คบ
- ๐ ๅฏน่ฏๅๅฒ็ฎก็
## ๐ง ๆๆฏๆ
### ๅ็ซฏ
- **FastAPI** - ้ซๆง่ฝWebๆกๆถ
- **MCP** - Model Context Protocol
- **Matplotlib** - ๅพ่กจ็ๆ
- **Pandas/NumPy** - ๆฐๆฎๅค็
- **HTTPX** - ๅผๆญฅHTTPๅฎขๆท็ซฏ
### ๅ็ซฏ
- **HTML5/CSS3** - ็ฐไปฃๅ็้ข
- **JavaScript** - ไบคไบ้ป่พ
- **Chart.js** - ๅพ่กจๅฑ็คบ๏ผๅทฒๆฟๆขไธบ้ๆPNG๏ผ
### ๆฐๆฎๆบ
- **ๅค้จAPI** - ๆถ่ดน็ณป็ปๆฐๆฎๆฅๅฃ
- **ๅผๆญฅๅค็** - ๅๅฐไปปๅกๅค็
## ๐ ๆดๆฐๆฅๅฟ
### v2.1.0 (ๆๆฐ) - ๆถๆ้ๆ็
- ๐๏ธ **้ๅคงๆถๆ้ๆ**: ๆจกๅๅ่ฎพ่ฎก๏ผไปฃ็ ็ป็ปๆดๆธ
ๆฐ
- ๐ **ๆฐๅขๆจกๅ็ปๆ**: apis/ clients/ reports/ utils/ config/
- ๐ **ๆบ่ฝๅฏๅจ่ๆฌ**: ่ชๅจๆฅๆพ้
็ฝฎๆไปถ๏ผๆฏๆๅค็งๅฏๅจๆจกๅผ
- ๐ง **่ทฏๅพ่ช้ๅบ**: ๆฏๆไป้กน็ฎๆ น็ฎๅฝๆbackend็ฎๅฝๅฏๅจ
- ๐ **ๅฎๅๆๆกฃ**: ๆดๆฐๆถๆ่ฏดๆๅไฝฟ็จๆๅ
- โ
**ๅๅๅ
ผๅฎน**: ไฟๆๆๆๅๆๅ่ฝไธๅ
### v2.0.0
- โ
ไฟฎๅคๆฅๅ็ๆ่ฏญๆณ้่ฏฏ
- โ
ไผๅๆบ่ฝๅฏน่ฏ่พๅบๆ ผๅผ
- โ
ๅขๅผบAIๅๆ่ฏฆ็ป็จๅบฆ
- โ
ๅฎๅๅพ่กจ็ๆๅ่ฝ
- โ
ๆน่ฟๅ็ซฏ็จๆทไฝ้ช
### v1.0.0
- ๐ ๅๅง็ๆฌๅๅธ
- ๐ ๅบ็กๆฅๅ็ๆๅ่ฝ
- ๐ฌ ๆบ่ฝๅฏน่ฏๅ่ฝ
- ๐ ๅพ่กจๅฏ่งๅ
## ๐ง ๆ
้ๆ้ค
### ๅธธ่ง้ฎ้ข
#### 1. ็ฏๅขๅ้ๆไปถๆพไธๅฐ
้่ฏฏ: ็ฏๅขๅ้ๆไปถไธๅญๅจ: .env
**่งฃๅณๆนๆก:**
```bash
# ๅคๅถ็ฏๅขๅ้ๆจกๆฟ
cp backend/.env.example backend/.env
# ็ผ่พ้
็ฝฎๆไปถ
nano backend/.env
2. MCPๆๅกๅจ่ๆฌไธๅญๅจ
้่ฏฏ: MCPๆๅกๅจ่ๆฌไธๅญๅจ: backend/apis/platformbilling_mcp.py
่งฃๅณๆนๆก: ๆฃๆฅๆไปถ่ทฏๅพๆฏๅฆๆญฃ็กฎ๏ผ็กฎไฟ้ๆๅ็ๆไปถ็ปๆๅฎๆดใ
3. ็ผบๅฐๅฟ ่ฆ็ฏๅขๅ้
้่ฏฏ: ็ผบๅฐๅฟ
่ฆ็็ฏๅขๅ้: QWEN_API_KEY, QWEN_BASE_URL, QWEN_MODEL
่งฃๅณๆนๆก:
ๅจ backend/.env ๆไปถไธญ้
็ฝฎไปฅไธๅ้๏ผ
QWEN_API_KEY=your_api_key_here
QWEN_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
QWEN_MODEL=qwen2.5-32b-instruct
4. ็ซฏๅฃ่ขซๅ ็จ
ERROR: [Errno 48] Address already in use
่งฃๅณๆนๆก:
# ไฝฟ็จไธๅ็ซฏๅฃๅฏๅจ
python backend/start_server.py --port 8001
# ๆ่
ๆๆญปๅ ็จ็ซฏๅฃ็่ฟ็จ
lsof -ti:8000 | xargs kill -9
5. ๆจกๅๅฏผๅ ฅ้่ฏฏ
ModuleNotFoundError: No module named 'apis'
่งฃๅณๆนๆก: ็กฎไฟไปๆญฃ็กฎ็็ฎๅฝๅฏๅจๆๅก๏ผๆจ่ไฝฟ็จ๏ผ
# ไป้กน็ฎๆ น็ฎๅฝๅฏๅจ
python backend/start_server.py
่ฐ่ฏๆจกๅผ
ๅฏ็จ่ฏฆ็ปๆฅๅฟ่ฟ่ก่ฐ่ฏ๏ผ
python backend/start_server.py --reload --log-level debug
่ทๅๅธฎๅฉ
ๆฅ็ๆๆๅฏ็จ้้กน๏ผ
python backend/start_server.py --help
๐ค ่ดก็ฎๆๅ
ๆฌข่ฟๆไบคIssueๅPull Requestๆฅๆน่ฟ้กน็ฎ๏ผ
ๅผๅ็ฏๅข่ฎพ็ฝฎ
# ๅ
้้กน็ฎ
git clone <repository-url>
cd project
# ๅฎ่ฃ
ไพ่ต
pip install -r requirements.txt
# ๅคๅถ้
็ฝฎๆไปถ
cp backend/.env.example backend/.env
# ๅฏๅจๅผๅๆๅกๅจ
python backend/start_server.py --reload --log-level debug
๐ ่ฎธๅฏ่ฏ
MIT License
