Files
multi-agent-bidding/app/__pycache__/bid_evaluator.cpython-310.pyc
T

61 lines
4.0 KiB
Plaintext
Raw Normal View History

2026-04-12 01:55:34 +08:00
o
R‰Úiã@s:dZddlmZmZddlmZmZmZGdddƒZdS)u=
竞标评估器 - 评估Agent竞标,选择最佳执行者
é)ÚDictÚListé)ÚBidÚTaskÚ AgentProfilec @seZdZdZddZddedededefd d
Z d e
defd d
Z de ede
e
efdefddZde ede
e
efde
de efddZdS)Ú BidEvaluatoru竞标评估器cCsddddddœ|_dS)Ng333333Ó?gš™™™™™É?çš™™™™™¹?©Ú
capabilityÚ
confidenceÚtime_efficiencyÚapproach_qualityÚ
historical©Úweights©Úself©rúS/home/xian/.openclaw/workspace-coder/works/multi-agent-bidding/app/bid_evaluator.pyÚ__init__ s  ûzBidEvaluator.__init__é,ÚbidÚagentÚmax_timeÚreturncshi}|j|d<|j|d<tdd|j|ƒ|d<ˆ |j¡|d<|j|d<tfdd „| ¡Dƒƒ}|S)
评估å•个竞标
Args:
bid: 竞标书
agent: Agent档案
max_time: æœ€å¤§å¯æŽ¥å—æ—¶é—´
Returns:
综åˆå¾—分 0-1
r r rrr
rrc3s"|] \}}ˆj||VqdS)Nr)Ú.0ÚvrrrÚ <genexpr>3s
 ÿ
ÿz,BidEvaluator.evaluate_bid.<locals>.<genexpr>) Úcapability_matchr ÚmaxÚestimated_timeÚ_rate_approachÚapproachÚ success_rateÚsumÚitems)rrrrÚscoresÚ final_scorerrrÚ evaluate_bids


 þzBidEvaluator.evaluate_bidr$cCs~d}d|vs d| ¡vr|d7}d|vsd|vsd| ¡vr"|d7}t|ƒdkr,|d7}d |vs6d
| ¡vr:|d7}t|d ƒS) u评估方案质é‡gà?uå¤‡é€‰Ú alternativer u错误u异常Úerrorédu步骤Ústepgð?)ÚlowerÚlenÚmin)rr$Úscorerrrr#:s 
zBidEvaluator._rate_approachÚbidsÚagentsc |sddifSi|D]/}| |j¡}|r:| ||¡}||||j|jtdd|jdƒ| |j¡|j dœdœˆ|j
<q ˆsBddifStˆ  ¡fddd }ˆ|}|d
|d ˆfS)
选择最佳竞标
Args:
bids: 竞标列表
agents: Agent档案字典
Returns:
(best_bid, best_agent, scores_dict)
Nrrrr
)r2rrÚdetailscs ˆ|dS)Nr2r)r©r(rrÚ<lambda>ys z.BidEvaluator.select_best_bid.<locals>.<lambda>)Úkeyrr) ÚgetÚagent_idr*r r r!r"r#r$r%ÚidÚkeys)rr3r4rrr2Ú best_bid_idÚbestrr6rÚselect_best_bidPs.
  
û ü
zBidEvaluator.select_best_bidÚselected_agent_idcCsbg}|D]}|j|kr | |j¡}|r | ||¡}| ||f¡q|jdddddd|DƒS)u
获å–备选Agent列表(按得分排åºï¼‰
Args:
bids: 竞标列表
agents: Agent档案字典
selected_agent_id: 已选择的AgentID
Returns:
备选Agent列表
cSs|dS)Nrr)Úxrrrr7sz0BidEvaluator.get_backup_agents.<locals>.<lambda>T)r8ÚreversecSsg|]\}}|qSrr)rÚsrrrÚ
<listcomp>sz2BidEvaluator.get_backup_agents.<locals>.<listcomp>)r:r9r*ÚappendÚsort)rr3r4r@Úbackuprrr2rrrÚget_backup_agents~s
  zBidEvaluator.get_backup_agentsN)r)Ú__name__Ú