[{"data":1,"prerenderedAt":3110},["ShallowReactive",2],{"docs-page-cn-/cn/memos_cloud/features/self-evolving":3,"surround-cn-/cn/memos_cloud/features/self-evolving":3094},{"id":4,"title":5,"avatar":6,"banner":6,"body":7,"category":6,"desc":3087,"description":179,"extension":3088,"links":6,"meta":3089,"navigation":6,"path":3090,"seo":3091,"stem":3092,"__hash__":3093},"docs/cn/memos_cloud/features/self-evolving.md","记忆自进化 Self-Evolving",null,{"type":8,"value":9,"toc":3069},"minimark",[10,15,24,37,40,51,54,57,60,64,69,72,79,81,85,88,90,92,95,98,105,108,152,155,157,160,163,165,170,173,863,865,869,876,1080,1082,1086,1089,1236,1239,1368,1370,1372,1375,1378,1381,1383,1387,1390,2378,2380,2384,2403,2409,2411,2415,2425,2643,2645,2649,2655,2677,2685,2687,2693,2697,2763,2767,2773,2775,2777,2780,2787,2821,2823,2826,2829,2831,2835,2841,2931,2933,2937,2942,3027,3033,3035,3040,3065],[11,12,14],"h2",{"id":13},"什么是记忆自进化self-evolving","什么是记忆自进化（Self-Evolving）？",[16,17,18,19,23],"p",{},"在 AI Agent 的语境中，",[20,21,22],"strong",{},"Skill"," 是一套可复用的任务处理方法。它告诉 Agent「遇到某类任务该怎么做」，例如：",[25,26,27,31,34],"ul",{},[28,29,30],"li",{},"如何规划一次旅行",[28,32,33],{},"如何处理一笔退货工单",[28,35,36],{},"如何按公司规范生成周报",[16,38,39],{},"技能可以弥补大模型在长期运行中经验难以沉淀的问题，主要体现在：",[25,41,42,45,48],{},[28,43,44],{},"可维护：把真实任务中的稳定流程沉淀为结构化方法，方便持续迭代。",[28,46,47],{},"按需调用：由 Agent 根据当前任务召回相关技能，而不是把所有流程都放进上下文。",[28,49,50],{},"个性化：将不同用户的偏好、习惯和禁忌转化为可复用的执行方式。",[16,52,53],{},"通过在对话中提炼可复用的Skill，MemOS可以实现记忆的自进化，持续增强Agent的能力。",[55,56],"hr",{},[58,59],"br",{},[11,61,63],{"id":62},"memos-如何为-agent-提供记忆自进化能力","MemOS 如何为 Agent 提供记忆自进化能力？",[65,66,68],"h3",{"id":67},"_1-自动生成个性化技能","1. 自动生成个性化技能",[16,70,71],{},"MemOS 主张“记忆即资产”，在真实对话中沉淀下来的解决路径与用户偏好，就是最宝贵的技能素材。",[16,73,74,75,78],{},"你不需要准备任何文件，只要添加用户与 Agent 的对话原文，MemOS ",[20,76,77],{},"会从用户记忆中自动提炼技能","——将零散的交互历史固化为可复用、个性化的专业能力。",[58,80],{},[65,82,84],{"id":83},"_2-上传自定义技能","2. 上传自定义技能",[16,86,87],{},"现在，MemOS 也支持直接上传你已有的技能文件，上传 Markdown 文件或 ZIP 包到知识库，MemOS 就能在检索时返回相关的技能给 Agent。",[55,89],{},[58,91],{},[11,93,94],{"id":94},"自动生成个性化技能",[65,96,97],{"id":97},"工作原理",[16,99,100],{},[101,102],"img",{"alt":103,"src":104},"image.png","https://cdn.memtensor.com.cn/img/1769653199709_6ol3n7_compressed.png",[16,106,107],{},"上图展示了终端用户、你构建的 AI Agent 与 MemOS 的完整交互流程：",[109,110,111,119,143,149],"ol",{},[28,112,113,114,118],{},"调用 ",[115,116,117],"code",{},"add/message"," 接口将用户的对话消息传入 MemOS。",[28,120,121,122,124,125,128,129,131,132,135,136,138,139,142],{},"MemOS 接收到请求后，会依次完成以下处理，生成技能（Skill）文件：",[58,123],{},"a. ",[20,126,127],{},"智能切片","：识别历史对话中的任务边界，切分成任务文本块；",[58,130],{},"b. ",[20,133,134],{},"聚类提取","：将同类型的任务文本块聚类，结合用户的历史记忆，提取出结构化的技能文本。",[58,137],{},"c. ",[20,140,141],{},"技能转化","：将技能转化为可运行、可被识别的技能（Skill）文件。",[28,144,113,145,148],{},[115,146,147],{},"search/memory"," 接口检索记忆，MemOS 会统一返回与上下文相关的用户事实、偏好、工具记忆与匹配的技能（Skill）文件。",[28,150,151],{},"下载技能文件，将记忆和技能文件统一传给你自己部署的大模型，从而实现对长期经验与自动生成技能的有效利用。",[16,153,154],{},"整个过程无需手动上传任何技能文件。",[58,156],{},[65,158,159],{"id":159},"旅行规划示例",[16,161,162],{},"以「旅行规划」为例，展示同一个任务如何为不同用户生成不同技能。",[58,164],{},[166,167,169],"h4",{"id":168},"_1-添加对话","1. 添加对话",[16,171,172],{},"用户在对话中表达了自己的旅行规划偏好：不走回头路、行程紧凑、偏好文化景点、需要提前检查天气。",[174,175,180],"pre",{"className":176,"code":177,"language":178,"meta":179,"style":179},"language-python shiki shiki-themes material-theme-lighter github-light-high-contrast github-dark-default","import os\nimport json\nimport requests\n\nos.environ[\"MEMOS_API_KEY\"] = \"YOUR_API_KEY\"\nos.environ[\"MEMOS_BASE_URL\"] = \"https://memos.memtensor.cn/api/openmem/v1\"\n\ndata = {\n    \"user_id\": \"memos_user_j\",\n    \"conversation_id\": \"travel_0127\",\n    \"messages\": [\n        {\n            \"role\": \"user\",\n            \"content\": \"下周我要去成都玩，帮我规划一个5天的出行计划。我喜欢不走回头路的特种兵出行，也帮我标注路途中值得品尝的美食。\"\n        },\n        {\"role\": \"assistant\", \"content\": \"...此处省略...\"},\n        {\n            \"role\": \"user\",\n            \"content\": \"我比较喜欢逛文化景点，商场什么的不太感兴趣。\"\n        },\n        {\"role\": \"assistant\", \"content\": \"...此处省略...\"},\n        {\n            \"role\": \"user\",\n            \"content\": \"帮我在规划的时候提前确认天气和温度，方便我准备行李。\"\n        },\n        {\"role\": \"assistant\", \"content\": \"...此处省略...\"}\n    ]\n}\n\nheaders = {\n    \"Content-Type\": \"application/json\",\n    \"Authorization\": f\"Token {os.environ['MEMOS_API_KEY']}\"\n}\nurl = f\"{os.environ['MEMOS_BASE_URL']}/add/message\"\n\nres = requests.post(url=url, headers=headers, data=json.dumps(data))\nprint(f\"result: {res.json()}\")\n","python","",[115,181,182,195,203,211,218,261,290,295,307,331,352,367,373,395,414,420,462,467,486,504,509,546,551,570,588,593,631,637,642,647,657,678,723,728,763,768,829],{"__ignoreMap":179},[183,184,187,191],"span",{"class":185,"line":186},"line",1,[183,188,190],{"class":189},"sBMTB","import",[183,192,194],{"class":193},"s5ojA"," os\n",[183,196,198,200],{"class":185,"line":197},2,[183,199,190],{"class":189},[183,201,202],{"class":193}," json\n",[183,204,206,208],{"class":185,"line":205},3,[183,207,190],{"class":189},[183,209,210],{"class":193}," requests\n",[183,212,214],{"class":185,"line":213},4,[183,215,217],{"emptyLinePlaceholder":216},true,"\n",[183,219,221,224,228,232,235,239,243,245,248,252,255,258],{"class":185,"line":220},5,[183,222,223],{"class":193},"os",[183,225,227],{"class":226},"suWxN",".",[183,229,231],{"class":230},"s5qkx","environ",[183,233,234],{"class":226},"[",[183,236,238],{"class":237},"sjUum","\"",[183,240,242],{"class":241},"sp1uZ","MEMOS_API_KEY",[183,244,238],{"class":237},[183,246,247],{"class":226},"]",[183,249,251],{"class":250},"saN0X"," =",[183,253,254],{"class":237}," \"",[183,256,257],{"class":241},"YOUR_API_KEY",[183,259,260],{"class":237},"\"\n",[183,262,264,266,268,270,272,274,277,279,281,283,285,288],{"class":185,"line":263},6,[183,265,223],{"class":193},[183,267,227],{"class":226},[183,269,231],{"class":230},[183,271,234],{"class":226},[183,273,238],{"class":237},[183,275,276],{"class":241},"MEMOS_BASE_URL",[183,278,238],{"class":237},[183,280,247],{"class":226},[183,282,251],{"class":250},[183,284,254],{"class":237},[183,286,287],{"class":241},"https://memos.memtensor.cn/api/openmem/v1",[183,289,260],{"class":237},[183,291,293],{"class":185,"line":292},7,[183,294,217],{"emptyLinePlaceholder":216},[183,296,298,301,304],{"class":185,"line":297},8,[183,299,300],{"class":193},"data ",[183,302,303],{"class":250},"=",[183,305,306],{"class":226}," {\n",[183,308,310,313,316,318,321,323,326,328],{"class":185,"line":309},9,[183,311,312],{"class":237},"    \"",[183,314,315],{"class":241},"user_id",[183,317,238],{"class":237},[183,319,320],{"class":226},":",[183,322,254],{"class":237},[183,324,325],{"class":241},"memos_user_j",[183,327,238],{"class":237},[183,329,330],{"class":226},",\n",[183,332,334,336,339,341,343,345,348,350],{"class":185,"line":333},10,[183,335,312],{"class":237},[183,337,338],{"class":241},"conversation_id",[183,340,238],{"class":237},[183,342,320],{"class":226},[183,344,254],{"class":237},[183,346,347],{"class":241},"travel_0127",[183,349,238],{"class":237},[183,351,330],{"class":226},[183,353,355,357,360,362,364],{"class":185,"line":354},11,[183,356,312],{"class":237},[183,358,359],{"class":241},"messages",[183,361,238],{"class":237},[183,363,320],{"class":226},[183,365,366],{"class":226}," [\n",[183,368,370],{"class":185,"line":369},12,[183,371,372],{"class":226},"        {\n",[183,374,376,379,382,384,386,388,391,393],{"class":185,"line":375},13,[183,377,378],{"class":237},"            \"",[183,380,381],{"class":241},"role",[183,383,238],{"class":237},[183,385,320],{"class":226},[183,387,254],{"class":237},[183,389,390],{"class":241},"user",[183,392,238],{"class":237},[183,394,330],{"class":226},[183,396,398,400,403,405,407,409,412],{"class":185,"line":397},14,[183,399,378],{"class":237},[183,401,402],{"class":241},"content",[183,404,238],{"class":237},[183,406,320],{"class":226},[183,408,254],{"class":237},[183,410,411],{"class":241},"下周我要去成都玩，帮我规划一个5天的出行计划。我喜欢不走回头路的特种兵出行，也帮我标注路途中值得品尝的美食。",[183,413,260],{"class":237},[183,415,417],{"class":185,"line":416},15,[183,418,419],{"class":226},"        },\n",[183,421,423,426,428,430,432,434,436,439,441,444,446,448,450,452,454,457,459],{"class":185,"line":422},16,[183,424,425],{"class":226},"        {",[183,427,238],{"class":237},[183,429,381],{"class":241},[183,431,238],{"class":237},[183,433,320],{"class":226},[183,435,254],{"class":237},[183,437,438],{"class":241},"assistant",[183,440,238],{"class":237},[183,442,443],{"class":226},",",[183,445,254],{"class":237},[183,447,402],{"class":241},[183,449,238],{"class":237},[183,451,320],{"class":226},[183,453,254],{"class":237},[183,455,456],{"class":241},"...此处省略...",[183,458,238],{"class":237},[183,460,461],{"class":226},"},\n",[183,463,465],{"class":185,"line":464},17,[183,466,372],{"class":226},[183,468,470,472,474,476,478,480,482,484],{"class":185,"line":469},18,[183,471,378],{"class":237},[183,473,381],{"class":241},[183,475,238],{"class":237},[183,477,320],{"class":226},[183,479,254],{"class":237},[183,481,390],{"class":241},[183,483,238],{"class":237},[183,485,330],{"class":226},[183,487,489,491,493,495,497,499,502],{"class":185,"line":488},19,[183,490,378],{"class":237},[183,492,402],{"class":241},[183,494,238],{"class":237},[183,496,320],{"class":226},[183,498,254],{"class":237},[183,500,501],{"class":241},"我比较喜欢逛文化景点，商场什么的不太感兴趣。",[183,503,260],{"class":237},[183,505,507],{"class":185,"line":506},20,[183,508,419],{"class":226},[183,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544],{"class":185,"line":511},21,[183,513,425],{"class":226},[183,515,238],{"class":237},[183,517,381],{"class":241},[183,519,238],{"class":237},[183,521,320],{"class":226},[183,523,254],{"class":237},[183,525,438],{"class":241},[183,527,238],{"class":237},[183,529,443],{"class":226},[183,531,254],{"class":237},[183,533,402],{"class":241},[183,535,238],{"class":237},[183,537,320],{"class":226},[183,539,254],{"class":237},[183,541,456],{"class":241},[183,543,238],{"class":237},[183,545,461],{"class":226},[183,547,549],{"class":185,"line":548},22,[183,550,372],{"class":226},[183,552,554,556,558,560,562,564,566,568],{"class":185,"line":553},23,[183,555,378],{"class":237},[183,557,381],{"class":241},[183,559,238],{"class":237},[183,561,320],{"class":226},[183,563,254],{"class":237},[183,565,390],{"class":241},[183,567,238],{"class":237},[183,569,330],{"class":226},[183,571,573,575,577,579,581,583,586],{"class":185,"line":572},24,[183,574,378],{"class":237},[183,576,402],{"class":241},[183,578,238],{"class":237},[183,580,320],{"class":226},[183,582,254],{"class":237},[183,584,585],{"class":241},"帮我在规划的时候提前确认天气和温度，方便我准备行李。",[183,587,260],{"class":237},[183,589,591],{"class":185,"line":590},25,[183,592,419],{"class":226},[183,594,596,598,600,602,604,606,608,610,612,614,616,618,620,622,624,626,628],{"class":185,"line":595},26,[183,597,425],{"class":226},[183,599,238],{"class":237},[183,601,381],{"class":241},[183,603,238],{"class":237},[183,605,320],{"class":226},[183,607,254],{"class":237},[183,609,438],{"class":241},[183,611,238],{"class":237},[183,613,443],{"class":226},[183,615,254],{"class":237},[183,617,402],{"class":241},[183,619,238],{"class":237},[183,621,320],{"class":226},[183,623,254],{"class":237},[183,625,456],{"class":241},[183,627,238],{"class":237},[183,629,630],{"class":226},"}\n",[183,632,634],{"class":185,"line":633},27,[183,635,636],{"class":226},"    ]\n",[183,638,640],{"class":185,"line":639},28,[183,641,630],{"class":226},[183,643,645],{"class":185,"line":644},29,[183,646,217],{"emptyLinePlaceholder":216},[183,648,650,653,655],{"class":185,"line":649},30,[183,651,652],{"class":193},"headers ",[183,654,303],{"class":250},[183,656,306],{"class":226},[183,658,660,662,665,667,669,671,674,676],{"class":185,"line":659},31,[183,661,312],{"class":237},[183,663,664],{"class":241},"Content-Type",[183,666,238],{"class":237},[183,668,320],{"class":226},[183,670,254],{"class":237},[183,672,673],{"class":241},"application/json",[183,675,238],{"class":237},[183,677,330],{"class":226},[183,679,681,683,686,688,690,694,697,701,703,705,707,709,712,714,716,718,721],{"class":185,"line":680},32,[183,682,312],{"class":237},[183,684,685],{"class":241},"Authorization",[183,687,238],{"class":237},[183,689,320],{"class":226},[183,691,693],{"class":692},"sZ6T4"," f",[183,695,696],{"class":241},"\"Token ",[183,698,700],{"class":699},"scyET","{",[183,702,223],{"class":193},[183,704,227],{"class":226},[183,706,231],{"class":230},[183,708,234],{"class":226},[183,710,711],{"class":237},"'",[183,713,242],{"class":241},[183,715,711],{"class":237},[183,717,247],{"class":226},[183,719,720],{"class":699},"}",[183,722,260],{"class":241},[183,724,726],{"class":185,"line":725},33,[183,727,630],{"class":226},[183,729,731,734,736,738,740,742,744,746,748,750,752,754,756,758,760],{"class":185,"line":730},34,[183,732,733],{"class":193},"url ",[183,735,303],{"class":250},[183,737,693],{"class":692},[183,739,238],{"class":241},[183,741,700],{"class":699},[183,743,223],{"class":193},[183,745,227],{"class":226},[183,747,231],{"class":230},[183,749,234],{"class":226},[183,751,711],{"class":237},[183,753,276],{"class":241},[183,755,711],{"class":237},[183,757,247],{"class":226},[183,759,720],{"class":699},[183,761,762],{"class":241},"/add/message\"\n",[183,764,766],{"class":185,"line":765},35,[183,767,217],{"emptyLinePlaceholder":216},[183,769,771,774,776,779,781,785,788,792,794,796,798,801,803,806,808,811,813,816,818,821,823,826],{"class":185,"line":770},36,[183,772,773],{"class":193},"res ",[183,775,303],{"class":250},[183,777,778],{"class":193}," requests",[183,780,227],{"class":226},[183,782,784],{"class":783},"sa-2m","post",[183,786,787],{"class":226},"(",[183,789,791],{"class":790},"sp4zP","url",[183,793,303],{"class":250},[183,795,791],{"class":783},[183,797,443],{"class":226},[183,799,800],{"class":790}," headers",[183,802,303],{"class":250},[183,804,805],{"class":783},"headers",[183,807,443],{"class":226},[183,809,810],{"class":790}," data",[183,812,303],{"class":250},[183,814,815],{"class":783},"json",[183,817,227],{"class":226},[183,819,820],{"class":783},"dumps",[183,822,787],{"class":226},[183,824,825],{"class":783},"data",[183,827,828],{"class":226},"))\n",[183,830,832,836,838,841,844,846,849,851,853,856,858,860],{"class":185,"line":831},37,[183,833,835],{"class":834},"svxCd","print",[183,837,787],{"class":226},[183,839,840],{"class":692},"f",[183,842,843],{"class":241},"\"result: ",[183,845,700],{"class":699},[183,847,848],{"class":783},"res",[183,850,227],{"class":226},[183,852,815],{"class":783},[183,854,855],{"class":226},"()",[183,857,720],{"class":699},[183,859,238],{"class":241},[183,861,862],{"class":226},")\n",[58,864],{},[166,866,868],{"id":867},"_2-检索技能","2. 检索技能",[16,870,871,872,875],{},"当同一用户下次提出类似需求时，传入 ",[115,873,874],{},"include_skill=true","：",[174,877,879],{"className":176,"code":878,"language":178,"meta":179,"style":179},"data = {\n    \"query\": \"清明节我打算去云南，帮我规划7天的行程。\",\n    \"user_id\": \"memos_user_j\",\n    \"conversation_id\": \"travel_0301\",\n    \"include_skill\": True\n}\n\nres = requests.post(\n    url=f\"{os.environ['MEMOS_BASE_URL']}/search/memory\",\n    headers=headers,\n    data=json.dumps(data)\n)\nprint(f\"result: {res.json()}\")\n",[115,880,881,889,909,927,946,961,965,969,984,1020,1031,1050,1054],{"__ignoreMap":179},[183,882,883,885,887],{"class":185,"line":186},[183,884,300],{"class":193},[183,886,303],{"class":250},[183,888,306],{"class":226},[183,890,891,893,896,898,900,902,905,907],{"class":185,"line":197},[183,892,312],{"class":237},[183,894,895],{"class":241},"query",[183,897,238],{"class":237},[183,899,320],{"class":226},[183,901,254],{"class":237},[183,903,904],{"class":241},"清明节我打算去云南，帮我规划7天的行程。",[183,906,238],{"class":237},[183,908,330],{"class":226},[183,910,911,913,915,917,919,921,923,925],{"class":185,"line":205},[183,912,312],{"class":237},[183,914,315],{"class":241},[183,916,238],{"class":237},[183,918,320],{"class":226},[183,920,254],{"class":237},[183,922,325],{"class":241},[183,924,238],{"class":237},[183,926,330],{"class":226},[183,928,929,931,933,935,937,939,942,944],{"class":185,"line":213},[183,930,312],{"class":237},[183,932,338],{"class":241},[183,934,238],{"class":237},[183,936,320],{"class":226},[183,938,254],{"class":237},[183,940,941],{"class":241},"travel_0301",[183,943,238],{"class":237},[183,945,330],{"class":226},[183,947,948,950,953,955,957],{"class":185,"line":220},[183,949,312],{"class":237},[183,951,952],{"class":241},"include_skill",[183,954,238],{"class":237},[183,956,320],{"class":226},[183,958,960],{"class":959},"smHB8"," True\n",[183,962,963],{"class":185,"line":263},[183,964,630],{"class":226},[183,966,967],{"class":185,"line":292},[183,968,217],{"emptyLinePlaceholder":216},[183,970,971,973,975,977,979,981],{"class":185,"line":297},[183,972,773],{"class":193},[183,974,303],{"class":250},[183,976,778],{"class":193},[183,978,227],{"class":226},[183,980,784],{"class":783},[183,982,983],{"class":226},"(\n",[183,985,986,989,991,993,995,997,999,1001,1003,1005,1007,1009,1011,1013,1015,1018],{"class":185,"line":309},[183,987,988],{"class":790},"    url",[183,990,303],{"class":250},[183,992,840],{"class":692},[183,994,238],{"class":241},[183,996,700],{"class":699},[183,998,223],{"class":783},[183,1000,227],{"class":226},[183,1002,231],{"class":230},[183,1004,234],{"class":226},[183,1006,711],{"class":237},[183,1008,276],{"class":241},[183,1010,711],{"class":237},[183,1012,247],{"class":226},[183,1014,720],{"class":699},[183,1016,1017],{"class":241},"/search/memory\"",[183,1019,330],{"class":226},[183,1021,1022,1025,1027,1029],{"class":185,"line":333},[183,1023,1024],{"class":790},"    headers",[183,1026,303],{"class":250},[183,1028,805],{"class":783},[183,1030,330],{"class":226},[183,1032,1033,1036,1038,1040,1042,1044,1046,1048],{"class":185,"line":354},[183,1034,1035],{"class":790},"    data",[183,1037,303],{"class":250},[183,1039,815],{"class":783},[183,1041,227],{"class":226},[183,1043,820],{"class":783},[183,1045,787],{"class":226},[183,1047,825],{"class":783},[183,1049,862],{"class":226},[183,1051,1052],{"class":185,"line":369},[183,1053,862],{"class":226},[183,1055,1056,1058,1060,1062,1064,1066,1068,1070,1072,1074,1076,1078],{"class":185,"line":375},[183,1057,835],{"class":834},[183,1059,787],{"class":226},[183,1061,840],{"class":692},[183,1063,843],{"class":241},[183,1065,700],{"class":699},[183,1067,848],{"class":783},[183,1069,227],{"class":226},[183,1071,815],{"class":783},[183,1073,855],{"class":226},[183,1075,720],{"class":699},[183,1077,238],{"class":241},[183,1079,862],{"class":226},[58,1081],{},[166,1083,1085],{"id":1084},"_3-memos-生成技能","3. MemOS 生成技能",[16,1087,1088],{},"同样是「旅行规划」，不是所有用户套同一个模板，而是把每个用户长期对话中的偏好沉淀为专属、可复用的能力。\n如下所示，MemOS 为这位高能量 J 人生成的技能可能如下：",[174,1090,1094],{"className":1091,"code":1092,"language":1093,"meta":179,"style":179},"language-markdown shiki shiki-themes material-theme-lighter github-light-high-contrast github-dark-default","---\nname: 旅行行程规划\ndescription: 为高能量旅行者设计多日行程，包括高效动线、文化景点、美食与天气适配建议。\n---\n\n## Procedure\n1. 确定旅行天数、目的地和用户偏好\n2. 收集目的地文化景点、美食点位和交通信息\n3. 按区域规划每日路线，避免来回折返\n4. 将美食点位穿插进交通动线中\n5. 检查天气预报，调整每日路线和行李建议\n\n## Experience\n- 优先安排文化景点，减少购物商场类行程\n- 路线要紧凑，适合高能量、特种兵式旅行\n- 每日行程尽量按地理位置顺路推进\n\n## User Preferences\n- 不走回头路\n- 偏好文化景点\n- 希望提前确认天气和温度\n","markdown",[115,1095,1096,1102,1107,1112,1117,1121,1130,1139,1147,1155,1163,1171,1175,1182,1190,1197,1204,1208,1215,1222,1229],{"__ignoreMap":179},[183,1097,1098],{"class":185,"line":186},[183,1099,1101],{"class":1100},"sV76_","---\n",[183,1103,1104],{"class":185,"line":197},[183,1105,1106],{"class":193},"name: 旅行行程规划\n",[183,1108,1109],{"class":185,"line":205},[183,1110,1111],{"class":193},"description: 为高能量旅行者设计多日行程，包括高效动线、文化景点、美食与天气适配建议。\n",[183,1113,1114],{"class":185,"line":213},[183,1115,1101],{"class":1116},"sJcg5",[183,1118,1119],{"class":185,"line":220},[183,1120,217],{"emptyLinePlaceholder":216},[183,1122,1123,1126],{"class":185,"line":263},[183,1124,1125],{"class":1116},"## ",[183,1127,1129],{"class":1128},"sGXFf","Procedure\n",[183,1131,1132,1136],{"class":185,"line":292},[183,1133,1135],{"class":1134},"sQBKe","1.",[183,1137,1138],{"class":193}," 确定旅行天数、目的地和用户偏好\n",[183,1140,1141,1144],{"class":185,"line":297},[183,1142,1143],{"class":1134},"2.",[183,1145,1146],{"class":193}," 收集目的地文化景点、美食点位和交通信息\n",[183,1148,1149,1152],{"class":185,"line":309},[183,1150,1151],{"class":1134},"3.",[183,1153,1154],{"class":193}," 按区域规划每日路线，避免来回折返\n",[183,1156,1157,1160],{"class":185,"line":333},[183,1158,1159],{"class":1134},"4.",[183,1161,1162],{"class":193}," 将美食点位穿插进交通动线中\n",[183,1164,1165,1168],{"class":185,"line":354},[183,1166,1167],{"class":1134},"5.",[183,1169,1170],{"class":193}," 检查天气预报，调整每日路线和行李建议\n",[183,1172,1173],{"class":185,"line":369},[183,1174,217],{"emptyLinePlaceholder":216},[183,1176,1177,1179],{"class":185,"line":375},[183,1178,1125],{"class":1116},[183,1180,1181],{"class":1128},"Experience\n",[183,1183,1184,1187],{"class":185,"line":397},[183,1185,1186],{"class":1134},"-",[183,1188,1189],{"class":193}," 优先安排文化景点，减少购物商场类行程\n",[183,1191,1192,1194],{"class":185,"line":416},[183,1193,1186],{"class":1134},[183,1195,1196],{"class":193}," 路线要紧凑，适合高能量、特种兵式旅行\n",[183,1198,1199,1201],{"class":185,"line":422},[183,1200,1186],{"class":1134},[183,1202,1203],{"class":193}," 每日行程尽量按地理位置顺路推进\n",[183,1205,1206],{"class":185,"line":464},[183,1207,217],{"emptyLinePlaceholder":216},[183,1209,1210,1212],{"class":185,"line":469},[183,1211,1125],{"class":1116},[183,1213,1214],{"class":1128},"User Preferences\n",[183,1216,1217,1219],{"class":185,"line":488},[183,1218,1186],{"class":1134},[183,1220,1221],{"class":193}," 不走回头路\n",[183,1223,1224,1226],{"class":185,"line":506},[183,1225,1186],{"class":1134},[183,1227,1228],{"class":193}," 偏好文化景点\n",[183,1230,1231,1233],{"class":185,"line":511},[183,1232,1186],{"class":1134},[183,1234,1235],{"class":193}," 希望提前确认天气和温度\n",[16,1237,1238],{},"如果另一个用户是「低能量 P 人」，在对话中表达了\"夜猫子、早上起不来、不想去太远、喜欢小众景点\"，MemOS 生成的技能会明显不同：",[174,1240,1242],{"className":1091,"code":1241,"language":1093,"meta":179,"style":179},"---\nname: 旅行行程规划\ndescription: 帮助低能量旅行者规划轻松、灵活、偏下午和夜间体验的旅行行程。\n---\n\n## Procedure\n1. 确认用户当天精力、起床时间和不可接受的通勤距离\n2. 优先筛选距离近、交通简单、不需要赶早的景点\n3. 将行程重心放在下午、傍晚和夜间活动\n4. 穿插小众景点，避免过度热门和拥挤路线\n5. 保留弹性时间，允许用户临时调整\n\n## Experience\n- 避免安排早起项目\n- 避免长距离奔波和过密行程\n- 优先推荐地铁直达或短途打车可达的地点\n\n## User Preferences\n- 夜猫子，早上起不来\n- 不喜欢赶路\n- 喜欢小众、不走寻常路的体验\n",[115,1243,1244,1248,1252,1257,1261,1265,1271,1278,1285,1292,1299,1306,1310,1316,1323,1330,1337,1341,1347,1354,1361],{"__ignoreMap":179},[183,1245,1246],{"class":185,"line":186},[183,1247,1101],{"class":1100},[183,1249,1250],{"class":185,"line":197},[183,1251,1106],{"class":193},[183,1253,1254],{"class":185,"line":205},[183,1255,1256],{"class":193},"description: 帮助低能量旅行者规划轻松、灵活、偏下午和夜间体验的旅行行程。\n",[183,1258,1259],{"class":185,"line":213},[183,1260,1101],{"class":1116},[183,1262,1263],{"class":185,"line":220},[183,1264,217],{"emptyLinePlaceholder":216},[183,1266,1267,1269],{"class":185,"line":263},[183,1268,1125],{"class":1116},[183,1270,1129],{"class":1128},[183,1272,1273,1275],{"class":185,"line":292},[183,1274,1135],{"class":1134},[183,1276,1277],{"class":193}," 确认用户当天精力、起床时间和不可接受的通勤距离\n",[183,1279,1280,1282],{"class":185,"line":297},[183,1281,1143],{"class":1134},[183,1283,1284],{"class":193}," 优先筛选距离近、交通简单、不需要赶早的景点\n",[183,1286,1287,1289],{"class":185,"line":309},[183,1288,1151],{"class":1134},[183,1290,1291],{"class":193}," 将行程重心放在下午、傍晚和夜间活动\n",[183,1293,1294,1296],{"class":185,"line":333},[183,1295,1159],{"class":1134},[183,1297,1298],{"class":193}," 穿插小众景点，避免过度热门和拥挤路线\n",[183,1300,1301,1303],{"class":185,"line":354},[183,1302,1167],{"class":1134},[183,1304,1305],{"class":193}," 保留弹性时间，允许用户临时调整\n",[183,1307,1308],{"class":185,"line":369},[183,1309,217],{"emptyLinePlaceholder":216},[183,1311,1312,1314],{"class":185,"line":375},[183,1313,1125],{"class":1116},[183,1315,1181],{"class":1128},[183,1317,1318,1320],{"class":185,"line":397},[183,1319,1186],{"class":1134},[183,1321,1322],{"class":193}," 避免安排早起项目\n",[183,1324,1325,1327],{"class":185,"line":416},[183,1326,1186],{"class":1134},[183,1328,1329],{"class":193}," 避免长距离奔波和过密行程\n",[183,1331,1332,1334],{"class":185,"line":422},[183,1333,1186],{"class":1134},[183,1335,1336],{"class":193}," 优先推荐地铁直达或短途打车可达的地点\n",[183,1338,1339],{"class":185,"line":464},[183,1340,217],{"emptyLinePlaceholder":216},[183,1342,1343,1345],{"class":185,"line":469},[183,1344,1125],{"class":1116},[183,1346,1214],{"class":1128},[183,1348,1349,1351],{"class":185,"line":488},[183,1350,1186],{"class":1134},[183,1352,1353],{"class":193}," 夜猫子，早上起不来\n",[183,1355,1356,1358],{"class":185,"line":506},[183,1357,1186],{"class":1134},[183,1359,1360],{"class":193}," 不喜欢赶路\n",[183,1362,1363,1365],{"class":185,"line":511},[183,1364,1186],{"class":1134},[183,1366,1367],{"class":193}," 喜欢小众、不走寻常路的体验\n",[55,1369],{},[58,1371],{},[11,1373,1374],{"id":1374},"上传自定义技能",[65,1376,1377],{"id":1377},"客服退货示例",[16,1379,1380],{},"当你已有明确的标准流程，可以直接上传技能文件到知识库，MemOS 将统一检索并返回相关的技能。下述示例以「客服 Agent 退货处理流程」举例，讲解从技能上传到检索使用的全流程。",[58,1382],{},[166,1384,1386],{"id":1385},"_1-通过-api-上传到知识库","1. 通过 API 上传到知识库",[16,1388,1389],{},"通过上传知识库文件，上传一份指导客服 Agent 协助用户完成退货的技能文件。",[1391,1392,1393,1762],"code-group",{},[174,1394,1397],{"className":176,"code":1395,"filename":1396,"language":178,"meta":179,"style":179},"import os\nimport json\nimport requests\n\nos.environ[\"MEMOS_API_KEY\"] = \"YOUR_API_KEY\"\nos.environ[\"MEMOS_BASE_URL\"] = \"https://memos.memtensor.cn/api/openmem/v1\"\n\nheaders = {\n    \"Content-Type\": \"application/json\",\n    \"Authorization\": f\"Token {os.environ['MEMOS_API_KEY']}\"\n}\n\ndata = {\n    \"knowledgebase_id\": \"kb_xxx\",  # 替换为你的知识库 ID\n    \"file\": [\n        {\n            \"type\": \"skill\",\n            \"content\": \"https://cdn.memtensor.com.cn/file/SKILL.md\"  # 替换为你要上传的文件地址\n        }\n    ]\n}\n\nurl = f\"{os.environ['MEMOS_BASE_URL']}/add/knowledgebase-file\"\n\nres = requests.post(url=url, headers=headers, data=json.dumps(data))\nprint(f\"result: {res.json()}\")\n","URL 上传",[115,1398,1399,1405,1411,1417,1421,1447,1473,1477,1485,1503,1539,1543,1547,1555,1579,1592,1596,1616,1636,1641,1645,1649,1653,1686,1690,1736],{"__ignoreMap":179},[183,1400,1401,1403],{"class":185,"line":186},[183,1402,190],{"class":189},[183,1404,194],{"class":193},[183,1406,1407,1409],{"class":185,"line":197},[183,1408,190],{"class":189},[183,1410,202],{"class":193},[183,1412,1413,1415],{"class":185,"line":205},[183,1414,190],{"class":189},[183,1416,210],{"class":193},[183,1418,1419],{"class":185,"line":213},[183,1420,217],{"emptyLinePlaceholder":216},[183,1422,1423,1425,1427,1429,1431,1433,1435,1437,1439,1441,1443,1445],{"class":185,"line":220},[183,1424,223],{"class":193},[183,1426,227],{"class":226},[183,1428,231],{"class":230},[183,1430,234],{"class":226},[183,1432,238],{"class":237},[183,1434,242],{"class":241},[183,1436,238],{"class":237},[183,1438,247],{"class":226},[183,1440,251],{"class":250},[183,1442,254],{"class":237},[183,1444,257],{"class":241},[183,1446,260],{"class":237},[183,1448,1449,1451,1453,1455,1457,1459,1461,1463,1465,1467,1469,1471],{"class":185,"line":263},[183,1450,223],{"class":193},[183,1452,227],{"class":226},[183,1454,231],{"class":230},[183,1456,234],{"class":226},[183,1458,238],{"class":237},[183,1460,276],{"class":241},[183,1462,238],{"class":237},[183,1464,247],{"class":226},[183,1466,251],{"class":250},[183,1468,254],{"class":237},[183,1470,287],{"class":241},[183,1472,260],{"class":237},[183,1474,1475],{"class":185,"line":292},[183,1476,217],{"emptyLinePlaceholder":216},[183,1478,1479,1481,1483],{"class":185,"line":297},[183,1480,652],{"class":193},[183,1482,303],{"class":250},[183,1484,306],{"class":226},[183,1486,1487,1489,1491,1493,1495,1497,1499,1501],{"class":185,"line":309},[183,1488,312],{"class":237},[183,1490,664],{"class":241},[183,1492,238],{"class":237},[183,1494,320],{"class":226},[183,1496,254],{"class":237},[183,1498,673],{"class":241},[183,1500,238],{"class":237},[183,1502,330],{"class":226},[183,1504,1505,1507,1509,1511,1513,1515,1517,1519,1521,1523,1525,1527,1529,1531,1533,1535,1537],{"class":185,"line":333},[183,1506,312],{"class":237},[183,1508,685],{"class":241},[183,1510,238],{"class":237},[183,1512,320],{"class":226},[183,1514,693],{"class":692},[183,1516,696],{"class":241},[183,1518,700],{"class":699},[183,1520,223],{"class":193},[183,1522,227],{"class":226},[183,1524,231],{"class":230},[183,1526,234],{"class":226},[183,1528,711],{"class":237},[183,1530,242],{"class":241},[183,1532,711],{"class":237},[183,1534,247],{"class":226},[183,1536,720],{"class":699},[183,1538,260],{"class":241},[183,1540,1541],{"class":185,"line":354},[183,1542,630],{"class":226},[183,1544,1545],{"class":185,"line":369},[183,1546,217],{"emptyLinePlaceholder":216},[183,1548,1549,1551,1553],{"class":185,"line":375},[183,1550,300],{"class":193},[183,1552,303],{"class":250},[183,1554,306],{"class":226},[183,1556,1557,1559,1562,1564,1566,1568,1571,1573,1575],{"class":185,"line":397},[183,1558,312],{"class":237},[183,1560,1561],{"class":241},"knowledgebase_id",[183,1563,238],{"class":237},[183,1565,320],{"class":226},[183,1567,254],{"class":237},[183,1569,1570],{"class":241},"kb_xxx",[183,1572,238],{"class":237},[183,1574,443],{"class":226},[183,1576,1578],{"class":1577},"sfVK4","  # 替换为你的知识库 ID\n",[183,1580,1581,1583,1586,1588,1590],{"class":185,"line":416},[183,1582,312],{"class":237},[183,1584,1585],{"class":241},"file",[183,1587,238],{"class":237},[183,1589,320],{"class":226},[183,1591,366],{"class":226},[183,1593,1594],{"class":185,"line":422},[183,1595,372],{"class":226},[183,1597,1598,1600,1603,1605,1607,1609,1612,1614],{"class":185,"line":464},[183,1599,378],{"class":237},[183,1601,1602],{"class":241},"type",[183,1604,238],{"class":237},[183,1606,320],{"class":226},[183,1608,254],{"class":237},[183,1610,1611],{"class":241},"skill",[183,1613,238],{"class":237},[183,1615,330],{"class":226},[183,1617,1618,1620,1622,1624,1626,1628,1631,1633],{"class":185,"line":469},[183,1619,378],{"class":237},[183,1621,402],{"class":241},[183,1623,238],{"class":237},[183,1625,320],{"class":226},[183,1627,254],{"class":237},[183,1629,1630],{"class":241},"https://cdn.memtensor.com.cn/file/SKILL.md",[183,1632,238],{"class":237},[183,1634,1635],{"class":1577},"  # 替换为你要上传的文件地址\n",[183,1637,1638],{"class":185,"line":488},[183,1639,1640],{"class":226},"        }\n",[183,1642,1643],{"class":185,"line":506},[183,1644,636],{"class":226},[183,1646,1647],{"class":185,"line":511},[183,1648,630],{"class":226},[183,1650,1651],{"class":185,"line":548},[183,1652,217],{"emptyLinePlaceholder":216},[183,1654,1655,1657,1659,1661,1663,1665,1667,1669,1671,1673,1675,1677,1679,1681,1683],{"class":185,"line":553},[183,1656,733],{"class":193},[183,1658,303],{"class":250},[183,1660,693],{"class":692},[183,1662,238],{"class":241},[183,1664,700],{"class":699},[183,1666,223],{"class":193},[183,1668,227],{"class":226},[183,1670,231],{"class":230},[183,1672,234],{"class":226},[183,1674,711],{"class":237},[183,1676,276],{"class":241},[183,1678,711],{"class":237},[183,1680,247],{"class":226},[183,1682,720],{"class":699},[183,1684,1685],{"class":241},"/add/knowledgebase-file\"\n",[183,1687,1688],{"class":185,"line":572},[183,1689,217],{"emptyLinePlaceholder":216},[183,1691,1692,1694,1696,1698,1700,1702,1704,1706,1708,1710,1712,1714,1716,1718,1720,1722,1724,1726,1728,1730,1732,1734],{"class":185,"line":590},[183,1693,773],{"class":193},[183,1695,303],{"class":250},[183,1697,778],{"class":193},[183,1699,227],{"class":226},[183,1701,784],{"class":783},[183,1703,787],{"class":226},[183,1705,791],{"class":790},[183,1707,303],{"class":250},[183,1709,791],{"class":783},[183,1711,443],{"class":226},[183,1713,800],{"class":790},[183,1715,303],{"class":250},[183,1717,805],{"class":783},[183,1719,443],{"class":226},[183,1721,810],{"class":790},[183,1723,303],{"class":250},[183,1725,815],{"class":783},[183,1727,227],{"class":226},[183,1729,820],{"class":783},[183,1731,787],{"class":226},[183,1733,825],{"class":783},[183,1735,828],{"class":226},[183,1737,1738,1740,1742,1744,1746,1748,1750,1752,1754,1756,1758,1760],{"class":185,"line":595},[183,1739,835],{"class":834},[183,1741,787],{"class":226},[183,1743,840],{"class":692},[183,1745,843],{"class":241},[183,1747,700],{"class":699},[183,1749,848],{"class":783},[183,1751,227],{"class":226},[183,1753,815],{"class":783},[183,1755,855],{"class":226},[183,1757,720],{"class":699},[183,1759,238],{"class":241},[183,1761,862],{"class":226},[174,1763,1766],{"className":176,"code":1764,"filename":1765,"language":178,"meta":179,"style":179},"import os\nimport json\nimport base64\nimport requests\n\nos.environ[\"MEMOS_API_KEY\"] = \"YOUR_API_KEY\"\nos.environ[\"MEMOS_BASE_URL\"] = \"https://memos.memtensor.cn/api/openmem/v1\"\n\nskill_markdown = \"\"\"---\nname: 客服退货处理流程\ndescription: 指导客服按标准流程处理用户退货请求\n---\n\n## Procedure\n\n1. 确认用户身份和订单号\n2. 核实退货原因是否符合政策\n3. 引导用户选择退货方式（上门取件/自行寄回）\n4. 生成退货单号并告知用户\n5. 跟踪物流状态，退款到账后通知用户\n\n## Experience\n\n- 签收 7 天内可无理由退货\n- 生鲜类商品不支持退货，需走售后补偿流程\n- 高价值商品（>500 元）需主管审批\n\n## User Preferences\n\n- 优先推荐上门取件，减少用户操作成本\n- 退款方式默认原路退回\n\n## Examples\n\n### Example 1: 普通商品退货\n用户：我三天前买的耳机想退货。\n助手：好的，已确认您的订单在 7 天无理由退货范围内。请问您希望上门取件还是自行寄回？\n\"\"\"\n\nencoded_skill = base64.b64encode(skill_markdown.encode(\"utf-8\")).decode(\"utf-8\")\n\ndata = {\n    \"knowledgebase_id\": \"kb_xxx\",  # 替换为你的知识库 ID\n    \"file\": [\n        {\n            \"type\": \"skill\",\n            \"name\": \"customer-return-sop.md\",\n            \"content\": f\"data:text/markdown;base64,{encoded_skill}\"\n        }\n    ]\n}\n\nheaders = {\n    \"Content-Type\": \"application/json\",\n    \"Authorization\": f\"Token {os.environ['MEMOS_API_KEY']}\"\n}\nurl = f\"{os.environ['MEMOS_BASE_URL']}/add/knowledgebase-file\"\n\nres = requests.post(url=url, headers=headers, data=json.dumps(data))\nprint(f\"result: {res.json()}\")\n","Base64 上传",[115,1767,1768,1774,1780,1787,1793,1797,1823,1849,1853,1865,1870,1875,1879,1883,1888,1892,1897,1902,1907,1912,1917,1921,1926,1930,1935,1940,1945,1949,1954,1958,1963,1968,1972,1977,1981,1986,1991,1996,2002,2007,2058,2063,2072,2093,2106,2111,2130,2151,2176,2181,2186,2191,2196,2205,2224,2261,2266,2299,2304,2351],{"__ignoreMap":179},[183,1769,1770,1772],{"class":185,"line":186},[183,1771,190],{"class":189},[183,1773,194],{"class":193},[183,1775,1776,1778],{"class":185,"line":197},[183,1777,190],{"class":189},[183,1779,202],{"class":193},[183,1781,1782,1784],{"class":185,"line":205},[183,1783,190],{"class":189},[183,1785,1786],{"class":193}," base64\n",[183,1788,1789,1791],{"class":185,"line":213},[183,1790,190],{"class":189},[183,1792,210],{"class":193},[183,1794,1795],{"class":185,"line":220},[183,1796,217],{"emptyLinePlaceholder":216},[183,1798,1799,1801,1803,1805,1807,1809,1811,1813,1815,1817,1819,1821],{"class":185,"line":263},[183,1800,223],{"class":193},[183,1802,227],{"class":226},[183,1804,231],{"class":230},[183,1806,234],{"class":226},[183,1808,238],{"class":237},[183,1810,242],{"class":241},[183,1812,238],{"class":237},[183,1814,247],{"class":226},[183,1816,251],{"class":250},[183,1818,254],{"class":237},[183,1820,257],{"class":241},[183,1822,260],{"class":237},[183,1824,1825,1827,1829,1831,1833,1835,1837,1839,1841,1843,1845,1847],{"class":185,"line":292},[183,1826,223],{"class":193},[183,1828,227],{"class":226},[183,1830,231],{"class":230},[183,1832,234],{"class":226},[183,1834,238],{"class":237},[183,1836,276],{"class":241},[183,1838,238],{"class":237},[183,1840,247],{"class":226},[183,1842,251],{"class":250},[183,1844,254],{"class":237},[183,1846,287],{"class":241},[183,1848,260],{"class":237},[183,1850,1851],{"class":185,"line":297},[183,1852,217],{"emptyLinePlaceholder":216},[183,1854,1855,1858,1860,1863],{"class":185,"line":309},[183,1856,1857],{"class":193},"skill_markdown ",[183,1859,303],{"class":250},[183,1861,1862],{"class":237}," \"\"\"",[183,1864,1101],{"class":241},[183,1866,1867],{"class":185,"line":333},[183,1868,1869],{"class":241},"name: 客服退货处理流程\n",[183,1871,1872],{"class":185,"line":354},[183,1873,1874],{"class":241},"description: 指导客服按标准流程处理用户退货请求\n",[183,1876,1877],{"class":185,"line":369},[183,1878,1101],{"class":241},[183,1880,1881],{"class":185,"line":375},[183,1882,217],{"emptyLinePlaceholder":216},[183,1884,1885],{"class":185,"line":397},[183,1886,1887],{"class":241},"## Procedure\n",[183,1889,1890],{"class":185,"line":416},[183,1891,217],{"emptyLinePlaceholder":216},[183,1893,1894],{"class":185,"line":422},[183,1895,1896],{"class":241},"1. 确认用户身份和订单号\n",[183,1898,1899],{"class":185,"line":464},[183,1900,1901],{"class":241},"2. 核实退货原因是否符合政策\n",[183,1903,1904],{"class":185,"line":469},[183,1905,1906],{"class":241},"3. 引导用户选择退货方式（上门取件/自行寄回）\n",[183,1908,1909],{"class":185,"line":488},[183,1910,1911],{"class":241},"4. 生成退货单号并告知用户\n",[183,1913,1914],{"class":185,"line":506},[183,1915,1916],{"class":241},"5. 跟踪物流状态，退款到账后通知用户\n",[183,1918,1919],{"class":185,"line":511},[183,1920,217],{"emptyLinePlaceholder":216},[183,1922,1923],{"class":185,"line":548},[183,1924,1925],{"class":241},"## Experience\n",[183,1927,1928],{"class":185,"line":553},[183,1929,217],{"emptyLinePlaceholder":216},[183,1931,1932],{"class":185,"line":572},[183,1933,1934],{"class":241},"- 签收 7 天内可无理由退货\n",[183,1936,1937],{"class":185,"line":590},[183,1938,1939],{"class":241},"- 生鲜类商品不支持退货，需走售后补偿流程\n",[183,1941,1942],{"class":185,"line":595},[183,1943,1944],{"class":241},"- 高价值商品（>500 元）需主管审批\n",[183,1946,1947],{"class":185,"line":633},[183,1948,217],{"emptyLinePlaceholder":216},[183,1950,1951],{"class":185,"line":639},[183,1952,1953],{"class":241},"## User Preferences\n",[183,1955,1956],{"class":185,"line":644},[183,1957,217],{"emptyLinePlaceholder":216},[183,1959,1960],{"class":185,"line":649},[183,1961,1962],{"class":241},"- 优先推荐上门取件，减少用户操作成本\n",[183,1964,1965],{"class":185,"line":659},[183,1966,1967],{"class":241},"- 退款方式默认原路退回\n",[183,1969,1970],{"class":185,"line":680},[183,1971,217],{"emptyLinePlaceholder":216},[183,1973,1974],{"class":185,"line":725},[183,1975,1976],{"class":241},"## Examples\n",[183,1978,1979],{"class":185,"line":730},[183,1980,217],{"emptyLinePlaceholder":216},[183,1982,1983],{"class":185,"line":765},[183,1984,1985],{"class":241},"### Example 1: 普通商品退货\n",[183,1987,1988],{"class":185,"line":770},[183,1989,1990],{"class":241},"用户：我三天前买的耳机想退货。\n",[183,1992,1993],{"class":185,"line":831},[183,1994,1995],{"class":241},"助手：好的，已确认您的订单在 7 天无理由退货范围内。请问您希望上门取件还是自行寄回？\n",[183,1997,1999],{"class":185,"line":1998},38,[183,2000,2001],{"class":237},"\"\"\"\n",[183,2003,2005],{"class":185,"line":2004},39,[183,2006,217],{"emptyLinePlaceholder":216},[183,2008,2010,2013,2015,2018,2020,2023,2025,2028,2030,2033,2035,2037,2040,2042,2045,2048,2050,2052,2054,2056],{"class":185,"line":2009},40,[183,2011,2012],{"class":193},"encoded_skill ",[183,2014,303],{"class":250},[183,2016,2017],{"class":193}," base64",[183,2019,227],{"class":226},[183,2021,2022],{"class":783},"b64encode",[183,2024,787],{"class":226},[183,2026,2027],{"class":783},"skill_markdown",[183,2029,227],{"class":226},[183,2031,2032],{"class":783},"encode",[183,2034,787],{"class":226},[183,2036,238],{"class":237},[183,2038,2039],{"class":241},"utf-8",[183,2041,238],{"class":237},[183,2043,2044],{"class":226},")).",[183,2046,2047],{"class":783},"decode",[183,2049,787],{"class":226},[183,2051,238],{"class":237},[183,2053,2039],{"class":241},[183,2055,238],{"class":237},[183,2057,862],{"class":226},[183,2059,2061],{"class":185,"line":2060},41,[183,2062,217],{"emptyLinePlaceholder":216},[183,2064,2066,2068,2070],{"class":185,"line":2065},42,[183,2067,300],{"class":193},[183,2069,303],{"class":250},[183,2071,306],{"class":226},[183,2073,2075,2077,2079,2081,2083,2085,2087,2089,2091],{"class":185,"line":2074},43,[183,2076,312],{"class":237},[183,2078,1561],{"class":241},[183,2080,238],{"class":237},[183,2082,320],{"class":226},[183,2084,254],{"class":237},[183,2086,1570],{"class":241},[183,2088,238],{"class":237},[183,2090,443],{"class":226},[183,2092,1578],{"class":1577},[183,2094,2096,2098,2100,2102,2104],{"class":185,"line":2095},44,[183,2097,312],{"class":237},[183,2099,1585],{"class":241},[183,2101,238],{"class":237},[183,2103,320],{"class":226},[183,2105,366],{"class":226},[183,2107,2109],{"class":185,"line":2108},45,[183,2110,372],{"class":226},[183,2112,2114,2116,2118,2120,2122,2124,2126,2128],{"class":185,"line":2113},46,[183,2115,378],{"class":237},[183,2117,1602],{"class":241},[183,2119,238],{"class":237},[183,2121,320],{"class":226},[183,2123,254],{"class":237},[183,2125,1611],{"class":241},[183,2127,238],{"class":237},[183,2129,330],{"class":226},[183,2131,2133,2135,2138,2140,2142,2144,2147,2149],{"class":185,"line":2132},47,[183,2134,378],{"class":237},[183,2136,2137],{"class":241},"name",[183,2139,238],{"class":237},[183,2141,320],{"class":226},[183,2143,254],{"class":237},[183,2145,2146],{"class":241},"customer-return-sop.md",[183,2148,238],{"class":237},[183,2150,330],{"class":226},[183,2152,2154,2156,2158,2160,2162,2164,2167,2169,2172,2174],{"class":185,"line":2153},48,[183,2155,378],{"class":237},[183,2157,402],{"class":241},[183,2159,238],{"class":237},[183,2161,320],{"class":226},[183,2163,693],{"class":692},[183,2165,2166],{"class":241},"\"data:text/markdown;base64,",[183,2168,700],{"class":699},[183,2170,2171],{"class":193},"encoded_skill",[183,2173,720],{"class":699},[183,2175,260],{"class":241},[183,2177,2179],{"class":185,"line":2178},49,[183,2180,1640],{"class":226},[183,2182,2184],{"class":185,"line":2183},50,[183,2185,636],{"class":226},[183,2187,2189],{"class":185,"line":2188},51,[183,2190,630],{"class":226},[183,2192,2194],{"class":185,"line":2193},52,[183,2195,217],{"emptyLinePlaceholder":216},[183,2197,2199,2201,2203],{"class":185,"line":2198},53,[183,2200,652],{"class":193},[183,2202,303],{"class":250},[183,2204,306],{"class":226},[183,2206,2208,2210,2212,2214,2216,2218,2220,2222],{"class":185,"line":2207},54,[183,2209,312],{"class":237},[183,2211,664],{"class":241},[183,2213,238],{"class":237},[183,2215,320],{"class":226},[183,2217,254],{"class":237},[183,2219,673],{"class":241},[183,2221,238],{"class":237},[183,2223,330],{"class":226},[183,2225,2227,2229,2231,2233,2235,2237,2239,2241,2243,2245,2247,2249,2251,2253,2255,2257,2259],{"class":185,"line":2226},55,[183,2228,312],{"class":237},[183,2230,685],{"class":241},[183,2232,238],{"class":237},[183,2234,320],{"class":226},[183,2236,693],{"class":692},[183,2238,696],{"class":241},[183,2240,700],{"class":699},[183,2242,223],{"class":193},[183,2244,227],{"class":226},[183,2246,231],{"class":230},[183,2248,234],{"class":226},[183,2250,711],{"class":237},[183,2252,242],{"class":241},[183,2254,711],{"class":237},[183,2256,247],{"class":226},[183,2258,720],{"class":699},[183,2260,260],{"class":241},[183,2262,2264],{"class":185,"line":2263},56,[183,2265,630],{"class":226},[183,2267,2269,2271,2273,2275,2277,2279,2281,2283,2285,2287,2289,2291,2293,2295,2297],{"class":185,"line":2268},57,[183,2270,733],{"class":193},[183,2272,303],{"class":250},[183,2274,693],{"class":692},[183,2276,238],{"class":241},[183,2278,700],{"class":699},[183,2280,223],{"class":193},[183,2282,227],{"class":226},[183,2284,231],{"class":230},[183,2286,234],{"class":226},[183,2288,711],{"class":237},[183,2290,276],{"class":241},[183,2292,711],{"class":237},[183,2294,247],{"class":226},[183,2296,720],{"class":699},[183,2298,1685],{"class":241},[183,2300,2302],{"class":185,"line":2301},58,[183,2303,217],{"emptyLinePlaceholder":216},[183,2305,2307,2309,2311,2313,2315,2317,2319,2321,2323,2325,2327,2329,2331,2333,2335,2337,2339,2341,2343,2345,2347,2349],{"class":185,"line":2306},59,[183,2308,773],{"class":193},[183,2310,303],{"class":250},[183,2312,778],{"class":193},[183,2314,227],{"class":226},[183,2316,784],{"class":783},[183,2318,787],{"class":226},[183,2320,791],{"class":790},[183,2322,303],{"class":250},[183,2324,791],{"class":783},[183,2326,443],{"class":226},[183,2328,800],{"class":790},[183,2330,303],{"class":250},[183,2332,805],{"class":783},[183,2334,443],{"class":226},[183,2336,810],{"class":790},[183,2338,303],{"class":250},[183,2340,815],{"class":783},[183,2342,227],{"class":226},[183,2344,820],{"class":783},[183,2346,787],{"class":226},[183,2348,825],{"class":783},[183,2350,828],{"class":226},[183,2352,2354,2356,2358,2360,2362,2364,2366,2368,2370,2372,2374,2376],{"class":185,"line":2353},60,[183,2355,835],{"class":834},[183,2357,787],{"class":226},[183,2359,840],{"class":692},[183,2361,843],{"class":241},[183,2363,700],{"class":699},[183,2365,848],{"class":783},[183,2367,227],{"class":226},[183,2369,815],{"class":783},[183,2371,855],{"class":226},[183,2373,720],{"class":699},[183,2375,238],{"class":241},[183,2377,862],{"class":226},[58,2379],{},[166,2381,2383],{"id":2382},"_2-通过控制台上传技能文件","2. 通过控制台上传技能文件",[16,2385,2386,2387,2394,2395,2398,2399,2402],{},"前往 ",[2388,2389,2393],"a",{"href":2390,"rel":2391},"https://memos-dashboard.openmem.net/knowledgeBase/",[2392],"nofollow","控制台 - 知识库","，选择目标知识库，点击「上传文档」，将 ",[115,2396,2397],{},".md"," 或 ",[115,2400,2401],{},".zip"," 文件拖入即可。上传时选择文件类型为「技能文件」。",[16,2404,2405],{},[101,2406],{"alt":2407,"src":2408},"image","https://cdn.memtensor.com.cn/img/1778148120408_c3xk8d_compressed.png",[58,2410],{},[166,2412,2414],{"id":2413},"_3-检索技能","3. 检索技能",[16,2416,2417,2418,2421,2422,2424],{},"上传成功后，检索时传入 ",[115,2419,2420],{},"knowledgebase_ids"," 并开启 ",[115,2423,952],{},"，MemOS 会返回与查询内容相关的技能。如下所示，Agent 可按「客服退货处理流程」引导用户完成退货。",[174,2426,2428],{"className":176,"code":2427,"language":178,"meta":179,"style":179},"data = {\n    \"query\": \"用户想退一件三天前买的耳机\",\n    \"user_id\": \"memos_user_123\",\n    \"conversation_id\": \"session_001\",\n    \"knowledgebase_ids\": [\"kb_xxx\"],\n    \"include_skill\": True\n}\n\nres = requests.post(\n    url=f\"{os.environ['MEMOS_BASE_URL']}/search/memory\",\n    headers=headers,\n    data=json.dumps(data)\n)\nprint(f\"result: {res.json()}\")\n",[115,2429,2430,2438,2457,2476,2495,2517,2529,2533,2537,2551,2585,2595,2613,2617],{"__ignoreMap":179},[183,2431,2432,2434,2436],{"class":185,"line":186},[183,2433,300],{"class":193},[183,2435,303],{"class":250},[183,2437,306],{"class":226},[183,2439,2440,2442,2444,2446,2448,2450,2453,2455],{"class":185,"line":197},[183,2441,312],{"class":237},[183,2443,895],{"class":241},[183,2445,238],{"class":237},[183,2447,320],{"class":226},[183,2449,254],{"class":237},[183,2451,2452],{"class":241},"用户想退一件三天前买的耳机",[183,2454,238],{"class":237},[183,2456,330],{"class":226},[183,2458,2459,2461,2463,2465,2467,2469,2472,2474],{"class":185,"line":205},[183,2460,312],{"class":237},[183,2462,315],{"class":241},[183,2464,238],{"class":237},[183,2466,320],{"class":226},[183,2468,254],{"class":237},[183,2470,2471],{"class":241},"memos_user_123",[183,2473,238],{"class":237},[183,2475,330],{"class":226},[183,2477,2478,2480,2482,2484,2486,2488,2491,2493],{"class":185,"line":213},[183,2479,312],{"class":237},[183,2481,338],{"class":241},[183,2483,238],{"class":237},[183,2485,320],{"class":226},[183,2487,254],{"class":237},[183,2489,2490],{"class":241},"session_001",[183,2492,238],{"class":237},[183,2494,330],{"class":226},[183,2496,2497,2499,2501,2503,2505,2508,2510,2512,2514],{"class":185,"line":220},[183,2498,312],{"class":237},[183,2500,2420],{"class":241},[183,2502,238],{"class":237},[183,2504,320],{"class":226},[183,2506,2507],{"class":226}," [",[183,2509,238],{"class":237},[183,2511,1570],{"class":241},[183,2513,238],{"class":237},[183,2515,2516],{"class":226},"],\n",[183,2518,2519,2521,2523,2525,2527],{"class":185,"line":263},[183,2520,312],{"class":237},[183,2522,952],{"class":241},[183,2524,238],{"class":237},[183,2526,320],{"class":226},[183,2528,960],{"class":959},[183,2530,2531],{"class":185,"line":292},[183,2532,630],{"class":226},[183,2534,2535],{"class":185,"line":297},[183,2536,217],{"emptyLinePlaceholder":216},[183,2538,2539,2541,2543,2545,2547,2549],{"class":185,"line":309},[183,2540,773],{"class":193},[183,2542,303],{"class":250},[183,2544,778],{"class":193},[183,2546,227],{"class":226},[183,2548,784],{"class":783},[183,2550,983],{"class":226},[183,2552,2553,2555,2557,2559,2561,2563,2565,2567,2569,2571,2573,2575,2577,2579,2581,2583],{"class":185,"line":333},[183,2554,988],{"class":790},[183,2556,303],{"class":250},[183,2558,840],{"class":692},[183,2560,238],{"class":241},[183,2562,700],{"class":699},[183,2564,223],{"class":783},[183,2566,227],{"class":226},[183,2568,231],{"class":230},[183,2570,234],{"class":226},[183,2572,711],{"class":237},[183,2574,276],{"class":241},[183,2576,711],{"class":237},[183,2578,247],{"class":226},[183,2580,720],{"class":699},[183,2582,1017],{"class":241},[183,2584,330],{"class":226},[183,2586,2587,2589,2591,2593],{"class":185,"line":354},[183,2588,1024],{"class":790},[183,2590,303],{"class":250},[183,2592,805],{"class":783},[183,2594,330],{"class":226},[183,2596,2597,2599,2601,2603,2605,2607,2609,2611],{"class":185,"line":369},[183,2598,1035],{"class":790},[183,2600,303],{"class":250},[183,2602,815],{"class":783},[183,2604,227],{"class":226},[183,2606,820],{"class":783},[183,2608,787],{"class":226},[183,2610,825],{"class":783},[183,2612,862],{"class":226},[183,2614,2615],{"class":185,"line":375},[183,2616,862],{"class":226},[183,2618,2619,2621,2623,2625,2627,2629,2631,2633,2635,2637,2639,2641],{"class":185,"line":397},[183,2620,835],{"class":834},[183,2622,787],{"class":226},[183,2624,840],{"class":692},[183,2626,843],{"class":241},[183,2628,700],{"class":699},[183,2630,848],{"class":783},[183,2632,227],{"class":226},[183,2634,815],{"class":783},[183,2636,855],{"class":226},[183,2638,720],{"class":699},[183,2640,238],{"class":241},[183,2642,862],{"class":226},[58,2644],{},[65,2646,2648],{"id":2647},"skill-文件规范","Skill 文件规范",[166,2650,2652,2653],{"id":2651},"_1-单文件-md","1. 单文件 ",[115,2654,2397],{},[25,2656,2657,2674],{},[28,2658,2659,2660],{},"约束条件如下：",[25,2661,2662,2665],{},[28,2663,2664],{},"大小限制：≤ 100KB",[28,2666,2667,2668,2670,2671],{},"文件内容：必须包含 ",[115,2669,2137],{}," 和 ",[115,2672,2673],{},"description",[28,2675,2676],{},"推荐按以下格式组织正文：",[174,2678,2683],{"className":2679,"code":2681,"language":2682,"meta":179},[2680],"language-text","---\nname: （技能名称）\ndescription: （一句话描述技能的用途和适用场景）\n---\n\n## Procedure\n1. 步骤一\n2. 步骤二\n3. 步骤三\n\n## Experience\n- 经验或注意事项一\n- 经验或注意事项二\n\n## User Preferences\n- 偏好设定一\n- 偏好设定二\n\n## Examples\n\n### Example 1: （场景描述）\n（完整的输入输出示例）\n\n## Additional Information\n（补充说明，如参考链接、特殊规则等）\n","text",[115,2684,2681],{"__ignoreMap":179},[58,2686],{},[166,2688,2690,2691],{"id":2689},"_2-技能压缩包-zip","2. 技能压缩包 ",[115,2692,2401],{},[25,2694,2695],{},[28,2696,2659],{},[2698,2699,2700,2713],"table",{},[2701,2702,2703],"thead",{},[2704,2705,2706,2710],"tr",{},[2707,2708,2709],"th",{},"约束",[2707,2711,2712],{},"要求",[2714,2715,2716,2725,2733,2741,2749],"tbody",{},[2704,2717,2718,2722],{},[2719,2720,2721],"td",{},"格式",[2719,2723,2724],{},"标准 ZIP，不支持 rar/7z",[2704,2726,2727,2730],{},[2719,2728,2729],{},"zip 大小",[2719,2731,2732],{},"≤ 20MB",[2704,2734,2735,2738],{},[2719,2736,2737],{},"解压后文件数",[2719,2739,2740],{},"≤ 200",[2704,2742,2743,2746],{},[2719,2744,2745],{},"解压后单文件",[2719,2747,2748],{},"≤ 10MB",[2704,2750,2751,2754],{},[2719,2752,2753],{},"SKILL.md",[2719,2755,2756,2757,2759,2760,2762],{},"≤ 100KB，",[115,2758,2137],{},"/",[115,2761,2673],{}," 必填，须在压缩包第一层",[25,2764,2765],{},[28,2766,2676],{},[174,2768,2771],{"className":2769,"code":2770,"language":2682,"meta":179},[2680],"refund-sop-v1.zip\n├── SKILL.md             \n├── references/\n│   └── 退货政策摘要.md\n├── scripts/\n│   └── check_order.py    \n└── assets/\n    └── flowchart.png\n",[115,2772,2770],{"__ignoreMap":179},[55,2774],{},[58,2776],{},[11,2778,2779],{"id":2779},"如何使用召回的技能",[16,2781,2782,2783,2786],{},"无论技能来源是自动生成还是知识库上传，检索返回的 ",[115,2784,2785],{},"skill_detail_list"," 中每个技能包含两个字段：",[2698,2788,2789,2799],{},[2701,2790,2791],{},[2704,2792,2793,2796],{},[2707,2794,2795],{},"字段",[2707,2797,2798],{},"说明",[2714,2800,2801,2811],{},[2704,2802,2803,2808],{},[2719,2804,2805],{},[115,2806,2807],{},"skill_value",[2719,2809,2810],{},"技能的结构化内容，可直接转为字符串注入 Agent 的 prompt",[2704,2812,2813,2818],{},[2719,2814,2815],{},[115,2816,2817],{},"skill_url",[2719,2819,2820],{},"技能文件的下载链接；如果是 zip 技能包，Agent 可下载后获取脚本、参考资料等附件",[58,2822],{},[65,2824,2825],{"id":2825},"用法参考",[16,2827,2828],{},"根据你调用的 Agent 是否具备使用 Skill 的能力，可参考以下两种用法：",[58,2830],{},[166,2832,2834],{"id":2833},"_1-agent-支持-skill","1. Agent 支持 Skill",[16,2836,2837,2838,2840],{},"将 ",[115,2839,2817],{}," 提供给 Agent，让它下载链接中的文件，可以把它写进 prompt：",[174,2842,2844],{"className":176,"code":2843,"language":178,"meta":179,"style":179},"skill_detail = result[\"skill_detail_list\"][0]\nskill_url = skill_detail.get(\"skill_url\")\n\nsystem_prompt = f\"\"\"你是一个客服助手。遇到用户退货，可使用以下 Skill 文件完成任务：\n\n{skill_url}\n\"\"\"\n",[115,2845,2846,2874,2899,2903,2915,2919,2927],{"__ignoreMap":179},[183,2847,2848,2851,2853,2856,2858,2860,2862,2864,2867,2871],{"class":185,"line":186},[183,2849,2850],{"class":193},"skill_detail ",[183,2852,303],{"class":250},[183,2854,2855],{"class":193}," result",[183,2857,234],{"class":226},[183,2859,238],{"class":237},[183,2861,2785],{"class":241},[183,2863,238],{"class":237},[183,2865,2866],{"class":226},"][",[183,2868,2870],{"class":2869},"sJNII","0",[183,2872,2873],{"class":226},"]\n",[183,2875,2876,2879,2881,2884,2886,2889,2891,2893,2895,2897],{"class":185,"line":197},[183,2877,2878],{"class":193},"skill_url ",[183,2880,303],{"class":250},[183,2882,2883],{"class":193}," skill_detail",[183,2885,227],{"class":226},[183,2887,2888],{"class":783},"get",[183,2890,787],{"class":226},[183,2892,238],{"class":237},[183,2894,2817],{"class":241},[183,2896,238],{"class":237},[183,2898,862],{"class":226},[183,2900,2901],{"class":185,"line":205},[183,2902,217],{"emptyLinePlaceholder":216},[183,2904,2905,2908,2910,2912],{"class":185,"line":213},[183,2906,2907],{"class":193},"system_prompt ",[183,2909,303],{"class":250},[183,2911,693],{"class":692},[183,2913,2914],{"class":241},"\"\"\"你是一个客服助手。遇到用户退货，可使用以下 Skill 文件完成任务：\n",[183,2916,2917],{"class":185,"line":220},[183,2918,217],{"emptyLinePlaceholder":216},[183,2920,2921,2923,2925],{"class":185,"line":263},[183,2922,700],{"class":699},[183,2924,2817],{"class":193},[183,2926,630],{"class":699},[183,2928,2929],{"class":185,"line":292},[183,2930,2001],{"class":241},[58,2932],{},[166,2934,2936],{"id":2935},"_2-agent-不支持-skill","2. Agent 不支持 Skill",[16,2938,2837,2939,2941],{},[115,2940,2807],{}," 转成字符串，添加到 prompt 中：",[174,2943,2945],{"className":176,"code":2944,"language":178,"meta":179,"style":179},"skill_detail = result[\"skill_detail_list\"][0]\nskill = str(skill_detail[\"skill_value\"])\n\nsystem_prompt = f\"\"\"你是一个客服助手。请参考以下技能执行任务：\n\n{skill}\n\"\"\"\n",[115,2946,2947,2969,2996,3000,3011,3015,3023],{"__ignoreMap":179},[183,2948,2949,2951,2953,2955,2957,2959,2961,2963,2965,2967],{"class":185,"line":186},[183,2950,2850],{"class":193},[183,2952,303],{"class":250},[183,2954,2855],{"class":193},[183,2956,234],{"class":226},[183,2958,238],{"class":237},[183,2960,2785],{"class":241},[183,2962,238],{"class":237},[183,2964,2866],{"class":226},[183,2966,2870],{"class":2869},[183,2968,2873],{"class":226},[183,2970,2971,2974,2976,2980,2982,2985,2987,2989,2991,2993],{"class":185,"line":197},[183,2972,2973],{"class":193},"skill ",[183,2975,303],{"class":250},[183,2977,2979],{"class":2978},"skqQ-"," str",[183,2981,787],{"class":226},[183,2983,2984],{"class":783},"skill_detail",[183,2986,234],{"class":226},[183,2988,238],{"class":237},[183,2990,2807],{"class":241},[183,2992,238],{"class":237},[183,2994,2995],{"class":226},"])\n",[183,2997,2998],{"class":185,"line":205},[183,2999,217],{"emptyLinePlaceholder":216},[183,3001,3002,3004,3006,3008],{"class":185,"line":213},[183,3003,2907],{"class":193},[183,3005,303],{"class":250},[183,3007,693],{"class":692},[183,3009,3010],{"class":241},"\"\"\"你是一个客服助手。请参考以下技能执行任务：\n",[183,3012,3013],{"class":185,"line":220},[183,3014,217],{"emptyLinePlaceholder":216},[183,3016,3017,3019,3021],{"class":185,"line":263},[183,3018,700],{"class":699},[183,3020,1611],{"class":193},[183,3022,630],{"class":699},[183,3024,3025],{"class":185,"line":292},[183,3026,2001],{"class":241},[3028,3029,3030],"tip",{},[16,3031,3032],{},"检索时，MemOS 会同时搜索个人对话生成的技能和知识库中上传的技能，统一排序返回。你无需区分来源。",[55,3034],{},[16,3036,3037],{},[20,3038,3039],{},"现在就开始探索 MemOS 记忆自进化能力吧！",[25,3041,3042,3050,3058],{},[28,3043,2386,3044,3049],{},[2388,3045,3048],{"href":3046,"rel":3047},"https://memos-dashboard.openmem.net/cn/skill/",[2392],"控制台 - 技能页面","，查看自动生成的技能。",[28,3051,3052,3053,3057],{},"还没有技能？",[2388,3054,3056],{"href":3055},"/memos_cloud/mem_operations/add_message","添加消息","即可触发生成。",[28,3059,3060,3061,3064],{},"想上传自定义技能？前往 ",[2388,3062,2393],{"href":2390,"rel":3063},[2392],"上传。",[3066,3067,3068],"style",{},"html pre.shiki code .sBMTB, html code.shiki .sBMTB{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#A0111F;--shiki-default-font-style:inherit;--shiki-dark:#FF7B72;--shiki-dark-font-style:inherit}html pre.shiki code .s5ojA, html code.shiki .s5ojA{--shiki-light:#90A4AE;--shiki-default:#0E1116;--shiki-dark:#E6EDF3}html pre.shiki code .suWxN, html code.shiki .suWxN{--shiki-light:#39ADB5;--shiki-default:#0E1116;--shiki-dark:#E6EDF3}html pre.shiki code .s5qkx, html code.shiki .s5qkx{--shiki-light:#E53935;--shiki-default:#0E1116;--shiki-dark:#E6EDF3}html pre.shiki code .sjUum, html code.shiki .sjUum{--shiki-light:#39ADB5;--shiki-default:#032563;--shiki-dark:#A5D6FF}html pre.shiki code .sp1uZ, html code.shiki .sp1uZ{--shiki-light:#91B859;--shiki-default:#032563;--shiki-dark:#A5D6FF}html pre.shiki code .saN0X, html code.shiki .saN0X{--shiki-light:#39ADB5;--shiki-default:#A0111F;--shiki-dark:#FF7B72}html pre.shiki code .sZ6T4, html code.shiki .sZ6T4{--shiki-light:#9C3EDA;--shiki-default:#A0111F;--shiki-dark:#FF7B72}html pre.shiki code .scyET, html code.shiki .scyET{--shiki-light:#F76D47;--shiki-default:#A0111F;--shiki-dark:#FF7B72}html pre.shiki code .sa-2m, html code.shiki .sa-2m{--shiki-light:#6182B8;--shiki-default:#0E1116;--shiki-dark:#E6EDF3}html pre.shiki code .sp4zP, html code.shiki .sp4zP{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#702C00;--shiki-default-font-style:inherit;--shiki-dark:#FFA657;--shiki-dark-font-style:inherit}html pre.shiki code .svxCd, html code.shiki .svxCd{--shiki-light:#6182B8;--shiki-default:#023B95;--shiki-dark:#79C0FF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .smHB8, html code.shiki .smHB8{--shiki-light:#39ADB5;--shiki-default:#023B95;--shiki-dark:#79C0FF}html pre.shiki code .sfVK4, html code.shiki .sfVK4{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#66707B;--shiki-default-font-style:inherit;--shiki-dark:#8B949E;--shiki-dark-font-style:inherit}html pre.shiki code .sJNII, html code.shiki .sJNII{--shiki-light:#F76D47;--shiki-default:#023B95;--shiki-dark:#79C0FF}html pre.shiki code .skqQ-, html code.shiki .skqQ-{--shiki-light:#E2931D;--shiki-default:#023B95;--shiki-dark:#79C0FF}html pre.shiki code .sV76_, html code.shiki .sV76_{--shiki-light:#90A4AE;--shiki-light-font-weight:inherit;--shiki-default:#023B95;--shiki-default-font-weight:bold;--shiki-dark:#79C0FF;--shiki-dark-font-weight:bold}html pre.shiki code .sJcg5, html code.shiki .sJcg5{--shiki-light:#39ADB5;--shiki-light-font-weight:inherit;--shiki-default:#023B95;--shiki-default-font-weight:bold;--shiki-dark:#79C0FF;--shiki-dark-font-weight:bold}html pre.shiki code .sGXFf, html code.shiki .sGXFf{--shiki-light:#E2931D;--shiki-light-font-weight:inherit;--shiki-default:#023B95;--shiki-default-font-weight:bold;--shiki-dark:#79C0FF;--shiki-dark-font-weight:bold}html pre.shiki code .sQBKe, html code.shiki .sQBKe{--shiki-light:#39ADB5;--shiki-default:#702C00;--shiki-dark:#FFA657}",{"title":179,"searchDepth":197,"depth":197,"links":3070},[3071,3072,3076,3080,3084],{"id":13,"depth":197,"text":14},{"id":62,"depth":197,"text":63,"children":3073},[3074,3075],{"id":67,"depth":205,"text":68},{"id":83,"depth":205,"text":84},{"id":94,"depth":197,"text":94,"children":3077},[3078,3079],{"id":97,"depth":205,"text":97},{"id":159,"depth":205,"text":159},{"id":1374,"depth":197,"text":1374,"children":3081},[3082,3083],{"id":1377,"depth":205,"text":1377},{"id":2647,"depth":205,"text":2648},{"id":2779,"depth":197,"text":2779,"children":3085},[3086],{"id":2825,"depth":205,"text":2825},"记忆不只是存储——MemOS 会自动从对话中提炼可复用的结构化方法，让 Agent 的能力随使用持续进化。","md",{},"/cn/memos_cloud/features/self-evolving",{"title":5,"description":179},"cn/memos_cloud/features/self-evolving","t0y5RaWex2LkOsYjlWDCAmlpWb_nzTYvlMWMvXbFs7k",[3095,3103],{"title":3096,"path":3097,"stem":3098,"icon":3099,"framework":6,"module":6,"class":3100,"target":-1,"active":3101,"defaultOpen":3101,"children":-1,"description":3102},"事件记忆","/cn/memos_cloud/features/event_memory","memos_cloud/features/event_memory","i-ri-calendar-event-line",[],false,"从对话中自动抽取结构化事件，包含时间、地点、参与者等要素。",{"title":3104,"path":3105,"stem":3106,"icon":3107,"framework":6,"module":6,"class":3108,"target":-1,"active":3101,"defaultOpen":3101,"children":-1,"description":3109},"群聊","/cn/memos_cloud/features/group_chat","memos_cloud/features/group_chat","i-ri-group-line",[],"多用户与 Agent 在同一会话中对话，MemOS 抽取记忆时区分不同参与者。",1785143976323]