Major Changes: - Add StreamingService with OpenAI Compatible format - Upgrade Chat component V2 with Ant Design X integration - Implement AIA module with 12 intelligent agents - Update API routes to unified /api/v1 prefix - Update system documentation Backend (~1300 lines): - common/streaming: OpenAI Compatible adapter - modules/aia: 12 agents, conversation service, streaming integration - Update route versions (RVW, PKB to v1) Frontend (~3500 lines): - modules/aia: AgentHub + ChatWorkspace (100% prototype restoration) - shared/Chat: AIStreamChat, ThinkingBlock, useAIStream Hook - Update API endpoints to v1 Documentation: - AIA module status guide - Universal capabilities catalog - System overview updates - All module documentation sync Tested: Stream response verified, authentication working Status: AIA V2.0 core completed (85%)
218 lines
10 KiB
Markdown
218 lines
10 KiB
Markdown
# **<2A>鞟內霂滨恣<E6BBA8><E681A3>頂蝏煺<E89D8F><E785BA>煺漣<E785BA>臬<EFBFBD><E887AC>啣漲憸<E6BCB2><E686B8><EFBFBD>寞<EFBFBD><E5AF9E><EFBFBD><EFBFBD>航挽霈?*
|
||
|
||
<EFBFBD><EFBFBD>﹝<EFBFBD><EFBFBD>𧋦嚗?v1.1
|
||
<EFBFBD>嗆<EFBFBD><EFBFBD><EFBFBD> 敺<><E695BA><EFBFBD>?
|
||
隡睃<EFBFBD>蝥改<EFBFBD> P1 (<28>詨<EFBFBD><E8A9A8>𡁶鍂<F0A181B6>賢<EFBFBD>)
|
||
<EFBFBD><EFBFBD>鍂<EFBFBD>臬<EFBFBD>嚗?<3F>輸<EFBFBD>鈭?SAE (<28>煺漣<E785BA>臬<EFBFBD>)
|
||
<EFBFBD>詨<EFBFBD><EFBFBD>嗆<EFBFBD>嚗?Postgres-Only \+ Hot Reload \+ Preview Mode \+ RBAC
|
||
|
||
## **1\. <20>詨<EFBFBD><E8A9A8><EFBFBD>艙嚗𡁏<E59A97><F0A1818F>煺漣<E785BA>臬<EFBFBD><E887AC>䀹<EFBFBD>靚<EFBFBD><E99D9A><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𡏭<EFBFBD>蝥扳虜銋𣂼㦤<F0A382BC>?*
|
||
|
||
隡删<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>烐<EFBFBD>蝔𧢲糓 撘<><E69298>𤑳㴓憓?\-\> 瘚贝<E7989A><E8B49D>臬<EFBFBD> \-\> <20>煺漣<E785BA>臬<EFBFBD><E887AC><EFBFBD>笆鈭𤾸之璅∪<E79285>摨𠉛鍂嚗𡿨LM App嚗㚁<E59A97>餈嗵<E9A488>瘚<EFBFBD><E7989A>摮睃銁<E79D83>游𦶢蝻粹萅嚗?*瘚贝<E7989A><E8B49D>臬<EFBFBD>敺<EFBFBD>𠗕璅⊥<E79285><E28AA5>笔<EFBFBD><E7AC94><EFBFBD><EFBFBD><EFBFBD>格㺭<E6A0BC>柴<EFBFBD><E69FB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>銝𠹺<E98A9D><F0A0B9BA><EFBFBD><EFBFBD> Token 瘨<><E798A8>?*<2A>?
|
||
<EFBFBD>祆䲮獢<EFBFBD><EFBFBD><EFBFBD>?**<2A>𦦵<EFBFBD>鈭抒㴓憓<E3B493><E68693>摨阡<E691A8>閫?(Production Preview Mode)<29>?* 蝑𣇉裦嚗<E8A3A6>僎撘訫<E69298> **<EFBFBD>𡏭<EFBFBD>霂閗<EFBFBD>?(Debugger)<29>?* 閫坿𠧧嚗?
|
||
1. **隞<><E99A9E>銝𡡞<E98A9D>蝵桀<E89DB5>蝳?*嚗䥪rompt 銝滚<E98A9D><E6BB9A>舐′蝻𣇉<E89DBB><F0A38789><EFBFBD><EFBFBD>蝚虫葡嚗諹<E59A97>峕糓<E5B395>唳旿摨㮖葉<E3AE96><E89189>𢆡<EFBFBD><F0A286A1><EFBFBD>蝵柴<E89DB5>?
|
||
2. **閫坿𠧧<E59DBF>𤥁<EFBFBD>霂?(RBAC)**嚗帋<E59A97>撅<EFBFBD><E69285>𣂷<EFBFBD>蝞∠<E89D9E><E288A0>矋<EFBFBD>蝟餌<E89D9F><E9A48C>舀<EFBFBD> **<EFBFBD>𡏭<EFBFBD>霂閗<EFBFBD><EFBFBD><EFBFBD>?*嚗<><E59A97>銝游<E98A9D>銝枏振<E69E8F><E68CAF>rompt 撌亦<E6928C>撣<EFBFBD><E692A3>閫坿𠧧<E59DBF><F0A0A7A7>蘨閬<E898A8>𥅾<EFBFBD>?prompt:debug <20><><EFBFBD>嚗<EFBFBD>朖<EFBFBD>臬銁<E887AC>煺漣<E785BA>臬<EFBFBD>撘<EFBFBD><E69298>航<EFBFBD>霂閙芋撘譌<E69298>?
|
||
3. **<EFBFBD>啣漲頝舐眏**嚗𡁶頂蝏<E9A082>覔<EFBFBD>桀<EFBFBD><E6A180>齿<EFBFBD>雿𡏭<E99BBF><F0A18FAD><EFBFBD>頨思遢嚗<E981A2>糓<EFBFBD>血<EFBFBD><E8A180>航<EFBFBD>霂閙芋撘𧶏<E69298>嚗<EFBFBD>𢆡<EFBFBD><F0A286A1><EFBFBD>摰𡁜<E691B0>頧?**<2A>𨀣迤撘讐<E69298> (Active)<29>?* 餈䀹糓 **<EFBFBD>𡏭<EFBFBD>蝔輻<EFBFBD> (Draft)<29>?* <20><><EFBFBD>蝷箄<E89DB7><E7AE84>?
|
||
4. **<EFBFBD>笔<EFBFBD>撉諹<EFBFBD>**嚗朞<E59A97>霂閗<E99C82><E99697>虾隞亦凒<E4BAA6>乩蝙<E4B9A9>函<EFBFBD>鈭抒㴓憓<E3B493><E68693><EFBFBD>笔<EFBFBD><E7AC94>唳旿嚗<E697BF><E59A97> ASL <20>?20 蝭<><E89DAD><EFBFBD>殷<EFBFBD><E6AEB7>仿<EFBFBD>霂<EFBFBD>鰵 Prompt <20><><EFBFBD><EFBFBD>頣<EFBFBD>蝖株恕<E6A0AA>㰘秤<E3B098>𦒘<EFBFBD><F0A69298>桀<EFBFBD>撣<EFBFBD><E692A3>?
|
||
## **2\. 蝟餌<E89D9F><E9A48C>嗆<EFBFBD>霈曇恣**
|
||
|
||
### **2.1 <20>嗆<EFBFBD><E59786>?*
|
||
|
||
graph TD
|
||
User\[<5B>桅<EFBFBD>𡁶鍂<F0A181B6>愧] \--\>|霂瑟<E99C82>銝𡁜𦛚| API\_Gateway
|
||
Debugger\[靚<><E99D9A><EFBFBD>?銝枏振\] \--\>|霂瑟<E99C82>銝𡁜𦛚| API\_Gateway
|
||
Debugger \--\>|蝞∠<E89D9E> Prompt| Admin\_Dashboard
|
||
|
||
subgraph "<22>輸<EFBFBD>鈭?SAE (<28>煺漣<E785BA>臬<EFBFBD>)"
|
||
API\_Gateway\[Nginx\] \--\> Backend\_App
|
||
|
||
subgraph "Node.js Backend Pods (憭𡁜<E686AD>靘?"
|
||
Backend\_App\[Backend Service\]
|
||
|
||
PromptService\[Prompt Service\]
|
||
MemoryCache\[<5B><><EFBFBD>蝻枏<E89DBB> (Map)\]
|
||
DebugSet\[靚<><E99D9A>隡朞<E99AA1><E69C9E><EFBFBD><EFBFBD> (Set)\]
|
||
|
||
Backend\_App \--\>|1. <20>瑕<EFBFBD> Prompt| PromptService
|
||
PromptService \--\>|2. <20>亦<EFBFBD>摮?DB| MemoryCache
|
||
PromptService \--\>|3. <20>⊿<EFBFBD> Debug <20><><EFBFBD>| DebugSet
|
||
end
|
||
end
|
||
|
||
subgraph "RDS PostgreSQL"
|
||
DB\[(Database)\]
|
||
PlatformTable\[Users & Permissions Table\]
|
||
PromptTable\[Prompt Versions Table\]
|
||
|
||
PromptService \--\>|4. <20>匧<EFBFBD> Active/Draft| DB
|
||
Admin\_Dashboard \--\>|5. <20>湔鰵/<2F>穃<EFBFBD>| DB
|
||
DB \--\>|6. NOTIFY prompt\_update| PromptService
|
||
end
|
||
|
||
### **2.2 <20>詨<EFBFBD><E8A9A8>寞<EFBFBD>?*
|
||
|
||
1. **Postgres-Only**嚗𡁜⏚<F0A1819C>?PostgreSQL <20>?LISTEN/NOTIFY <20>箏<EFBFBD>摰䂿緵憭𡁜<E686AD>靘讠<E99D98>摮睃<E691AE>甇伐<E79487><E4BC90>𣳇<EFBFBD>撘訫<E69298> Redis<69>?
|
||
2. **<EFBFBD>删𠶖<EFBFBD><EFBFBD>挽霈?*嚗鋽ebugSet <20>?MemoryCache <20><><EFBFBD><EFBFBD>典銁<E585B8><E98A81><EFBFBD>銝哨<E98A9D><E593A8>滚<EFBFBD><E6BB9A>唳旿摨枏<E691A8><E69E8F>唳<EFBFBD>蝏<EFBFBD><E89D8F><EFBFBD>湔<EFBFBD>扼<EFBFBD>?
|
||
3. **<EFBFBD>嗡噩<EFBFBD>交<EFBFBD>?*嚗𡁏芦<F0A1818F>𡁶鍂<F0A181B6>瑕<EFBFBD><E79195>冽<EFBFBD><E586BD>乩<EFBFBD><E4B9A9>?Prompt 甇<>銁鋡怨<E98BA1><E680A8>湛<EFBFBD><E6B99B>芣<EFBFBD>撘<EFBFBD><E69298>臭<EFBFBD> Debug 璅∪<E79285><E288AA><EFBFBD>鸌摰朞<E691B0><E69C9E>脰<EFBFBD><E884B0>见<EFBFBD><E8A781>睃<EFBFBD><E79D83>?
|
||
## **3\. <20>唳旿摨㮖<E691A8><E3AE96><EFBFBD><EFBFBD>霈曇恣**
|
||
|
||
### **3.1 <20>鞟內霂?Schema (capability\_schema)**
|
||
|
||
霂瑕<EFBFBD>隞乩<EFBFBD> Schema 瘛餃<E7989B><E9A483>?backend/prisma/schema.prisma <20>?capability\_schema <20>典<EFBFBD><E585B8>?
|
||
// \--- Prompt Management System \---
|
||
|
||
model PromptTemplate {
|
||
id Int @id @default(autoincrement())
|
||
code String @unique // <20>臭<EFBFBD><E887AD><EFBFBD><EFBFBD>蝚佗<E89D9A>憒?'ASL\_SCREENING\_TitleAbstract'
|
||
name String // 鈭箇掩<E7AE87>航粉<E888AA>滨妍
|
||
module String // <20><>撅墧芋<E5A2A7>? ASL, DC, AIA, IIT
|
||
description String?
|
||
variables Json? // 憸<><E686B8><EFBFBD>㗛<EFBFBD><E3979B>𡑒”嚗<E2809D><E59A97> \["title", "abstract"\]
|
||
|
||
versions PromptVersion\[\]
|
||
|
||
createdAt DateTime @default(now()) @map("created\_at")
|
||
updatedAt DateTime @updatedAt @map("updated\_at")
|
||
|
||
@@map("prompt\_templates")
|
||
@@schema("capability\_schema")
|
||
}
|
||
|
||
model PromptVersion {
|
||
id Int @id @default(autoincrement())
|
||
templateId Int @map("template\_id")
|
||
version Int // <20><>𧋦<EFBFBD>?1, 2, 3...
|
||
content String // <20>鞟內霂滚<E99C82>摰?(Handlebars/Mustache <20>澆<EFBFBD>)
|
||
modelConfig Json? // 璅∪<E79285><E288AA><EFBFBD>㺭: { "temperature": 0.1, "model": "deepseek-chat" }
|
||
status PromptStatus @default(DRAFT)
|
||
changelog String? // 靽格㺿霂湔<E99C82>
|
||
createdBy String? @map("created\_by") // 霈啣<E99C88><E595A3>臬𪑛銝芾<E98A9D>霂閗<E99C82><E99697>耨<EFBFBD>寧<EFBFBD>
|
||
|
||
template PromptTemplate @relation(fields: \[templateId\], references: \[id\])
|
||
|
||
createdAt DateTime @default(now()) @map("created\_at")
|
||
|
||
@@map("prompt\_versions")
|
||
@@schema("capability\_schema")
|
||
|
||
// 憭滚<E686AD>蝝W<E89D9D>隡睃<E99AA1><E79D83>亥砭
|
||
@@index(\[templateId, status\])
|
||
}
|
||
|
||
enum PromptStatus {
|
||
DRAFT // <20>厩阮 (隞?Debug 璅∪<E79285><E288AA>航<EFBFBD>)
|
||
ACTIVE // 蝥蹂<E89DA5><E8B982><EFBFBD><EFBFBD> (暺䁅恕<E48185>航<EFBFBD>)
|
||
ARCHIVED // 敶埝﹝
|
||
|
||
@@schema("capability\_schema")
|
||
}
|
||
|
||
### **3.2 <20><><EFBFBD>摰帋<E691B0> (platform\_schema)**
|
||
|
||
<EFBFBD>拍鍂<EFBFBD>唳<EFBFBD><EFBFBD>?RBAC 蝟餌<E89D9F>嚗屸<E59A97>閬<EFBFBD>銁 permissions 銵其葉憸<E89189>蔭隞乩<E99A9E><E4B9A9><EFBFBD><EFBFBD>嚗?
|
||
| <20><><EFBFBD> Code | <20>讛膩 | <20><>鍂閫坿𠧧 |
|
||
| :---- | :---- | :---- |
|
||
| prompt:view | <20>亦<EFBFBD> Prompt <20>𡑒”<F0A19192>諹祕<E8ABB9>?| 蝞∠<E89D9E><E288A0>? 靚<><E99D9A><EFBFBD>?|
|
||
| prompt:edit | <20>𥕦遣<F0A595A6>厩阮<E58EA9><E998AE>耨<EFBFBD>?Draft <20><>𧋦 | 蝞∠<E89D9E><E288A0>? 靚<><E99D9A><EFBFBD>?|
|
||
| **prompt:debug** | **<EFBFBD>詨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>**嚗𡁜<E59A97><F0A1819C>?<3F>喲𡡒靚<F0A1A192><E99D9A>璅∪<E79285> | **蝞∠<E89D9E><E288A0>? 靚<><E99D9A><EFBFBD>?* |
|
||
| prompt:publish | 撠?Draft <20>穃<EFBFBD>銝?Active | 蝞∠<E89D9E><E288A0>? 韏<>楛靚<E6A59B><E99D9A><EFBFBD>?|
|
||
|
||
撱箄悅<EFBFBD>𥕦遣銝<EFBFBD>銝芣鰵閫坿𠧧 **PROMPT\_ENGINEER**嚗諹<E59A97>鈭<EFBFBD><E988AD>餈唳<E9A488><E594B3>㗇<EFBFBD><E39787>僐<EFBFBD>?
|
||
## **4\. <20>𡒊垢<F0A1928A>詨<EFBFBD>摰䂿緵 (PromptService)**
|
||
|
||
<EFBFBD><EFBFBD>辣頝臬<EFBFBD>嚗颹ackend/src/common/capabilities/prompt/prompt.service.ts
|
||
|
||
### **4.1 <20>詨<EFBFBD><E8A9A8>餉<EFBFBD>**
|
||
|
||
* **setDebugMode(userId, enabled)**:
|
||
1. **<EFBFBD>湔<EFBFBD>**嚗𡁻<E59A97><F0A181BB><EFBFBD><EFBFBD><EFBFBD>亥砲 userId <20>臬炏<E887AC>交<EFBFBD> prompt:debug <20><><EFBFBD>嚗<EFBFBD><E59A97>朞<EFBFBD> UserContext <20>𡝗䰻摨橒<E691A8><E6A992><EFBFBD>蘨<EFBFBD>㗇𥅾<E39787>㗇<EFBFBD><E39787>鞟<EFBFBD><E99E9F>冽<EFBFBD><E586BD><EFBFBD>捂<EFBFBD>惩<EFBFBD> Debug <20><><EFBFBD><EFBFBD>?
|
||
2. **<EFBFBD>嗆<EFBFBD><EFBFBD>輕<EFBFBD>?*嚗𡁜銁<F0A1819C><E98A81><EFBFBD>銝剔輕<E58994>?Set\<string\>嚗諹扇敶訫<E695B6><E8A8AB>臭<EFBFBD>靚<EFBFBD><E99D9A>璅∪<E79285><E288AA><EFBFBD>鍂<EFBFBD>?ID<49>?
|
||
* **get(code, variables, userId)**:
|
||
1. 璉<><E79289>?userId <20>臬炏<E887AC>?debugUsers <20><><EFBFBD>銝准<E98A9D>?
|
||
2. **<EFBFBD>?*嚗帋<E59A97><E5B88B><EFBFBD>䰻霂X㺭<EFBCB8>桀<EFBFBD>銝剔𠶖<E58994><F0A0B696>蛹 DRAFT <20><><EFBFBD><EFBFBD>啁<EFBFBD><E59581>研<EFBFBD>?
|
||
3. **<EFBFBD>?*嚗<><E59A97><EFBFBD>?Draft嚗㚁<E59A97><E39A81>亥砭<E4BAA5><E7A0AD><EFBFBD>蝻枏<E89DBB>銝剔<E98A9D> ACTIVE <20><>𧋦<EFBFBD>?
|
||
4. **蝻枏<E89DBB><E69E8F>芸𦶢銝?*嚗帋<E59A97><E5B88B>唳旿摨𤘪䰻霂?ACTIVE <20><>𧋦撟嗅<E6929F><E59785>亦<EFBFBD>摮塩<E691AE>?
|
||
5. 雿輻鍂 Handlebars 皜脫<E79A9C><E884AB>㗛<EFBFBD><E3979B>?
|
||
### **4.2 <20>剜凒<E5899C>?(Hot Reload)**
|
||
|
||
* <20>穃𨯬 Postgres <20>?prompt\_update 憸煾<E686B8><E785BE>?
|
||
* <20>嗅<EFBFBD><E59785>𡁶䰻<F0A181B6>𠬍<EFBFBD>皜<EFBFBD>征<EFBFBD><E5BE81><EFBFBD>蝻枏<E89DBB><E69E8F>?
|
||
## **5\. API <20>亙藁霈曇恣**
|
||
|
||
### **5.1 蝞∠<E89D9E>蝡舀𦻖<E88880>?(PromptController)**
|
||
|
||
| <20>寞<EFBFBD> | 頝臬<E9A09D> | <20><><EFBFBD>閬<EFBFBD><E996AC> | <20>讛膩 |
|
||
| :---- | :---- | :---- | :---- |
|
||
| GET | /api/admin/prompts | prompt:view | <20>瑕<EFBFBD><E79195><EFBFBD><EFBFBD>?Prompt 璅⊥踎<E28AA5>𡑒” |
|
||
| GET | /api/admin/prompts/:id | prompt:view | <20>瑕<EFBFBD><E79195>孵<EFBFBD>璅⊥踎霂行<E99C82><E8A18C>𠰴<EFBFBD><F0A0B0B4>脩<EFBFBD><E884A9>?|
|
||
| POST | /api/admin/prompts/draft | prompt:edit | 靽嘥<E99DBD><E598A5>厩阮 (<28><><EFBFBD><EFBFBD>啁<EFBFBD><E59581>穿<EFBFBD><E7A9BF>嗆<EFBFBD><E59786>蛹 DRAFT) |
|
||
| POST | /api/admin/prompts/publish | prompt:publish | <20>穃<EFBFBD><E7A983><EFBFBD>𧋦 (<28>嗆<EFBFBD>?Draft \-\> Active) |
|
||
| POST | /api/admin/prompts/debug | **prompt:debug** | **撘<><E69298>唾<EFBFBD>霂閙芋撘?* ({ enabled: true }) |
|
||
|
||
### **5.2 銝𡁜𦛚<F0A1819C><F0A69B9A><EFBFBD>蝷箔<E89DB7> (ASL 璅∪<E79285>)**
|
||
|
||
<EFBFBD>?ASL 璅∪<E79285>銝剛<E98A9D><E5899B>?Prompt <20>塚<EFBFBD>**敹<>◆隡惩<E99AA1> userId**嚗𣬚頂蝏煺<E89D8F><E785BA>芸𢆡憭<F0A286A1><E686AD><EFBFBD>啣漲<E595A3>餉<EFBFBD>嚗?
|
||
// backend/src/modules/asl/services/screening.service.ts
|
||
|
||
import { promptService } from '@/common/capabilities/prompt/prompt.service';
|
||
|
||
export class ScreeningService {
|
||
async screenPaper(paper: any, userId: string) {
|
||
// <20>冽<EFBFBD><E586BD>繮<EFBFBD>?Prompt
|
||
// 憒<><E68692> userId <20>臬<EFBFBD><E887AC>臭<EFBFBD>靚<EFBFBD><E99D9A>璅∪<E79285><E288AA><EFBFBD><EFBFBD>𡏭<EFBFBD>霂閗<E99C82><E99697><EFBFBD>嘅<EFBFBD>餈䠷<E9A488>隡朞䌊<E69C9E>冽嚉<E586BD>?DRAFT <20>?Prompt
|
||
const prompt \= await promptService.get(
|
||
'ASL\_SCREENING\_TitleAbstract',
|
||
{ title: paper.title, abstract: paper.abstract },
|
||
userId
|
||
);
|
||
|
||
// 靚<>鍂 LLM...
|
||
return await llmGateway.chat(prompt);
|
||
}
|
||
}
|
||
|
||
## **6\. <20>滨垢蝞∠<E89D9E>蝡航挽霈?(Frontend-V2)**
|
||
|
||
<EFBFBD>?frontend-v2/src/modules/admin 銝𧢲鰵憓?Prompt 蝞∠<E89D9E>璅∪<E79285><E288AA>?
|
||
### **6.1 <20>屸𢒰<E5B1B8>蠘<EFBFBD>**
|
||
|
||
1. **<EFBFBD>𡑒”憿?*嚗𡁜<E59A97>蝷箸<E89DB7><E7AEB8>?Prompt 璅⊥踎<E28AA5>?
|
||
2. **<EFBFBD>典<EFBFBD>靚<EFBFBD><EFBFBD>撘<EFBFBD><EFBFBD>?*嚗?
|
||
* **雿滨蔭**嚗𡁶<E59A97><F0A181B6>a▲<EFBD81>典紡<E585B8>芣<EFBFBD><E88AA3>硋𢰧銝贝<E98A9D><E8B49D>祆筑<E7A586><E7AD91><EFBFBD>?
|
||
* **<2A><><EFBFBD><EFBFBD>批<EFBFBD>**嚗帋<E59A97>敶梶鍂<E6A2B6>瑟𥅾<E7919F>?prompt:debug <20><><EFBFBD><EFBFBD>嗆遬蝷箄砲撘<E7A0B2><E69298>喋<EFBFBD>?
|
||
* **<2A>嗆<EFBFBD><E59786><EFBFBD>擐?*嚗𡁜<E59A97><F0A1819C>臬<EFBFBD>嚗<EFBFBD><E59A97>蝡䠷▲<E4A0B7>典枂<E585B8>圈<EFBFBD><E59C88>脰郎<E884B0>𦠜辺嚗尠<E59A97>鎿<EFBFBD>儭?靚<><E99D9A>璅∪<E79285>撌脣<E6928C><E884A3>荔<EFBFBD><E88D94>典<EFBFBD><E585B8>齿迤<E9BDBF>其蝙<E585B6>刻<EFBFBD>蝔輻<E89D94> (DRAFT) <20>鞟內霂滩<E99C82>銵峕<E98AB5>雿鎿<E99BBF>腈<EFBFBD>?
|
||
3. **蝻𤥁<E89DBB><F0A4A581>?*嚗?
|
||
* <20>舀<EFBFBD> Markdown 擃䀝漁<E4809D>?
|
||
* <20>滢<EFBFBD><E6BBA2>𤩺覔<F0A4A9BA>格<EFBFBD><E6A0BC>𣂼𢆡<F0A382BC><F0A286A1>遬蝷綽<E89DB7>憒<EFBFBD><E68692>瘝⊥<E7989D> prompt:publish <20><><EFBFBD>嚗<EFBFBD><E59A97><EFBFBD>𨅯<EFBFBD>撣<EFBFBD><E692A3>脲<EFBFBD><E884B2>桃蔭<E6A183>啜<EFBFBD>?
|
||
### **6.2 <20>詨<EFBFBD>撌乩<E6928C>瘚?(Workflow)**
|
||
|
||
1. **<EFBFBD>箸艶**嚗帋葩摨𠹺<E691A8>摰?Dr. Wang (閫坿𠧧: Debugger) 閫匧<E996AB><E58CA7><EFBFBD>讃蝑偦<E89D91>厩<EFBFBD><E58EA9><EFBFBD>&<EFBFBD><EFBC86><EFBFBD>憭麄<E686AD>?
|
||
2. **靽格㺿**嚗鋽r. Wang <20>餃<EFBFBD>蝟餌<E89D9F>嚗諹<E59A97><E8ABB9>?Prompt 蝞∠<E89D9E>憿蛛<E686BF>靽格㺿 ASL\_SCREENING <20><><EFBFBD>蝷箄<E89DB7>嚗<EFBFBD><E59A97><EFBFBD>牐<EFBFBD>銝<EFBFBD><E98A9D>⊥<EFBFBD><E28AA5>斗<EFBFBD><E69697><EFBFBD><EFBFBD><EFBFBD>孵稬<E5ADB5>靝<EFBFBD>摮䁅<E691AE>蝔踱<E89D94>腈<EFBFBD>?
|
||
3. **靚<><E99D9A>**嚗鋽r. Wang <20>孵稬憿園<E686BF><E59C92>?**<EFBFBD>𨅯<EFBFBD><EFBFBD>航<EFBFBD>霂閙芋撘謿<EFBFBD>?*<2A>?
|
||
4. **撉諹<E69289>**嚗鋽r. Wang <20><>揢<EFBFBD>?ASL 銝𡁜𦛚憿菟𢒰嚗䔶<E59A97>隡惩<E99AA1>蝭<EFBFBD><E89DAD><EFBFBD>滨<EFBFBD><E6BBA8>嗵<EFBFBD><E597B5><EFBFBD>讃嚗𣬚<E59A97><F0A3AC9A>餉<EFBFBD>銵䎚<E98AB5>?
|
||
* *蝟餌<E89D9F><E9A48C>𡒊垢璉<E59EA2>瘚见<E7989A> Dr. Wang <20>?Debug <20>𡑒”銝哨<E98A9D><E593A8>㰘蝸 Draft <20>?Prompt<70>?
|
||
5. **蝖株恕**嚗𡁜<E59A97><F0A1819C>啁<EFBFBD><E59581>𨀣迤蝖桐<E89D96><E6A190>?
|
||
6. **<EFBFBD>穃<EFBFBD>**嚗鋽r. Wang <20>𧼮<EFBFBD>蝞∠<E89D9E>憿蛛<E686BF><E89B9B>孵稬<E5ADB5>𨅯<EFBFBD>撣<EFBFBD><E692A3>嘅<EFBFBD><E59885>𤥁<EFBFBD><F0A4A581><EFBFBD>𡁶䰻蝞∠<E89D9E><E288A0>睃<EFBFBD>撣<EFBFBD><E692A3><EFBFBD>?
|
||
7. **蝏𤘪<E89D8F>**嚗鋽r. Wang <20>喲𡡒靚<F0A1A192><E99D9A>璅∪<E79285><E288AA>?
|
||
## **7\. 摰墧鴌霈∪<E99C88>**
|
||
|
||
### **Phase 1: <20>箇<EFBFBD>霈暹鴌撱箄挽 (1-2憭?**
|
||
|
||
1. <20>𥕦遣<F0A595A6>唳旿摨栞” prompt\_templates, prompt\_versions<6E>?
|
||
2. <20>?permissions 銵其葉<E585B6>鍦<EFBFBD> prompt:\* <20>詨<EFBFBD><E8A9A8><EFBFBD><EFBFBD><EFBFBD>?
|
||
3. 摰䂿緵 PromptService <20>𡒊垢<F0A1928A>餉<EFBFBD><E9A489>?
|
||
### **Phase 2: 銝𡁜𦛚璅∪<E79285><E288AA>亙<EFBFBD> (<28>?ASL 撘<><E69298>穃<EFBFBD>甇?**
|
||
|
||
1. <20>典<EFBFBD><E585B8>?ASL 璅∪<E79285><E288AA>塚<EFBFBD><E5A19A>朞<EFBFBD> promptService.get() <20>瑕<EFBFBD> Prompt<70>?
|
||
### **Phase 3: 蝞∠<E89D9E>蝡?MVP (3-4憭?**
|
||
|
||
1. 撘<><E69298>穃<EFBFBD>蝡舐恣<E88890><E681A3><EFBFBD><EFBFBD>U<EFBFBD>?
|
||
2. 摰䂿緵<E482BF>典<EFBFBD>靚<EFBFBD><E99D9A>撘<EFBFBD><E69298>喟<EFBFBD>隞嗚<E99A9E>?
|
||
## **8\. 摰匧<E691B0>銝𡡞<E98A9D><F0A1A19E>?*
|
||
|
||
1. **<EFBFBD><EFBFBD><EFBFBD><EFBFBD>𠉛氖**嚗帋艇<E5B88B>潭<EFBFBD><E6BDAD>?prompt:debug <20><><EFBFBD>嚗屸俈甇X芦<EFBCB8>𡁶鍂<F0A181B6>瑁秤<E79181>亥<EFBFBD>霂閙芋撘譌<E69298>?
|
||
2. **摰∟恣<E2889F>亙<EFBFBD>**嚗䥪romptVersion 銵其葉<E585B6>?createdBy 摮埈挾敹<E68CBE>◆霈啣<E99C88>摰鮋<E691B0>靽格㺿鈭箇<E988AD> ID嚗䔶噶鈭舘蕭皞舀糓<E88880>芯<EFBFBD>靚<EFBFBD><E99D9A><EFBFBD><EFBFBD>耨<EFBFBD>嫣<EFBFBD> Prompt<70>?
|
||
3. **<EFBFBD>𨅯<EFBFBD><EFBFBD>箏<EFBFBD>**嚗帋誨<E5B88B><E8AAA8>葉靽萘<E99DBD> Hardcoded Prompt 雿靝蛹蝟餌<E89D9F>蝥批<E89DA5>摨𨰻<E691A8>?
|
||
## **9\. 蝏栞捏**
|
||
|
||
撘訫<EFBFBD> **<EFBFBD>𡏭<EFBFBD>霂閗<EFBFBD><EFBFBD><EFBFBD>?* 閫坿𠧧<E59DBF>?RBAC <20>箏<EFBFBD>嚗䔶蝙敺𡑒砲<F0A19192>寞<EFBFBD>銝滢<E98A9D><E6BBA2>臭<EFBFBD>銝芣<E98A9D><E88AA3>臬<EFBFBD><E887AC>堆<EFBFBD><E5A086>湔糓銝<E7B393>憟堒<E6869F><E5A092>渡<EFBFBD> **AIOps <20>譍<EFBFBD>瘚<EFBFBD><E7989A>**<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>捂銝𡁜𦛚銝枏振<EFBFBD>其<EFBFBD>撟脫贋蝥蹂<EFBFBD><EFBFBD>冽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𣂷<EFBFBD>嚗<EFBFBD><EFBFBD><EFBFBD>具<EFBFBD><EFBFBD>𡠺蝡见𧑐撖?AI <20><><EFBFBD>餈𥡝<E9A488>靚<EFBFBD><E99D9A>嚗<EFBFBD><E59A97>蝢𡡞<E89DA2><F0A1A19E><EFBFBD><EFBFBD>餌<EFBFBD><E9A48C>箸艶撖孵<E69296>蝖格<E89D96>抒<EFBFBD>擃䁅<E69383>瘙<EFBFBD><E79899> |