From 25fa9d0a8de663e401aa5948d6595755050df663 Mon Sep 17 00:00:00 2001 From: Tiger Ren Date: Sun, 25 Aug 2024 23:26:43 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=B5=A2=E5=8D=95=E8=B7=AF?= =?UTF-8?q?=E5=BE=84=E5=8F=8D=E6=80=9D=E9=83=A8=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- analyze_won_criteria.py | 80 ++++++ calculate_action.py | 6 +- criteria_reflection.py | 228 ++++++++++++++++++ ...¡†æž¶æ¨¡æ¿ï¼ˆV3.0)-èµ¢å•路径-AI.xlsx | Bin 0 -> 165 bytes ...模æ¿ï¼ˆV3.0)-èµ¢å•路径- Manual.xlsx | Bin 0 -> 41451 bytes ...¡†æž¶æ¨¡æ¿ï¼ˆV3.0)-èµ¢å•路径-AI.xlsx | Bin 0 -> 45535 bytes .../AI_评价销售行动结果.txt | 105 ++++++++ doc/a.xml | 36 +++ test/test_agent_proxy.py | 75 +++++- 9 files changed, 526 insertions(+), 4 deletions(-) create mode 100644 analyze_won_criteria.py create mode 100644 criteria_reflection.py create mode 100644 data_doc/~$销售策略制定框架模æ¿ï¼ˆV3.0)-èµ¢å•路径-AI.xlsx create mode 100644 data_doc/销售策略制定框架模æ¿ï¼ˆV3.0)-èµ¢å•路径- Manual.xlsx create mode 100644 data_doc/销售策略制定框架模æ¿ï¼ˆV3.0)-èµ¢å•路径-AI.xlsx create mode 100644 data_intermediate/AI_评价销售行动结果.txt create mode 100644 doc/a.xml diff --git a/analyze_won_criteria.py b/analyze_won_criteria.py new file mode 100644 index 0000000..460afae --- /dev/null +++ b/analyze_won_criteria.py @@ -0,0 +1,80 @@ +from AgentProxy import AgentProxy + +# æ ¹æ®å®žé™…的销售行动结果和销售关键动作,结åˆAI的先验知识,æå‡ºé˜¶æ®µè½¬åŒ–标准 + +api_key = 'c6bbe7f48063a2c1' +api_secret = '5f8e7d3a97465cc099bf19bd1b70c266' +assistant_id = "66bb09a84673b57506fe7bbd" +agent = AgentProxy(assistant_id, api_key, api_secret) + +sales = [ + { + "stage": "02-evaluation", + "high_frequency_tasks": [ + "完æˆéœ€æ±‚确认与收集", + "å®ŒæˆæŠ€æœ¯è¯„ä¼°ä¸Žæµ‹è¯•", + "完æˆé¡¹ç›®ç«‹é¡¹ä¸Žé‡‡è´­æµç¨‹", + "完æˆå¸‚场调研与竞争分æž" + ], + "high_frequency_actions": [ + "客户接触与需求识别", + "äº§å“æ¼”示与方案æä¾›", + "商务谈判与åˆåŒå‡†å¤‡", + "项目支æŒä¸Žä¼˜åŒ–", + "内部å调与支æŒ" + ], + "next_stage": "03-qualification" + }, + { + "stage": "03-qualification", + "high_frequency_tasks": [ + "完æˆéœ€æ±‚确认与收集", + "å®ŒæˆæŠ€æœ¯è¯„ä¼°ä¸Žæµ‹è¯•", + "完æˆå•†åŠ¡è°ˆåˆ¤ä¸ŽåˆåŒå‡†å¤‡", + "完æˆå†…部审批与预算确认" + ], + "high_frequency_actions": [ + "客户关系维护", + "项目支æŒä¸Žä¼˜åŒ–", + "客户接触与需求识别", + "内部å调与支æŒ", + "商务谈判与åˆåŒå‡†å¤‡" + ], + "next_stage": "04-bidding/negotiating" + }, + { + "stage": "04-bidding/negotiating", + "high_frequency_tasks": [ + "完æˆéœ€æ±‚确认与收集", + "å®ŒæˆæŠ€æœ¯è¯„ä¼°ä¸Žæµ‹è¯•", + "完æˆé¡¹ç›®ç«‹é¡¹ä¸Žé‡‡è´­æµç¨‹", + "完æˆå¸‚场调研与竞争分æž" + ], + "high_frequency_actions": [ + "客户关系维护", + "åˆåŒå®¡æŸ¥ä¸Žè®¢å•处ç†", + "客户接触与需求识别", + "商务谈判与åˆåŒå‡†å¤‡" + ], + "next_stage": "closed won" + } +] + +for sale in sales: + stage = sale["stage"] + high_frequency_tasks = sale["high_frequency_tasks"] + high_frequency_actions = sale["high_frequency_actions"] + next_stage = sale["next_stage"] + prompt = f""" +你是一个销售领域的专家, +ä½ æ ¹æ®å½“å‰é”€å”®é˜¶æ®µ {stage} , +æŸå…¬å¸ç»Ÿè®¡å‡ºçš„高频销售阶段任务如下: +{high_frequency_tasks} +对应阶段的销售关键动作如下: +{high_frequency_actions} +请根æ®ä»¥ä¸Šä¿¡æ¯ï¼Œä»¥åŠä½ ä½œä¸ºç›¸å…³ä¸“å®¶çš„ç»éªŒï¼Œç»™å‡ºé’ˆå¯¹è¯¥é”€å”®é˜¶æ®µ{stage}转化到下一阶段{next_stage}的阶段转化标准,请注æ„转化标准ä¸è¦ç›´æŽ¥ä½¿ç”¨ä¸Šé¢ç»™å‡ºçš„高频任务和高频动作,而è¦åšä¸€å®šçš„æŠ½è±¡ã€æ€»ç»“ã€å½’纳,形æˆä¸€ä¸ªé€šç”¨çš„ã€æŠ½è±¡çš„è½¬åŒ–æ ‡å‡† +""" + + print(f"---------------stage:{stage}---------------") + # print(prompt) + print(agent.send_message(prompt)) \ No newline at end of file diff --git a/calculate_action.py b/calculate_action.py index 560ee3b..e9d4da5 100644 --- a/calculate_action.py +++ b/calculate_action.py @@ -4,7 +4,7 @@ import re import json # Add this line at the top of your script from AgentProxy import AgentProxy -with open('mapping.json', 'r') as file: +with open('./data_intermediate/mapping.json', 'r') as file: json_data = file.read() mapping = json.loads(json_data) @@ -13,7 +13,7 @@ print(len(mapping)) # Read the Excel file -df = pd.read_excel('analysis_result_top200.xlsx') +df = pd.read_excel('./data_intermediate/analysis_result_top200.xlsx') statistic = {} # Iterate through the "example" column @@ -42,7 +42,7 @@ for index, row in df.iterrows(): else: df.at[index, '销售动作'] = '' -df.to_excel('analysis_result_top200.xlsx', index=False) +# df.to_excel('analysis_result_top200.xlsx', index=False) print(statistic) diff --git a/criteria_reflection.py b/criteria_reflection.py new file mode 100644 index 0000000..ce232d9 --- /dev/null +++ b/criteria_reflection.py @@ -0,0 +1,228 @@ +""" +File: criteria_reflection.py +Description: 以专业咨询机构的赢å•路径为å‚考,结åˆå…¬å¸å®žé™…统计数æ®è¿›è¡Œåæ€ï¼Œæå‡ºæ”¹è¿›ç‰ˆæœ¬çš„èµ¢å•路径 + +Author: [Your Name] +Date: [Current Date] +""" +from AgentProxy import AgentProxy +import pandas as pd + +professional_won_path = [ + { + "销售阶段åç§°": "01-prospecting", + "客户采购行为": "", + "销售阶段任务": "了解客户信æ¯ã€ä¸Žå®¢æˆ·è¿›è¡Œäº¤æµï¼Œåˆæ­¥äº†è§£å®¢æˆ·éœ€æ±‚,并确定项目对接人,进入客户供应商åå•", + "关键获å–ä¿¡æ¯": "1.è”系人姓å\n2.部门\n3.èŒåŠ¡\n4.手机\n5.预估整体项目节点数\n6.CRM情况\n7.æ˜¯å¦æ˜¯ç‹¬ç«‹é¢„ç®—", + "销售关键动作": "1ã€äº†è§£å®¢æˆ·ç»„织架构,了解客户现有系统使用情况ã€ç«žå“使用情况\n2ã€åˆ¤æ–­åŒ¹é…度\n3ã€æ˜Žç¡®å…³é”®éƒ¨é—¨åŠå…¶å…³é”®äºº\n4ã€æ˜Žç¡®å®¢æˆ·æ˜¯å¦æœ‰å¯¹åº”预算", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "1. 交æµä¸­å®¢æˆ·è¾ƒä¸ºå¼€æ”¾ï¼Œèƒ½å‘ŠçŸ¥éœ€æ±‚,计划较为清晰;\n2. æ„¿æ„进一步需求沟通;\n3. äº¤æµæœ‰å¤šäººç”šè‡³æœ‰å¤šéƒ¨é—¨å‚与讨论;", + "阶段转化标准": "1.客户有需求\n2.有明确的项目è”系人" + }, + { + "销售阶段åç§°": "02-evaluation", + "客户采购行为": "", + "销售阶段任务": "收集客户信æ¯ï¼Œäº†è§£å®¢æˆ·å†…部预算情况ã€é¢„期的项目è½åœ°æ—¶é—´ã€äº§å“和数é‡ç­‰ï¼Œåˆ¤æ–­å•†æœºå¯é æ€§ï¼›ç»„织技术交æµï¼Œè®²è§£å…¬å¸è§£å†³æ–¹æ¡ˆï¼Œä¼ é€’å…¬å¸ä»·å€¼", + "关键获å–ä¿¡æ¯": "1ã€æ•´ç†éœ€æ±‚确认文档,客户确认\n2.在CRM录入组织架构,明确决策链和决策人\n3.预算是å¦å®Œæˆç”³æ‰¹\n4.是å¦è¿›PCC\n5.PCC是å¦å·²ç”³æ‰¹:6.PcC状æ€\n7.测试类型\n8.测试项(用例)", + "销售关键动作": "1ã€æ•´ç†éœ€æ±‚确认文档,客户确认\n2ã€åœ¨CRM录入组织架构,明确决策链和决策人\n3ã€äº†è§£å†³ç­–链的æ¯ä¸ªå®¢æˆ·åŠ¨åŠ›;\n4.å‘展线人\n5ã€ç»„织技术交æµï¼Œä¼ é€’å…¬å¸åŠäº§å“价值,引导客户的场景和我们的特性结åˆ\n6ã€ç»„织技术交æµï¼Œäº†è§£é¢„期的项目è½åœ°æ—¶é—´ã€äº§å“和数é‡ç­‰\n7.和客户确认是å¦éœ€è¦æµ‹è¯•\n8ã€å¯¹å®¢æˆ·æå‡ºçš„æµ‹è¯•需求进行评估,确定需求我们优势够,决定是å¦è·Ÿè¿›æµ‹è¯•", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "1.æ„¿æ„é€éœ²å†³ç­–链信æ¯ï¼Œé¢„ç®—ä¿¡æ¯ï¼Œå‹å•†ä¿¡æ¯ï¼Œæ—¶é—´ä¿¡æ¯ã€‚\n2. 能介ç»é«˜title的人\n3. 客户有对我们产å“的测试计划;", + "阶段转化标准": "1.客户有预算\n2.有明确的项目时间\n3.有预期的产å“和数é‡" + }, + { + "销售阶段åç§°": "03-qualification", + "客户采购行为": "", + "销售阶段任务": "收集ã€ç¡®è®¤é¡¹ç›®ç«‹é¡¹ä¿¡æ¯ï¼Œæ˜Žç¡®äº§å“和数é‡ï¼›\nç»„ç»‡æµ‹è¯•å¿…è¦æ€§å¹¶å¼•导客户åšpoc测试,验è¯åº”用场景和技术适用性ã€å¹³é¼ŽæˆåŠŸå…¥å›´", + "关键获å–ä¿¡æ¯": "1.立项批å¤\n2.立项时间\n3.立项金é¢\n(立项报告的内容)\n4.招标方å¼", + "销售关键动作": "1ã€å’Œå®¢æˆ·ç¡®è®¤æ˜¯å¦éœ€è¦æµ‹è¯•\n2ã€å¯¹å®¢æˆ·æå‡ºçš„æµ‹è¯•需求进行评估,确定需求我们优势够,决定是å¦è·Ÿè¿›æµ‹è¯•\n3ã€å¼•å¯¼å®¢æˆ·çš„æµ‹è¯•æ–¹æ¡ˆåˆ¶å®šï¼Œå¼•å¯¼å°†æˆ‘ä»¬ä¼˜åŠ¿ç‚¹ï¼ŒåŠ å…¥åˆ°æµ‹è¯•æ–¹æ¡ˆä¸­ï¼Œå¦‚ï¼šæ€§èƒ½ã€æ‰©å±•性ã€è¾¹ç•Œ\n4ã€åœ¨å…¬å¸å†…部组织测试资æº\n5ã€èŽ·å–客户内部的测试报告,了解真实的测试结论\n6ã€äº†è§£å®¢æˆ·å¯¹æµ‹è¯•结果的æ€åº¦å’Œå¯¹æ‰‹æƒ…况\n7ã€åšæµ‹è¯•æ­£å¼æ±‡æŠ¥ï¼Œå’Œå®¢æˆ·è¾¾æˆä¸€è‡´", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "1.支æŒå¯¹æˆ‘方有利的测试方案\n2. æä¾›å†…部真实的测试报告\n3.å†³ç­–é“¾äººå‘˜è®¤åŒæµ‹è¯•效果,客户愿æ„å¼•èæ›´é«˜å±‚领导汇报\n4.åŒæ–¹æ²Ÿé€šé¡¹ç›®è®¡åˆ’且达æˆä¸€è‡´\n5.主动邀请æä¾›æ‹›æ ‡å‚æ•°æˆ–æ±‡æŠ¥ææ–™", + "阶段转化标准": "1.项目预算批准ã€é¡¹ç›®å·²ç«‹é¡¹\n2.有确定产å“和数é‡ã€æˆ–\n3.完æˆåœºæ™¯åº”用/技术适用性验è¯ã€å®¢æˆ·ç¡®å®šå¹³é¼Žå…¥å›´ï¼ˆå®Œæˆpoc)" + }, + { + "销售阶段åç§°": "04-bidding/negotiating", + "客户采购行为": "", + "销售阶段任务": "确认项目是å¦éœ€è¦æ‹›æ ‡ï¼Œæå‰å½±å“招投标结果并赢得标书;若ä¸éœ€è¦æ‹›æ ‡ï¼Œåˆ™å®Œæˆå•†åŠ¡è°ˆåˆ¤ï¼Œç¡®è®¤ä»·æ ¼å’Œäº§å“å¯äº¤ä»˜æ²Ÿé€šä¸Žè¯„审", + "关键获å–ä¿¡æ¯": "1.æ˜¯å¦æŠ•æ ‡\n2.呿 ‡æ—¶é—´\n3.投标时间\n4.竞争对手\n5.对手产é…ç½®\n6.对手投标金é¢", + "销售关键动作": "1.制定关å•ç­–ç•¥åŠç«žäº‰ç­–ç•¥\n2.控制立项报告(对对手ä¸åˆ©çš„傿•°ï¼‰\n3.如果无法控制立项,制定应对策略\n4.创造机会与高层沟通汇报\n5.沟通交付计划åŠSOW\n6. 确定关键è”系人", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "1.å馈客户内部的进展和计划\n2. 客户内部立项æˆåŠŸ\n3.采纳我们æäº¤çš„æ ‡å‚数(或有利于我方)\n3. 对黑马和ç°çŠ€ç‰›çš„å¤„ç†ï¼Œæ„¿æ„æä¾›åº”对处ç†", + "阶段转化标准": "1.完æˆå¯äº¤ä»˜è¯„审;\n2.投标通过审批;\n3.投标结果确认赢标或完æˆå•†åŠ¡è°ˆåˆ¤ï¼Œç¡®å®šä»·æ ¼å’Œäº§å“" + }, + { + "销售阶段åç§°": "05-contract review", + "客户采购行为": "", + "销售阶段任务": "å‘èµ·åˆåŒå议审批申请,确认åˆåŒæ¡æ¬¾", + "关键获å–ä¿¡æ¯": "æ— ", + "销售关键动作": "", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "", + "阶段转化标准": "åˆåŒè¯„审通过,完æˆåˆåŒå商审批,确认åˆåŒæ¡æ¬¾" + }, + { + "销售阶段åç§°": "06-closed won", + "客户采购行为": "", + "销售阶段任务": "åˆåŒå½’档,项目赢å•", + "关键获å–ä¿¡æ¯": "æ— ", + "销售关键动作": "", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "", + "阶段转化标准": "åˆåŒå½’æ¡£" + }, + { + "销售阶段åç§°": "06-closed cancel", + "客户采购行为": "ç¡®è®¤é¡¹ç›®å–æ¶ˆåŽŸå› ", + "销售阶段任务": "å¤ç›˜é¡¹ç›®è¾“å•原因", + "关键获å–ä¿¡æ¯": "å–æ¶ˆåŽŸå› ", + "销售关键动作": "", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "", + "阶段转化标准": "1.å®¢æˆ·æ˜Žç¡®è¡¨ç¤ºå–æ¶ˆé¡¹ç›®\n2.投标确认状æ€ä¸ºè¾“å•" + } +] + +actual_won_path = [ + { + "销售阶段åç§°": "01-prospecting", + "客户采购行为": "", + "销售阶段任务": "", + "关键获å–ä¿¡æ¯": "1.è”系人姓å\n2.部门\n3.èŒåŠ¡\n4.手机\n5.预估整体项目节点数\n6.CRM情况\n7.æ˜¯å¦æ˜¯ç‹¬ç«‹é¢„ç®—", + "销售关键动作": "", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "1. 交æµä¸­å®¢æˆ·è¾ƒä¸ºå¼€æ”¾ï¼Œèƒ½å‘ŠçŸ¥éœ€æ±‚,计划较为清晰;\n2. æ„¿æ„进一步需求沟通;\n3. äº¤æµæœ‰å¤šäººç”šè‡³æœ‰å¤šéƒ¨é—¨å‚与讨论;", + "阶段转化标准": "1.客户有需求 2.有明确的项目è”系人" + }, + { + "销售阶段åç§°": "02-evaluation", + "客户采购行为": "", + "销售阶段任务": "完æˆéœ€æ±‚确认与收集\nå®ŒæˆæŠ€æœ¯è¯„ä¼°ä¸Žæµ‹è¯•\n完æˆå•†åŠ¡è¯„ä¼°ä¸Žå•†æœºç¡®è®¤\n完æˆå¸‚场调研与竞争分æž", + "关键获å–ä¿¡æ¯": "1.预算是å¦å®Œæˆç”³æ‰¹\n2.是å¦è¿›PCC\n3.PCC是å¦å·²ç”³æ‰¹\n4.PCC状æ€\n5.测试类型\n6.测试项(用例)", + "销售关键动作": "**客户接触与需求识别**\n**商务调研与åˆåŒå‡†å¤‡**\n**项目支æŒä¸Žä¼˜åŒ–**\n**内部å调与支æŒ**", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "1. **客户需求的深入ç†è§£ä¸Žç¡®è®¤**:\n- 积æžä¸»åŠ¨åœ°ä¸Žå®¢æˆ·æ²Ÿé€š,深入ç†è§£å®¢æˆ·çš„需求ã€é¢„算和业务目标。确ä¿å’Œæ˜Žç¡®é¢„算。\n- 客户愿æ„å‚与并进行多次沟通,以确认需求的具体细节,并帮助解决方案能够准确匹é…需求。\n\n2. **äº§å“æˆ–æœåŠ¡çš„åŒ¹é…度评估**:\n- ååŠ©ç»„ç»‡äº§å“æ¼”示或æœåŠ¡æ–¹æ¡ˆè¯´æ˜Žä¼š,充分展示我们产å“的特点,包括技术能力ã€åŠŸèƒ½ç‰¹æ€§å’Œæ€§èƒ½æŒ‡æ ‡ã€‚\n- 需è¦è¿›è¡Œå¿…è¦çš„æŠ€æœ¯è¯„ä¼°å’Œæµ‹è¯•ï¼Œä»¥è¯æ˜Žäº§å“或æœåŠ¡çš„æœ‰æ•ˆæ€§å’Œå¯é æ€§ã€‚\n\n3. **客户的积æžè®¤çŸ¥ä¸ŽæŽ¥å—度**:\n- 客户对我们的解决方案表现出浓厚兴趣,并对其潜在价值有清晰认识。", + "阶段转化标准": "" + }, + { + "销售阶段åç§°": "03-qualification", + "客户采购行为": "", + "销售阶段任务": "完æˆéœ€æ±‚确认与收集\nå®ŒæˆæŠ€æœ¯è¯„ä¼°ä¸Žæµ‹è¯•\n完æˆå•†åŠ¡è¯„ä¼°ä¸Žå•†æœºç¡®è®¤\n完æˆé¡¹ç›®ç«‹é¡¹ä¸ŽåˆåŒå‡†å¤‡", + "关键获å–ä¿¡æ¯": "1.立项批å¤\n2.立项时间\n3.立项金é¢\n(立项报告的内容)\n4.招标方å¼", + "销售关键动作": "**客户关系管ç†**\n**项目支æŒä¸Žä¼˜åŒ–**\n**内部å调与支æŒ**\n**商务谈判与åˆåŒå‡†å¤‡**", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "1. 支æŒå¯¹æˆ‘方有利的测试方案\n2. æä¾›å†…部真实的测试报告\n3.å†³ç­–é“¾äººå‘˜è®¤åŒæµ‹è¯•效果,客户愿æ„å¼•èæ›´é«˜å±‚领导汇报\n4.åŒæ–¹æ²Ÿé€šé¡¹ç›®è®¡åˆ’且达æˆä¸€è‡´\n5.主动邀请æä¾›æ‹›æ ‡å‚æ•°æˆ–æ±‡æŠ¥ææ–™", + "阶段转化标准": "1. **需求与方案的匹é…度**:确认客户的需求是å¦ä¸Žå…¬å¸çš„äº§å“æˆ–æœåŠ¡æœ‰åŠ›åŒ¹é…,包括技术能力ã€äº§å“ç‰¹æ€§ã€æœåŠ¡èŒƒå›´ç­‰ã€‚\n\n2. **技术评估与测试**ï¼šè¯„ä¼°å®ŒæˆæŠ€æœ¯éªŒè¯æˆ–试用阶段,包括技术风险ã€å…¼å®¹é—®é¢˜ã€æœåŠ¡æ°´å¹³ç­‰ï¼Œå¹¶æœ‰è¶³å¤Ÿçš„ä¿éšœæŽªæ–½ã€‚\n\n3. **å•†åŠ¡æ¡æ¬¾ä¸Žå®šä»·**ï¼šåˆæ­¥ç¡®å®šå•†åŠ¡æ¡æ¬¾å’Œå®šä»·ç­–略,以åŠå®¢æˆ·å¯¹å…¬å¸çš„信任程度。\n\n4. **内部准备就绪**:确ä¿å…¬å¸å†…部对于承接项目的æœåŠ¡èƒ½åŠ›å·²ç»å°±ç»ªï¼ŒåŒ…括技术支æŒã€äº¤ä»˜èƒ½åŠ›ã€æœåŠ¡å›¢é˜Ÿã€äººåŠ›èµ„æºç­‰ã€‚\n\n5. **å®¢æˆ·æ„æ„¿ä¸Žå®šä½**:明确在客户采购决策链中的竞争优势定ä½ï¼ŒåŒ…括定价策略ã€åˆåŒæ¡æ¬¾ã€ç«žäº‰ä¼˜åŠ¿ç­‰ã€‚\n\n6. **åˆè§„性与法律审查**ï¼šç¡®ä¿æ‰€æœ‰å•†åŠ¡æ´»åŠ¨ç¬¦åˆç›¸å…³æ³•律法规,åˆåŒè‰æ¡ˆå·²ç»è¿‡æ³•律审核,没有潜在的法律风险。" + }, + { + "销售阶段åç§°": "04-bidding/negotiating", + "客户采购行为": "", + "销售阶段任务": "完æˆéœ€æ±‚确认与收集\nå®ŒæˆæŠ€æœ¯è¯„ä¼°ä¸Žæµ‹è¯•\n完æˆé¡¹ç›®ç«‹é¡¹ä¸ŽåˆåŒå‡†å¤‡\n完æˆå•†åŠ¡è°ˆåˆ¤ä¸Žç«žäº‰åˆ†æž", + "关键获å–ä¿¡æ¯": "1.æ˜¯å¦æŠ•æ ‡\n2.呿 ‡æ—¶é—´\n3.投标时间\n4.竞争对手\n5.对手产é…ç½®\n6.对手投标金é¢", + "销售关键动作": "**客户关系管ç†**\n**åˆåŒå®¡æŸ¥ä¸Žè®¢å•处ç†**\n**客户接触与需求识别**\n**商务谈判与åˆåŒå‡†å¤‡**", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "1.å馈客户内部的进展和计划\n2. 客户内部立项æˆåŠŸ\n3.采纳我们æäº¤çš„æ‹›æ ‡å‚数(或有利于我方)\n3. 对黑马和ç°çŠ€ç‰›çš„å¤„ç†ï¼Œæ„¿æ„æä¾›åº”对处ç†", + "阶段转化标准": "1. **客户需求与解决方案的匹é…度确认**:\n- ç¡®ä¿æ‰€æä¾›çš„解决方案完全符åˆå®¢æˆ·çš„需求和预期。\n- 与客户共åŒéªŒè¯è§£å†³æ–¹æ¡ˆçš„æœ‰æ•ˆæ€§å’Œå¯è¡Œæ€§ã€‚\n\n2. **中标主张的确定与沟通**:\n- æ˜Žç¡®å¹¶å¼ºåŒ–äº§å“æˆ–æœåŠ¡çš„ç‹¬ç‰¹å–点(USP)和价值主张。\n- ç¡®è®¤å®¢æˆ·å¯¹äº§å“æˆ–æœåŠ¡çš„è®¤å¯åº¦å’Œé‡‡è´­æ„æ„¿ç»´æŒåœ¨è¾ƒé«˜æ°´å¹³ã€‚" + }, + { + "销售阶段åç§°": "05-contract review", + "客户采购行为": "", + "销售阶段任务": "", + "关键获å–ä¿¡æ¯": "æ— ", + "销售关键动作": "", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "", + "阶段转化标准": "完æˆåˆåŒå议审批申请,确认åˆåŒæ¡æ¬¾ï¼ˆåŒ…括付款æ¡ä»¶ã€æœåŠ¡å¼€é€šæ—¶é—´ç­‰ï¼‰" + }, + { + "销售阶段åç§°": "06-closed won", + "客户采购行为": "", + "销售阶段任务": "完æˆéœ€æ±‚确认与收集\n完æˆåˆåŒç­¾è®¢ä¸Žå½’æ¡£", + "关键获å–ä¿¡æ¯": "æ— ", + "销售关键动作": "", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "", + "阶段转化标准": "åˆåŒç­¾ç½²å®Œæˆï¼ŒåˆåŒå½’档(系统正å¼ç¡®è®¤è®¢å•)" + }, + { + "销售阶段åç§°": "06-cancel", + "客户采购行为": "", + "销售阶段任务": "ç¡®è®¤é¡¹ç›®å–æ¶ˆåŽŸå› \n输å•原因", + "关键获å–ä¿¡æ¯": "å–æ¶ˆåŽŸå› ", + "销售关键动作": "", + "å”®å‰å…³é”®åŠ¨ä½œ": "", + "客户支æŒè¡Œä¸º": "", + "阶段转化标准": "1.客户明确回å¤é¡¹ç›®å–消 2.客户明确表示没有预算 3.内部立项未通过\n1.投标确认结果未通过 2.å®¢æˆ·æ˜Žç¡®è¡¨ç¤ºé€‰æ‹©ç«žå“ 3.poc结果客户满æ„åº¦åŠæ•°æœªå…¥å›´/未通过 4.商务谈判失败 5.其他如商务关系没有竞争机会" + } +] + +api_key = 'c6bbe7f48063a2c1' +api_secret = '5f8e7d3a97465cc099bf19bd1b70c266' +assistant_id = "66bb09a84673b57506fe7bbd" +agent = AgentProxy(assistant_id, api_key, api_secret) + +reflection_path = [] # è®°å½•åæ€åŽçš„èµ¢å•路径 + +# Iterate over professional_won_path and get index in the loop +for index, pro_stage in enumerate(professional_won_path): + print(f"Index: {index}") + custom_stage = actual_won_path[index] + + # åæ€é”€å”®é˜¶æ®µä»»åŠ¡ + prompt_reflection_task = f""" + 任务: + 以专业咨询机构æå‡ºçš„销售阶段任务为å‚è€ƒå’Œè“æœ¬ï¼Œç»“åˆå®žé™…销售数æ®åˆ†æžæ€»ç»“的销售任务,æå‡ºæ”¹è¿›ç‰ˆæœ¬çš„销售阶段任务,注æ„å°½å¯èƒ½ä»¥ä¸“业机构的版本为主,语言ã€é£Žæ ¼ä¹ŸæŒ‰ç…§ä¸“业机构的版本。 + 专业咨询机构æå‡ºçš„销售阶段任务: + {pro_stage['销售阶段任务']} + 通过分æžå®žé™…销售数æ®åˆ†æžæ€»ç»“的得到的销售任务: + {custom_stage['销售阶段任务']} + """ + print(f"prompt_reflection_task: {prompt_reflection_task}") + reflection_task = agent.send_message(prompt_reflection_task) + print(f"忀åŽçš„销售阶段任务: {reflection_task}") + + reflection_stage = pro_stage.copy() + reflection_stage['销售阶段任务'] = reflection_task + + # åæ€é”€å”®å…³é”®åŠ¨ä½œ + prompt_reflection_action = f""" + 任务: + 以专业咨询机构æå‡ºçš„销售关键动作为å‚è€ƒå’Œè“æœ¬ï¼Œç»“åˆå®žé™…销售数æ®åˆ†æžæ€»ç»“的销售关键动作,æå‡ºæ”¹è¿›ç‰ˆæœ¬çš„销售关键动作,注æ„å°½å¯èƒ½ä»¥ä¸“业机构的版本为主,语言ã€é£Žæ ¼ä¹Ÿæ¯”照专业机构的版本。 + 专业咨询机构æå‡ºçš„销售关键动作: + {pro_stage['销售关键动作']} + 通过分æžå®žé™…销售数æ®åˆ†æžæ€»ç»“得到的销售关键动作: + {custom_stage['销售关键动作']} + """ + print(f"prompt_reflection_action: {prompt_reflection_action}") + reflection_action = agent.send_message(prompt_reflection_action) + print(f"忀åŽçš„销售关键动作: {reflection_action}") + reflection_stage['销售关键动作'] = reflection_action + + # åæ€é˜¶æ®µè½¬åŒ–æ ‡å‡† + prompt_reflection_standard = f""" + 任务: + 以专业咨询机构æå‡ºçš„阶段转化标准为å‚è€ƒå’Œè“æœ¬ï¼Œç»“åˆå®žé™…销售数æ®åˆ†æžæ€»ç»“的阶段转化标准,æå‡ºæ”¹è¿›ç‰ˆæœ¬çš„阶段转化标准,注æ„å°½å¯èƒ½ä»¥ä¸“业机构的版本为主,语言ã€é£Žæ ¼ä¹Ÿæ¯”照专业机构的版本。 + 专业咨询机构æå‡ºçš„阶段转化标准: + {pro_stage['阶段转化标准']} + 通过分æžå®žé™…销售数æ®åˆ†æžæ€»ç»“得到的阶段转化标准: + {custom_stage['阶段转化标准']} + """ + print(f"prompt_reflection_standard: {prompt_reflection_standard}") + reflection_standard = agent.send_message(prompt_reflection_standard) + print(f"忀åŽçš„阶段转化标准: {reflection_standard}") + reflection_stage['阶段转化标准'] = reflection_standard + + reflection_path.append(reflection_stage) + +# Write reflection_path to Excel +df = pd.DataFrame(reflection_path) + +# Reorder columns to match the original structure +column_order = [ + "销售阶段åç§°", "客户采购行为", "销售阶段任务", "关键获å–ä¿¡æ¯", + "销售关键动作", "å”®å‰å…³é”®åŠ¨ä½œ", "客户支æŒè¡Œä¸º", "阶段转化标准" +] +df = df.reindex(columns=column_order) + +# Write to Excel +excel_file_path = 'reflection_path_results.xlsx' +df.to_excel(excel_file_path, index=False) +print(f"Reflection path results have been written to {excel_file_path}") diff --git a/data_doc/~$销售策略制定框架模æ¿ï¼ˆV3.0)-èµ¢å•路径-AI.xlsx b/data_doc/~$销售策略制定框架模æ¿ï¼ˆV3.0)-èµ¢å•路径-AI.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..981a8c1f15149a9bc4f42a2bb58466a2eb7883e3 GIT binary patch literal 165 ucmd-MO3hP<$V|+y%*<0D9&j@RF{Co&F(@!ZFk~_$GUPK<0%;JR77zgB*%KoG literal 0 HcmV?d00001 diff --git a/data_doc/销售策略制定框架模æ¿ï¼ˆV3.0)-èµ¢å•路径- Manual.xlsx b/data_doc/销售策略制定框架模æ¿ï¼ˆV3.0)-èµ¢å•路径- Manual.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..7aa8e11b71245ff9b9b4fc88c8f7126c666425f0 GIT binary patch literal 41451 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 BB5(iz literal 0 HcmV?d00001 diff --git a/data_intermediate/AI_评价销售行动结果.txt b/data_intermediate/AI_评价销售行动结果.txt new file mode 100644 index 0000000..f9a9309 --- /dev/null +++ b/data_intermediate/AI_评价销售行动结果.txt @@ -0,0 +1,105 @@ +æ ¹æ®é”€å”®è¡ŒåŠ¨ç»“æžœçš„ç»Ÿè®¡ç»“æžœï¼ŒAI利用先验知识,对销售æµç¨‹ä¸­å„个阶段的关键动作进行评价ã€åˆ†æžå’Œä¼˜åŒ–建议。 + +prompt = """Stage: PoC Won/Bidding+Negotiation + 客户接触与需求识别: 130.00% + äº§å“æ¼”示与方案æä¾›: 61.43% + 商务谈判与åˆåŒå‡†å¤‡: 162.86% + 项目支æŒä¸Žä¼˜åŒ–: 125.71% + 市场分æžä¸Žç­–略调整: 62.86% + åˆåŒå®¡æŸ¥ä¸Žè®¢å•处ç†: 37.14% + 客户关系维护: 50.00% + åŽç»­è·Ÿè¿›ä¸Žæœºä¼šæŒ–掘: 28.57% + 内部å调与支æŒ: 111.43% + 技术支æŒä¸Žäº¤æµ: 2.86% + 市场情况调研: 4.29% + 预算与立项推动: 7.14% + 项目跟踪与推进: 4.29% + 客户体验优化: 2.86% + 技术交æµä¸Žäº§å“推广: 1.43% + 需求分æžä¸Žé€‚é…: 2.86% + 项目监控和更新: 2.86% + 技术支æŒä¸Žé…åˆ: 7.14% + 方案制定: 1.43% +Stage: Qualification + 客户关系维护: 47.46% + 项目支æŒä¸Žä¼˜åŒ–: 144.07% + 客户接触与需求识别: 154.24% + 内部å调与支æŒ: 83.05% + 方案制定: 1.69% + 商务谈判与åˆåŒå‡†å¤‡: 113.56% + åˆåŒå®¡æŸ¥ä¸Žè®¢å•处ç†: 6.78% + 市场分æžä¸Žç­–略调整: 57.63% + äº§å“æ¼”示与方案æä¾›: 72.88% + åŽç»­è·Ÿè¿›ä¸Žæœºä¼šæŒ–掘: 25.42% + 项目��展与计划沟通: 3.39% + None: 37.29% + 需求讨论与时间规划: 6.78% + 商机更新与管ç†: 1.69% +Stage: Closed Won + 客户关系维护: 92.31% + åˆåŒå®¡æŸ¥ä¸Žè®¢å•处ç†: 115.38% + 客户接触与需求识别: 107.69% + 商务谈判与åˆåŒå‡†å¤‡: 130.77% + 内部å调与支æŒ: 123.08% + 项目支æŒä¸Žä¼˜åŒ–: 123.08% + 市场分æžä¸Žç­–略调整: 53.85% + åŽç»­è·Ÿè¿›ä¸Žæœºä¼šæŒ–掘: 42.31% + äº§å“æ¼”示与方案æä¾›: 42.31% + 招标准备与投标: 11.54% + 技术支æŒä¸ŽæœåŠ¡å…œåº•: 7.69% +Stage: Evaluation + 客户接触与需求识别: 188.89% + äº§å“æ¼”示与方案æä¾›: 80.00% + 商务谈判与åˆåŒå‡†å¤‡: 51.11% + 项目支æŒä¸Žä¼˜åŒ–: 91.11% + 内部å调与支æŒ: 73.33% + åˆåŒå®¡æŸ¥ä¸Žè®¢å•处ç†: 2.22% + åŽç»­è·Ÿè¿›ä¸Žæœºä¼šæŒ–掘: 20.00% + 市场分æžä¸Žç­–略调整: 80.00% + 客户关系维护: 44.44% + 需求讨论与方案交æµ: 4.44% + 需求与技术讨论: 8.89% + 方案推进: 4.44% + None: 40.00% + éœ€æ±‚è®¨è®ºä¸Žææ–™æä¾›: 8.89% + 预算与立项推动: 2.22% + 策略制定与执行: 8.89% + + 以上是æŸå…¬å¸ç»Ÿè®¡çš„å„个销售阶段销售人员所进行的销售动作åŠå…¶æ¯”例,你作为一个销售领域的管ç†äººå‘˜ï¼Œè¯•æ ¹æ®ä½ æ‰€å…·æœ‰çš„销售方é¢çš„管ç†ç»éªŒï¼Œæ ¹æ®ä¸Šé¢çš„实际数æ®ï¼Œç»™å‡ºä¸€ä¸ªå„阶段应该进行的销售动作的建""" + + +æ ¹æ®æ‚¨æä¾›çš„æ•°æ®ï¼Œæˆ‘们å¯ä»¥å¯¹é”€å”®æµç¨‹ä¸­å„个阶段的关键动作进行分æžå’Œä¼˜åŒ–建议。以下是针对æ¯ä¸ªé˜¶æ®µçš„建议: + +### PoC Won/Bidding+Negotiation +1. **客户接触与需求识别**: 130.00% - 这表明在接触客户和识别需求方é¢åšå¾—å¾ˆå¥½ã€‚ç»§ç»­ä¿æŒï¼Œç¡®ä¿æ·±å…¥ç†è§£å®¢æˆ·éœ€æ±‚。 +2. **äº§å“æ¼”示与方案æä¾›**: 61.43% - 需è¦åŠ å¼ºäº§å“æ¼”示和方案æä¾›çš„能力,确ä¿å®¢æˆ·å……分ç†è§£äº§å“价值。 +3. **商务谈判与åˆåŒå‡†å¤‡**: 162.86% - 在谈判和åˆåŒå‡†å¤‡æ–¹é¢è¡¨çŽ°å‡ºè‰²ï¼Œä½†è¦æ³¨æ„ä¸è¦è¿‡åº¦è°ˆåˆ¤ï¼Œä»¥å…å½±å“客户关系。 +4. **项目支æŒä¸Žä¼˜åŒ–**: 125.71% - ç»§ç»­æä¾›ä¼˜è´¨çš„项目支æŒï¼Œç¡®ä¿å®¢æˆ·æ»¡æ„度。 +5. **市场分æžä¸Žç­–略调整**: 62.86% - 需è¦åŠ å¼ºå¯¹å¸‚åœºçš„åˆ†æžå’Œç­–略调整,以更好地应对市场å˜åŒ–。 +6. **åˆåŒå®¡æŸ¥ä¸Žè®¢å•处ç†**: 37.14% - 加强åˆåŒå®¡æŸ¥å’Œè®¢å•处ç†çš„æ•ˆçŽ‡ï¼Œç¡®ä¿æµç¨‹é¡ºç•…。 +7. **客户关系维护**: 50.00% - éœ€è¦æ›´åŠ é‡è§†å®¢æˆ·å…³ç³»ç»´æŠ¤ï¼Œæé«˜å®¢æˆ·å¿ è¯šåº¦ã€‚ +8. **åŽç»­è·Ÿè¿›ä¸Žæœºä¼šæŒ–掘**: 28.57% - 加强åŽç»­è·Ÿè¿›å’Œæœºä¼šæŒ–掘,以æé«˜è½¬åŒ–率。 +9. **内部å调与支æŒ**: 111.43% - 内部å调和支æŒåšå¾—å¾ˆå¥½ï¼Œç»§ç»­ä¿æŒã€‚ +10. **技术支æŒä¸Žäº¤æµ**: 2.86% - 需è¦å¤§å¹…æå‡æŠ€æœ¯æ”¯æŒå’Œäº¤æµï¼Œä»¥å¢žå¼ºå®¢æˆ·ä¿¡ä»»ã€‚ + +### Qualification +1. **客户关系维护**: 47.46% - éœ€è¦æå‡å®¢æˆ·å…³ç³»ç»´æŠ¤ï¼Œç‰¹åˆ«æ˜¯åœ¨åˆæ­¥ç­›é€‰é˜¶æ®µã€‚ +2. **项目支æŒä¸Žä¼˜åŒ–**: 144.07% - 在项目支æŒå’Œä¼˜åŒ–æ–¹é¢åšå¾—å¾ˆå¥½ï¼Œç»§ç»­ä¿æŒã€‚ +3. **客户接触与需求识别**: 154.24% - 继续强化客户接触和需求识别。 +4. **内部å调与支æŒ**: 83.05% - 内部å调和支æŒåšå¾—ä¸é”™ï¼Œä½†ä»æœ‰æå‡ç©ºé—´ã€‚ +5. **商务谈判与åˆåŒå‡†å¤‡**: 113.56% - 在谈判和åˆåŒå‡†å¤‡æ–¹é¢åšå¾—å¾ˆå¥½ï¼Œä½†è¦æ³¨æ„ä¸è¦è¿‡åº¦è°ˆåˆ¤ã€‚ + +### Closed Won +1. **客户关系维护**: 92.31% - 在赢得åˆåŒé˜¶æ®µï¼Œå®¢æˆ·å…³ç³»ç»´æŠ¤åšå¾—å¾ˆå¥½ï¼Œç»§ç»­ä¿æŒã€‚ +2. **åˆåŒå®¡æŸ¥ä¸Žè®¢å•处ç†**: 115.38% - åˆåŒå®¡æŸ¥å’Œè®¢å•å¤„ç†æ•ˆçŽ‡é«˜ï¼Œç¡®ä¿æµç¨‹é¡ºç•…。 +3. **客户接触与需求识别**: 107.69% - 在接触客户和识别需求方é¢åšå¾—å¾ˆå¥½ï¼Œç»§ç»­ä¿æŒã€‚ +4. **商务谈判与åˆåŒå‡†å¤‡**: 130.77% - 谈判和åˆåŒå‡†å¤‡æ–¹é¢è¡¨çŽ°å‡ºè‰²ï¼Œä½†è¦æ³¨æ„ä¸è¦è¿‡åº¦è°ˆåˆ¤ã€‚ + +### Evaluation +1. **客户接触与需求识别**: 188.89% - 在评估阶段,客户接触和需求识别åšå¾—éžå¸¸å¥½ï¼Œç»§ç»­ä¿æŒã€‚ +2. **äº§å“æ¼”示与方案æä¾›**: 80.00% - äº§å“æ¼”示和方案æä¾›åšå¾—ä¸é”™ï¼Œä½†ä»æœ‰æå‡ç©ºé—´ã€‚ +3. **商务谈判与åˆåŒå‡†å¤‡**: 51.11% - 在谈判和åˆåŒå‡†å¤‡æ–¹é¢éœ€è¦åŠ å¼ºã€‚ +4. **项目支æŒä¸Žä¼˜åŒ–**: 91.11% - 在项目支æŒå’Œä¼˜åŒ–æ–¹é¢åšå¾—å¾ˆå¥½ï¼Œç»§ç»­ä¿æŒã€‚ +5. **内部å调与支æŒ**: 73.33% - 内部å调和支æŒåšå¾—ä¸é”™ï¼Œä½†ä»æœ‰æå‡ç©ºé—´ã€‚ + +总体æ¥è¯´ï¼Œéœ€è¦åœ¨äº§å“æ¼”ç¤ºã€æ–¹æ¡ˆæä¾›ã€å•†åŠ¡è°ˆåˆ¤ã€åˆåŒå®¡æŸ¥ä¸Žè®¢å•处ç†ã€å¸‚场分æžä¸Žç­–略调整ã€å®¢æˆ·å…³ç³»ç»´æŠ¤ç­‰æ–¹é¢åŠ å¼ºèƒ½åŠ›ã€‚åŒæ—¶ï¼Œç¡®ä¿åœ¨å®¢æˆ·æŽ¥è§¦ä¸Žéœ€æ±‚识别ã€é¡¹ç›®æ”¯æŒä¸Žä¼˜åŒ–ã€å†…部å调与支æŒç­‰æ–¹é¢ç»§ç»­ä¿æŒé«˜æ°´å¹³çš„表现。 diff --git a/doc/a.xml b/doc/a.xml new file mode 100644 index 0000000..85e6a0b --- /dev/null +++ b/doc/a.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/test_agent_proxy.py b/test/test_agent_proxy.py index bbe076a..73fc24f 100644 --- a/test/test_agent_proxy.py +++ b/test/test_agent_proxy.py @@ -1,3 +1,6 @@ +import sys +import os +sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) from AgentProxy import AgentProxy api_key = 'c6bbe7f48063a2c1' @@ -5,4 +8,74 @@ api_secret = '5f8e7d3a97465cc099bf19bd1b70c266' assistant_id = "66bb09a84673b57506fe7bbd" agent = AgentProxy(assistant_id, api_key, api_secret) -print(agent.send_message("你好")) \ No newline at end of file +sales = [ + { + "stage": "02-evaluation", + "high_frequency_tasks": [ + "完æˆéœ€æ±‚确认与收集", + "å®ŒæˆæŠ€æœ¯è¯„ä¼°ä¸Žæµ‹è¯•", + "完æˆé¡¹ç›®ç«‹é¡¹ä¸Žé‡‡è´­æµç¨‹", + "完æˆå¸‚场调研与竞争分æž" + ], + "high_frequency_actions": [ + "客户接触与需求识别", + "äº§å“æ¼”示与方案æä¾›", + "商务谈判与åˆåŒå‡†å¤‡", + "项目支æŒä¸Žä¼˜åŒ–", + "内部å调与支æŒ" + ], + "next_stage": "03-qualification" + }, + { + "stage": "03-qualification", + "high_frequency_tasks": [ + "完æˆéœ€æ±‚确认与收集", + "å®ŒæˆæŠ€æœ¯è¯„ä¼°ä¸Žæµ‹è¯•", + "完æˆå•†åŠ¡è°ˆåˆ¤ä¸ŽåˆåŒå‡†å¤‡", + "完æˆå†…部审批与预算确认" + ], + "high_frequency_actions": [ + "客户关系维护", + "项目支æŒä¸Žä¼˜åŒ–", + "客户接触与需求识别", + "内部å调与支æŒ", + "商务谈判与åˆåŒå‡†å¤‡" + ], + "next_stage": "04-bidding/negotiating" + }, + { + "stage": "04-bidding/negotiating", + "high_frequency_tasks": [ + "完æˆéœ€æ±‚确认与收集", + "å®ŒæˆæŠ€æœ¯è¯„ä¼°ä¸Žæµ‹è¯•", + "完æˆé¡¹ç›®ç«‹é¡¹ä¸Žé‡‡è´­æµç¨‹", + "完æˆå¸‚场调研与竞争分æž" + ], + "high_frequency_actions": [ + "客户关系维护", + "åˆåŒå®¡æŸ¥ä¸Žè®¢å•处ç†", + "客户接触与需求识别", + "商务谈判与åˆåŒå‡†å¤‡" + ], + "next_stage": "closed won" + } +] + +for sale in sales: + stage = sale["stage"] + high_frequency_tasks = sale["high_frequency_tasks"] + high_frequency_actions = sale["high_frequency_actions"] + next_stage = sale["next_stage"] + prompt = f""" +你是一个销售领域的专家, +ä½ æ ¹æ®å½“å‰é”€å”®é˜¶æ®µ {stage} , +æŸå…¬å¸ç»Ÿè®¡å‡ºçš„高频销售阶段任务如下: +{high_frequency_tasks} +对应阶段的销售关键动作如下: +{high_frequency_actions} +请根æ®ä»¥ä¸Šä¿¡æ¯ï¼Œä»¥åŠä½ ä½œä¸ºç›¸å…³ä¸“å®¶çš„ç»éªŒï¼Œç»™å‡ºé’ˆå¯¹è¯¥é”€å”®é˜¶æ®µ{stage}转化到下一阶段{next_stage}的阶段转化标准,请注æ„转化标准ä¸è¦ç›´æŽ¥ä½¿ç”¨ä¸Šé¢ç»™å‡ºçš„高频任务和高频动作,而è¦åšä¸€å®šçš„æŠ½è±¡ã€æ€»ç»“ã€å½’纳,形æˆä¸€ä¸ªé€šç”¨çš„ã€æŠ½è±¡çš„è½¬åŒ–æ ‡å‡† +""" + + print(f"---------------stage:{stage}---------------") + # print(prompt) + print(agent.send_message(prompt)) \ No newline at end of file