YiAi/YiAiQuickDeploy/dist/modules/models/models.service.js
2024-07-02 16:38:26 +08:00

1 line
12 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

'use strict';const _0x3de82b=_0x18f2;(function(_0x2b7096,_0x1b01fa){const _0x2f209e=_0x18f2,_0x3582de=_0x2b7096();while(!![]){try{const _0x9b55d0=-parseInt(_0x2f209e(0x199))/0x1*(-parseInt(_0x2f209e(0x16d))/0x2)+-parseInt(_0x2f209e(0x1a1))/0x3*(parseInt(_0x2f209e(0x169))/0x4)+-parseInt(_0x2f209e(0x1a4))/0x5+-parseInt(_0x2f209e(0x1b2))/0x6*(parseInt(_0x2f209e(0x1af))/0x7)+-parseInt(_0x2f209e(0x1b6))/0x8*(-parseInt(_0x2f209e(0x178))/0x9)+parseInt(_0x2f209e(0x19b))/0xa+parseInt(_0x2f209e(0x1ae))/0xb;if(_0x9b55d0===_0x1b01fa)break;else _0x3582de['push'](_0x3582de['shift']());}catch(_0x124a71){_0x3582de['push'](_0x3582de['shift']());}}}(_0x1542,0x547a1));function _0x18f2(_0x3cfa6f,_0x1d95e7){const _0x154278=_0x1542();return _0x18f2=function(_0x18f202,_0x263781){_0x18f202=_0x18f202-0x167;let _0x1941b1=_0x154278[_0x18f202];return _0x1941b1;},_0x18f2(_0x3cfa6f,_0x1d95e7);}var __decorate=this&&this[_0x3de82b(0x1b0)]||function(_0x201c25,_0x1810a9,_0x44b013,_0x5c2a33){const _0x2be11b=_0x3de82b;var _0x5d524a=arguments['length'],_0x182497=_0x5d524a<0x3?_0x1810a9:_0x5c2a33===null?_0x5c2a33=Object[_0x2be11b(0x1b7)](_0x1810a9,_0x44b013):_0x5c2a33,_0x230efd;if(typeof Reflect===_0x2be11b(0x177)&&typeof Reflect[_0x2be11b(0x1b8)]==='function')_0x182497=Reflect[_0x2be11b(0x1b8)](_0x201c25,_0x1810a9,_0x44b013,_0x5c2a33);else{for(var _0x5b064d=_0x201c25['length']-0x1;_0x5b064d>=0x0;_0x5b064d--)if(_0x230efd=_0x201c25[_0x5b064d])_0x182497=(_0x5d524a<0x3?_0x230efd(_0x182497):_0x5d524a>0x3?_0x230efd(_0x1810a9,_0x44b013,_0x182497):_0x230efd(_0x1810a9,_0x44b013))||_0x182497;}return _0x5d524a>0x3&&_0x182497&&Object['defineProperty'](_0x1810a9,_0x44b013,_0x182497),_0x182497;},__metadata=this&&this['__metadata']||function(_0x3ed2ea,_0x2cf093){const _0x1ca5f4=_0x3de82b;if(typeof Reflect===_0x1ca5f4(0x177)&&typeof Reflect[_0x1ca5f4(0x1b5)]===_0x1ca5f4(0x174))return Reflect[_0x1ca5f4(0x1b5)](_0x3ed2ea,_0x2cf093);},__param=this&&this[_0x3de82b(0x194)]||function(_0x159ed2,_0x55d43e){return function(_0x456d88,_0x5ef366){_0x55d43e(_0x456d88,_0x5ef366,_0x159ed2);};};Object[_0x3de82b(0x1a8)](exports,_0x3de82b(0x195),{'value':!![]}),exports[_0x3de82b(0x18c)]=void 0x0;const common_1=require(_0x3de82b(0x198)),typeorm_1=require('@nestjs/typeorm'),typeorm_2=require(_0x3de82b(0x1b4)),models_entity_1=require('./models.entity'),status_constant_1=require(_0x3de82b(0x1ad)),utils_1=require(_0x3de82b(0x17f)),modelType_entity_1=require(_0x3de82b(0x1c0));let ModelsService=class ModelsService{constructor(_0x97eb5c,_0x1cd570){const _0x3c88c2=_0x3de82b;this[_0x3c88c2(0x1a7)]=_0x97eb5c,this[_0x3c88c2(0x16e)]=_0x1cd570,this[_0x3c88c2(0x1c2)]=[],this[_0x3c88c2(0x188)]={},this[_0x3c88c2(0x181)]={},this['keyPoolMap']={},this[_0x3c88c2(0x1b3)]={};}async[_0x3de82b(0x1bc)](){await this['initCalcKey']();}async[_0x3de82b(0x1a0)](){const _0x291ce9=_0x3de82b;this[_0x291ce9(0x1a5)]={},this['keyPoolIndexMap']={},this[_0x291ce9(0x181)]={},this[_0x291ce9(0x188)]={},this[_0x291ce9(0x1c2)]=[];const _0x4add54=await this['modelsEntity'][_0x291ce9(0x18b)]({'where':{'status':!![]}}),_0x2b9a19=_0x4add54[_0x291ce9(0x17e)]((_0x190641,_0x540d21)=>{const _0x32a4af=_0x291ce9;return!_0x190641[_0x540d21[_0x32a4af(0x1aa)]]?_0x190641[_0x540d21[_0x32a4af(0x1aa)]]=[_0x540d21]:_0x190641[_0x540d21['keyType']]['push'](_0x540d21),_0x190641;},{});this['modelTypes']=Object[_0x291ce9(0x192)](_0x2b9a19)[_0x291ce9(0x19d)](_0x2b1a15=>{const _0x5e03b4=_0x291ce9;return{'label':status_constant_1[_0x5e03b4(0x1a3)][_0x2b1a15],'val':_0x2b1a15};}),this[_0x291ce9(0x188)]=_0x2b9a19,this['keyList']={},_0x4add54[_0x291ce9(0x1bf)](_0x866b9a=>{const _0x41f351=_0x291ce9,{keyType:_0x302410,model:_0x3c00b6,keyWeight:_0x187694}=_0x866b9a;if(!this[_0x41f351(0x1a5)][_0x3c00b6])this['keyPoolMap'][_0x3c00b6]=[];for(let _0xc74884=0x0;_0xc74884<_0x187694;_0xc74884++){this[_0x41f351(0x1a5)][_0x3c00b6][_0x41f351(0x1bd)](_0x866b9a);}if(!this['keyPoolIndexMap'][_0x3c00b6])this[_0x41f351(0x1b3)][_0x3c00b6]=0x0;if(!this[_0x41f351(0x181)][_0x302410])this['keyList'][_0x302410]={};if(!this[_0x41f351(0x181)][_0x302410][_0x3c00b6])this[_0x41f351(0x181)][_0x302410][_0x3c00b6]=[];this[_0x41f351(0x181)][_0x302410][_0x3c00b6][_0x41f351(0x1bd)](_0x866b9a);});}async['lockKey'](_0x1e54e1,_0x245512,_0x338eb1=-0x1){const _0x2ddbe7=_0x3de82b,_0x432ccb=await this['modelsEntity'][_0x2ddbe7(0x186)]({'id':_0x1e54e1},{'status':![],'keyStatus':_0x338eb1,'remark':_0x245512});common_1[_0x2ddbe7(0x1c4)]['error'](_0x2ddbe7(0x19f)+_0x1e54e1+'\x20欠费或被官方封禁导致不可用已被系统自动锁定'),this[_0x2ddbe7(0x1a0)]();}async[_0x3de82b(0x16b)](_0x189f2d){const _0x247ad8=_0x3de82b;if(!this[_0x247ad8(0x1a5)][_0x189f2d])throw new common_1['HttpException'](_0x247ad8(0x16a),common_1[_0x247ad8(0x179)][_0x247ad8(0x1ba)]);this[_0x247ad8(0x1b3)][_0x189f2d]++;const _0x22a281=this['keyPoolIndexMap'][_0x189f2d];if(_0x22a281>=this[_0x247ad8(0x1a5)][_0x189f2d][_0x247ad8(0x191)])this[_0x247ad8(0x1b3)][_0x189f2d]=0x0;const _0x2863c8=this[_0x247ad8(0x1a5)][_0x189f2d][this['keyPoolIndexMap'][_0x189f2d]];return _0x2863c8;}async[_0x3de82b(0x19a)](_0x4fc6a5){const _0x26ec6d=_0x3de82b;if(!this[_0x26ec6d(0x1c2)][_0x26ec6d(0x191)]||!Object['keys'](this[_0x26ec6d(0x188)])[_0x26ec6d(0x191)])return;const _0x42b7c3=_0x4fc6a5?this[_0x26ec6d(0x1c2)][_0x26ec6d(0x18b)](_0x4b6346=>Number(_0x4b6346[_0x26ec6d(0x1c5)])===0x1):this[_0x26ec6d(0x1c2)][0x0];if(!_0x42b7c3)return;const {keyType:_0x3b1fe2,modelName:_0x339666,model:_0x448968,maxModelTokens:_0x52d317,maxResponseTokens:_0x32e777,deductType:_0x11256e,deduct:_0x48851f,maxRounds:_0x3e3114}=this[_0x26ec6d(0x188)][_0x42b7c3[_0x26ec6d(0x1c5)]][0x0];return{'modelTypeInfo':_0x42b7c3,'modelInfo':{'keyType':_0x3b1fe2,'modelName':_0x339666,'model':_0x448968,'maxModelTokens':_0x52d317,'maxResponseTokens':_0x32e777,'topN':0.8,'systemMessage':'','deductType':_0x11256e,'deduct':_0x48851f,'maxRounds':_0x3e3114,'rounds':0x8}};}async[_0x3de82b(0x182)](_0x84c62a){const _0x4026fb=_0x3de82b;try{const {id:_0x3bbb6e}=_0x84c62a;_0x84c62a[_0x4026fb(0x1b9)]&&(_0x84c62a['keyStatus']=0x1);if(_0x3bbb6e){const _0xd97a12=await this['modelsEntity']['update']({'id':_0x3bbb6e},_0x84c62a);return await this[_0x4026fb(0x1a0)](),_0xd97a12['affected']>0x0;}else{const {keyType:_0x1d7b78,key:_0x414fc9}=_0x84c62a;if(Number(_0x1d7b78!==0x1)){const _0x4b3112=await this[_0x4026fb(0x1a7)]['save'](_0x84c62a);return await this[_0x4026fb(0x1a0)](),_0x4b3112;}else{const _0x563d6c=_0x414fc9['map'](_0x54150c=>{const _0x3e31d2=_0x4026fb;try{const _0x3bbe36=JSON[_0x3e31d2(0x18d)](JSON[_0x3e31d2(0x193)](_0x84c62a));return _0x3bbe36[_0x3e31d2(0x1be)]=_0x54150c,_0x3bbe36;}catch(_0x400eac){console[_0x3e31d2(0x1a6)](_0x3e31d2(0x17b),_0x400eac);}}),_0x4eb6fc=await this['modelsEntity'][_0x4026fb(0x16f)](_0x563d6c);return await this[_0x4026fb(0x1a0)](),_0x4eb6fc;}}}catch(_0x5bf175){console[_0x4026fb(0x1a6)](_0x4026fb(0x1bb),_0x5bf175);}}async[_0x3de82b(0x172)]({id:_0x4200c9}){const _0x205b86=_0x3de82b;if(!_0x4200c9)throw new common_1[(_0x205b86(0x187))](_0x205b86(0x1a9),common_1[_0x205b86(0x179)][_0x205b86(0x1ba)]);const _0x304218=await this[_0x205b86(0x1a7)][_0x205b86(0x171)]({'where':{'id':_0x4200c9}});if(!_0x304218)throw new common_1['HttpException'](_0x205b86(0x168),common_1[_0x205b86(0x179)][_0x205b86(0x1ba)]);const _0x8b22d2=await this[_0x205b86(0x1a7)][_0x205b86(0x1c1)]({'id':_0x4200c9});return await this[_0x205b86(0x1a0)](),_0x8b22d2;}async[_0x3de82b(0x19c)](_0x18e3cc,_0x28a979){const _0x3bd6ec=_0x3de82b,{role:_0x2e8fef}=_0x18e3cc[_0x3bd6ec(0x190)],{keyType:_0x42ed0f,key:_0x481d8a,status:_0x475c99,model:_0x2923d9,page:page=0x1,size:size=0xa}=_0x28a979;let _0x1d0532={};_0x42ed0f&&(_0x1d0532[_0x3bd6ec(0x1aa)]=_0x42ed0f),_0x2923d9&&(_0x1d0532[_0x3bd6ec(0x183)]=_0x2923d9),_0x475c99&&(_0x1d0532['status']=Number(_0x475c99)===0x1?!![]:![]),_0x481d8a&&(_0x1d0532['key']=(0x0,typeorm_2[_0x3bd6ec(0x18a)])('%'+_0x481d8a+'%'));const [_0x4dc672,_0x261cd5]=await this[_0x3bd6ec(0x1a7)]['findAndCount']({'where':_0x1d0532,'order':{'modelOrder':_0x3bd6ec(0x189)},'skip':(page-0x1)*size,'take':size});return _0x2e8fef!=='super'&&_0x4dc672[_0x3bd6ec(0x1bf)](_0x1083fd=>{const _0x160e77=_0x3bd6ec;_0x1083fd[_0x160e77(0x1be)]&&(_0x1083fd[_0x160e77(0x1be)]=(0x0,utils_1['hideString'])(_0x1083fd[_0x160e77(0x1be)])),_0x1083fd[_0x160e77(0x1c6)]&&(_0x1083fd[_0x160e77(0x1c6)]=(0x0,utils_1['hideString'])(_0x1083fd[_0x160e77(0x1c6)]));}),{'rows':_0x4dc672,'count':_0x261cd5};}async[_0x3de82b(0x175)](){const _0x3501c8=_0x3de82b,_0x54e9bf=JSON['parse'](JSON[_0x3501c8(0x193)](this[_0x3501c8(0x188)]));return Object[_0x3501c8(0x192)](_0x54e9bf)[_0x3501c8(0x1bf)](_0x4727d1=>{const _0x58cb78=_0x3501c8;_0x54e9bf[_0x4727d1]=_0x54e9bf[_0x4727d1][_0x58cb78(0x1c7)]((_0x6b0c13,_0x84d49)=>_0x6b0c13[_0x58cb78(0x170)]-_0x84d49['modelOrder']),_0x54e9bf[_0x4727d1]=Array[_0x58cb78(0x184)](_0x54e9bf[_0x4727d1][_0x58cb78(0x19d)](_0x45c210=>{const {modelName:_0x25e06c,model:_0x2dc500,deduct:_0x6ebdfd,deductType:_0x419119,maxRounds:_0x5dc8d4}=_0x45c210;return{'modelName':_0x25e06c,'model':_0x2dc500,'deduct':_0x6ebdfd,'deductType':_0x419119,'maxRounds':_0x5dc8d4};})[_0x58cb78(0x17e)]((_0x266977,_0x1e71e1)=>_0x266977[_0x58cb78(0x18f)](_0x1e71e1[_0x58cb78(0x176)],_0x1e71e1),new Map())['values']());}),{'modelTypeList':this[_0x3501c8(0x1c2)],'modelMaps':_0x54e9bf};}async[_0x3de82b(0x19e)](_0x27373c,_0x1de31a){const _0x5c2fc7=_0x3de82b;await this['modelsEntity'][_0x5c2fc7(0x167)]()['update'](models_entity_1[_0x5c2fc7(0x1ac)])[_0x5c2fc7(0x18f)]({'useCount':()=>_0x5c2fc7(0x1ab),'useToken':()=>_0x5c2fc7(0x173)+_0x1de31a})[_0x5c2fc7(0x17c)](_0x5c2fc7(0x1a2),{'id':_0x27373c})[_0x5c2fc7(0x18e)]();}async[_0x3de82b(0x1b1)](){const _0x5861fa=_0x3de82b,_0x3f35d9=await this[_0x5861fa(0x1a7)]['find']({'where':{'isDraw':!![],'status':!![]}});if(!_0x3f35d9[_0x5861fa(0x191)])throw new common_1[(_0x5861fa(0x187))](_0x5861fa(0x1c3),common_1['HttpStatus'][_0x5861fa(0x1ba)]);return(0x0,utils_1[_0x5861fa(0x196)])(_0x3f35d9);}async['getAllKey'](){const _0x16357f=_0x3de82b;return await this[_0x16357f(0x1a7)][_0x16357f(0x18b)]();}async[_0x3de82b(0x197)](_0x56c049){return 0x1;}async['setModelType'](_0x1088df){return 0x1;}async[_0x3de82b(0x185)](_0x138bee){return 0x1;}};function _0x1542(){const _0x743ab5=['stringify','__param','__esModule','getRandomItemFromArray','queryModelType','@nestjs/common','228611ooazgo','getBaseConfig','682040cmaOhx','queryModels','map','saveUseLog','key:\x20','initCalcKey','12QiQinN','id\x20=\x20:id','ModelsMapCn','3294425mofeKN','keyPoolMap','log','modelsEntity','defineProperty','缺失必要参数!','keyType','useCount\x20+\x201','ModelsEntity','../../common/constants/status.constant','11395956ClNbQL','1008728QJdCTI','__decorate','getRandomDrawKey','18vLSGFS','keyPoolIndexMap','typeorm','metadata','24CWHVfi','getOwnPropertyDescriptor','decorate','status','BAD_REQUEST','error:\x20','onModuleInit','push','key','forEach','./modelType.entity','delete','modelTypes','当前未指定特殊模型KEY、前往后台模型池设置吧','Logger','val','secret','sort','createQueryBuilder','当前账号不存在!','257844PVGnrm','当前调用模型已经被移除、请重新选择模型!','getCurrentModelKeyInfo','ModelsTypeEntity','2dISwDK','modelsTypeEntity','save','modelOrder','findOne','delModel','useToken\x20+\x20','function','modelsList','modelName','object','1086741UHNzdW','HttpStatus','InjectRepository','parse\x20error:\x20','where','Repository','reduce','../../common/utils','Injectable','keyList','setModel','model','from','delModelType','update','HttpException','modelMaps','ASC','Like','find','ModelsService','parse','execute','set','user','length','keys'];_0x1542=function(){return _0x743ab5;};return _0x1542();}ModelsService=__decorate([(0x0,common_1[_0x3de82b(0x180)])(),__param(0x0,(0x0,typeorm_1[_0x3de82b(0x17a)])(models_entity_1[_0x3de82b(0x1ac)])),__param(0x1,(0x0,typeorm_1[_0x3de82b(0x17a)])(modelType_entity_1[_0x3de82b(0x16c)])),__metadata('design:paramtypes',[typeorm_2['Repository'],typeorm_2[_0x3de82b(0x17d)]])],ModelsService),exports[_0x3de82b(0x18c)]=ModelsService;