mirror of
https://github.com/Wx-2025/ST-Amily2-Chat-Optimisation.git
synced 2026-06-06 20:55:51 +00:00
2 lines
53 KiB
JavaScript
2 lines
53 KiB
JavaScript
'use strict';const _0x1d2ea6=_0x292c;(function(_0xbc1e4f,_0x4d6bc8){const _0x280f6b=_0x292c,_0x152b1b=_0xbc1e4f();while(!![]){try{const _0x2ba4e6=parseInt(_0x280f6b(0x207))/0x1+-parseInt(_0x280f6b(0x29e))/0x2+-parseInt(_0x280f6b(0x2d0))/0x3+parseInt(_0x280f6b(0x1e5))/0x4*(parseInt(_0x280f6b(0x252))/0x5)+parseInt(_0x280f6b(0x1df))/0x6*(parseInt(_0x280f6b(0x274))/0x7)+parseInt(_0x280f6b(0x243))/0x8+-parseInt(_0x280f6b(0x242))/0x9*(parseInt(_0x280f6b(0x2cf))/0xa);if(_0x2ba4e6===_0x4d6bc8)break;else _0x152b1b['push'](_0x152b1b['shift']());}catch(_0x165e1a){_0x152b1b['push'](_0x152b1b['shift']());}}}(_0x255c,0x44e7d));function _0x255c(){const _0x117b49=['key','[翰林院-日志]\x20/api/vector/purge\x20响应状态:\x20','lorebook','未分类世界书','移动失败:没有当前角色,无法移入局部知识库。','manual','saveProgress','忆识检索失败:\x20','isArray','text','template','\x20及其向量数据。','[翰林院-日志]\x20清空目标集合ID:\x20','\x20池精确提取\x20','[翰林院-配置]\x20','在源作用域\x20\x27','/api/vector/query','[翰林院]\x20进入多路并行独立检索流程...','slice','end','message','results','[翰林院-迁移]\x20用户确认迁移,正在处理旧宝库:\x20','[翰林院-日志]\x20忆识存入API错误:','join','log','find','[翰林院-迁移]\x20集合\x20','vector','\x20-\x20楼层\x20#','length','AbortError','7zengPT','data','\x20个条目。','\x27的文本分割成\x20','[来源:\x20','global','insertVectors\x20必须接收一个有效的\x20collectionId\x20参数。','stringify','chapter','(已锁定:\x20','[翰林院-核心]\x20文本录入失败:\x20','status','第1章','对话记录大总结','metadata','[翰林院-户口普查]\x20知识库\x20\x22','),开始强制重分类所有知识库...','advanced','[翰林院]\x20检索或注入时发生错误:','map','substring','翰林院通告','error','local','小说录入','replace','[翰林院-核心]\x20尝试删除一个不存在的知识库:\x20','has','toString','[翰林院-核心]\x20已为宝库\x20','Rerank失败:\x20','bookName','\x0a</','position','部分]','\x22\x20创建专属知识库...','settingsVersion','chat','queryMessageCount','add','getTime','\x20时发生网络错误:','1053220RDMFUY','操作已取消。','push','toLocaleString','hashes','未知来源','condensationHistory','score','[翰林院-户口普查]\x20普查完成,正在保存更新后的户籍...','includes','[翰林院-日志]\x20清空宝库API错误:','宏史卷总结','forEach','random','[翰林院-Rerank]\x20开始元数据加权最终排序...','comment','检测到旧版数据,正在进行一次性户口普查...','[翰林院-日志]\x20统计集合\x20','\x20(ID:\x20','[翰林院-日志]\x20所有知识库查询完毕,共获得\x20','floor','\x20失败:\x20','owner','\x20条结果。','[翰林院-核心]\x20已为角色\x20','第1卷','未知小说','翰林院忆识核心已启动\x20(V5.2-集成版),已注册到全局\x20hanlinyuanRagProcessor\x20对象。','用户取消了迁移操作','test','final_score','\x20不存在,计为\x200。','hybrid_alpha','_text}}','all','sourceName','\x20添加新知识库:\x20',',\x20条目:\x20','oldId','count','[翰林院-日志]\x20开始清空宝库...','\x22,将数据合并入库。','对话记录小总结','/api/vector/list','trim','\x20列表API时出现问题\x20(状态:\x20','hanlinyuanRagProcessor','charCodeAt','chat_history','420QireQo','116220lTCGxa','superSortEnabled','sort','initialized','[翰林院-核心]\x20processCondensation\x20失败:','hanlinyuan-rag-core','\x20(范围:\x20','volume','original_index','\x20记录凝识范围:\x20','\x20个知识块,准备入库。','content','[翰林院-迁移]\x20旧宝库已清空。','name','string','手动录入:\x20',',将清空集合:\x20','notify','[翰林院]\x20创建常规查询组\x20(','toLowerCase','/api/vector/insert','[翰林院-核心]\x20知识库\x20','task_','\x20条初步结果。','injection_','聊天记录','[翰林院-日志]\x20无法确定要清空的目标集合ID。','[翰林院]\x20常规池处理完毕,产出\x20','[翰林院-日志]\x20没有可供查询的知识库,查询中止。','HANLINYUAN_RAG_LOREBOOK','[翰林院-核心]\x20已锁定忆识宝库ID:\x20','[翰林院-日志]\x20开始获取所有知识库的向量总数...','正在智能分块...','novel','[翰林院-计数]\x20在作用域\x20\x27','warn','[翰林院-日志]\x20清空宝库API调用成功。','[翰林院-日志]\x20获取集合\x20','输入文本为空','核心未初始化','检测到旧版数据。此操作将把旧数据迁移到新格式,过程不可逆,是否继续?','toISOString','findIndex','\x22\x20已从\x20[','\x27\x20的注入设置,跳过处理。','1488306zlGceI','is_user','[翰林院-日志]\x20开始向量查询...\x20(目标:\x20','文本块和向量数量不匹配','filter','\x20个特定知识库。','416eFbGht','\x20不存在,返回空数组。','[翰林院]\x20进入传统处理流程...','entryName','aborted','abs','startsWith','rerank_score','condensation','未知角色','聊天记录\x20#','sources','未能生成查询向量。','[翰林院-配置]\x20为旧版知识库\x20','knowledgeBases','所有启用库','无法确定要清空的目标宝库。','match','values','[翰林院-核心]\x20已创建并锁定知识库:\x20','batchSize','...)','relevance_score','now','忆识存入API错误\x20','[翰林院-V13\x20修复]\x20重建元数据后,知识库\x20','getRequestHeaders','[翰林院]\x20优先组\x20','newId','[翰林院-日志]\x20正在查询知识库:\x20','\x20条消息分解为\x20','mes','split','[翰林院-日志]\x20查询白名单已提供,将查询\x20','327592OotYaO','\x20的知识库。','HANLINYUAN_RAG_MANUAL','[翰林院]\x20已为来源\x20\x27','POST','saveSettingsDebounced','webllm','查询集合\x20','移动失败:未找到源条目。','[翰林院]\x20最终准备注入\x20',',\x20向量化录入时间:\x20','object','info','_global','enabled','start','[翰林院-核心]\x20准备删除知识库\x20','success',')\x20的状态已切换为:\x20','[翰林院-日志]\x20查询知识库\x20','[翰林院-Rerank]\x20元数据加权排序完成。','min','\x20返回\x20','scope','HANLINYUAN_RAG_CHAT','part','外部Rerank完成','user','\x20补充所有者ID:\x20','[翰林院-核心]\x20检测到同名知识库\x20\x22','删除知识库失败,未能清空后端数据。','_history','zh-CN',',\x20第','[翰林院-日志]\x20所有知识库统计完成,总向量数:\x20','source','unknown','[翰林院]\x20已从\x20','聊天记录:\x20','max','[翰林院-日志]\x20统计目标集合ID:\x20','未知条目','then','[翰林院]\x20未能获取SillyTavern上下文,初始化失败。','[翰林院-日志]\x20发送到\x20/api/vector/purge\x20的请求体:','[翰林院-日志]\x20没有启用的新知识库,尝试查询旧版单体宝库...','手动录入','小说:\x20','\x20(集合ID:\x20','reduce','个库)','rearrangeChat','\x27,使用通用分块逻辑。','世界书','flat','legacy','depth','知识库\x20\x22','[翰林院-核心]\x20将来源\x27','100314bOgrGT','2052640bmWCGM',']\x20更正为\x20[','<mark\x20class=\x22search-highlight\x22>$1</mark>','[翰林院]\x20最终无可用结果,注入中止。','[翰林院-迁移]\x20用户取消了迁移操作。','tiaomu','\x22\x20已删除。','[翰林院]\x20创建优先查询组:\x20','[翰林院-核心]\x20聊天记录凝识失败:\x20','\x27\x20中未找到ID为\x20','json','rerank','hasOwnProperty','extensionSettings','top_n','23245iiSaxI','sousuo'];_0x255c=function(){return _0x117b49;};return _0x255c();}import{extension_prompt_roles,setExtensionPrompt}from'/script.js';import*as _0x274781 from'./utils/context-utils.js';import{getCollectionIdInfo,getCharacterId,getCharacterStableId}from'./utils/context-utils.js';import{defaultSettings as _0x1e824f}from'./rag-settings.js';import*as _0x249d4f from'./ingestion-manager.js';import{getEmbeddings,fetchEmbeddingModels as _0xc3e478,fetchRerankModels as _0x303e64,executeRerank,testApiConnection as _0x528b44}from'./rag-api.js';import{superSort}from'./super-sorter.js';const MODULE_NAME=_0x1d2ea6(0x2d5),OFFICIAL_REARRANGE_CHAT_FUNCTION_NAME='vectors_rearrangeChat',GLOBAL_SCOPE_ID=_0x1d2ea6(0x214);let context=null,settings=null,lockedCollectionId=null;function filterWorldbooks(_0x1d1706,_0x42b6b5){const _0x106c03=_0x1d2ea6;if(!_0x1d1706||!_0x1d1706[_0x106c03(0x2ca)]())return _0x42b6b5;const _0x32fea9=_0x1d1706[_0x106c03(0x2e3)]()['trim']();return _0x42b6b5['filter'](_0xf39df2=>{const _0x141186=_0x106c03;return _0xf39df2[_0x141186(0x2e3)]()[_0x141186(0x2a7)](_0x32fea9)||containsPinyinMatch(_0xf39df2,_0x32fea9);});}function filterWorldbookEntries(_0x32de80,_0x1a2817){const _0x46bf0f=_0x1d2ea6;if(!_0x32de80||!_0x32de80[_0x46bf0f(0x2ca)]())return _0x1a2817;const _0x4b8b62=_0x32de80['toLowerCase']()[_0x46bf0f(0x2ca)]();return _0x1a2817[_0x46bf0f(0x1e3)](_0x3e174e=>{const _0x37dbb4=_0x46bf0f,_0x15afad=[_0x3e174e[_0x37dbb4(0x2ad)]||'',_0x3e174e[_0x37dbb4(0x254)]||'',_0x3e174e[_0x37dbb4(0x2db)]||''][_0x37dbb4(0x26c)]('\x20')[_0x37dbb4(0x2e3)]();return _0x15afad[_0x37dbb4(0x2a7)](_0x4b8b62)||containsPinyinMatch(_0x3e174e[_0x37dbb4(0x2ad)]||'',_0x4b8b62);});}function containsPinyinMatch(_0x10600b,_0x137e2b){const _0x3e0b39=_0x1d2ea6,_0x3ade6b={'世界书':'sjshu','条目':_0x3e0b39(0x248),'编纂':'bianzhuan','搜索':_0x3e0b39(0x253)},_0x4dc3bd=_0x3ade6b[_0x10600b];return _0x4dc3bd&&_0x4dc3bd[_0x3e0b39(0x2a7)](_0x137e2b);}function highlightSearchMatch(_0x39e005,_0x14bf3c){const _0x25fafc=_0x1d2ea6;if(!_0x14bf3c||!_0x14bf3c['trim']())return _0x39e005;const _0x53b3c3=new RegExp('('+_0x14bf3c[_0x25fafc(0x28d)](/[.*+?^${}()|[\]\\]/g,'\x5c$&')+')','gi');return _0x39e005[_0x25fafc(0x28d)](_0x53b3c3,_0x25fafc(0x245));}function debounce(_0x464e5f,_0x58ebbf){let _0x54567c;return function _0x1f19dc(..._0x2e13a0){const _0x297501=()=>{clearTimeout(_0x54567c),_0x464e5f(..._0x2e13a0);};clearTimeout(_0x54567c),_0x54567c=setTimeout(_0x297501,_0x58ebbf);};}export{initialize,getSettings,saveSettings,resetSettings,_0x528b44 as testApiConnection,_0xc3e478 as fetchEmbeddingModels,_0x303e64 as fetchRerankModels,getVectorCount,purgeStorage,getMessagesForCondensation,processCondensation,ingestTextToHanlinyuan,getCollectionId,toggleSessionLock,isSessionLocked,getLockedSessionInfo,addKnowledgeBase,removeKnowledgeBase,getLocalKnowledgeBases,getGlobalKnowledgeBases,toggleKnowledgeBase,moveKnowledgeBase,filterWorldbooks,filterWorldbookEntries,highlightSearchMatch,debounce};function initialize(){const _0x594298=_0x1d2ea6;context=SillyTavern['getContext']();if(!context){console['error'](_0x594298(0x232));return;}settings=getSettings(),!window[_0x594298(0x2cc)]&&(window[_0x594298(0x2cc)]={}),window['hanlinyuanRagProcessor'][_0x594298(0x23a)]=rearrangeChat,window['hanlinyuanRagProcessor'][_0x594298(0x2d3)]=!![],console['log'](_0x594298(0x2b9));}async function ingestTextToHanlinyuan(_0x1f502f,_0x399b28='manual',_0x419d32={},_0x888350=()=>{},_0x48057f=null,_0x279698=()=>{},_0xf4d384=()=>{},_0x3ce809=null,_0x3619fc=0x0){const _0x4dace7=_0x1d2ea6;if(!_0x1f502f||!_0x1f502f['trim']())return{'success':![],'error':_0x4dace7(0x1d8)};if(!settings)return{'success':![],'error':_0x4dace7(0x1d9)};try{const _0x5ce1b3=getCollectionIdInfo(),_0x524ab9=await _0x2d61b9();if(_0x5ce1b3['oldId']&&_0x5ce1b3[_0x4dace7(0x2c4)]===_0x524ab9&&_0x5ce1b3['oldId']!==_0x5ce1b3[_0x4dace7(0x201)]){const _0x3302fb=confirm(_0x4dace7(0x1da));if(_0x3302fb)_0x279698(_0x4dace7(0x26a)+_0x5ce1b3[_0x4dace7(0x2c4)],_0x4dace7(0x1d5)),await purgeStorage(_0x5ce1b3['oldId']),_0x279698(_0x4dace7(0x2dc),_0x4dace7(0x218));else return _0x279698(_0x4dace7(0x247),_0x4dace7(0x213)),toastr[_0x4dace7(0x213)](_0x4dace7(0x29f)),{'success':![],'error':_0x4dace7(0x2ba)};}let _0x215b11,_0x3a34df;const _0x14c2cf=new Date()['toLocaleString'](_0x4dace7(0x227),{'hour12':![]}),_0x3a9161=getCharacterName()||_0x4dace7(0x1ee);switch(_0x399b28){case _0x4dace7(0x2ce):const _0x207241=_0x419d32['range']||{},_0x74be40=_0x207241['start']??'?',_0x37b3f4=_0x207241[_0x4dace7(0x267)]===0x0?'末':_0x207241[_0x4dace7(0x267)]??'?';_0x215b11=_0x3a9161+':\x20'+_0x74be40+'楼-'+_0x37b3f4+'楼';break;case _0x4dace7(0x256):const _0x865e9e=_0x419d32[_0x4dace7(0x293)]||_0x4dace7(0x257);if(_0x419d32[_0x4dace7(0x1e8)]&&_0x419d32[_0x4dace7(0x1e8)][_0x4dace7(0x2a7)]('微言录总结'))_0x419d32[_0x4dace7(0x1e8)]=_0x4dace7(0x2c8);else _0x419d32['entryName']&&_0x419d32[_0x4dace7(0x1e8)]['includes'](_0x4dace7(0x2a9))&&(_0x419d32[_0x4dace7(0x1e8)]=_0x4dace7(0x281));const _0x5a1545=_0x419d32[_0x4dace7(0x1e8)]||_0x4dace7(0x230);_0x215b11=_0x865e9e+':\x20'+_0x5a1545;break;case _0x4dace7(0x1d3):_0x215b11=_0x4dace7(0x236)+(_0x419d32[_0x4dace7(0x2c1)]||_0x4dace7(0x2b8));break;case _0x4dace7(0x259):default:_0x215b11=_0x4dace7(0x2df)+_0x14c2cf;break;}const _0x5e6eb6=Object[_0x4dace7(0x1f7)](getKnowledgeBases()),_0xca4c5d=_0x5e6eb6['find'](_0x4d2993=>_0x4d2993[_0x4dace7(0x2dd)]===_0x215b11);if(_0xca4c5d)_0x3a34df=_0xca4c5d['id'],_0x279698(_0x4dace7(0x224)+_0x215b11+'\x22,将数据合并入库。',_0x4dace7(0x213));else{_0x279698('[翰林院-核心]\x20准备为任务\x20\x22'+_0x215b11+_0x4dace7(0x297),_0x4dace7(0x213));const _0x9ffcbd=addKnowledgeBase(_0x215b11,_0x399b28);_0x3a34df=_0x9ffcbd['id'];}const _0xd6a3de=getCharacterStableId(),_0x2d15ee=_0xd6a3de+'_'+_0x3a34df;_0x279698(_0x4dace7(0x1f8)+_0x215b11+'\x20(集合ID:\x20'+_0x2d15ee+')',_0x4dace7(0x218)),_0x279698(_0x4dace7(0x1d0)+_0x2d15ee,_0x4dace7(0x213)),_0x888350({'message':_0x4dace7(0x1d2),'processed':0x0,'total':0x1});const _0x1d1326=splitIntoChunks(_0x1f502f,_0x399b28,_0x419d32),_0x4a03ba=_0x1d1326['length'];if(_0x48057f?.[_0x4dace7(0x1e9)])throw new Error(_0x4dace7(0x273));_0x279698(_0x4dace7(0x241)+_0x215b11+_0x4dace7(0x277)+_0x4a03ba+'\x20个块。','info');if(_0x4a03ba===0x0)return{'success':!![],'count':0x0};const _0x4892e1=settings['retrieval'][_0x4dace7(0x1f9)]||0x5;let _0x572369=_0x3619fc;for(let _0x3a9246=_0x3619fc;_0x3a9246<_0x4a03ba;_0x3a9246+=_0x4892e1){if(_0x48057f?.[_0x4dace7(0x1e9)])throw new Error('AbortError');const _0x28efdf=_0x1d1326[_0x4dace7(0x266)](_0x3a9246,_0x3a9246+_0x4892e1);_0x888350({'message':'正在处理\x20'+(_0x3a9246+0x1)+'-'+(_0x3a9246+_0x28efdf[_0x4dace7(0x272)])+'\x20块','processed':_0x3a9246,'total':_0x4a03ba});const _0x48b59f=_0x28efdf['map'](_0x4eb6db=>_0x4eb6db[_0x4dace7(0x25d)]),_0x48ff1d=await getEmbeddings(_0x48b59f,_0x48057f);if(_0x48057f?.['aborted'])throw new Error(_0x4dace7(0x273));if(_0x28efdf['length']!==_0x48ff1d[_0x4dace7(0x272)])throw new Error(_0x4dace7(0x1e2));const _0x26546f=_0x28efdf[_0x4dace7(0x287)]((_0x5c2fc0,_0x5eff83)=>({..._0x5c2fc0,'vector':_0x48ff1d[_0x5eff83]}));await insertVectors(_0x26546f,_0x48057f,_0x2d15ee),_0x572369+=_0x28efdf[_0x4dace7(0x272)],_0x3ce809&&_0x249d4f[_0x4dace7(0x25a)](_0x3ce809,_0x572369,_0x4a03ba),await _0xf4d384();}return _0x3ce809&&_0x249d4f['clearJob'](_0x3ce809),_0x279698('[翰林院-核心]\x20成功插入\x20'+_0x572369+'\x20个向量条目。',_0x4dace7(0x218)),{'success':!![],'count':_0x572369};}catch(_0x9f6acd){if(_0x9f6acd[_0x4dace7(0x2dd)]===_0x4dace7(0x273)){_0x279698('[翰林院-核心]\x20文本录入任务被用户中止。',_0x4dace7(0x1d5));throw _0x9f6acd;}return console[_0x4dace7(0x28a)]('[翰林院-核心]\x20ingestTextToHanlinyuan\x20失败:',_0x9f6acd),_0x279698(_0x4dace7(0x27e)+_0x9f6acd['message'],_0x4dace7(0x28a)),{'success':![],'error':_0x9f6acd[_0x4dace7(0x268)]};}}function getSettings(){const _0x2c78b0=_0x1d2ea6;if(!context||!context[_0x2c78b0(0x250)])return structuredClone(_0x1e824f);let _0x295228=context[_0x2c78b0(0x250)][MODULE_NAME];!_0x295228&&(_0x295228={},context[_0x2c78b0(0x250)][MODULE_NAME]=_0x295228);_0x295228[_0x2c78b0(0x2a4)]===undefined&&(_0x295228[_0x2c78b0(0x2a4)]={});_0x295228[_0x2c78b0(0x1f3)]===undefined&&(_0x295228[_0x2c78b0(0x1f3)]={});for(const _0x3f3b7b in _0x1e824f){if(_0x295228[_0x3f3b7b]===undefined)_0x295228[_0x3f3b7b]=structuredClone(_0x1e824f[_0x3f3b7b]);else{if(typeof _0x1e824f[_0x3f3b7b]===_0x2c78b0(0x212)&&!Array[_0x2c78b0(0x25c)](_0x1e824f[_0x3f3b7b])&&_0x1e824f[_0x3f3b7b]!==null)for(const _0x15c7b1 in _0x1e824f[_0x3f3b7b]){_0x295228[_0x3f3b7b][_0x15c7b1]===undefined&&(_0x295228[_0x3f3b7b][_0x15c7b1]=_0x1e824f[_0x3f3b7b][_0x15c7b1]);}}}return _0x295228;}function saveSettings(){const _0x22dc18=_0x1d2ea6;if(context)context[_0x22dc18(0x20c)]();}function resetSettings(){const _0x5dca40=_0x1d2ea6;context&&(context[_0x5dca40(0x250)][MODULE_NAME]=structuredClone(_0x1e824f),saveSettings());}function showNotification(_0x15c667,_0x2051d2=_0x1d2ea6(0x213)){toastr[_0x2051d2](_0x15c667);}function getTagForSource(_0x9cda1d){const _0x2ce6aa=_0x1d2ea6;switch(_0x9cda1d){case _0x2ce6aa(0x2ce):return _0x2ce6aa(0x1cb);case _0x2ce6aa(0x256):return'世界书';case _0x2ce6aa(0x259):return _0x2ce6aa(0x235);case _0x2ce6aa(0x1d3):return'小说录入';default:return'资料';}}function _0x292c(_0x4584ba,_0x107353){const _0x255cb2=_0x255c();return _0x292c=function(_0x292cd7,_0x3e519c){_0x292cd7=_0x292cd7-0x1ca;let _0x1c7d4c=_0x255cb2[_0x292cd7];return _0x1c7d4c;},_0x292c(_0x4584ba,_0x107353);}function splitIntoChunks(_0x427b59,_0x45965a,_0x33ef7e={}){const _0x3c4fa6=_0x1d2ea6;switch(_0x45965a){case _0x3c4fa6(0x1d3):return _chunkForNovel(_0x427b59,_0x33ef7e);case _0x3c4fa6(0x2ce):return _chunkForChatHistory(_0x427b59,_0x33ef7e);case _0x3c4fa6(0x256):return _chunkForLorebook(_0x427b59,_0x33ef7e);case'manual':return _chunkForManual(_0x427b59,_0x33ef7e);default:console[_0x3c4fa6(0x1d5)]('[翰林院-分块]\x20未知的来源类型\x20\x27'+_0x45965a+_0x3c4fa6(0x23b));return _chunkForManual(_0x427b59,{..._0x33ef7e,'sourceName':_0x33ef7e['sourceName']||_0x3c4fa6(0x2a3)});}}function _chunkForNovel(_0x336b46,_0x44efd3){const _0x56b8ba=_0x1d2ea6,{chunkSize:_0xa7e873,overlap:_0x21de6d}=settings['advanced'],{sourceName:sourceName='小说'}=_0x44efd3,_0x37e116=[];if(!_0x336b46||_0xa7e873<=0x0)return _0x37e116;const _0x1504ce=/(第\s*[一二三四五六七八九十百千万零\d]+\s*卷)/gim,_0x4e7897=/(第\s*[一二三四五六七八九十百千万零\d]+\s*[章回节部])|^(Chapter\s+\d+)/gim;let _0x30bbb5=0x0;const _0x2cc32e=_0x336b46[_0x56b8ba(0x205)]('\x0a');let _0x1fb716=_0x56b8ba(0x2b7),_0x4d71aa='第1章',_0x5bc12f=[];function _0x5421e7(){const _0x52dd14=_0x56b8ba;if(_0x5bc12f[_0x52dd14(0x272)]===0x0)return;const _0x449103=_0x5bc12f[_0x52dd14(0x26c)]('\x0a');let _0x360ca8=0x0,_0x281736=0x1;while(_0x360ca8<_0x449103[_0x52dd14(0x272)]){const _0x44f186=Math[_0x52dd14(0x21c)](_0x360ca8+_0xa7e873,_0x449103['length']),_0x2348a9=_0x449103[_0x52dd14(0x288)](_0x360ca8,_0x44f186);if(_0x2348a9[_0x52dd14(0x2ca)]()[_0x52dd14(0x272)]>0x0){const _0x4c702d={'source':_0x52dd14(0x1d3),'sourceName':sourceName,'timestamp':new Date()['toISOString'](),'globalIndex':_0x30bbb5++,'volume':_0x1fb716,'chapter':_0x4d71aa,'section':_0x281736},_0x3cdcab=getTagForSource('novel'),_0x4ab5e6=_0x52dd14(0x278)+sourceName+',\x20'+_0x1fb716+',\x20'+_0x4d71aa+',\x20第'+_0x281736+'节]',_0x916ffa='<'+_0x3cdcab+'>\x0a'+_0x4ab5e6+'\x0a'+_0x2348a9+_0x52dd14(0x294)+_0x3cdcab+'>';_0x37e116['push']({'text':_0x916ffa,'metadata':_0x4c702d}),_0x281736++;}_0x360ca8+=_0xa7e873-_0x21de6d;if(_0x360ca8>=_0x449103[_0x52dd14(0x272)])break;}_0x5bc12f=[];}for(const _0x10bead of _0x2cc32e){const _0x83b522=_0x10bead['trim']();if(_0x1504ce[_0x56b8ba(0x2bb)](_0x83b522))_0x5421e7(),_0x1fb716=_0x83b522,_0x4d71aa='第1章';else _0x4e7897[_0x56b8ba(0x2bb)](_0x83b522)?(_0x5421e7(),_0x4d71aa=_0x83b522):_0x5bc12f[_0x56b8ba(0x2a0)](_0x10bead);}_0x5421e7();if(_0x37e116[_0x56b8ba(0x272)]===0x0&&_0x336b46[_0x56b8ba(0x272)]>0x0){let _0x6b6989=0x0,_0x2be45c=0x1;while(_0x6b6989<_0x336b46['length']){const _0x4cc944=Math[_0x56b8ba(0x21c)](_0x6b6989+_0xa7e873,_0x336b46[_0x56b8ba(0x272)]),_0x5a84=_0x336b46[_0x56b8ba(0x288)](_0x6b6989,_0x4cc944),_0x18e123={'source':_0x56b8ba(0x1d3),'sourceName':sourceName,'timestamp':new Date()['toISOString'](),'globalIndex':_0x37e116['length'],'volume':_0x56b8ba(0x2b7),'chapter':_0x56b8ba(0x280),'section':_0x2be45c},_0x5a8662=getTagForSource(_0x56b8ba(0x1d3)),_0x59f77c='[来源:\x20'+sourceName+',\x20第1卷,\x20第1章,\x20第'+_0x2be45c+'节]',_0x255917='<'+_0x5a8662+'>\x0a'+_0x59f77c+'\x0a'+_0x5a84+_0x56b8ba(0x294)+_0x5a8662+'>';_0x37e116[_0x56b8ba(0x2a0)]({'text':_0x255917,'metadata':_0x18e123}),_0x2be45c++,_0x6b6989+=_0xa7e873-_0x21de6d;}}return _0x37e116;}function _chunkForChatHistory(_0x47f013,_0x478bb5){const _0x388564=_0x1d2ea6,{chunkSize:_0xfd2ee1,overlap:_0x1c5321}=settings['advanced'],{floor:_0x4af717,is_user:_0x2863c2,timestamp:_0x14ee10}=_0x478bb5,_0x4b21b0=[];if(!_0x47f013||_0xfd2ee1<=0x0)return _0x4b21b0;let _0x5d66d4=0x1,_0x2c7b2a=0x0;while(_0x2c7b2a<_0x47f013[_0x388564(0x272)]){const _0x4f3682=Math[_0x388564(0x21c)](_0x2c7b2a+_0xfd2ee1,_0x47f013[_0x388564(0x272)]),_0x5b98a0=_0x47f013[_0x388564(0x288)](_0x2c7b2a,_0x4f3682),_0x47ca9e='[来源:\x20聊天记录,\x20楼层:\x20#'+_0x4af717+_0x388564(0x228)+_0x5d66d4+_0x388564(0x296),_0x4de1f9=getTagForSource(_0x388564(0x2ce)),_0x3c3b4e='<'+_0x4de1f9+'>\x0a'+_0x47ca9e+'\x0a'+_0x5b98a0+'\x0a</'+_0x4de1f9+'>';_0x4b21b0[_0x388564(0x2a0)]({'text':_0x3c3b4e,'metadata':{'source':_0x388564(0x2ce),'sourceName':'聊天记录\x20#'+_0x4af717,'floor':_0x4af717,'part':_0x5d66d4,'is_user':_0x2863c2,'timestamp':_0x14ee10}}),_0x5d66d4++,_0x2c7b2a+=_0xfd2ee1-_0x1c5321;if(_0x2c7b2a>=_0x47f013[_0x388564(0x272)])break;}return _0x4b21b0;}function _chunkForLorebook(_0x2dc47e,_0x3c4926){const _0x4903e0=_0x1d2ea6,{chunkSize:_0x10e0bc,overlap:_0x3ba63c}=settings['advanced'],{bookName:bookName=_0x4903e0(0x23c),entryName:entryName='世界书条目'}=_0x3c4926,_0x3519fc=[];if(!_0x2dc47e||_0x10e0bc<=0x0)return _0x3519fc;let _0x2aac49=0x1,_0x15b95d=0x0;while(_0x15b95d<_0x2dc47e['length']){const _0x2435dc=Math[_0x4903e0(0x21c)](_0x15b95d+_0x10e0bc,_0x2dc47e[_0x4903e0(0x272)]),_0x381cdc=_0x2dc47e['substring'](_0x15b95d,_0x2435dc),_0x491afe=_0x4903e0(0x278)+bookName+_0x4903e0(0x2c3)+entryName+_0x4903e0(0x228)+_0x2aac49+_0x4903e0(0x296),_0x740191=getTagForSource(_0x4903e0(0x256)),_0x479623='<'+_0x740191+'>\x0a'+_0x491afe+'\x0a'+_0x381cdc+_0x4903e0(0x294)+_0x740191+'>';_0x3519fc['push']({'text':_0x479623,'metadata':{'source':'lorebook','sourceName':bookName+':\x20'+entryName,'bookName':bookName,'entryName':entryName,'part':_0x2aac49,'timestamp':new Date()[_0x4903e0(0x1db)]()}}),_0x2aac49++,_0x15b95d+=_0x10e0bc-_0x3ba63c;if(_0x15b95d>=_0x2dc47e[_0x4903e0(0x272)])break;}return _0x3519fc;}function _chunkForManual(_0x4e85b9,_0x4ccd32){const _0x47a778=_0x1d2ea6,{chunkSize:_0x4bbbd7,overlap:_0x6a4fa1}=settings[_0x47a778(0x285)],{sourceName:sourceName=_0x47a778(0x235)}=_0x4ccd32,_0x5a42ba=[];if(!_0x4e85b9||_0x4bbbd7<=0x0)return _0x5a42ba;const _0x4bb6fe=new Date(),_0x5ade21=_0x4bb6fe[_0x47a778(0x2a1)](_0x47a778(0x227));let _0x25b539=0x1,_0x1fd54d=0x0;while(_0x1fd54d<_0x4e85b9['length']){const _0x4a8786=Math['min'](_0x1fd54d+_0x4bbbd7,_0x4e85b9[_0x47a778(0x272)]),_0x4a596b=_0x4e85b9[_0x47a778(0x288)](_0x1fd54d,_0x4a8786),_0x247112=_0x47a778(0x278)+sourceName+_0x47a778(0x211)+_0x5ade21+_0x47a778(0x228)+_0x25b539+_0x47a778(0x296),_0x4f27a5=getTagForSource(_0x47a778(0x259)),_0x2012d3='<'+_0x4f27a5+'>\x0a'+_0x247112+'\x0a'+_0x4a596b+_0x47a778(0x294)+_0x4f27a5+'>';_0x5a42ba[_0x47a778(0x2a0)]({'text':_0x2012d3,'metadata':{'source':_0x47a778(0x259),'sourceName':sourceName,'part':_0x25b539,'timestamp':_0x4bb6fe['toISOString']()}}),_0x25b539++,_0x1fd54d+=_0x4bbbd7-_0x6a4fa1;if(_0x1fd54d>=_0x4e85b9[_0x47a778(0x272)])break;}return _0x5a42ba;}import{getCollectionId as _0x2d61b9,getCharacterName}from'./utils/context-utils.js';async function getCollectionId(){return lockedCollectionId||await _0x2d61b9();}async function toggleSessionLock(){return lockedCollectionId?(lockedCollectionId=null,![]):(lockedCollectionId=await _0x2d61b9(),!![]);}function isSessionLocked(){return lockedCollectionId!==null;}function getLockedSessionInfo(){const _0x32d6bd=_0x1d2ea6;if(!lockedCollectionId)return null;return{'id':lockedCollectionId,'name':_0x32d6bd(0x27d)+lockedCollectionId[_0x32d6bd(0x288)](0x0,0x8)+_0x32d6bd(0x1fa)};}function getLocalKnowledgeBases(){const _0x63eb6c=_0x1d2ea6,_0x202a99=getCharacterStableId();return!settings[_0x63eb6c(0x1f3)][_0x202a99]&&(settings[_0x63eb6c(0x1f3)][_0x202a99]={}),settings['knowledgeBases'][_0x202a99];}function getGlobalKnowledgeBases(){const _0x1ec62b=_0x1d2ea6;return!settings[_0x1ec62b(0x1f3)][GLOBAL_SCOPE_ID]&&(settings[_0x1ec62b(0x1f3)][GLOBAL_SCOPE_ID]={}),settings['knowledgeBases'][GLOBAL_SCOPE_ID];}function getKnowledgeBases(){const _0x1687e3=getLocalKnowledgeBases(),_0x1f6184=getGlobalKnowledgeBases();return{..._0x1f6184,..._0x1687e3};}function addKnowledgeBase(_0x2956dd,_0x125333='manual'){const _0x460b44=_0x1d2ea6;if(!_0x2956dd||!_0x2956dd[_0x460b44(0x2ca)]())throw new Error('知识库名称不能为空');const _0x2509dd=getCharacterStableId(),_0x29233d=getLocalKnowledgeBases(),_0x272144=_0x460b44(0x2e6)+Date[_0x460b44(0x1fc)]()+'_'+Math[_0x460b44(0x2ab)]()[_0x460b44(0x290)](0x24)['substring'](0x2,0x9),_0x19b731={'id':_0x272144,'name':_0x2956dd[_0x460b44(0x2ca)](),'enabled':!![],'createdAt':new Date()['toISOString'](),'owner':_0x2509dd,'source':_0x125333};return _0x29233d[_0x272144]=_0x19b731,saveSettings(),console[_0x460b44(0x26d)](_0x460b44(0x2b6)+_0x2509dd+_0x460b44(0x2c2)+_0x2956dd+'\x20(ID:\x20'+_0x272144+')'),_0x19b731;}async function removeKnowledgeBase(_0x11b78e,_0x2a77cb){const _0x564298=_0x1d2ea6,_0x523a79=getCharacterStableId(),_0x34de17=_0x2a77cb==='global'?getGlobalKnowledgeBases():getLocalKnowledgeBases(),_0x4a192f=_0x34de17[_0x11b78e],_0x39d93b=_0x4a192f?.[_0x564298(0x2dd)]||_0x11b78e;if(!_0x4a192f){console[_0x564298(0x1d5)](_0x564298(0x28e)+_0x11b78e+_0x564298(0x2d6)+_0x2a77cb+')');return;}const _0x2dc988=_0x2a77cb===_0x564298(0x279)?_0x4a192f[_0x564298(0x2b4)]||GLOBAL_SCOPE_ID:_0x523a79,_0x4d2e36=_0x2dc988+'_'+_0x11b78e;console[_0x564298(0x26d)](_0x564298(0x217)+_0x11b78e+_0x564298(0x2e0)+_0x4d2e36);const _0xbf11f=await purgeStorage(_0x4d2e36);_0xbf11f?(delete _0x34de17[_0x11b78e],saveSettings(),console[_0x564298(0x26d)]('[翰林院-核心]\x20成功删除知识库\x20'+_0x11b78e+_0x564298(0x25f)),toastr[_0x564298(0x218)](_0x564298(0x240)+_0x39d93b+_0x564298(0x249))):(console[_0x564298(0x28a)]('[翰林院-核心]\x20清空向量集合\x20'+_0x4d2e36+'\x20失败,删除操作中止。'),toastr[_0x564298(0x28a)](_0x564298(0x225)));}function toggleKnowledgeBase(_0x5f5d12,_0x4d6734){const _0x25ec83=_0x1d2ea6,_0x48e158=_0x4d6734===_0x25ec83(0x279)?getGlobalKnowledgeBases():getLocalKnowledgeBases();_0x48e158[_0x5f5d12]&&(_0x48e158[_0x5f5d12]['enabled']=!_0x48e158[_0x5f5d12]['enabled'],saveSettings(),console[_0x25ec83(0x26d)](_0x25ec83(0x2e5)+_0x5f5d12+_0x25ec83(0x2d6)+_0x4d6734+_0x25ec83(0x219)+(_0x48e158[_0x5f5d12]['enabled']?'启用':'禁用')));}function generateHash(_0x20dcc3){const _0x13112a=_0x1d2ea6;let _0x242d78=0x0;for(let _0x5b3318=0x0;_0x5b3318<_0x20dcc3[_0x13112a(0x272)];_0x5b3318++){const _0x2ee60e=_0x20dcc3[_0x13112a(0x2cd)](_0x5b3318);_0x242d78=(_0x242d78<<0x5)-_0x242d78+_0x2ee60e,_0x242d78=_0x242d78&_0x242d78;}return Math[_0x13112a(0x1ea)](_0x242d78)[_0x13112a(0x290)](0x24);}async function queryVectors(_0x1a8c54,_0x396b03={}){const _0x3777ba=_0x1d2ea6,{includeBases:includeBases=null}=_0x396b03;console['log'](_0x3777ba(0x1e1)+(includeBases?'指定知识库':_0x3777ba(0x1f4))+')');const _0x523527=getCharacterStableId();let _0x1778bf;if(includeBases)_0x1778bf=includeBases,console[_0x3777ba(0x26d)](_0x3777ba(0x206)+_0x1778bf[_0x3777ba(0x272)]+_0x3777ba(0x1e4));else{const _0x2a9fbb=getLocalKnowledgeBases(),_0x16a505=getGlobalKnowledgeBases(),_0x52202a=Object['values'](_0x2a9fbb)[_0x3777ba(0x1e3)](_0x957a69=>_0x957a69['enabled']),_0x266d07=Object[_0x3777ba(0x1f7)](_0x16a505)[_0x3777ba(0x1e3)](_0xaa1caa=>_0xaa1caa[_0x3777ba(0x215)]);_0x1778bf=[..._0x52202a[_0x3777ba(0x287)](_0x2efa24=>({..._0x2efa24,'scope':'local'})),..._0x266d07[_0x3777ba(0x287)](_0x575a4d=>({..._0x575a4d,'scope':_0x3777ba(0x279)}))];}if(_0x1778bf[_0x3777ba(0x272)]===0x0&&!includeBases){console['log'](_0x3777ba(0x234));const _0x5385c2=await _0x2d61b9();if(!_0x5385c2)return[];_0x1778bf[_0x3777ba(0x2a0)]({'id':null,'name':'旧版宝库\x20(Legacy)','scope':_0x3777ba(0x23e)});}if(_0x1778bf[_0x3777ba(0x272)]===0x0)return console[_0x3777ba(0x26d)](_0x3777ba(0x1ce)),[];const _0x3d9ce9=(await getEmbeddings([_0x1a8c54]))[0x0];if(!_0x3d9ce9)throw new Error(_0x3777ba(0x1f1));let _0x42775f=[];const _0x41598e=_0x1778bf[_0x3777ba(0x287)](_0x5f315c=>{const _0x2d08e5=_0x3777ba;let _0x110adb;if(_0x5f315c[_0x2d08e5(0x21e)]===_0x2d08e5(0x23e))_0x110adb=_0x2d61b9();else{const _0x39e64f=_0x5f315c[_0x2d08e5(0x21e)]===_0x2d08e5(0x279)?_0x5f315c['owner']||GLOBAL_SCOPE_ID:_0x523527;_0x110adb=Promise['resolve'](_0x39e64f+'_'+_0x5f315c['id']);}return _0x110adb[_0x2d08e5(0x231)](_0x34a6fa=>{const _0x18dbed=_0x2d08e5;if(!_0x34a6fa)return[];console['log'](_0x18dbed(0x202)+_0x5f315c[_0x18dbed(0x2dd)]+_0x18dbed(0x2b0)+_0x34a6fa+')');const _0x143836={'collectionId':_0x34a6fa,'searchText':_0x1a8c54,'topK':settings['advanced']['maxResults'],'threshold':settings[_0x18dbed(0x285)]['matchThreshold'],'source':_0x18dbed(0x20d),'embeddings':{[_0x1a8c54]:_0x3d9ce9}};return fetch(_0x18dbed(0x264),{'method':'POST','headers':context['getRequestHeaders'](),'body':JSON[_0x18dbed(0x27b)](_0x143836)})[_0x18dbed(0x231)](async _0x52bb78=>{const _0x579880=_0x18dbed;if(!_0x52bb78['ok']){const _0xecc60=await _0x52bb78[_0x579880(0x25d)]();return console[_0x579880(0x28a)]('[翰林院-日志]\x20查询知识库\x20'+_0x34a6fa+'\x20失败:',_0xecc60),[];}const _0x4b2039=await _0x52bb78[_0x579880(0x24d)]();let _0x293383=[];if(Array[_0x579880(0x25c)](_0x4b2039))_0x293383=_0x4b2039;else{if(_0x4b2039&&_0x4b2039['metadata']&&Array[_0x579880(0x25c)](_0x4b2039[_0x579880(0x282)]))_0x293383=_0x4b2039[_0x579880(0x282)];else{if(_0x4b2039&&_0x4b2039[_0x579880(0x269)]&&Array[_0x579880(0x25c)](_0x4b2039['results']))_0x293383=_0x4b2039[_0x579880(0x269)];else _0x4b2039&&_0x4b2039['data']&&Array['isArray'](_0x4b2039[_0x579880(0x275)])&&(_0x293383=_0x4b2039['data']);}}const _0x10e337=_0x293383[_0x579880(0x287)](_0x1de2ba=>{const _0x228993=_0x579880;if(!_0x1de2ba||typeof _0x1de2ba['text']!==_0x228993(0x2de))return null;const _0x5ef717={'source':_0x228993(0x22b),'sourceName':'未知'},_0x2bb6ce=_0x1de2ba['text']['match'](/^<([^>]+)>/),_0x4a7c62=_0x2bb6ce?_0x2bb6ce[0x1]:'';switch(_0x4a7c62){case _0x228993(0x1cb):_0x5ef717[_0x228993(0x22a)]='chat_history';const _0xb1e583=_0x1de2ba[_0x228993(0x25d)][_0x228993(0x1f6)](/楼层:\s*#(\d+),\s*第(\d+)部分/);_0xb1e583&&_0xb1e583[0x1]&&_0xb1e583[0x2]&&(_0x5ef717[_0x228993(0x2b2)]=parseInt(_0xb1e583[0x1],0xa),_0x5ef717[_0x228993(0x220)]=parseInt(_0xb1e583[0x2],0xa),_0x5ef717[_0x228993(0x2c1)]=_0x228993(0x1ef)+_0x5ef717['floor']);break;case _0x228993(0x23c):_0x5ef717['source']=_0x228993(0x256);const _0x44c9f9=_0x1de2ba[_0x228993(0x25d)][_0x228993(0x1f6)](/\[来源:\s*([^,]+),\s*条目:\s*([^,]+),\s*第(\d+)部分\]/);_0x44c9f9&&_0x44c9f9[0x1]&&_0x44c9f9[0x2]&&_0x44c9f9[0x3]&&(_0x5ef717[_0x228993(0x293)]=_0x44c9f9[0x1][_0x228993(0x2ca)](),_0x5ef717['entryName']=_0x44c9f9[0x2][_0x228993(0x2ca)](),_0x5ef717[_0x228993(0x220)]=parseInt(_0x44c9f9[0x3],0xa),_0x5ef717['sourceName']=_0x5ef717[_0x228993(0x293)]+':\x20'+_0x5ef717[_0x228993(0x1e8)]);break;case _0x228993(0x235):_0x5ef717[_0x228993(0x22a)]=_0x228993(0x259);const _0x5a3b05=_0x1de2ba[_0x228993(0x25d)]['match'](/\[来源:\s*([^,]+),.*第(\d+)部分\]/);_0x5a3b05&&_0x5a3b05[0x1]&&_0x5a3b05[0x2]&&(_0x5ef717[_0x228993(0x2c1)]=_0x5a3b05[0x1][_0x228993(0x2ca)](),_0x5ef717['part']=parseInt(_0x5a3b05[0x2],0xa));break;case _0x228993(0x28c):_0x5ef717[_0x228993(0x22a)]='novel';const _0x397f91=_0x1de2ba[_0x228993(0x25d)]['match'](/\[来源:\s*([^,]+),\s*([^,]+),\s*([^,]+),\s*([^\]]+)\]/);_0x397f91&&(_0x5ef717['sourceName']=_0x397f91[0x1][_0x228993(0x2ca)](),_0x5ef717[_0x228993(0x2d7)]=_0x397f91[0x2][_0x228993(0x2ca)](),_0x5ef717[_0x228993(0x27c)]=_0x397f91[0x3]['trim'](),_0x5ef717['section']=_0x397f91[0x4][_0x228993(0x2ca)]());break;}return{..._0x1de2ba,'score':_0x1de2ba['score']||0x1,'metadata':_0x5ef717};})[_0x579880(0x1e3)](Boolean);return console[_0x579880(0x26d)](_0x579880(0x1fe)+_0x5f315c[_0x579880(0x2dd)]+_0x579880(0x21d)+_0x10e337[_0x579880(0x272)]+_0x579880(0x2b5)),_0x10e337;})['catch'](_0x525b72=>{const _0x29f9c9=_0x18dbed;return console[_0x29f9c9(0x28a)](_0x29f9c9(0x21a)+_0x34a6fa+_0x29f9c9(0x29d),_0x525b72),[];});});}),_0x202a94=await Promise[_0x3777ba(0x2c0)](_0x41598e);_0x42775f=_0x202a94[_0x3777ba(0x23d)](),console[_0x3777ba(0x26d)](_0x3777ba(0x2b1)+_0x42775f['length']+_0x3777ba(0x2e7));const _0x284c42=[],_0xb11fa3=new Set();for(const _0x5d6b5d of _0x42775f){if(_0x5d6b5d&&typeof _0x5d6b5d==='object'&&_0x5d6b5d[_0x3777ba(0x25d)]&&typeof _0x5d6b5d[_0x3777ba(0x25d)]==='string'){const _0x21b048=_0x5d6b5d[_0x3777ba(0x25d)]['trim']();_0x21b048[_0x3777ba(0x272)]>0x0&&!_0xb11fa3[_0x3777ba(0x28f)](_0x21b048)&&(_0xb11fa3[_0x3777ba(0x29b)](_0x21b048),_0x284c42[_0x3777ba(0x2a0)](_0x5d6b5d));}}console[_0x3777ba(0x26d)]('[翰林院-日志]\x20去重后剩余\x20'+_0x284c42['length']+_0x3777ba(0x2b5)),_0x284c42[_0x3777ba(0x2d2)]((_0x2281ea,_0x13b49c)=>(_0x13b49c[_0x3777ba(0x2a5)]||0x0)-(_0x2281ea[_0x3777ba(0x2a5)]||0x0));const _0x42148e=[..._0x284c42];return console[_0x3777ba(0x26d)]('[翰林院-修复]\x20最终返回数组长度:\x20'+_0x42148e[_0x3777ba(0x272)]),console[_0x3777ba(0x26d)]('[翰林院-修复]\x20最终返回数组样本:',JSON[_0x3777ba(0x27b)](_0x42148e[_0x3777ba(0x266)](0x0,0x1),null,0x2)),_0x42148e;}async function insertVectors(_0x1b4fb7,_0x18ee5c=null,_0x5c5170){const _0x24d3b0=_0x1d2ea6;if(!_0x5c5170)throw new Error(_0x24d3b0(0x27a));if(_0x1b4fb7[_0x24d3b0(0x272)]===0x0)return{'success':!![],'count':0x0};const _0x560a9a=_0x1b4fb7['map']((_0x1dfb73,_0x250312)=>({'hash':generateHash(_0x1dfb73[_0x24d3b0(0x25d)]+Date[_0x24d3b0(0x1fc)]()+_0x250312),'text':_0x1dfb73[_0x24d3b0(0x25d)],'metadata':_0x1dfb73['metadata']||{'source':'unknown','timestamp':new Date()[_0x24d3b0(0x1db)]()}})),_0x4e378f=_0x560a9a[_0x24d3b0(0x238)]((_0x1cc9b2,_0x8f6b3a,_0x57a11a)=>{const _0x5190d8=_0x24d3b0;return _0x1cc9b2[_0x8f6b3a[_0x5190d8(0x25d)]]=_0x1b4fb7[_0x57a11a][_0x5190d8(0x270)],_0x1cc9b2;},{}),_0x14c277={'collectionId':_0x5c5170,'items':_0x560a9a,'source':_0x24d3b0(0x20d),'embeddings':_0x4e378f},_0xebab35=await fetch(_0x24d3b0(0x2e4),{'method':_0x24d3b0(0x20b),'headers':context[_0x24d3b0(0x1ff)](),'body':JSON['stringify'](_0x14c277),'signal':_0x18ee5c});if(!_0xebab35['ok']){const _0x849de5=await _0xebab35['text']();console['error'](_0x24d3b0(0x26b),_0x849de5);throw new Error(_0x24d3b0(0x1fd)+_0xebab35['status']+':\x20'+_0x849de5);}return{'success':!![],'count':_0x560a9a[_0x24d3b0(0x272)]};}async function getVectorCount(_0x3caec2=null,_0x4e78f0=_0x1d2ea6(0x28b)){const _0xe56a29=_0x1d2ea6,_0x3f1f35=getCharacterStableId();if(_0x3caec2){const _0x5c8a17=_0x4e78f0===_0xe56a29(0x279)?getGlobalKnowledgeBases():getLocalKnowledgeBases(),_0x5446e8=_0x5c8a17[_0x3caec2];if(!_0x5446e8)return console[_0xe56a29(0x1d5)](_0xe56a29(0x1d4)+_0x4e78f0+'\x27\x20中未找到ID为\x20'+_0x3caec2+_0xe56a29(0x208)),0x0;const _0x384cfe=_0x4e78f0==='global'?_0x5446e8[_0xe56a29(0x2b4)]||GLOBAL_SCOPE_ID:_0x3f1f35,_0x57828f=_0x384cfe+'_'+_0x3caec2;return await countVectorsInCollection(_0x57828f);}else{console['log'](_0xe56a29(0x1d1));const _0x1f902d=Object[_0xe56a29(0x1f7)](getLocalKnowledgeBases()),_0x8b2306=Object['values'](getGlobalKnowledgeBases()),_0x3cf4ea=[];_0x1f902d[_0xe56a29(0x2aa)](_0x112299=>{const _0x267ff8=_0xe56a29,_0x244d10=_0x3f1f35+'_'+_0x112299['id'];_0x3cf4ea[_0x267ff8(0x2a0)](countVectorsInCollection(_0x244d10));}),_0x8b2306[_0xe56a29(0x2aa)](_0x541048=>{const _0x2a27af=_0xe56a29,_0x456389=_0x541048[_0x2a27af(0x2b4)]||GLOBAL_SCOPE_ID,_0x495c06=_0x456389+'_'+_0x541048['id'];_0x3cf4ea[_0x2a27af(0x2a0)](countVectorsInCollection(_0x495c06));});const _0x3b7d1b=await _0x2d61b9();_0x3cf4ea[_0xe56a29(0x2a0)](countVectorsInCollection(_0x3b7d1b));const _0x49d003=await Promise[_0xe56a29(0x2c0)](_0x3cf4ea),_0x1ac37e=_0x49d003[_0xe56a29(0x238)]((_0x2dbca5,_0x7b1228)=>_0x2dbca5+_0x7b1228,0x0);return console[_0xe56a29(0x26d)](_0xe56a29(0x229)+_0x1ac37e),_0x1ac37e;}}async function countVectorsInCollection(_0x3ed987){const _0x54bd94=_0x1d2ea6;if(!_0x3ed987)return 0x0;console[_0x54bd94(0x26d)](_0x54bd94(0x22f)+_0x3ed987);const _0x50e689={'collectionId':_0x3ed987,'source':'webllm','embeddings':{}};try{const _0x2b3bf1=await fetch(_0x54bd94(0x2c9),{'method':'POST','headers':context[_0x54bd94(0x1ff)](),'body':JSON['stringify'](_0x50e689)});if(!_0x2b3bf1['ok']){if(_0x2b3bf1['status']===0x194)console['log']('[翰林院-日志]\x20集合\x20'+_0x3ed987+_0x54bd94(0x2bd));else{const _0x5a9c48=await _0x2b3bf1['text']();console[_0x54bd94(0x1d5)](_0x54bd94(0x1d7)+_0x3ed987+_0x54bd94(0x2cb)+_0x2b3bf1[_0x54bd94(0x27f)]+'):',_0x5a9c48);}return 0x0;}const _0x5af5af=await _0x2b3bf1[_0x54bd94(0x24d)]();let _0x47354a=0x0;if(Array[_0x54bd94(0x25c)](_0x5af5af))_0x47354a=_0x5af5af[_0x54bd94(0x272)];else _0x5af5af&&_0x5af5af[_0x54bd94(0x2a2)]&&(_0x47354a=_0x5af5af[_0x54bd94(0x2a2)][_0x54bd94(0x272)]);return _0x47354a;}catch(_0x3efe8b){return console[_0x54bd94(0x28a)](_0x54bd94(0x2af)+_0x3ed987+_0x54bd94(0x29d),_0x3efe8b),0x0;}}async function purgeStorage(_0x3cbc6a=null){const _0x47ff85=_0x1d2ea6;console[_0x47ff85(0x26d)](_0x47ff85(0x2c6));const _0x56db91=_0x3cbc6a||await getCollectionId();if(!_0x56db91)return console['error'](_0x47ff85(0x1cc)),toastr[_0x47ff85(0x28a)](_0x47ff85(0x1f5)),![];console[_0x47ff85(0x26d)](_0x47ff85(0x260)+_0x56db91);const _0x278444={'collectionId':_0x56db91};console[_0x47ff85(0x26d)](_0x47ff85(0x233),JSON[_0x47ff85(0x27b)](_0x278444,null,0x2));const _0x17e953=await fetch('/api/vector/purge',{'method':_0x47ff85(0x20b),'headers':context[_0x47ff85(0x1ff)](),'body':JSON[_0x47ff85(0x27b)](_0x278444)});console['log'](_0x47ff85(0x255)+_0x17e953[_0x47ff85(0x27f)]);if(!_0x17e953['ok']){const _0x491f72=await _0x17e953[_0x47ff85(0x25d)]();console[_0x47ff85(0x28a)](_0x47ff85(0x2a8),_0x491f72);}else console[_0x47ff85(0x26d)](_0x47ff85(0x1d6));return _0x17e953['ok'];}function getMessagesForCondensation(_0xd332cd=null){const _0x21ef87=_0x1d2ea6;if(!settings[_0x21ef87(0x1ed)]['enabled'])return showNotification('凝识之权未开启','warning'),[];const {layerStart:_0x2680fd,layerEnd:_0x5b01ab}=settings[_0x21ef87(0x1ed)],_0x2fb15a=_0xd332cd||settings[_0x21ef87(0x1ed)]['messageTypes'],_0x4f0d1d=context[_0x21ef87(0x299)][_0x21ef87(0x272)],_0x403c7d=Math[_0x21ef87(0x22e)](0x0,_0x2680fd-0x1),_0x18f480=_0x5b01ab===0x0||_0x5b01ab>_0x4f0d1d?_0x4f0d1d:Math[_0x21ef87(0x21c)](_0x4f0d1d,_0x5b01ab),_0x9cab7b=context[_0x21ef87(0x299)]['slice'](_0x403c7d,_0x18f480);return _0x9cab7b[_0x21ef87(0x1e3)](_0x3a0988=>{const _0x2cddda=_0x21ef87,_0x1b7b51=_0x3a0988[_0x2cddda(0x1e0)]===!![],_0x4e1c53=_0x3a0988[_0x2cddda(0x1e0)]===![];if(!_0x3a0988[_0x2cddda(0x204)]||!_0x3a0988[_0x2cddda(0x204)][_0x2cddda(0x2ca)]())return![];return _0x2fb15a[_0x2cddda(0x222)]&&_0x1b7b51||_0x2fb15a['ai']&&_0x4e1c53;});}async function processCondensation(_0x582019,_0x1be7bd=()=>{},_0x5a6f6f=null){const _0x1a4d5a=_0x1d2ea6;if(!_0x582019||_0x582019[_0x1a4d5a(0x272)]===0x0)return{'success':![],'error':'No\x20messages\x20to\x20process.'};try{let _0x507caf,_0x4c65df;const _0x174a4c=getCharacterName()||_0x1a4d5a(0x1ee);if(_0x5a6f6f){const _0x1d5824=_0x5a6f6f[_0x1a4d5a(0x216)]??'?',_0x830c09=_0x5a6f6f[_0x1a4d5a(0x267)]===0x0?'末':_0x5a6f6f['end']??'?';_0x507caf=_0x174a4c+':\x20'+_0x1d5824+'楼-'+_0x830c09+'楼';}else{const _0x314bf6=new Date()['toLocaleString'](_0x1a4d5a(0x227),{'hour12':![]});_0x507caf=_0x1a4d5a(0x22d)+_0x314bf6;}const _0x28a1e0=Object[_0x1a4d5a(0x1f7)](getLocalKnowledgeBases()),_0x1a17d6=_0x28a1e0['find'](_0x19fc81=>_0x19fc81['name']===_0x507caf);if(_0x1a17d6)_0x4c65df=_0x1a17d6['id'],_0x1be7bd(_0x1a4d5a(0x224)+_0x507caf+_0x1a4d5a(0x2c7),_0x1a4d5a(0x213));else{_0x1be7bd('[翰林院-核心]\x20准备为任务\x20\x22'+_0x507caf+_0x1a4d5a(0x297),_0x1a4d5a(0x213));const _0x215a13=addKnowledgeBase(_0x507caf,_0x1a4d5a(0x2ce));_0x4c65df=_0x215a13['id'];}const _0x5137c6=getCharacterStableId(),_0xcad96b=_0x5137c6+'_'+_0x4c65df;_0x1be7bd('[翰林院-核心]\x20凝识任务已锁定知识库:\x20'+_0x507caf+_0x1a4d5a(0x237)+_0xcad96b+')',_0x1a4d5a(0x218));const _0x52da1d=[],_0xa13e5b=context[_0x1a4d5a(0x299)];for(const _0x1c4b32 of _0x582019){const _0xe6d3e4=(_0x1c4b32['mes']||'')[_0x1a4d5a(0x28d)](/<[^>]*>/g,'')[_0x1a4d5a(0x2ca)]();if(_0xe6d3e4[_0x1a4d5a(0x272)]===0x0)continue;let _0x59f5e6;if(_0x1c4b32[_0x1a4d5a(0x2b2)]!==undefined&&_0x1c4b32[_0x1a4d5a(0x2b2)]!==null)_0x59f5e6=_0x1c4b32[_0x1a4d5a(0x2b2)];else{const _0x59f9f3=_0xa13e5b[_0x1a4d5a(0x1dc)](_0x33d54a=>_0x33d54a===_0x1c4b32);_0x59f5e6=_0x59f9f3!==-0x1?_0x59f9f3+0x1:-0x1;}const _0x484a09=new Date(_0x1c4b32['send_date']),_0x161ee9=isNaN(_0x484a09[_0x1a4d5a(0x29c)]())?new Date()[_0x1a4d5a(0x1db)]():_0x484a09[_0x1a4d5a(0x1db)](),_0x1a726e=splitIntoChunks(_0xe6d3e4,'chat_history',{'floor':_0x59f5e6,'is_user':_0x1c4b32['is_user'],'timestamp':_0x161ee9});_0x52da1d[_0x1a4d5a(0x2a0)](..._0x1a726e);}if(_0x52da1d[_0x1a4d5a(0x272)]===0x0)return{'success':!![],'count':0x0};_0x1be7bd('[翰林院-核心]\x20已将\x20'+_0x582019[_0x1a4d5a(0x272)]+_0x1a4d5a(0x203)+_0x52da1d['length']+_0x1a4d5a(0x2da),_0x1a4d5a(0x213));const _0x102715=settings['retrieval']['batchSize']||0x5;let _0x1ccb2a=0x0;for(let _0x4f56d8=0x0;_0x4f56d8<_0x52da1d['length'];_0x4f56d8+=_0x102715){const _0x3323ba=_0x52da1d[_0x1a4d5a(0x266)](_0x4f56d8,_0x4f56d8+_0x102715),_0x139e6a=_0x3323ba['map'](_0x4a34ec=>_0x4a34ec[_0x1a4d5a(0x25d)]),_0x17336f=await getEmbeddings(_0x139e6a);if(_0x3323ba['length']!==_0x17336f[_0x1a4d5a(0x272)])throw new Error(_0x1a4d5a(0x1e2));const _0x3acee9=_0x3323ba[_0x1a4d5a(0x287)]((_0x59ae7f,_0x55c2cd)=>({..._0x59ae7f,'vector':_0x17336f[_0x55c2cd]}));await insertVectors(_0x3acee9,null,_0xcad96b),_0x1ccb2a+=_0x3323ba[_0x1a4d5a(0x272)];}if(_0x5a6f6f){const _0x5bcfbb=_0x5a6f6f[_0x1a4d5a(0x267)]===0x0?context['chat']['length']:_0x5a6f6f['end'],_0x216bb7=getCharacterStableId();!settings[_0x1a4d5a(0x2a4)][_0x216bb7]&&(settings[_0x1a4d5a(0x2a4)][_0x216bb7]={}),settings[_0x1a4d5a(0x2a4)][_0x216bb7][_0xcad96b]={'start':_0x5a6f6f[_0x1a4d5a(0x216)],'end':_0x5bcfbb,'timestamp':new Date()[_0x1a4d5a(0x1db)]()},saveSettings(),_0x1be7bd(_0x1a4d5a(0x291)+_0xcad96b+_0x1a4d5a(0x2d9)+_0x5a6f6f['start']+'-'+_0x5bcfbb,_0x1a4d5a(0x213));}_0x1be7bd('[翰林院-核心]\x20聊天记录凝识完成,成功插入\x20'+_0x1ccb2a+_0x1a4d5a(0x276),_0x1a4d5a(0x218));const _0x47a8ff=_0x582019[_0x1a4d5a(0x287)](_0x14ce26=>{const _0xd5e032=_0x1a4d5a,_0x3cd7e5=_0xa13e5b[_0xd5e032(0x1dc)](_0x4f94ef=>_0x4f94ef===_0x14ce26),_0x1950a3=_0x3cd7e5!==-0x1?_0x3cd7e5+0x1:-0x1,_0xb55544=_0x14ce26[_0xd5e032(0x1e0)]?'用户':getCharacterName()||'AI';return'['+_0xb55544+_0xd5e032(0x271)+_0x1950a3+']\x20的消息已成功凝识。';});return{'success':!![],'count':_0x1ccb2a,'messages':_0x47a8ff};}catch(_0x27b2a8){return console['error'](_0x1a4d5a(0x2d4),_0x27b2a8),_0x1be7bd(_0x1a4d5a(0x24b)+_0x27b2a8[_0x1a4d5a(0x268)],_0x1a4d5a(0x28a)),{'success':![],'error':_0x27b2a8[_0x1a4d5a(0x268)]};}}async function rerankResults(_0x5af45f,_0x54ab5b,_0x3921e9){const _0x5f5954=_0x1d2ea6;let _0x118dfa=_0x5af45f;if(_0x3921e9['rerank'][_0x5f5954(0x215)]&&_0x5af45f[_0x5f5954(0x272)]>0x0){console[_0x5f5954(0x26d)]('[翰林院-Rerank]\x20开始外部API重排序...');try{const _0x11d658=_0x5af45f['map'](_0x360899=>_0x360899[_0x5f5954(0x25d)]),_0x3879b9=await executeRerank(_0x54ab5b,_0x11d658,_0x3921e9[_0x5f5954(0x24e)]),_0x21d292=_0x5af45f['map']((_0x47bf47,_0x563d5e)=>({..._0x47bf47,'original_index':_0x563d5e}));_0x118dfa=_0x21d292['map'](_0x368577=>{const _0x1e5ac0=_0x5f5954,_0x4c277c=_0x3879b9[_0x1e5ac0(0x269)][_0x1e5ac0(0x26e)](_0x4790b2=>_0x4790b2['index']===_0x368577[_0x1e5ac0(0x2d8)]),_0x50fb04=_0x4c277c?_0x4c277c[_0x1e5ac0(0x1fb)]:0x0;return{..._0x368577,'rerank_score':_0x50fb04};});if(_0x3921e9['rerank'][_0x5f5954(0x2e1)])showNotification(_0x5f5954(0x221),_0x5f5954(0x218));}catch(_0x41313d){console[_0x5f5954(0x28a)]('[翰林院-Rerank]\x20外部Rerank失败,将仅使用内部加权。',_0x41313d);if(_0x3921e9[_0x5f5954(0x24e)][_0x5f5954(0x2e1)])showNotification(_0x5f5954(0x292)+_0x41313d['message'],_0x5f5954(0x28a));_0x118dfa[_0x5f5954(0x2aa)](_0x42862c=>_0x42862c[_0x5f5954(0x1ec)]=0x0);}}else _0x118dfa[_0x5f5954(0x2aa)](_0x2702c4=>_0x2702c4['rerank_score']=0x0);console[_0x5f5954(0x26d)](_0x5f5954(0x2ac));const _0x1643e2=context[_0x5f5954(0x299)][_0x5f5954(0x272)],_0x2743bb=_0x3921e9[_0x5f5954(0x24e)][_0x5f5954(0x2be)],_0x73b4e0=_0x118dfa['map'](_0x28a1b6=>{const _0x513aab=_0x5f5954;let _0x25d7f4=0x1;const _0x5ad71c=_0x28a1b6[_0x513aab(0x282)]||{};switch(_0x5ad71c[_0x513aab(0x22a)]){case _0x513aab(0x256):_0x25d7f4*=1.2;break;case _0x513aab(0x259):_0x25d7f4*=1.1;break;case _0x513aab(0x2ce):if(_0x5ad71c['floor']&&_0x1643e2>0x0){const _0x525c56=_0x5ad71c[_0x513aab(0x2b2)]/_0x1643e2;_0x25d7f4*=0x1+_0x525c56;}break;}const _0x4d7d45=_0x28a1b6[_0x513aab(0x1ec)]*_0x2743bb+(_0x28a1b6[_0x513aab(0x2a5)]||0x0)*(0x1-_0x2743bb),_0x2dd2ba=_0x4d7d45*_0x25d7f4;return{'text':_0x28a1b6['text'],'score':_0x28a1b6[_0x513aab(0x2a5)],'rerank_score':_0x28a1b6['rerank_score'],'final_score':_0x2dd2ba,'metadata':_0x28a1b6['metadata']};});_0x73b4e0[_0x5f5954(0x2d2)]((_0x331b25,_0x30c1e8)=>(_0x30c1e8[_0x5f5954(0x2bc)]||0x0)-(_0x331b25[_0x5f5954(0x2bc)]||0x0)),console[_0x5f5954(0x26d)](_0x5f5954(0x21b));if(_0x3921e9[_0x5f5954(0x24e)][_0x5f5954(0x2d1)]){const _0x1da9d7=superSort(_0x73b4e0);return _0x1da9d7[_0x5f5954(0x266)](0x0,_0x3921e9['rerank']['top_n']);}return _0x73b4e0['slice'](0x0,_0x3921e9[_0x5f5954(0x24e)][_0x5f5954(0x251)]);}async function rearrangeChat(_0x2acfa8,_0x17cad4,_0x2cd366,_0x446282){const _0x1ec60f=_0x1d2ea6,_0x2fd192={'novel':'HANLINYUAN_RAG_NOVEL','chat_history':_0x1ec60f(0x21f),'lorebook':_0x1ec60f(0x1cf),'manual':_0x1ec60f(0x209)};Object[_0x1ec60f(0x1f7)](_0x2fd192)[_0x1ec60f(0x2aa)](_0x3ab711=>setExtensionPrompt(_0x3ab711,'',0x0,0x0,![],0x0));if(_0x446282==='quiet'||!settings['retrieval'][_0x1ec60f(0x215)])return;const _0x2e869d=_0x2acfa8[_0x1ec60f(0x266)](-settings[_0x1ec60f(0x285)][_0x1ec60f(0x29a)]);if(_0x2e869d[_0x1ec60f(0x272)]===0x0)return;const _0x28955b=_0x2e869d[_0x1ec60f(0x287)](_0x3b1265=>_0x3b1265[_0x1ec60f(0x204)])[_0x1ec60f(0x26c)]('\x20')['replace'](/<[^>]*>/g,'')[_0x1ec60f(0x2ca)]();if(!_0x28955b)return;try{const _0x2692a2=0x2,_0x4b8531=settings['settingsVersion']||0x1;let _0x5a5e67=![];if(_0x4b8531<_0x2692a2){console['log']('[翰林院-户口普查]\x20检测到旧版设置\x20(V'+_0x4b8531+_0x1ec60f(0x284)),toastr[_0x1ec60f(0x213)](_0x1ec60f(0x2ae),_0x1ec60f(0x289));const _0x1b177d=getKnowledgeBases();for(const _0x1edbdb of Object[_0x1ec60f(0x1f7)](_0x1b177d)){const _0x56547e=_0x1edbdb[_0x1ec60f(0x2dd)],_0x3ccc8b=_0x1edbdb[_0x1ec60f(0x22a)];if(_0x56547e[_0x1ec60f(0x1eb)](_0x1ec60f(0x2df)))_0x1edbdb[_0x1ec60f(0x22a)]=_0x1ec60f(0x259);else{if(_0x56547e[_0x1ec60f(0x1eb)]('小说:'))_0x1edbdb[_0x1ec60f(0x22a)]=_0x1ec60f(0x1d3);else _0x56547e['includes']('楼-')&&_0x56547e[_0x1ec60f(0x2a7)]('楼')&&_0x56547e[_0x1ec60f(0x2a7)](':')?_0x1edbdb[_0x1ec60f(0x22a)]=_0x1ec60f(0x2ce):_0x1edbdb['source']=_0x1ec60f(0x256);}_0x3ccc8b!==_0x1edbdb['source']&&console[_0x1ec60f(0x26d)](_0x1ec60f(0x283)+_0x56547e+_0x1ec60f(0x1dd)+(_0x3ccc8b||'无')+_0x1ec60f(0x244)+_0x1edbdb[_0x1ec60f(0x22a)]+']');}settings[_0x1ec60f(0x298)]=_0x2692a2,_0x5a5e67=!![];}_0x5a5e67&&(console['log'](_0x1ec60f(0x2a6)),saveSettings());let _0x2e87da=[];const _0x2becf2=settings[_0x1ec60f(0x24e)]['priorityRetrieval'];if(_0x2becf2[_0x1ec60f(0x215)]){console['log'](_0x1ec60f(0x265));const _0x53add5=Object['values'](getKnowledgeBases())[_0x1ec60f(0x1e3)](_0x6a522=>_0x6a522[_0x1ec60f(0x215)]),_0x3aab4e=Object['keys'](_0x2becf2[_0x1ec60f(0x1f0)])[_0x1ec60f(0x1e3)](_0x363c58=>_0x2becf2[_0x1ec60f(0x1f0)][_0x363c58]&&_0x2becf2['sources'][_0x363c58][_0x1ec60f(0x215)]),_0x81811d=[];let _0x25a0eb=[..._0x53add5];for(const _0x47b4d2 of _0x3aab4e){const _0x3c53bf=_0x2becf2[_0x1ec60f(0x1f0)][_0x47b4d2],_0x3ad4f9=_0x25a0eb[_0x1ec60f(0x1e3)](_0x145ec2=>_0x145ec2['source']===_0x47b4d2);_0x25a0eb=_0x25a0eb[_0x1ec60f(0x1e3)](_0x1b1ef1=>!_0x3ad4f9[_0x1ec60f(0x2a7)](_0x1b1ef1));if(_0x3ad4f9[_0x1ec60f(0x272)]>0x0){console[_0x1ec60f(0x26d)](_0x1ec60f(0x24a)+_0x47b4d2+'\x20('+_0x3ad4f9[_0x1ec60f(0x272)]+'个库)');const _0x34b2fb=queryVectors(_0x28955b,{'includeBases':_0x3ad4f9})[_0x1ec60f(0x231)](_0x3c6966=>{const _0x13a5a2=_0x1ec60f;console[_0x13a5a2(0x26d)](_0x13a5a2(0x200)+_0x47b4d2+_0x13a5a2(0x21d)+_0x3c6966[_0x13a5a2(0x272)]+'\x20条结果。');let _0x177c60=_0x3c6966[_0x13a5a2(0x1e3)](_0xae513f=>_0xae513f[_0x13a5a2(0x282)]?.['source']===_0x47b4d2);return _0x177c60=_0x177c60[_0x13a5a2(0x266)](0x0,_0x3c53bf[_0x13a5a2(0x2c5)]),console[_0x13a5a2(0x26d)](_0x13a5a2(0x22c)+_0x47b4d2+_0x13a5a2(0x261)+_0x177c60[_0x13a5a2(0x272)]+'\x20条结果。'),settings[_0x13a5a2(0x24e)][_0x13a5a2(0x2d1)]&&(_0x177c60=superSort(_0x177c60)),_0x177c60;});_0x81811d[_0x1ec60f(0x2a0)](_0x34b2fb);}}const _0x24827d=_0x25a0eb;if(_0x24827d[_0x1ec60f(0x272)]>0x0){console['log'](_0x1ec60f(0x2e2)+_0x24827d[_0x1ec60f(0x272)]+_0x1ec60f(0x239));const _0x5d10bb=queryVectors(_0x28955b,{'includeBases':_0x24827d})[_0x1ec60f(0x231)](async _0x155aad=>{const _0x2bcf50=_0x1ec60f;console[_0x2bcf50(0x26d)]('[翰林院]\x20常规组返回\x20'+_0x155aad[_0x2bcf50(0x272)]+_0x2bcf50(0x2b5)),console['log']('[翰林院]\x20开始处理常规池...');const _0x57309b=await rerankResults(_0x155aad,_0x28955b,settings);return console[_0x2bcf50(0x26d)](_0x2bcf50(0x1cd)+(_0x57309b||[])[_0x2bcf50(0x272)]+_0x2bcf50(0x2b5)),_0x57309b;});_0x81811d[_0x1ec60f(0x2a0)](_0x5d10bb);}const _0x5cae65=await Promise[_0x1ec60f(0x2c0)](_0x81811d);_0x2e87da=_0x5cae65[_0x1ec60f(0x23d)]();}else{console[_0x1ec60f(0x26d)](_0x1ec60f(0x1e7));const _0x6c67e0=await queryVectors(_0x28955b);_0x2e87da=await rerankResults(_0x6c67e0,_0x28955b,settings);}if(!_0x2e87da||_0x2e87da['length']===0x0){console[_0x1ec60f(0x26d)](_0x1ec60f(0x246));return;}console[_0x1ec60f(0x26d)](_0x1ec60f(0x210)+_0x2e87da[_0x1ec60f(0x272)]+_0x1ec60f(0x2b5));const _0x1dc8ab={'novel':[],'chat_history':[],'lorebook':[],'manual':[]};_0x2e87da['forEach'](_0x4d8e2d=>{const _0x214f1c=_0x1ec60f,_0x4e8990=_0x4d8e2d['metadata']?.[_0x214f1c(0x22a)];_0x4e8990&&_0x1dc8ab[_0x214f1c(0x24f)](_0x4e8990)&&_0x1dc8ab[_0x4e8990]['push'](_0x4d8e2d);});for(const _0x3d02ee in _0x1dc8ab){const _0xb14c05=_0x1dc8ab[_0x3d02ee];if(_0xb14c05[_0x1ec60f(0x272)]===0x0)continue;const _0x3a4865=settings[_0x1ec60f(0x1ca)+_0x3d02ee[_0x1ec60f(0x28d)]('_history','')];if(!_0x3a4865){console[_0x1ec60f(0x1d5)]('[翰林院]\x20未找到来源\x20\x27'+_0x3d02ee+_0x1ec60f(0x1de));continue;}const _0x583754=_0xb14c05[_0x1ec60f(0x287)](_0x35a5c5=>_0x35a5c5[_0x1ec60f(0x25d)])[_0x1ec60f(0x26c)]('\x0a\x0a'),_0x2ec5e1='{{'+_0x3d02ee[_0x1ec60f(0x28d)](_0x1ec60f(0x226),'')+_0x1ec60f(0x2bf);let _0x535ecd=_0x3a4865[_0x1ec60f(0x25e)][_0x1ec60f(0x28d)](_0x2ec5e1,_0x583754);_0x535ecd['trim']()&&(_0x535ecd='%%'+_0x2fd192[_0x3d02ee]+'%%'+_0x535ecd),setExtensionPrompt(_0x2fd192[_0x3d02ee],_0x535ecd,_0x3a4865[_0x1ec60f(0x295)],_0x3a4865[_0x1ec60f(0x23f)],![],_0x3a4865['depth_role']),console['log'](_0x1ec60f(0x20a)+_0x3d02ee+'\x27\x20注入\x20'+_0xb14c05['length']+'\x20条内容。');}}catch(_0xf07536){console[_0x1ec60f(0x28a)](_0x1ec60f(0x286),_0xf07536);if(settings['retrieval'][_0x1ec60f(0x2e1)])showNotification(_0x1ec60f(0x25b)+_0xf07536[_0x1ec60f(0x268)],_0x1ec60f(0x28a));}}async function moveKnowledgeBase(_0x5135c3,_0x45bf7a){const _0x589612=_0x1d2ea6,_0x52e2bf=_0x45bf7a===_0x589612(0x279)?_0x589612(0x28b):_0x589612(0x279),_0x16bc8e=getCharacterStableId();if(!_0x16bc8e&&_0x52e2bf==='local'){toastr[_0x589612(0x28a)](_0x589612(0x258));return;}const _0x33a72e=_0x45bf7a==='global'?getGlobalKnowledgeBases():getLocalKnowledgeBases(),_0xe68761=_0x52e2bf===_0x589612(0x279)?getGlobalKnowledgeBases():getLocalKnowledgeBases(),_0x263437=_0x33a72e[_0x5135c3];if(!_0x263437){const _0x9a5408=_0x589612(0x263)+_0x45bf7a+_0x589612(0x24c)+_0x5135c3+_0x589612(0x208);console['error'](_0x589612(0x262)+_0x9a5408),toastr[_0x589612(0x28a)](_0x589612(0x20f));return;}_0x45bf7a===_0x589612(0x28b)&&_0x52e2bf===_0x589612(0x279)&&!_0x263437['owner']&&(console[_0x589612(0x26d)](_0x589612(0x1f2)+_0x5135c3+_0x589612(0x223)+_0x16bc8e),_0x263437[_0x589612(0x2b4)]=_0x16bc8e);delete _0x33a72e[_0x5135c3],_0xe68761[_0x5135c3]=_0x263437,saveSettings();const _0x17b106='知识库【'+_0x263437[_0x589612(0x2dd)]+'】已成功移动到'+(_0x52e2bf===_0x589612(0x279)?'全局':'局部')+'。';console[_0x589612(0x26d)](_0x589612(0x262)+_0x17b106);}async function getAllVectorsFromCollection(_0x45d2a9){const _0x36d2c1=_0x1d2ea6,_0x3574b1='*',_0x52a280={'collectionId':_0x45d2a9,'searchText':_0x3574b1,'topK':0x2710,'threshold':0x0,'source':_0x36d2c1(0x20d),'embeddings':{}},_0x2d9eec=(await getEmbeddings([_0x3574b1]))[0x0];_0x52a280['embeddings']={[_0x3574b1]:_0x2d9eec};const _0x2411f9=await fetch(_0x36d2c1(0x264),{'method':_0x36d2c1(0x20b),'headers':context[_0x36d2c1(0x1ff)](),'body':JSON[_0x36d2c1(0x27b)](_0x52a280)});if(!_0x2411f9['ok']){if(_0x2411f9[_0x36d2c1(0x27f)]===0x194)return console[_0x36d2c1(0x26d)](_0x36d2c1(0x26f)+_0x45d2a9+_0x36d2c1(0x1e6)),[];const _0x121922=await _0x2411f9['text']();throw new Error(_0x36d2c1(0x20e)+_0x45d2a9+_0x36d2c1(0x2b3)+_0x121922);}const _0x3f46e2=await _0x2411f9['json']();return _0x3f46e2[_0x36d2c1(0x282)]||_0x3f46e2[_0x36d2c1(0x269)]||_0x3f46e2[_0x36d2c1(0x275)]||[];}
|