Files
smartmate/backend/agent2/通用能力接入文档.md
LoveLosita ddf4c09f69 Version: 0.8.0.dev.260326
后端:
将agent2中的schedule_refine史山代码融入了架构(等待review)
前端:
无
2026-03-26 11:51:27 +08:00

17 KiB
Raw Blame History

agent2 閫氱敤鑳藉姏鎺ュ叆鏂囨。

1. 鏂囨。鐩殑

鏈枃妗g敤浜庤鏄?agent2 鐩綍涓嬧€滈€氱敤鑳藉姏鈥濈殑杈圭晫銆佹斁缃綅缃€佹帴鍏ユ柟寮忎笌缁存姢瑕佹眰銆?

杩欓噷鐨勨€滈€氱敤鑳藉姏鈥濈壒鎸囷細

  1. 涓嶅彧鏈嶅姟浜庢煇涓€涓妧鑳介摼璺紝鑰屾槸鍙兘琚?chat銆乣quicknote銆乣taskquery銆乣schedule` 绛夊涓ā鍧楀叡鍚屽鐢ㄧ殑鑳藉姏銆?
  2. 涓庡叿浣撲笟鍔¤涔夊急鑰﹀悎锛屾娊鍑烘潵鍚庝笉浼氬己琛屾妸鏌愪釜鍗曚竴鎶€鑳界殑 prompt銆佺姸鎬佸瓧娈点€佷笟鍔¤鍒欐薄鏌撳埌鍏跺畠妯″潡銆?
  3. 鎶藉嚭鏉ュ悗锛岃兘澶熸槑鏄惧噺灏戞牱鏉夸唬鐮併€侀檷浣庨噸澶嶅疄鐜板拰鍚庣画杩佺Щ鎴愭湰銆?

鏈枃妗笉璐熻矗鎻忚堪鏌愪釜鍏蜂綋鎶€鑳界殑涓氬姟娴佺▼锛屾妧鑳借嚜韬殑鍥剧紪鎺掋€佺姸鎬佸瓧娈点€乸rompt 缁嗚妭锛屽簲缁х画鏀惧湪瀵瑰簲鎶€鑳界洰褰曟垨瀵瑰簲鍐崇瓥璁板綍涓淮鎶ゃ€?

2. 褰撳墠鐩綍鍒嗗眰

2.1 鎬诲叆鍙e眰

鏂囦欢锛?

  • entrance.go

鑱岃矗锛?

  1. 浣滀负 agent2 妯″潡瀵逛笂灞傛湇鍔$殑缁熶竴鍏ュ彛銆?
  2. 璐熻矗鎶娾€滆矾鐢卞櫒 + 鍚勬妧鑳?handler鈥濊閰嶅埌涓€璧枫€?
  3. 涓嶈礋璐e叿浣撴妧鑳介€昏緫锛屼笉璐熻矗鐩存帴璋冩ā鍨嬶紝涔熶笉璐熻矗宸ュ叿鎵ц銆?

閫傚悎鏀句粈涔堬細

  1. 妯″潡绾у叆鍙e璞°€?
  2. 閫氱敤娉ㄥ唽鏂规硶銆?
  3. 涓庘€滄€诲垎鍙戔€濇湁鍏崇殑鏈€灏忛棬闈㈠皝瑁呫€?

涓嶉€傚悎鏀句粈涔堬細

  1. 鏌愪釜鍏蜂綋鎶€鑳界殑鑺傜偣閫昏緫銆?
  2. 鍏蜂綋涓氬姟 DAO 璋冪敤銆?
  3. 鏌愪釜鎶€鑳界嫭鍗犵殑 prompt 鎴栫姸鎬佹満銆?

2.2 璺敱灞?

鐩綍锛?

  • router/

褰撳墠閫氱敤鑳藉姏锛?

  1. Dispatcher
  2. Resolver
  3. AgentRequest / AgentResponse
  4. Action 涓庤矾鐢辨帶鍒剁爜瑙f瀽

鑱岃矗锛?

  1. 缁熶竴澶勭悊鈥滆姹傝璧板摢鏉℃妧鑳介摼璺€濈殑鍒嗘祦闂銆?
  2. 鎻愪緵瀵逛笂灞傜ǔ瀹氱殑鍔ㄤ綔鏋氫妇涓庤姹傚3缁撴瀯銆?
  3. 鍏煎杩佺Щ鏈熺殑鏂版棫 action 璇箟锛岄伩鍏嶄笂灞傛湇鍔$洿鎺ヤ緷璧栨棫鐩綍銆?

閫傚悎鏀句粈涔堬細

  1. 閫氱敤璺敱鍗忚銆?
  2. 鎺у埗鐮佽В鏋愩€?
  3. 鍒嗗彂鍣ㄣ€?
  4. 鎵€鏈夋妧鑳藉叡鐢ㄧ殑璺敱璇锋眰/鍝嶅簲缁撴瀯銆?

涓嶉€傚悎鏀句粈涔堬細

  1. 鏌愪釜鎶€鑳藉唴閮ㄧ殑浜屾鍒ゆ柇銆?
  2. 鏌愪釜鎶€鑳戒笓灞炵殑 prompt銆?
  3. 鎶€鑳藉唴閮ㄩ噸璇曟垨鐘舵€佹祦杞€昏緫銆?

2.3 妯″瀷浜や簰灞?

鐩綍锛?

  • llm/

褰撳墠閫氱敤鑳藉姏锛?

  1. Client
  2. GenerateOptions
  3. TextResult
  4. BuildSystemUserMessages
  5. GenerateJSON
  6. ParseJSONObject
  7. MergeUsage / CloneUsage
  8. ark.go 涓殑 Ark 閫傞厤瀹炵幇

鑱岃矗锛?

  1. 缁熶竴鏀跺彛妯″瀷璋冪敤鎺ュ彛锛屽噺灏戝悇鎶€鑳介噸澶嶆嫾瑁?messages銆乣thinking銆乣temperature銆乣max_tokens`銆?
  2. 鎻愪緵閫氱敤 JSON 瑙f瀽涓?usage 鍚堝苟鑳藉姏銆?
  3. 鎶婂叿浣撳巶鍟?SDK 缁嗚妭灏介噺鍘嬪湪閫傞厤灞傦紝涓嶅悜涓婂眰鑺傜偣鎵╂暎銆?

閫傚悎鏀句粈涔堬細

  1. 鎵€鏈夋妧鑳介兘鍙兘澶嶇敤鐨勬ā鍨嬭皟鐢ㄥ3銆?
  2. 閫氱敤 JSON 鎻愬彇涓庡弽搴忓垪鍖栥€?
  3. 娴佸紡/闈炴祦寮忚皟鐢ㄧ殑缁熶竴閫傞厤鎺ュ彛銆?
  4. usage 鏀舵暃銆佺┖鍝嶅簲閿欒鏍煎紡鍖栥€?

涓嶉€傚悎鏀句粈涔堬細

  1. 鍙湇鍔′簬鏌愪竴涓妧鑳界殑 prompt 鏂囨銆?
  2. 鏌愪竴涓妧鑳界壒鏈夌殑杈撳嚭缁撴瀯浣撱€?
  3. 鏌愪竴涓妧鑳界嫭鍗犵殑鈥滄垚鍔熸枃妗堟鼎鑹测€濊鍒欍€?

璇存槑锛?

  1. 濡傛灉鍙槸鈥滃熀浜庨€氱敤 Client 鍐嶅寘涓€灞傛妧鑳戒笓鐢ㄥ嚱鏁扳€濓紝渚嬪 quicknote 鐨勮仛鍚堣鍒掕皟鐢紝杩欑浠g爜鍙互鏀惧湪 llm/锛屼絾鏂囦欢鍚嶅簲鏄庣‘甯︽妧鑳借涔夛紝閬垮厤璇涓哄畬鍏ㄩ€氱敤鑳藉姏銆?
  2. 鐪熸璺ㄦ妧鑳藉鐢ㄧ殑鍐呭锛屼紭鍏堟矇鍒?client.go銆乣ark.go銆乣json.go 杩欑被鍏叡鏂囦欢銆?

2.4 娴佽緭鍑哄崗璁眰

鐩綍锛?

  • stream/

褰撳墠閫氱敤鑳藉姏锛?

  1. OpenAI 鍏煎 chunk DTO
  2. reasoning chunk 鏋勯€?
  3. assistant chunk 鏋勯€?
  4. finish / done 杈撳嚭
  5. 闃舵鎺ㄩ€?emitter

鑱岃矗锛?

  1. 缁熶竴澶勭悊 SSE / OpenAI 鍏煎杈撳嚭鏍煎紡銆?
  2. 璁?service銆乬raph銆乶ode 鍙叧蹇冣€滄垜瑕佹帹浠€涔堝唴瀹光€濓紝鑰屼笉鏄嚜宸辨嫾 JSON銆?
  3. 涓哄悗缁墠绔崗璁崌绾ч鐣欑粺涓€淇敼鐐广€?

閫傚悎鏀句粈涔堬細

  1. chunk DTO銆?
  2. reasoning / content / finish 鐨勭粺涓€灏佽銆?
  3. 闃舵娑堟伅鎺ㄩ€佸櫒鎺ュ彛銆?

涓嶉€傚悎鏀句粈涔堬細

  1. 鏌愪釜鎶€鑳界殑闃舵鍛藉悕琛ㄣ€?
  2. 鏌愪釜鎶€鑳戒笓灞炵殑姝f枃鏂囨銆?
  3. 鍏蜂綋涓氬姟鐘舵€佸璞°€?

2.5 鍏变韩宸ュ叿灞?

鐩綍锛?

  • shared/

褰撳墠閫氱敤鑳藉姏锛?

  1. 鏃堕棿鏍煎紡鍖栦笌鍒嗛挓绾у綊涓€鍖?
  2. 娣辨嫹璐?
  3. 閫氱敤閲嶈瘯杈呭姪

鑱岃矗锛?

  1. 鎵胯浇绾伐鍏峰瀷銆佹棤涓氬姟璇箟銆佹棤鎶€鑳借€﹀悎鐨勮緟鍔╁嚱鏁般€?
  2. 浣滀负澶氫釜鎶€鑳介兘鑳界洿鎺ュ鐢ㄧ殑鏈€搴曞眰宸ュ叿灞傘€?

閫傚悎鏀句粈涔堬細

  1. 鏃堕棿宸ュ叿銆?
  2. clone 宸ュ叿銆?
  3. retry 甯姪鍑芥暟銆?
  4. 绾嚱鏁板瀷灏忓伐鍏枫€?

涓嶉€傚悎鏀句粈涔堬細

  1. 澶瑰甫鍏蜂綋鎶€鑳藉瓧娈靛悕鐨勫伐鍏枫€?
  2. 渚濊禆鏁版嵁搴撱€佺紦瀛樸€佹ā鍨嬨€佽矾鐢卞姩浣滅殑閫昏緫銆?

2.6 鎶€鑳藉唴閮ㄥ眰

鐩綍锛?

  • graph/
  • node/
  • prompt/
  • model/
  • chat/

鑱岃矗锛?

  1. 杩欏嚑灞備富瑕佹壙杞芥妧鑳藉唴閮ㄨ兘鍔涖€?
  2. 鍗充娇鍏朵腑鏌愪釜鏂囦欢鐜板湪浣嶄簬 agent2 鏍逛綋绯诲唴锛屽彧瑕佸畠甯︽槑鏄炬妧鑳借涔夛紝灏变笉瑕佽鍒ゆ垚鈥滈€氱敤鑳藉姏鈥濄€?

鍒ゆ柇鏍囧噯锛?

  1. 濡傛灉浠g爜閲屽ぉ鐒剁粦瀹氭煇涓妧鑳界姸鎬佺粨鏋勩€佹煇涓妧鑳介樁娈靛悕銆佹煇涓妧鑳?prompt 杈撳嚭濂戠害锛屼竴鑸笉搴旂‖鎶芥垚閫氱敤鑳藉姏銆?
  2. 濡傛灉鍙槸澶氫釜鎶€鑳介兘閲嶅浜嗗悓涓€娈垫牱鏉夸唬鐮侊紝涓旀娊鍑哄悗涓嶄細璁╂娊璞″彉褰紝灏卞簲璇ヨ瘎浼颁笅娌夈€?

2.7 鍥惧眰涓庤妭鐐瑰眰鐨勫崗浣滅害瀹?

杩欐槸褰撳墠 agent2 宸茬粡鏄庣‘涓嬫潵鐨勭粨鏋勭害鏉燂細

  1. graph/ 鍙礋璐b€滅敾鍥锯€濓細
    • 娉ㄥ唽鑺傜偣
    • 娣诲姞杈?
    • 娣诲姞鍒嗘敮
    • 缂栬瘧涓庤繍琛屽浘
  2. graph/ 涓嶅啀璐熻矗锛?
    • 棰濆鍒涘缓 runner 閫傞厤灞?
    • 鍦ㄥ浘鍐呯户缁爢璇锋眰绾т緷璧栬浆鍙戦€昏緫
    • 鐩存帴瀹炵幇鑺傜偣涓氬姟
  3. node/ 璐熻矗锛?
    • 瀹氫箟鑺傜偣瀹瑰櫒锛堜緥濡?QuickNoteNodes锛?
    • 閫氳繃瀵硅薄鏂规硶鐩存帴鍚?graph 鏆撮湶鍙寕杞借妭鐐?
    • 鍦ㄨ妭鐐规柟娉曞唴閮ㄦ秷璐硅姹傜骇渚濊禆

鎺ㄨ崘褰㈡€侊細

  1. graph 閲岀洿鎺ユ寕锛?
    • nodes.Intent
    • nodes.Priority
    • nodes.Persist
    • nodes.Exit
  2. 鍒嗘敮涔熺洿鎺ユ寕锛?
    • nodes.NextAfterIntent
    • nodes.NextAfterPersist
  3. 涓嶆帹鑽愬啀棰濆寮曞叆 runner -> node 杩欑杞帴灞傘€?

杩欐牱璁捐鐨勭洰鐨勶細

  1. 閬垮厤 graph 鏂囦欢闅忕潃妯″潡鍙樺鍐嶆闀挎垚鈥滃ぇ瑁呴厤鏂囦欢鈥濄€?
  2. 璁┾€滆姹傜骇渚濊禆娉ㄥ叆鈥濆洖鍒?node 灞傝嚜宸辩殑鑺傜偣瀹瑰櫒閲屻€?
  3. 璁╅槄璇昏矾寰勭ǔ瀹氭垚锛?
    • 鍏堢湅 graph 鐭ラ亾娴佺▼鍥?
    • 鍐嶈烦 node 鐪嬭妭鐐规柟娉曞疄鐜?
    • 涓嶉渶瑕佸湪 graph 鍜?runner 涓ゅ眰涔嬮棿鏉ュ洖璺炽€?

3. 浠€涔堝簲璇ユ娊鎴愰€氱敤鑳藉姏

婊¤冻浠ヤ笅浠绘剰涓ゆ潯锛屼竴鑸氨搴旇璁ょ湡璇勪及鎶藉叕鍏卞眰锛?

  1. 鍦ㄧ浜屼釜鎶€鑳介噷鍑虹幇浜嗘槑鏄鹃噸澶嶅疄鐜般€?
  2. 杩欐閫昏緫鏈川涓婁笉渚濊禆鏌愪釜鎶€鑳界嫭鍗犵姸鎬併€?
  3. 鎶藉嚭鏉ュ悗鎺ュ彛鍙互鍋氬埌鈥滃叆鍙傚皯銆佽亴璐f竻銆佽涔夌ǔ瀹氣€濄€?
  4. 涓婂眰閲嶅浠g爜涓昏鏄湪鍋氭牱鏉胯閰嶏紝鑰屼笉鏄笟鍔″喅绛栥€?

鍏稿瀷渚嬪瓙锛?

  1. 妯″瀷娑堟伅鎷艰銆?
  2. JSON 鎻愬彇涓庤В鏋愩€?
  3. usage 鍚堝苟銆?
  4. OpenAI chunk 鏋勯€犮€?
  5. 鏃堕棿褰掍竴鍖栥€?
  6. 娣辨嫹璐濅笌閲嶈瘯宸ュ叿銆?
  7. 鎬诲叆鍙h矾鐢变笌鎶€鑳藉垎鍙戙€?

4. 浠€涔堜笉搴旇寮鸿鎶藉叕鍏卞眰

鍑虹幇浠ヤ笅鎯呭喌鏃讹紝涓嶈涓轰簡鈥滅湅璧锋潵澶嶇敤鈥濊€岀‖鎶斤細

  1. 鎶藉畬涔嬪悗鍑芥暟绛惧悕鍙嶈€岃濉炰竴鍫嗘妧鑳戒笓灞炲弬鏁般€?
  2. 鍏叡灞傚紑濮嬬煡閬撴煇涓妧鑳界殑鐘舵€佸瓧娈点€侀樁娈靛悕銆侀敊璇枃妗堛€?
  3. 琛ㄩ潰鐩镐技锛屽疄鍒欐瘡涓妧鑳界殑涓氬姟绾︽潫瀹屽叏涓嶅悓銆?
  4. 涓轰簡澶嶇敤鑰屽紩鍏ュぇ閲?if action == xxx銆乣switch skill` 杩欑被鍒嗘敮銆?

鍏稿瀷渚嬪瓙锛?

  1. quicknote 鐨勪紭鍏堢骇鍒ゅ畾杈撳嚭缁撴瀯銆?
  2. taskquery 鐨勬煡璇㈣鍒掑瓧娈点€?
  3. schedule 鐨勬帓绋嬬姸鎬佸揩鐓с€?
  4. 鏌愪釜鎶€鑳界壒鏈夌殑 prompt 妯℃澘銆?

5. 鏂板閫氱敤鑳藉姏鐨勬帴鍏ユ楠?

5.1 鍏堝垽鏂槸鍚﹀€煎緱鎶?

  1. 鍏堢‘璁よ繖娈甸€昏緫鏄惁宸茬粡鍦ㄧ浜屽鍑虹幇閲嶅銆?
  2. 鍐嶇‘璁ゅ畠鏄笉鏄彲浠ヨ劚绂诲崟涓€鎶€鑳借涔夌嫭绔嬪瓨鍦ㄣ€?
  3. 濡傛灉鏆傛椂杩樹笉鑳芥娊锛屼篃瑕佸湪浠g爜娉ㄩ噴鎴栧喅绛栬褰曢噷鍐欐槑鍘熷洜锛岄伩鍏嶅悗闈㈢涓夋閲嶅鏃跺繕璁般€?

5.2 閫夋嫨钀界偣鐩綍

鎸夎亴璐d紭鍏堣惤鍒颁互涓嬬洰褰曪細

  1. 璺敱鍗忚涓庡垎鍙戯細router/
  2. 妯″瀷璋冪敤涓?JSON 瑙瀽锛歚llm/`
  3. 娴佽緭鍑哄崗璁細stream/
  4. 绾伐鍏凤細shared/
  5. 鎶€鑳戒笓灞炰絾鍙鐢ㄧ殑澹筹細鏀惧搴旀妧鑳借涔夋枃浠讹紝涓嶈浼鎴愬畬鍏ㄥ叕鍏卞眰

5.3 瀹氫箟鏈€灏忔帴鍙?

  1. 鍏堝畾涔夋渶灏忓彲澶嶇敤鎺ュ彛锛屽彧鏆撮湶涓婂眰鐪熸闇€瑕佺殑鑳藉姏銆?
  2. 涓嶈鎶婁笅灞?SDK銆丏AO銆佺紦瀛樺疄鐜扮粏鑺傜洿鎺ラ€忎紶鍒版墍鏈夎皟鐢ㄦ柟銆?
  3. 浼樺厛璁┾€滃叕鍏卞眰鐭ラ亾寰楁洿灏戔€濓紝鑰屼笉鏄鈥滀笂灞備负浜嗗鐢ㄨ杩煡閬撴洿澶氣€濄€?

5.4 琛ユ敞閲?

蹇呴』鍐欐竻妤氾細

  1. 杩欎釜閫氱敤鑳藉姏璐熻矗浠€涔堛€?
  2. 涓嶈礋璐d粈涔堛€?
  3. 涓轰粈涔堝畠閫傚悎鎶藉埌鍏叡灞傘€?
  4. 澶辫触鏃剁敱璋佸厹搴曘€?

5.5 琛ユ祴璇?

鑷冲皯瑕嗙洊锛?

  1. 姝e父璺緞銆?
  2. 鍏抽敭杈圭晫銆?
  3. 鏄庣‘鐨勫け璐ヨ矾寰勩€?

濡傛灉杩佺Щ鏈熸殏鏃舵病娉曞畬鏁磋ˉ榻愶紝涔熻浼樺厛淇濊瘉鍏叡鍑芥暟鏈韩鏈夋渶灏忓洖褰掓祴璇曘€?

5.6 鏇存柊鏈枃妗?

鍙鍑虹幇浠ヤ笅浠讳竴鎯呭喌锛屽繀椤诲悓姝ユ洿鏂版湰鏂囨。锛?

  1. 鏂板浜嗕竴涓€氱敤鑳藉姏銆?
  2. 璋冩暣浜嗘煇涓€氱敤鑳藉姏鐨勮惤鐐圭洰褰曘€?
  3. 淇敼浜嗘煇涓叕鍏辨帴鍙g殑鑱岃矗杈圭晫銆?
  4. 鍒犳帀浜嗘煇涓棫鐨勫叕鍏卞疄鐜帮紝骞剁敱鏂板疄鐜版浛浠c€?

6. 鎺ㄨ崘鎺ュ叆妯℃澘

鍙互鎸変笅闈㈣繖涓€濊矾鎺ュ叆锛?

  1. 鍏堝湪鎶€鑳戒唬鐮侀噷璇嗗埆閲嶅鐗囨銆?
  2. 鎻愮偧鍑衡€滄渶灏忓叕鍏卞嚱鏁?/ 鏈€灏忓叕鍏辩粨鏋勪綋 / 鏈€灏忓叕鍏辨帴鍙b€濄€?
  3. 鏀捐繘 router / llm / stream / shared 涔嬩竴銆?
  4. 鍏堣鏂版妧鑳芥帴杩欎釜鍏叡瀹炵幇銆?
  5. 鍐嶉€愭鍥炴敹鏃ф妧鑳介噷閲嶅鐨勮€佷唬鐮併€?
  6. 鏈€鍚庤ˉ鏈枃妗o紝璇存槑杩欎釜鑳藉姏鐜板湪褰掕皝绠°€佷笂灞傝鎬庝箞鐢ㄣ€?

7. 褰撳墠缁存姢瑕佹眰

  1. agent2 鐨勫叕鍏卞眰瑕佸敖閲忎繚鎸佲€滀綆鑰﹀悎銆佸己娉ㄩ噴銆佹槗杩佺Щ鈥濄€?
  2. 鏂版妧鑳藉紑鍙戞椂锛屼紭鍏堝鐢ㄨ繖閲屽凡鏈夌殑鍏叡鑳藉姏锛岃€屼笉鏄洿鎺ュ鍒舵棫鎶€鑳戒唬鐮併€?
  3. 濡傛灉鍙戠幇鏌愭閫昏緫宸茬粡鍑虹幇绗簩浠藉疄鐜帮紝搴斾紭鍏堣瘎浼版娊鍏叡灞傦紝鑰屼笉鏄户缁啓绗笁浠姐€?
  4. 鍚庣画鍙鎵╁睍閫氱敤鑳藉姏锛屽繀椤诲悓姝ユ洿鏂版湰鏂囨。锛屽惁鍒欒涓鸿縼绉绘垨閲嶆瀯鏈畬鎴愩€?

8. 2026-03-25 schedule_refine 鎺ュ叆璁板綍

  1. 鏂板 agent2/node/schedule_refine_impl 鐩綍锛屽鍒舵壙鎺ュ師 agent/schedulerefine 鍏ㄩ噺杩炵画寰皟瀹炵幇锛坓raph + runner + state + nodes + tool + prompt锛夈€?2. agent2/node/schedule_refine.go 浣滀负 node 灞傜粺涓€闂ㄩ潰锛氬澶栨毚闇?ScheduleRefineState銆乣ScheduleRefineGraphRunInput銆乣NewScheduleRefineState銆乣RunScheduleRefineGraph銆乣FinalHardCheckPassed銆?3. agent2/node/schedule_refine_tool.go 淇濈暀鍙屾枃浠舵牸灞€涓殑宸ュ叿鎵胯浇浣嶏紝褰撳墠宸ュ叿鍏蜂綋瀹炵幇涓嬫矇鍦?agent2/node/schedule_refine_impl/tool.go銆?4. agent2/graph/schedule.go 宸叉柊澧?RunScheduleRefineGraph锛岄€氳繃 node 闂ㄩ潰杩涘叆杩炵画寰皟鍥俱€?5. service/agentsvc/agent_schedule_refine.go 宸插垏娴佸埌 agent2锛氱姸鎬佸垵濮嬪寲銆佸浘鎵ц銆佺粓瀹¢€氳繃鍒ゅ畾鍧囦笉鍐嶄緷璧栨棫 agent/schedulerefine銆?6. 鍏煎璇存槑锛氭棫 agent/schedulerefine 鐩綍鏆備繚鐣欙紝浣滀负杩佺Щ鏈熷苟琛屽疄鐜帮紝褰撳墠鐢熶骇鍏ュ彛宸叉寚鍚?agent2 閾捐矾銆?

9. 2026-03-26 schedule_refine 缁撴瀯淇锛堣ˉ璁帮級

  1. 绉婚櫎 agent2/node/schedule_refine_impl 鏍圭洰褰曞疄鐜帮紝鏀逛负鏀惧埌 agent2/node/schedule_refine_impl銆?2. agent2/node/schedule_refine.go 缁х画淇濈暀缁熶竴闂ㄩ潰鑱岃矗锛岄伩鍏?service/graph 鐩存帴渚濊禆缁嗚妭瀹炵幇銆?3. agent2/node/schedule_refine_tool.go 淇濈暀鍙屾枃浠舵牸灞€锛屽伐鍏峰疄鐜颁綅缃敼涓?agent2/node/schedule_refine_impl/tool.go銆?4. agent2/graph/schedule.go 娉ㄩ噴宸叉竻鐞嗕贡鐮侊紝graph 浠呰礋璐f牎楠屼笌缂栨帓銆?5. service/agentsvc/agent_schedule_refine.go 鍏ュ彛淇濇寔涓嶅彉锛屼粛瀹屽叏涓庢棫 backend/agent/* 瑙h€︺€?

10. 2026-03-26 schedule_refine 正式落地记录

  1. agent2/node/schedule_refine.go 已从“兼容门面”升级为正式节点实现,直接承载 contract / plan / slice / route / react / hard_check / summary 全链路逻辑。
  2. agent2/node/schedule_refine_tool.go 已承接全部微调工具实现,当前 schedule_refinenode 层落为“双文件结构”,不再依赖 _impl 子目录。
  3. agent2/model/schedule_refine.go 继续作为 refine 状态与默认预算的正式归属,node 层仅复用状态别名与初始化入口,避免再维护第二份 state。
  4. agent2/prompt/schedule_refine.go 已同步承接 refine 的正式 prompt删除了 _impl/prompt.go 这一份重复定义。
  5. agent2/graph/schedule.go 已改为像 schedule_plan 一样在 graph 层真实组图,调用 NewScheduleRefineNodes 挂载节点,不再绕回 _impl 的独立运行入口。
  6. 当前生产切流点保持不变:service/agentsvc/agent_schedule_refine.go 仍从 agent2 入口进入,但底层已完全切到新架构实现。
  7. 本轮评估过把“模型调用 / JSON 解析 / ReAct 输出恢复 / 截断文本”等 helper 继续上提到更高公共层;暂未抽出的原因是 schedule_refineschedule_plan 在输出契约、错误恢复、工具门禁、终审收口上仍存在较强领域差异,当前强行抽象会把公共层做成“带业务分支的半成品”,因此先保留在各自能力域内,等待下一轮出现更稳定的第三处复用后再统一抽象。