## Dify 瀹㈡埛绔皝瑁呭畬鎴?鉁? ### 瀹屾垚鐨勫伐浣? 1. 绫诲瀷瀹氫箟 (backend/src/clients/types.ts) - Dataset, Document, Retrieval 鐩稿叧绫诲瀷 - 瀹屾暣鐨?TypeScript 绫诲瀷瀹氫箟 - 鑷畾涔?DifyError 閿欒绫? 2. DifyClient 鏍稿績绫?(backend/src/clients/DifyClient.ts) - 鐭ヨ瘑搴撶鐞? createDataset, getDatasets, getDataset, deleteDataset - 鏂囨。绠$悊: uploadDocumentDirectly, getDocuments, getDocument, deleteDocument - 鐭ヨ瘑搴撴绱? retrieveKnowledge (鏀寔璇箟鎼滅储銆乼op_k銆佺浉浼煎害闃堝€? - 杈呭姪鏂规硶: waitForDocumentProcessing, uploadAndProcessDocument 3. 娴嬭瘯鑴氭湰 (backend/src/scripts/test-dify-client.ts) - 8椤瑰畬鏁存祴璇曞叏閮ㄩ€氳繃 - 娴嬭瘯鑰楁椂绾?5绉? - 楠岃瘉鎵€鏈堿PI鍔熻兘姝e父 ### 娴嬭瘯缁撴灉 鉁?娴嬭瘯1: 鍒涘缓鐭ヨ瘑搴?鉁?娴嬭瘯2: 鑾峰彇鐭ヨ瘑搴撳垪琛?(鎵惧埌3涓? 鉁?娴嬭瘯3: 鑾峰彇鐭ヨ瘑搴撹鎯?鉁?娴嬭瘯4: 涓婁紶鏂囨。 (247 tokens) 鉁?娴嬭瘯5: 鑾峰彇鏂囨。鍒楄〃 鉁?娴嬭瘯6: 鐭ヨ瘑搴撴绱?(鐩镐技搴?.4420) 鉁?娴嬭瘯7: 鍒犻櫎鏂囨。 鉁?娴嬭瘯8: 鍒犻櫎鐭ヨ瘑搴? ### 鎶€鏈寒鐐? - 瀹屽杽鐨勯敊璇鐞嗘満鍒?(axios 鎷︽埅鍣? - 鏅鸿兘杞绛夊緟鏂囨。澶勭悊瀹屾垚 - FormData 鏂囦欢涓婁紶鏀寔 - 鍗曚緥妯″紡瀵煎嚭 - 鏀寔鑷畾涔夐厤缃? ### 渚濊禆鏇存柊 - form-data: ^4.0.0 - @types/form-data: ^2.5.0 ### 閰嶇疆鏇存柊 - DIFY_API_KEY 鏇存柊涓烘湇鍔PI瀵嗛挜 - DIFY_API_URL=http://localhost/v1 ### 鏂囨。鏇存柊 - 鏂板: docs/05-姣忔棩杩涘害/Day19-Dify瀹㈡埛绔皝瑁呭畬鎴?md - 鏇存柊: docs/04-寮€鍙戣鍒?寮€鍙戦噷绋嬬.md (Day 19 鏍囪涓哄畬鎴? ### 涓嬩竴姝? Day 20-22: 鐭ヨ瘑搴撶鐞嗗姛鑳?- 鏁版嵁搴撹〃璁捐 (KnowledgeBase, Document) - 鍚庣 CRUD API - 鍓嶇鐭ヨ瘑搴撶鐞嗛〉闈?- 鏂囨。涓婁紶缁勪欢 --- Progress: 閲岀▼纰?1 (MVP) 90% -> 鐭ヨ瘑搴撶鐞嗗紑鍙戜腑
47 lines
1.1 KiB
JSON
47 lines
1.1 KiB
JSON
{
|
|
"name": "ai-clinical-backend",
|
|
"version": "1.0.0",
|
|
"description": "AI Clinical Research Platform - Backend API",
|
|
"main": "dist/index.js",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "tsx watch src/index.ts",
|
|
"build": "tsc",
|
|
"start": "node dist/index.js",
|
|
"prisma:generate": "prisma generate",
|
|
"prisma:migrate": "prisma migrate dev",
|
|
"prisma:studio": "prisma studio",
|
|
"test": "echo \"Error: no test specified\" && exit 1"
|
|
},
|
|
"keywords": [
|
|
"ai",
|
|
"clinical",
|
|
"research",
|
|
"medical"
|
|
],
|
|
"author": "AI Clinical Dev Team",
|
|
"license": "ISC",
|
|
"dependencies": {
|
|
"@fastify/cors": "^11.1.0",
|
|
"@fastify/jwt": "^10.0.0",
|
|
"@prisma/client": "^6.17.0",
|
|
"@types/form-data": "^2.2.1",
|
|
"axios": "^1.12.2",
|
|
"dotenv": "^17.2.3",
|
|
"fastify": "^5.6.1",
|
|
"form-data": "^4.0.4",
|
|
"js-yaml": "^4.1.0",
|
|
"prisma": "^6.17.0",
|
|
"zod": "^4.1.12"
|
|
},
|
|
"devDependencies": {
|
|
"@types/js-yaml": "^4.0.9",
|
|
"@types/node": "^24.7.1",
|
|
"nodemon": "^3.1.10",
|
|
"pino-pretty": "^13.1.1",
|
|
"ts-node": "^10.9.2",
|
|
"tsx": "^4.20.6",
|
|
"typescript": "^5.9.3"
|
|
}
|
|
}
|