Files
assist/src/agent/__pycache__/goal_manager.cpython-310.pyc

170 lines
14 KiB
Plaintext
Raw Normal View History

o
<00><0F>i<EFBFBD>R<00>@s`dZddlZddlmZmZmZmZddlmZddlZddl m
Z
e<01> e <0C>Z Gdd<08>d<08>ZdS) u6
目标管理器
负责目标设定、跟踪和评估
<EFBFBD>N)<04>Dict<63>List<73>Any<6E>Optional)<01>datetime<6D>)<01>
QwenClientc
@s<>eZdZdZdd<03>Zdeeefdeeefdedeeeffdd <09>Zdeeefdeeefdefd
d <0B>Z deeefdeeefdedeeeffd d <0A>Z
deeefdeeefdedeeeffdd<0F>Z deeefdeeefdedeeeffdd<11>Z deeefdeeefdedeeeffdd<13>Z deeefdeeefdedeeeffdd<15>Zdeeefdeeefdedeeeffdd<17>Zdeeefdeeefdeeeffdd<19>Zdeeefdeeefdeeeffdd<1B>Zdeeefdeeefdeeeffdd<1D>Zdeeefdeeefdeeeffdd<1F>Zdeeefdeeefdeeeffd d!<21>Zdeeefdeeefdeeeffd"d#<23>Zd$ed%eeefdefd&d'<27>Zd(eeefdefd)d*<2A>Zd$edeeeffd+d,<2C>Zd(eeefdefd-d.<2E>Zd(eeefdefd/d0<64>Zd(eeefdefd1d2<64>Zd(eeefdefd3d4<64>Zdeeeeffd5d6<64>Z d@d8e!deeeeffd9d:<3A>Z"deeeffd;d<<3C>Z#deee!ffd=d><3E>Z$d?S)A<> GoalManageru目标管理器cCs4t<00>|_i|_g|_|j|j|j|j|jd<01>|_ dS)N<><05>problem_solving<6E>information_gathering<6E>task_execution<6F>analysis<69> communication)
r<00>
llm_client<EFBFBD> active_goals<6C> goal_history<72>_create_problem_solving_goal<61>"_create_information_gathering_goal<61>_create_task_execution_goal<61>_create_analysis_goal<61>_create_communication_goal<61>goal_templates<65><01>self<6C>r<00>@/Users/macos/Desktop/tsp-assist/assist/src/agent/goal_manager.py<70>__init__s <0C>zGoalManager.__init__<5F>intent<6E>request<73> current_state<74>returnc
<00>s<><00>zO|<00>||<02>}||jvr|j||||<03>IdH}n
|<00>|||<03>IdH}dt<03><04><00>d<03><01><00>}||d<t<03><04><00><06>|d<d|d<||j|<t<08> d|<06>d |<04><00><04>|WSt
yp}zt<08> d
|<07><00><02>|<00> ||<02>WYd}~Sd}~ww) u 创建目标NZgoal_z %Y%m%d_%H%M%S<>id<69>
created_at<EFBFBD>active<76>statusu创建目标: u
, 类型: u创建目标失败: ) <0A>_determine_goal_typer<00>_create_general_goalr<00>now<6F>strftime<6D> isoformatr<00>logger<65>info<66> Exception<6F>error<6F>_create_fallback_goal)rrrr <00> goal_type<70>goal<61>goal_id<69>errr<00> create_goal s$<02> 

<08><02>zGoalManager.create_goalcCsV|<01>dd<02>}gd<03>gd<04>gd<05>gd<06>gd<07>d<08>}|<04><01>D] \}}||vr(|Sqd S)
u确定目标类型<E7B1BB> main_intent<6E> general_query)Zproblem_consultationZissue_resolutionZtroubleshooting)Zinformation_queryZdata_collectionZresearch)Zwork_order_creationZtask_assignmentZaction_request)Z data_analysisZreport_generationZperformance_review)<03> notificationZmessage_deliveryZuser_interactionr
<00>general<61><02>get<65>items)rrrr5Zgoal_type_mappingr0Zintentsrrrr&?s <06><02>z GoalManager._determine_goal_typec <00><00><><00>dtj|dd<03><02>dtj|dd<03><02>d<05>}ddd<08>d |d<08>g}|jj|d
d <0B>}d |vr0|<00>||<02>S|d ddd}ddl}|<08>d||j<07>} | rUt<00>| <09> <09><00>}
d|
d<|
S|<00>||<02>S)u创建问题解决目标uV
请为以下问题解决请求创建目标:
用户意图: F<><01> ensure_ascii<69>
请求内容: u<>
请定义:
1. 目标描述
2. 成功标准
3. 所需步骤
4. 预期结果
5. 时间限制
6. 资源需求
请以JSON格式返回目标定义。
<20>systemuT你是一个目标设定专家擅长为问题解决任务设定清晰的目标。<E6A087><02>role<6C>content<6E>user<65>333333<33>?<3F><01> temperaturer.<00>choicesr<00>messagerCN<>\{.*\}r <00>type)
<EFBFBD>json<6F>dumpsr<00>chat_completion<6F>$_create_default_problem_solving_goal<61>re<72>search<63>DOTALL<4C>loads<64>group<75> rrrr <00>prompt<70>messages<65>result<6C>response_contentrP<00>
json_matchZ goal_datarrrrQs(<02> <04> <08><04>  z(GoalManager._create_problem_solving_goalc <00>r<)u创建信息收集目标uV
请为以下信息收集请求创建目标:
用户意图: Fr=r?u<>
请定义:
1. 信息收集范围
2. 信息质量要求
3. 收集方法
4. 验证标准
5. 整理格式
请以JSON格式返回目标定义。
r@uB你是一个信息收集专家擅长设定信息收集目标。rArDrErFr.rHrrIrCNrJr rK)
rLrMrrN<00> _create_default_information_goalrPrQrRrSrTrUrrrr~<00>(<02> <04> <08><04>  z.GoalManager._create_information_gathering_goalc <00>r<)u创建任务执行目标uV
请为以下任务执行请求创建目标:
用户意图: Fr=r?u<>
请定义:
1. 任务描述
2. 执行步骤
3. 完成标准
4. 质量要求
5. 时间安排
请以JSON格式返回目标定义。
r@uB你是一个任务执行专家擅长设定任务执行目标。rArDrErFr.rHrrIrCNrJr rK)
rLrMrrN<00>_create_default_task_goalrPrQrRrSrTrUrrrr<00>r\z'GoalManager._create_task_execution_goalc <00>r<)u创建分析目标uP
请为以下分析请求创建目标:
用户意图: Fr=r?u<>
请定义:
1. 分析范围
2. 分析方法
3. 分析深度
4. 输出格式
5. 质量指标
请以JSON格式返回目标定义。
r@u6你是一个分析专家擅长设定分析目标。rArDrErFr.rHrrIrCNrJrrK)
rLrMrrN<00>_create_default_analysis_goalrPrQrRrSrTrUrrrr<00>r\z!GoalManager._create_analysis_goalc <00>r<)u创建沟通目标uP
请为以下沟通请求创建目标:
用户意图: Fr=r?u<>
请定义:
1. 沟通对象
2. 沟通内容
3. 沟通方式
4. 预期效果
5. 反馈机制
请以JSON格式返回目标定义。
r@u6你是一个沟通专家擅长设定沟通目标。rArDrErFr.rHrrIrCNrJrrK)
rLrMrrN<00>"_create_default_communication_goalrPrQrRrSrTrUrrrrr\z&GoalManager._create_communication_goalc<00>s,<00>d|<01>dd<03>ddd<06>gd<07>dd d
d gd <0C>S) u创建通用目标r8r5<00>处理用户请求T<E6B182>ffffff<66>?)<02>
completion<EFBFBD>user_satisfaction)u 理解请求<E8AFB7> 执行任务u 返回结果u用户需求得到满足<E6BBA1>,r<00>knowledge_base<73>rK<00> description<6F>success_criteria<69>stepsZexpected_result<6C>
time_limitZresource_requirements<74>r:)rrrr rrrr'.s<02>
<04><06>z GoalManager._create_general_goalcCs$dddddd<05>gd<06>ddd d
gd <0B>S) u创建默认问题解决目标r u解决用户问题Tra)Zproblem_identifiedZsolution_providedrc)u 分析问题u寻找解决方案u 提供建议u 验证效果u'问题得到解决或提供有效建议rerfrrgr<00>rrrrrrrOB<00><04><06>z0GoalManager._create_default_problem_solving_goalcC<00>$dddddd<04>gd<05>dddd gd
<EFBFBD>S) u创建默认信息收集目标r u收集相关信息T)Zinformation_completeZinformation_accurateZinformation_relevant)u确定信息需求u搜索信息源u 收集信息u 整理信息u'提供准确、完整、相关的信息<E4BFA1><E681AF>rfZ search_toolsrgrrmrrrr[Rrnz,GoalManager._create_default_information_goalcCro) u创建默认任务执行目标r u执行指定任务T)Ztask_completedZ quality_metZtime_met)u 理解任务u 制定计划rdu 验证结果u任务成功完成iXZ
task_tools<EFBFBD>
monitoringrgrrmrrrr]brnz%GoalManager._create_default_task_goalcCro) u创建默认分析目标ru执行数据分析T)Zanalysis_completeZinsights_meaningfulZ report_clear)u 收集数据u 分析数据u 提取洞察u 生成报告u提供有价值的分析报告i<E5918A>Zanalytics_toolsZ data_sourcesrgrrmrrrr^rrnz)GoalManager._create_default_analysis_goalcCs"dddddd<04>gd<05>dddgd <09>S)
u创建默认沟通目标ru与用户沟通T)Zmessage_deliveredZresponse_receivedZunderstanding_achieved)u 准备消息u 发送消息u 等待响应u 确认理解u成功沟通并达成理解<E79086>xZcommunication_toolsrgrrmrrrr_<00>s<04><06>z.GoalManager._create_default_communication_goalcCsddddidgdddgd <09>S)
u创建备用目标<E79BAE>fallbackr`rbTu 处理请求u 返回响应<E5938D><Z basic_toolsrgrrmrrrr/<00>s<06>z!GoalManager._create_fallback_goalr2<00> progress_datac
<00>s<><00>z@||jvr
WdS|j|}||d<t<01><02><00><03>|d<|<00>|<03>r?d|d<t<01><02><00><03>|d<|j<05>|<03>|j|=t<07>d|<01>d<08><03>Wd St y\}zt<07>
d
|<04><00><02>WYd }~dSd }~ww) u更新目标进度F<E5BAA6>progress<73>
updated_at<EFBFBD> completedr%<00> completed_atu目标 u
已完成Tu更新目标进度失败: N) rrr(r*<00>_check_goal_completionr<00>appendr+r,r-r.)rr2rur1r3rrr<00>update_goal_progress<73>s&<02>


 <08><02>z GoalManager.update_goal_progressr1cCsN|<01>di<00>}|s
dS|<01>di<00>}|<02><01>D]\}}|<03>|<04>}||kr$dSqdS)u检查目标是否完成riTrvFr9)rr1rirv<00> criterionZrequired_value<75> actual_valuerrrrz<00>s  
<02>z"GoalManager._check_goal_completionc <00>s<><00>zN<7A>|jvr |j<00>}n<1C>dd<02>|jD<00>vr$t<02>fdd<04>|jD<00><01>}nddiWS<00>|<02>d<07>|<02>d<08>|<02>d <09>|<02>d
<EFBFBD>|<00>|<02>|<00>|<02>|<00>|<02>|<00>|<02>d <0B> }|WStyo}zt <09>
d |<04><00><02>dt |<04>iWYd }~Sd }~ww)u评估目标性能cSsg|]}|d<00>qS)r"r<00><02>.0<EFBFBD>grrr<00>
<listcomp><3E>sz9GoalManager.evaluate_goal_performance.<locals>.<listcomp>c3s <00>|] }|d<00>kr|VqdS)r"Nrr<00>r2rr<00> <genexpr><3E>s<02>z8GoalManager.evaluate_goal_performance.<locals>.<genexpr>r.u目标不存在rKr%r#ry) r2rKr%r#ry<00>duration<6F> success_rate<74>
efficiencyZ quality_scoreu评估目标性能失败: N) rr<00>nextr:<00>_calculate_goal_duration<6F>_calculate_success_rate<74>_calculate_efficiency<63>_calculate_quality_scorer-r+r.<00>str)rr2r1<00>
evaluationr3rr<>r<00>evaluate_goal_performance<63>s.<02>
 
<06> <08><02>z%GoalManager.evaluate_goal_performancecCsNt<00>|<01>dt<00><03><00><04><00><02>}|<01>d<02>rt<00>|d<00>}||<00><05>St<00><03>|<00><05>S)u计算目标持续时间r#ry)r<00> fromisoformatr:r(r*<00> total_seconds)rr1r#ryrrrr<><00>s

 z$GoalManager._calculate_goal_durationcCsx|<01>d<01>dkr dS|<01>d<01>dkrdS|<01>di<00>}|<01>di<00>}|s"dSd }|D]}|<02>|<05>||kr5|d
7}q&|t|<03>S) u计算成功率r%rx<00><00>?<3F>failed<65>rvrig<00>?r<00>)r:<00>len)rr1rvriZcompleted_criteriar}rrrr<><00>s  <02> z#GoalManager._calculate_success_ratecCs8|<00>|<01>}|<01>dd<02>}||krdStdd|||<00>S)u 计算效率rkrer<>r<>)r<>r:<00>max)rr1r<>rkrrrr<>s
 z!GoalManager._calculate_efficiencycCs |<00>|<01>}|<00>|<01>}||dS)u计算质量分数r)r<>r<>)rr1r<>r<>rrrr<>s

 z$GoalManager._calculate_quality_scorecCst|j<01><02><00>S)u获取活跃目标)<03>listr<00>valuesrrrr<00>get_active_goalsszGoalManager.get_active_goals<6C>
<00>limitcCs|jr |j| d<01>SgS)u获取目标历史N)r)rr<>rrr<00>get_goal_historyszGoalManager.get_goal_historycCsVt|j<01>t|j<02>}tdd<02>|jD<00><01>}t|j<01>}||||dkr$||nd|<00><03>d<04>S)u获取目标统计cSsg|] }|<01>d<00>dkr|<01>qS)r%rxrlrrrrr<>$sz3GoalManager.get_goal_statistics.<locals>.<listcomp>r)<05> total_goalsr<00>completed_goalsZcompletion_rateZ
goal_types)r<>rr<00>_get_goal_type_distribution)rr<>r<>rrrr<00>get_goal_statistics!s
<06>zGoalManager.get_goal_statisticscCsdi}|j<00><01>D]}|<02>dd<02>}|<01>|d<03>d||<q|jD]}|<02>dd<02>}|<01>|d<03>d||<q|S)u获取目标类型分布rK<00>unknownrr<>)rr<>r:r)r<00> distributionr1r0rrrr<>/s 
 z'GoalManager._get_goal_type_distributionN)r<>)%<25>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__doc__rrr<>rr4r&rrrrrr'rOr[r]r^r_r/<00>boolr|rzr<><00>floatr<74>r<>r<>r<>rr<><00>intr<74>r<>r<>rrrrr s<>
<02>
<02><02>

<EFBFBD>&
<02>
<02><02>

<EFBFBD>-
<02>
<02><02>

<EFBFBD>,
<02>
<02><02>

<EFBFBD>,
<02>
<02><02>

<EFBFBD>,
<02>
<02><02>

<EFBFBD>,
<02>
<02><02>

<EFBFBD>...... 
  r )r<><00>logging<6E>typingrrrrrrL<00>core.llm_clientr<00> getLoggerr<72>r+r rrrr<00><module>s