diff --git "a/.output/server/chunks/_/index.mjs" "b/.output/server/chunks/_/index.mjs" --- "a/.output/server/chunks/_/index.mjs" +++ "b/.output/server/chunks/_/index.mjs" @@ -1 +1 @@ -import{r as readBody,b as getQuery,c as useStorage}from"../nitro/nitro.mjs";import{v4}from"uuid";import{g as getStorage,D as DEVICE_ID}from"./storage.mjs";import*as crypto from"node:crypto";import{createHash as createHash$1}from"node:crypto";import{EventSourceParserStream}from"eventsource-parser/stream";import{createParser}from"eventsource-parser";import http2 from"http2";import FormData$1 from"form-data";import{WebSocket}from"ws";import*as jose from"jose";import{spawn}from"child_process";import protobuf from"protobufjs";import{credentials,Client,Metadata}from"@grpc/grpc-js";const separator=":";async function generateSHA256(e){return await createHash("sha256",e,"hex")}async function createHash(e,t,o="hex"){const a={sha256:"SHA-256",sha512:"SHA-512",sha1:"SHA-1",sha384:"SHA-384"}[e.toLowerCase()];if(!a)throw new Error(`Unsupported hash algorithm: ${e}`);const s=(new TextEncoder).encode(t),r=await crypto.subtle.digest(a,s);switch(o.toLowerCase()){case"hex":return Array.from(new Uint8Array(r)).map((e=>e.toString(16).padStart(2,"0"))).join("");case"base64":return btoa(String.fromCharCode(...new Uint8Array(r)));case"buffer":return r;default:throw new Error(`Unsupported encoding: ${o}`)}}async function createHmac(e,t,o){const a=await crypto.subtle.importKey("raw",(new TextEncoder).encode(t),{name:"HMAC",hash:e},!1,["sign"]),s=await crypto.subtle.sign("HMAC",a,(new TextEncoder).encode(o));return Array.from(new Uint8Array(s)).map((e=>e.toString(16).padStart(2,"0"))).join("")}function md5(e,t="utf8",o="hex"){const a=crypto.createHash("md5");return Buffer.isBuffer(e)?a.update(e):a.update(e,t),a.digest(o)}function uuid(e=!0){return e?v4():v4().replace(/\-/g,"")}function getRandomUuidv4(){return v4()}function randHex(e){const t="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";let o="";for(let a=0;a{const t=new Date,o=t.getFullYear().toString()+(t.getMonth()+1).toString().padStart(2,"0")+t.getDate().toString().padStart(2,"0");let a=0;for(let e=0;ee[Math.floor(Math.random()*e.length)];let t=`${randomChoice(["Mozilla/5.0","AppleWebKit/537.36","Chrome","Safari","Opera","Firefox"])} (${randomChoice(["Windows NT 10.0; Win64; x64","Macintosh; Intel Mac OS X 10_15_7","X11; Linux x86_64"])})`;t+=` ${randomChoice(["AppleWebKit/537.36","Gecko/20100101","Trident/7.0"])}`,t.includes("AppleWebKit")&&(t+=" (KHTML, like Gecko)");const o=randomChoice(["Chrome","Safari","Firefox","Edge"]);return t+=` ${o}/${randomChoice(e)}`,"Chrome"===o&&(t+=` Safari/${randomChoice(e)}`),t}async function errorResponse(e){const t=e.headers.get("content-type");if(null===t)return new Response(e.statusText,{status:e.status,statusText:e.statusText,headers:{"Content-Type":"text/plain; charset=utf-8"}});if(t.includes("application/json")){const t=await e.json();return new Response(JSON.stringify(t),{status:e.status,statusText:e.statusText,headers:{"Content-Type":"application/json"}})}{const t=await e.text();return console.error(t,e.status,e.statusText),new Response(t,{status:e.status,statusText:e.statusText,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function getMediaType(e){const t=e.match(/^data:(.*?);base64,/);return t&&t.length>1?t[1]:null}function MergeMessages(e){let t="";for(let o=0;o${a.role||"user"}\n${o.text||""}<|im_end|>\n`))}else t+=`<|im_start|>${a.role||"user"}\n${a.content}<|im_end|>\n`}return t}function MergeMessagesNoMarkup(e){let t="";for(let o=0;o0&&(r.choices[0].delta={content:t,type:s})):(r.object="chat.completion",r.usage={prompt_tokens:0,completion_tokens:0,total_tokens:0},r.choices[0].message={role:"assistant",content:t}),r}function toImageResponse(e,t){return{id:e,created:Math.floor(Date.now()/1e3),model:"",object:"chat.images",choices:t}}function timestamp(){return Date.now()}function unixTimestamp(){return parseInt(""+Date.now()/1e3)}function parseStrCookies(e){return e.split(";").filter(Boolean).reduce(((e,t)=>{const[o,a]=t.trim().split("=");return e[decodeURIComponent(o)]=decodeURIComponent(a||""),e}),{})}async function openai(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";return o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel,await requestOpenAI(e.context.model.apiBase,s,o)}async function requestOpenAI(e,t,o,a=null){try{o.meta&&delete o.meta,o.hasOwnProperty("system_prompt")&&delete o.system_prompt,o.hasOwnProperty("stream")||(o.stream=!1),a||(a={}),a["content-type"]||(a["content-type"]="application/json"),a.Authorization||a["api-key"]||!t||(a.Authorization=`Bearer ${t}`);const s=await fetch(e,{method:"POST",headers:a,body:JSON.stringify({...o})});if(o.stream)return new Response(s.body,{status:s.status,statusText:s.statusText,headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}});if(s.ok){const e=await s.json();return new Response(JSON.stringify(e),{status:s.status,statusText:s.statusText,headers:{"Content-Type":"application/json"}})}return errorResponse(s)}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}let copilotToken={token:"",expires_at:0,key:""},copilotClinet={vscode_sessionid:"",machineid:""};async function authenticate$1(e){const t=await fetch("https://api.github.com/copilot_internal/v2/token",{method:"GET",headers:{authorization:`token ${e}`,"editor-version":"vscode/1.95.3","editor-plugin-version":"copilot-chat/0.23.2024102903","user-agent":"GitHubCopilotChat/0.23.2024102903"}}),o=await t.json();if(t.ok)return o.key=e,o;throw new Error(o.message)}async function github_copilot(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";try{(""===copilotToken.token||(new Date).getTime()>1e3*copilotToken.expires_at||copilotToken.key!==s)&&(copilotToken=await authenticate$1(s))}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}if(""===copilotClinet.vscode_sessionid){const e=getRandomUuidv4()+String(Math.round((new Date).getTime()));copilotClinet.vscode_sessionid=e}if(""===copilotClinet.machineid){const e=Math.floor(1e11*Math.random()).toString(16);copilotClinet.machineid=await generateSHA256(e)}o.stream?(o.top_p=1,o.n=1,o.messages=[...o.messages]):(delete o.temperature,delete o.max_tokens,"system"===o.messages[0].role&&(o.messages[0].role="user"),o.messages=[...o.messages]);return await requestOpenAI("https://api.individual.githubcopilot.com/chat/completions",copilotToken.token,o,{"Content-Type":"application/json","copilot-integration-id":"vscode-chat","editor-plugin-version":"copilot-chat/0.23.2024102903","editor-version":"vscode/1.95.3","openai-intent":"conversation-panel","openai-organization":"github-copilot","user-agent":"GitHubCopilotChat/0.23.2024102903","vscode-machineid":copilotClinet.machineid,"Vscode-Sessionid":copilotClinet.vscode_sessionid,"x-github-api-version":"2023-07-07","X-Request-Id":getRandomUuidv4(),"sec-fetch-site":"none","sec-fetch-mode":"no-cors","sec-fetch-dest":"empty","accept-encoding":"gzip, deflate, br, zstd"})}let glmToken={token:"",expires_at:0,key:""};const encoder$x=new TextEncoder,GLM_DEFAULT_ASSISTANT_ID="65940acff94777010aa6b796",FAKE_HEADERS$c={Accept:"*/*","Accept-Encoding":"gzip, deflate, br",Connection:"keep-alive",Host:"chatglm.cn",Origin:"https://chatglm.cn","Sec-Ch-Ua":'"Chromium";v="122", "Not(A:Brand";v="24", "Google Chrome";v="122"',"Sec-Ch-Ua-Mobile":"?0","Sec-Ch-Ua-Platform":'"Windows"',"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36"},glm_deveice_id=randHex(32);async function authenticate(e){const t=await fetch("https://chatglm.cn/chatglm/backend-api/v1/user/refresh",{method:"POST",headers:{...FAKE_HEADERS$c,authorization:`Bearer ${e}`,Referer:"https://chatglm.cn/main/alltoolsdetail"}}),o=await t.json();if(t.ok&&0==o.status)return{token:o.result.accessToken,expires_at:(new Date).getTime()+36e5,key:e};throw new Error(o.message)}async function chatglm(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";try{(""===glmToken.token||(new Date).getTime()>glmToken.expires_at||glmToken.key!==s)&&(glmToken=await authenticate(s))}catch(e){return console.error(e),new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}let r=o.conversationId||"",i=null,c=GLM_DEFAULT_ASSISTANT_ID;a&&(c=a.apiAgentId?a.apiAgentId:c,r=a.apiConversationId?a.apiConversationId:r),i=""!==r?messagesPrepare([o.messages.pop()],[],!0):messagesPrepare(o.messages,[],!1);try{let e=""===r;const t=await fetch("https://chatglm.cn/chatglm/backend-api/assistant/stream",{method:"POST",headers:{...FAKE_HEADERS$c,Authorization:`Bearer ${glmToken.token}`,"content-type":"application/json",Referer:c==GLM_DEFAULT_ASSISTANT_ID?"https://chatglm.cn/main/alltoolsdetail":`https://chatglm.cn/main/gdetail/${c}`},body:JSON.stringify({assistant_id:c,conversation_id:r,meta_data:{mention_conversation_id:"",is_test:!1,input_question_type:"xxxx",channel:"",draft_id:"",quote:""},messages:i})});if(!t.ok)return errorResponse(t);const a=t.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),removeConversationId=t=>{0!=e&&removeConversation$5(t,c)};if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$q(a,t,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let s,l;for(;;){const{value:e,done:t}=await a.read();if(t){const e=JSON.parse(l.data);s=toOpenAIResponse(e.id,e.parts[0].content[0].text,e.model,!1),removeConversationId(e.conversation_id);break}e&&(l=e)}return new Response(JSON.stringify(s),{status:t.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function messagesPrepare(e,t,o=!1){let a;if(o||e.length<2)a=e.reduce(((e,t)=>Array.isArray(t.content)?t.content.reduce(((e,t)=>isObject(t)&&"text"==t.type?e+(t.text||"")+"\n":e),e):e+`${t.content}\n`),"");else{let t=e[e.length-1];if(Array.isArray(t.content)&&t.content.some((e=>"object"==typeof e&&["file","image_url"].includes(e.type)))){let t={content:"关注用户最新发送文件和消息",role:"system"};e.splice(e.length-1,0,t)}a=(e.reduce(((e,t)=>{const o=t.role.replace("system","<|sytstem|>").replace("assistant","<|assistant|>").replace("user","<|user|>");return Array.isArray(t.content)?t.content.reduce(((e,t)=>isObject(t)&&"text"==t.type?e+(`${o}\n`+t.text||"")+"\n":e),e):e+`${o}\n${t.content}\n`}),"")+"<|assistant|>\n").replace(/\!\[.+\]\(.+\)/g,"").replace(/\/mnt\/data\/.+/g,"")}const s=t.filter((e=>!e.width&&!e.height)),r=t.filter((e=>e.width||e.height)).map((e=>(e.image_url=e.file_url,e)));return[{role:"user",content:[{type:"text",text:a},...0==s.length?[]:[{type:"file",file:s}],...0==r.length?[]:[{type:"image",image:r}]]}]}function onParse$t(e,t){try{const o=JSON.parse(e.data);if("finish"==o.status)return void t.endCallback();if("intervene"==o.status){const e=o.last_error&&o.last_error.intervene_text?`\n\n${o.last_error.intervene_text}`:"";return t.msgCallback(e),void t.endCallback()}t.id||(t.id=o.id),t.conversation_id||(t.conversation_id=o.conversation_id),t.model||(t.model=o.parts.length&&o.parts[0].model);const a=o.parts.reduce(((e,o)=>{const{status:a,content:s,meta_data:r}=o;if(!Array.isArray(s))return e;return e+s.reduce(((e,o)=>{const{status:s,type:i,text:c,image:l,code:d,content:p}=o;if("init"==s&&t.textChunkLength>0&&(t.textOffset+=t.textChunkLength+1,t.textChunkLength=0,e+="\n"),"text"==i)return t.toolCall&&(e+="\n",t.textOffset++,t.toolCall=!1),"finish"==s&&(t.textChunkLength=c.length),e+c;if("quote_result"==i&&"finish"==a&&r&&Array.isArray(r.metadata_list)){const o=r.metadata_list.reduce(((e,t)=>e+`检索 ${t.title}(${t.url}) ...`),"")+"\n";return t.textOffset+=o.length,t.toolCall=!0,e+o}if("image"==i&&Array.isArray(l)&&"finish"==a){const o=l.reduce(((e,t)=>e+(/^(http|https):\/\//.test(t.image_url)?`![图像](${t.image_url||""})`:"")),"")+"\n";return t.textOffset+=o.length,t.toolCall=!0,e+o}if("code"==i&&"init"==s){let o="";t.codeGenerating||(t.codeGenerating=!0,o="```python\n");const a=d.substring(t.codeTemp.length,d.length);return t.codeTemp+=a,t.textOffset+=o.length+a.length,e+o+a}if("code"==i&&"finish"==s&&t.codeGenerating){const o="\n```\n";return t.codeGenerating=!1,t.codeTemp="",t.textOffset+=o.length,e+o}return"execution_output"==i&&"string"==typeof p&&"done"==s&&t.lastExecutionOutput!=p?(t.lastExecutionOutput=p,t.textOffset+=p.length+1,e+p+"\n"):e}),"")}),""),s=a.substring(t.content.length-t.textOffset,a.length);s&&(t.content+=s,t.msgCallback(s))}catch(e){throw e}}async function streamJsonResponseBodies$q(e,t,o){const a=t.getWriter();let s={id:"",model:"",conversation_id:"",content:"",toolCall:!1,codeGenerating:!1,textChunkLength:0,codeTemp:"",lastExecutionOutput:"",textOffset:0,msgCallback:e=>{a.write(encoder$x.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0))}\n\n`))},endCallback:()=>{a.write(encoder$x.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){a.close(),o&&o(s.conversation_id);break}if(!t)continue;onParse$t(t,s)}catch(e){throw a.close(),e}}async function removeConversation$5(e,t=GLM_DEFAULT_ASSISTANT_ID){(await fetch("https://chatglm.cn/chatglm/backend-api/assistant/conversation/delete",{method:"POST",headers:{...FAKE_HEADERS$c,Authorization:`Bearer ${glmToken.token}`,"content-type":"application/json",Referer:"https://chatglm.cn/main/alltoolsdetail","App-Name":"chatglm",Platform:"pc","X-Device-Id":glm_deveice_id,"X-Request-Id":randHex(32)},body:JSON.stringify({assistant_id:t,conversation_id:e})})).ok||console.error("移除会话失败")}let qwenToken={login_tongyi_ticket:"",login_aliyunid_ticket:"",tongyi_guest_ticket:"",tongyi_sso_ticket:""};const encoder$w=new TextEncoder,FAKE_HEADERS$b={"accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="125", "Chromium";v="125", "Not.A/Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-site","x-platform":"pc_tongyi","x-xsrf-token":"cd0ebf7c-7a70-412b-8e57-43f83ee081d5",Host:"qianwen.biz.aliyun.com",Referer:"https://tongyi.aliyun.com/","Referrer-Policy":"strict-origin-when-cross-origin"};async function tongyi(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=JSON.parse(s);qwenToken.login_tongyi_ticket=r.login_tongyi_ticket,qwenToken.login_aliyunid_ticket=r.login_aliyunid_ticket,qwenToken.tongyi_guest_ticket=r.tongyi_guest_ticket,qwenToken.tongyi_sso_ticket=r.tongyi_sso_ticket;let i=o.conversationId||"",c="";a&&(c=a.apiAgentId?a.apiAgentId:c,i=a.apiConversationId?a.apiConversationId:i);const l=o.messages;if(l.length>=2&&"assistant"===l[l.length-2].role){const e=l[l.length-2].id;c=e||c}i&&!c&&(c="",i="");let d=null,p=""===i;d=""!==i?l.pop().content:MergeMessages(l);const removeConversationId=e=>{0!=p&&removeConversation$4(e)};try{const e=http2.connect("https://qianwen.biz.aliyun.com"),t=e.request({":method":"POST",":path":"/dialog/conversation","content-type":"application/json",Accept:"text/event-stream",Cookie:getCookie$3(),...FAKE_HEADERS$b,Referer:`https://tongyi.aliyun.com/qianwen/?spm=5176.28103460.0.0.40f713f4tP8ZYT&sessionId=${i}`});if(t.write(JSON.stringify({model:"",action:"next",mode:"chat",userAction:"chat",requestId:getRandomUuidv4(),sessionId:i,sessionType:"text_chat",parentMsgId:c,params:{fileUploadBatchId:getRandomUuidv4()},contents:[{content:d,contentType:"text"}]})),t.setEncoding("utf8"),t.on("end",(()=>{e.close()})),o.stream){const{readable:e,writable:o}=new TransformStream;return http2StreamJsonResponseBodies(t,o,removeConversationId),t.end(),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let a=await new Promise(((e,o)=>{let a,s={id:"",convId:"",content:"",msgCallback:(e,t)=>{a=e},endCallback:()=>{const t=toOpenAIResponse(`${a.sessionId}-${a.msgId}`,s.content,"",!1);removeConversationId(s.convId),e(t)}};const r=createParser({onEvent:e=>{onParse$s(e,s)}});t.on("data",(e=>r.feed(e.toString()))),t.on("error",o),t.end()}));return new Response(JSON.stringify(a),{status:200,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$s(e,t){try{if("[DONE]"==e.data)return void t.endCallback();const o=JSON.parse(e.data);if(o.errorCode)return void t.msgCallback(o.errorCode);!t.convId&&o.sessionId&&(t.convId=o.sessionId),!t.id&&o.msgId&&(t.id=o.msgId);const a=(o.contents||[]).reduce(((e,t)=>{const{contentType:o,role:a,content:s}=t;return"text"!=o&&"text2image"!=o?e:"assistant"==a||isString$1(s)?e+s:e}),"");let s=a.substring(t.content.length,a.length);s&&"text2image"==o.contentType&&(s=s.replace(/https?:\/\/[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=\,]*)/gi,(e=>{const t=new URL(e);return t.search="",t.toString()}))),t.content=a,t.msgCallback(s)}catch(e){throw e}}async function http2StreamJsonResponseBodies(e,t,o){const a=t.getWriter();let s={id:"",convId:"",content:"",msgCallback:e=>{a.write(encoder$w.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,"",!0))}\n\n`))},endCallback:()=>{a.write(encoder$w.encode("data: [DONE]\n\n")),o&&o(s.convId)}};const r=createParser({onEvent:e=>{onParse$s(e,s)}});e.on("data",(e=>r.feed(e.toString()))),e.once("error",(()=>a.close())),e.once("close",(()=>a.close()))}async function removeConversation$4(e){const t=await fetch("https://qianwen.biz.aliyun.com/dialog/session/delete",{method:"POST",headers:{Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br, zstd","Content-Type":"application/json",Cookie:getCookie$3(),...FAKE_HEADERS$b},body:JSON.stringify({sessionId:e})});t.ok||console.error(`移除会话失败:${t}`)}function getCookie$3(){let e=[];for(let t in qwenToken)qwenToken.hasOwnProperty(t)&&""!==qwenToken[t]&&e.push(`${t}=${qwenToken[t]}`);return e.join("; ")}let yiToken={token:"",expires_at:0,key:""};const encoder$v=new TextEncoder,FAKE_HEADERS$a={"accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","app-name":"wanzhi-web","cache-control":"no-cache","device-info":'{"web_id":"MCfvYwUh4iKX-gH55xrA5","baidu_id":"18f9fffca0502883465b60"}',"pop-url":"https://www.wanzhi.com/",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="125", "Chromium";v="125", "Not.A/Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-site"};async function wanzhi(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";yiToken.token=s;try{let e=o.conversationId||"";a&&(e=a.apiConversationId?a.apiConversationId:e);let t="",s=!1;if(""!==e)t=o.messages.pop().content;else{const a=await fetch("https://api.wanzhi.com/api/v1/chat/getChannel",{headers:{...FAKE_HEADERS$a,accept:"application/json","content-type":"application/json",Authorization:`${yiToken.token}`},body:JSON.stringify({model:o.model,templateId:"",message:t,language:"Chinese"}),method:"POST"});if(!a.ok)return errorResponse(a);let r=await a.json();if(200!=r.code)throw new Error(r.message);e=r.data.channelId,t=MergeMessages(o.messages),s=!0}const r=await fetch("https://api.wanzhi.com/api/v1/chat/send",{method:"POST",headers:{...FAKE_HEADERS$a,Authorization:`${yiToken.token}`,"content-type":"application/json",accept:"text/event-stream"},body:JSON.stringify({isGetJson:!0,version:"1.4.0",language:"zh-CN",channelId:e,message:t,model:o.model,messageIds:[],improveId:null,richMessageId:null,isImprove:!1,isNewChat:!1,action:null,isGeneratePpt:!1,isSlidesChat:!1,imageUrls:[],roleEnum:null,pptCoordinates:"",docPromptTemplateId:null})});if(!r.ok)return errorResponse(r);const i=r.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),removeConversationId=async()=>{0!=s&&removeConversation$3(e)};if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$p(i,t,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let c={content:"",id:"",model:"",msgCallback:e=>{c.content+=e.content,c.id=e.messageId}};for(;;){const{value:e,done:t}=await i.read();if(t){removeConversationId();break}e&&onParse$r(e,c)}return new Response(JSON.stringify(toOpenAIResponse(c.id,c.content,c.model,!1)),{status:r.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$r(e,t){try{const o=JSON.parse(e.data);if(!isArray(o))return;const a=o[0];if(t.model||(t.model=a.model),!a.hasOwnProperty("chunkId")||!a.hasOwnProperty("content"))return;t.msgCallback(a)}catch(e){throw e}}async function streamJsonResponseBodies$p(e,t,o){const a=t.getWriter();let s={model:"",msgCallback:e=>{a.write(encoder$v.encode(`data: ${JSON.stringify(toOpenAIResponse(e.messageId,e.content,s.model,!0))}\n\n`))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){a.write(encoder$v.encode("data: [DONE]\n\n")),o&&o(),a.close();break}if(!t)continue;onParse$r(t,s)}catch(e){throw a.close(),e}}async function removeConversation$3(e){(await fetch("https://api.wanzhi.com/api/v1/channel/delete",{headers:{...FAKE_HEADERS$a,accept:"application/json","content-type":"application/json",Authorization:`${yiToken.token}`},body:JSON.stringify({channelId:e}),method:"POST"})).ok||console.error("移除会话失败")}async function coze(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=o.model,i=o.conversationId||"";a&&(r=a.apiAgentId?a.apiAgentId:r,i=a.apiConversationId?a.apiConversationId:i);let c="";"system"===o.messages[0].role&&a&&a.data.useConversationSetting&&(c=o.messages.shift().content+"\r\n");const l=o.messages.map(((e,t,o)=>{const a={role:e.role};"assistant"===a.role&&(a.type="answer");const s=t===o.length-1;return isArray(e.content)?(a.content_type="object_string",a.content=JSON.stringify(e.content.map((e=>"image_url"===e.type?null:("text"===e.type&&s&&(e.text=`${c}${e.content}`),e))).filter((e=>null!==e)))):(a.content=e.content,a.content_type="text",s&&(a.content=`${c}${a.content}`)),a})),d={bot_id:r,user_id:"seedchat",stream:o.stream,auto_save_history:!0,additional_messages:l};if(!d.bot_id)return new Response("未设置botid",{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}});try{if(o.stream){const t=await fetch(`${e.context.model.apiBase}?conversation_id=${i}`,{method:"POST",headers:{Authorization:`Bearer ${s}`,"content-type":"application/json",Connection:"Keep-alive",Accept:"*/*"},body:JSON.stringify(d)});if(!t.ok)return errorResponse(t);if(t.headers.get("content-type").includes("application/json")){const e=await t.json();return new Response(JSON.stringify(e),{status:400,statusText:t.statusText,headers:{"Content-Type":"application/json"}})}const o=t.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),{readable:a,writable:r}=new TransformStream;return streamJsonResponseBodies$o(o,r),new Response(a,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const t=toOpenAIResponse("","不支持非流响应","",!1);return new Response(JSON.stringify(t),{status:400,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$u=new TextEncoder;async function streamJsonResponseBodies$o(e,t){const o=t.getWriter();let a={id:"",msgCallback:e=>{o.write(encoder$u.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,"",!0))}\n\n`))},endCallback:()=>{o.write(encoder$u.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:s}=await e.read();if(s){o.close();break}if(!t)continue;onParse$q(t,a)}catch(e){throw o.close(),e}}function onParse$q(e,t){try{const o=JSON.parse(e.data);if(t.id||(t.id=o.id),"conversation.chat.failed"===e.event)return t.msgCallback(o.last_error.msg),void t.endCallback();if("done"===e.event)return void t.endCallback();if("conversation.message.delta"!==e.event)return;t.msgCallback(o.content)}catch(e){throw e}}const huggingface_request_data={hf_chat:"",token:"",aws_waf_token:""},FakeHeaders$4={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Microsoft Edge";v="125", "Chromium";v="125", "Not.A/Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","Referrer-Policy":"strict-origin-when-cross-origin","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.6367.207 Electron/30.0.6 Safari/537.36"},getCookie$2=()=>`hf-chat=${huggingface_request_data.hf_chat};token=${huggingface_request_data.token}; aws-waf-token=${huggingface_request_data.aws_waf_token}`;async function huggingface(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=o.conversationId||"";a&&(r=a.apiConversationId?a.apiConversationId:r);try{const e=JSON.parse(s);huggingface_request_data.hf_chat=e["hf-chat"],huggingface_request_data.token=e.token,huggingface_request_data.aws_waf_token=e["aws-waf-token"];let t="",a=!1;if(""===r){const e=await fetch("https://huggingface.co/chat/conversation",{headers:{...FakeHeaders$4,"content-type":"application/json",cookie:getCookie$2(),Referer:"https://huggingface.co/chat",origin:"https://huggingface.co"},body:JSON.stringify({model:o.model}),method:"POST"});if(!e.ok)return errorResponse(e);let s=await e.json();r=s.conversationId,a=!0,t=MergeMessages(o.messages)}else t=o.messages.pop().content;const removeConversationId=async()=>{0!=a&&removeConversation$2(r)},i=await getLastId(r);if(!i)return new Response("获取ID失败",{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}});const c=JSON.stringify({inputs:t,id:i,is_retry:!1,is_continue:!1,web_search:!1,tools:[]}),l=new FormData$1;l.setBoundary("----WebKitFormBoundary"+Math.random().toString(36).substring(2)),l.append("data",c);const d=await fetch(`https://huggingface.co/chat/conversation/${r}`,{method:"POST",headers:{...FakeHeaders$4,cookie:getCookie$2(),referer:`https://huggingface.co/chat/conversation/${r}`,origin:"https://huggingface.co","Content-Type":`multipart/form-data; boundary=${l.getBoundary()}`},body:l.getBuffer()});if(!d.ok)return errorResponse(d);const p=d.body.pipeThrough(new TextDecoderStream).getReader();if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseString$1(p,t,o.model,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let u={content:"",id:getRandomUuidv4(),endCallback:()=>{},msgCallback:e=>{u.content+=e}};for(;;){const{value:e,done:t}=await p.read();if(t){removeConversationId();break}if(!e)continue;const o=e.split("\n");for(let e=0;e0&&onParse$p(o[e],u)}return new Response(JSON.stringify(toOpenAIResponse(u.id,u.content,o.model,!1)),{status:d.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$t=new TextEncoder;async function streamJsonResponseString$1(e,t,o,a){const s=t.getWriter();let r={id:getRandomUuidv4(),msgCallback:e=>{s.write(encoder$t.encode(`data: ${JSON.stringify(toOpenAIResponse(r.id,e,o,!0))}\n\n`))},endCallback:()=>{s.write(encoder$t.encode("data: [DONE]\n\n"))}};for(;;)try{const{done:t,value:o}=await e.read();if(t){s.close(),a&&a();break}if(!o)continue;const i=o.split("\n");for(let e=0;e0&&onParse$p(i[e],r)}catch(e){throw s.close(),e}}function onParse$p(e,t){try{const o=JSON.parse(e);if("finalAnswer"===o.type)return void t.endCallback(o.text);if("stream"!=o.type)return;t.msgCallback(o.token.split("\0").join(""))}catch(e){throw e}}async function removeConversation$2(e){(await fetch(`https://huggingface.co/chat/conversation/${e}`,{headers:{...FakeHeaders$4,cookie:getCookie$2(),Referer:`https://huggingface.co/chat/conversation/${e}`},method:"DELETE"})).ok||console.error("移除会话失败")}async function getLastId(e){const t=await fetch(`https://huggingface.co/chat/conversation/${e}/__data.json?x-sveltekit-invalidated=11`,{headers:{...FakeHeaders$4,cookie:getCookie$2(),Referer:`https://huggingface.co/chat/conversation/${e}`},method:"GET"});if(!t.ok)throw new Error("获取ID失败");const o=await t.text(),a=JSON.parse(getFirstJson(o)).nodes[1].data,s=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;let r;for(let e=a.length-1;e>=0;e--)if("string"==typeof a[e]&&s.test(a[e])){r=a[e];break}return r}function getFirstJson(e){const t=e.indexOf("\n");return-1===t?"":e.substring(0,t+1)}let ernieToken={refresh_token:"",expires_in:2592e3,session_key:"",access_token:"",scope:"",session_secret:"",secretId:"",expirationTime:0};function getTimestampString(){return(new Date).toISOString().replace(/\.\d*/,"")}function getQueryString(e){let t="",o=[];if(e){for(let t in e)o.push(t);o=o.sort()}if(o&&o.length>0){for(let a of o)t+=encodeURIComponent(a)+"="+encodeURIComponent(e[a])+"&";t=t.substr(0,t.length-1)}return t}async function getAuthString(e,t,o,a,s,r,i){let c=`bce-auth-v1/${e}/${i}/1800`,l=r+"\n"+a+"\n"+s+"\n"+(encodeURIComponent("host")+":"+encodeURIComponent(o)+"\n"+encodeURIComponent("x-bce-date")+":"+encodeURIComponent(i)),d=await createHmac("SHA-256",t,c);return`${c}/host;x-bce-date/${await createHmac("SHA-256",d,l)}`}async function ernie(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",[r,i]=s.split(separator);try{if(""===ernieToken.access_token||(new Date).getTime()>ernieToken.expirationTime||ernieToken.secretId!==r){const e="iam.bj.baidubce.com",t="application/json; charset=utf-8",o="/v1/BCE-BEARER/token",a="GET";let s=getTimestampString(),c=getQueryString({expireInSeconds:2592e3}),l=await getAuthString(r,i,e,o,c,a,s),d=await fetch("https://"+e+o+"?"+c,{method:a,headers:{Authorization:l,"Content-Type":t,Host:e,"x-bce-date":s}}),p=await d.json();ernieToken.secretId=r,ernieToken.access_token=p.token,ernieToken.expirationTime=new Date(p.expireTime).getTime()}}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}return await requestOpenAI("https://qianfan.baidubce.com/v2/chat/completions",ernieToken.access_token,o)}new TextEncoder;const encoder$s=new TextEncoder;async function hunyuan(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",[r,i]=s.split(separator);const c={secretId:r,secretKey:i},l="ap-beijing",d={httpProfile:{endpoint:"hunyuan.tencentcloudapi.com"}}.httpProfile.endpoint,p=l,u="hunyuan",m=Math.floor((new Date).getTime()/1e3),h=getDate(m),g=JSON.stringify({Temperature:o.temperature?o.temperature:1,Stream:o.stream||!1,Model:o.model,Messages:o.messages.map((e=>({Role:e.role,Content:e.content})))}),f="content-type;host",y=getHash(g),w="TC3-HMAC-SHA256",_=h+"/"+u+"/tc3_request",k=w+"\n"+m+"\n"+_+"\n"+getHash("POST\n/\n\n"+("content-type:application/json; charset=utf-8\nhost:"+d+"\n")+"\n"+f+"\n"+y),b=sha256(h,"TC3"+c.secretKey),T=sha256(u,b),C=sha256("tc3_request",T),A=sha256(k,C,"hex"),v=w+" Credential="+c.secretId+"/"+_+", SignedHeaders="+f+", Signature="+A;try{const e=await fetch(`https://${d}`,{method:"POST",headers:{Authorization:v,Host:d,"Content-Type":"application/json; charset=utf-8","X-TC-Action":"ChatCompletions","X-TC-Timestamp":`${m}`,"X-TC-Version":"2023-09-01","X-TC-Region":p},body:g});if(o.stream){if(e.headers.get("content-type").includes("application/json")){const t=await e.json();return new Response(JSON.stringify(t),{status:400,statusText:e.statusText,headers:{"Content-Type":"application/json"}})}const t=e.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),{readable:a,writable:s}=new TransformStream;return streamJsonResponseBodies$n(t,s,o.model),new Response(a,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const t=(await e.json()).Response,a=toOpenAIResponse(t.id,t.Choices[0].Message.Content,o.model,!1);return new Response(JSON.stringify(a),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function streamJsonResponseBodies$n(e,t,o){const a=t.getWriter();let s={id:"",msgCallback:e=>{a.write(encoder$s.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$s.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){a.close();break}if(!t)continue;onParse$o(t,s)}catch(e){throw a.close(),e}}function onParse$o(e,t){try{const o=JSON.parse(e.data);if("stop"===o.Choices[0].FinishReason)return void t.endCallback();t.id||(t.id=o.Id),t.msgCallback(o.Choices[0].Delta.Content)}catch(e){throw e}}function sha256(e,t="",o){return crypto.createHmac("sha256",t).update(e).digest(o)}function getHash(e,t="hex"){return crypto.createHash("sha256").update(e).digest(t)}function getDate(e){const t=new Date(1e3*e);return`${t.getUTCFullYear()}-${("0"+(t.getUTCMonth()+1)).slice(-2)}-${("0"+t.getUTCDate()).slice(-2)}`}var __defProp$4=Object.defineProperty,__defNormalProp$4=(e,t,o)=>t in e?__defProp$4(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__publicField$4=(e,t,o)=>__defNormalProp$4(e,"symbol"!=typeof t?t+"":t,o);const encoder$r=new TextEncoder,FakeHeaders$3={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Microsoft Edge";v="126"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","Referrer-Policy":"strict-origin-when-cross-origin"},baseCookies="_gid=GA1.2.68066840.1717017781; _ga_K6D24EE9ED=GS1.1.1717087813.23.1.1717088648.0.0.0; _gat_gtag_UA_156449732_1=1; _ga_R1FN4KJKJH=GS1.1.1717087813.37.1.1717088648.0.0.0; _ga=GA1.1.1320014795.1715641484";class LmsysAPI{constructor(){__publicField$4(this,"baseUrl"),__publicField$4(this,"sessionHash"),__publicField$4(this,"cookie"),__publicField$4(this,"textModel"),__publicField$4(this,"stream"),__publicField$4(this,"ver",""),__publicField$4(this,"fn"),this.baseUrl="https://arena.lmsys.org"}init(e,t,o=null,a){this.textModel=o,this.fn=JSON.parse(t),this.sessionHash=this.generateHashFromUUID(e),this.stream=a}generateHashFromUUID(e){return crypto.createHash("sha1").update(e).digest("base64").replace(/[+/=]/g,"").substring(0,11).toLowerCase()}async rJoin(e){const t=await fetch(`${this.baseUrl}/queue/join?`,{method:"POST",headers:{...FakeHeaders$3,cookie:this.cookie,Origin:`${this.baseUrl}`,Referer:`${this.baseUrl}/`},body:JSON.stringify(e)});if(t.headers.get("content-type").includes("application/json")){const e=await t.json();console.log(e);const o=t.headers.getSetCookie();for(const e of o)e.includes("SERVERID")&&(this.cookie=this.mergeCookies(baseCookies,e))}else{const e=await t.text();if(e.includes("Just a moment...")||e.includes("Attention Required! | Cloudflare"))throw new Error("被cf盾了")}}async getRequestAnswer(e=!1){const t=await fetch(`${this.baseUrl}/queue/data?session_hash=${this.sessionHash}`,{method:"GET",headers:{...FakeHeaders$3,cookie:this.cookie,accept:"text/event-stream",Origin:`${this.baseUrl}`,Referer:`${this.baseUrl}/`}});if(!e)return;if(!t.ok)return errorResponse(t);const o=t.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(this.stream){const{readable:e,writable:t}=new TransformStream;return this.streamJsonResponseBodies(o,t),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let a={id:"",lastText:"",msgCallback:e=>{},endCallback:()=>{}};for(;;)try{const{done:e,value:t}=await o.read();if(e)break;if(!t)continue;onParse$n(t,a)}catch(e){throw e}const s=toOpenAIResponse(a.id,a.lastText,this.textModel,!1);return new Response(JSON.stringify(s),{status:t.status,headers:{"Content-Type":"application/json"}})}async getAnswer(e){try{this.cookie=await this.fetchCookie();let t={data:[null,this.textModel,e,null],event_data:null,fn_index:this.fn.fn_index_send,trigger_id:this.fn.trigger_id,session_hash:this.sessionHash};await this.rJoin(t),await this.getRequestAnswer();const o={temperature:.7,topP:1,maxTokens:1024};return t={data:[null,`${o.temperature}`,`${o.topP}`,`${o.maxTokens}`],event_data:null,fn_index:this.fn.fn_index_recv,trigger_id:this.fn.trigger_id,session_hash:this.sessionHash},await this.rJoin(t),await this.getRequestAnswer(!0)}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async fetchCookie(){if(""!==this.ver){const e=`SERVERID=${this.ver}|${Math.random().toString(36).substring(7)}`;return this.mergeCookies(baseCookies,e)}let e=0;for(;e<3;){e++;try{const e=await fetch(`${this.baseUrl}/info`,{method:"GET",headers:{...FakeHeaders$3,accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",cookie:baseCookies,Origin:`${this.baseUrl}`,Referer:`${this.baseUrl}/`},body:null});if(e.headers.get("content-type").includes("application/json")){const t=e.headers.getSetCookie();for(const e of t)if(e.includes("SERVERID")){const t=this.getCookie(e,"SERVERID");if(!t)continue;const o=t.split("|");if(o.length<2||!o[0].startsWith("S")||"S0"===o[0])continue;this.ver=o[0];const a=`SERVERID=${this.ver}|${Math.random().toString(36).substring(7)}`;return this.mergeCookies(baseCookies,a)}}(await e.text()).includes("Just a moment...")&&console.log("被盾了"),await new Promise((e=>setTimeout(e,1e3)))}catch(e){console.error(e)}}return""}mergeCookies(e,t){return e+"; "+t}getCookie(e,t){const o=e.split(";");for(const e of o){const[o,a]=e.split("=");if(o.trim()===t)return a}}async clearChat(){const e={data:[],event_data:null,fn_index:50,trigger_id:118,session_hash:this.sessionHash};await this.rJoin(e),await this.getRequestAnswer()}async streamJsonResponseBodies(e,t){const o=t.getWriter();let a={id:"",lastText:"",msgCallback:e=>{o.write(encoder$r.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,this.textModel,!0))}\n\n`))},endCallback:()=>{o.write(encoder$r.encode("data: [DONE]\n\n"))}};for(;;)try{const{done:t,value:s}=await e.read();if(t){o.close();break}if(!s)continue;onParse$n(s,a)}catch(e){throw o.close(),e}}}function onParse$n(e,t){try{const o=JSON.parse(e.data);if("unexpected_error"===o.msg)return t.msgCallback(o.message),void t.endCallback();if("close_stream"===o.msg)return void t.endCallback();if("estimation"===o.msg)return;if("process_starts"===o.msg)return;if("process_completed"===o.msg)return;if(t.id||(t.id=o.event_id),!o.output||!o.output.data||!o.output.data[0])return;const a=t.lastText;t.lastText=o.output.data[1][0][2].replace(/▌$/,""),t.msgCallback(t.lastText.substring(a.length))}catch(e){throw e}}const lmsysApi=new LmsysAPI;async function lmsys(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;const s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):'{"fn_index_send":52,"fn_index_recv":53,"trigger_id":110}',r=o.conversationId||getRandomUuidv4();return lmsysApi.init(r,s,o.model,o.stream),await lmsysApi.getAnswer(o.messages.pop().content)}const encoder$q=new TextEncoder;async function spark(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",[r,i,c]=s.split(separator),l=await getWebsocketUrl(o.model,i,c);const d=new WebSocket(l);if(d.onopen=()=>{const e={header:{app_id:r},parameter:{chat:{domain:o.model,temperature:o.temperature||.5,max_tokens:o.max_tokens||4096}},payload:{message:{text:o.messages}}};d.send(JSON.stringify(e))},o.stream){const{readable:p,writable:u}=new TransformStream,m=u.getWriter(),h={id:"",msgCallback:e=>{m.write(encoder$q.encode(`data: ${JSON.stringify(toOpenAIResponse(h.id,e,o.model,!0))}\n\n`))},endCallback:()=>{m.write(encoder$q.encode("data: [DONE]\n\n"))}};return d.onmessage=e=>{onParse$m(e,h)},d.onerror=e=>{h.msgCallback(e.message),m.close()},d.onclose=()=>{m.close()},new Response(p,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}try{async function waitForContent(){return new Promise(((e,t)=>{const a={id:"",content:"",msgCallback:e=>{a.content+=e},endCallback:()=>{e(toOpenAIResponse(a.id,a.content,o.model,!1))}};d.onmessage=e=>{onParse$m(e,a)},d.onerror=e=>{t(e.message)},d.onclose=()=>{""===a.content&&t("WebSocket closed before receiving content.")}}))}const g=await waitForContent();return new Response(JSON.stringify(g),{status:200,headers:{"Content-Type":"application/json"}})}catch(f){return new Response(f.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function getWebsocketUrl(e,t,o){let a="";switch(e){case"4.0Ultra":a="wss://spark-api.xf-yun.com/v4.0/chat";break;case"generalv3.5":a="wss://spark-api.xf-yun.com/v3.5/chat";break;case"generalv3":a="wss://spark-api.xf-yun.com/v3.1/chat";break;case"generalv2":a="wss://spark-api.xf-yun.com/v2.1/chat";break;case"general":a="wss://spark-api.xf-yun.com/v1.1/chat"}return new Promise(((e,s)=>{const r=new URL(a),i=(new Date).toUTCString(),c=`host: ${r.host}\ndate: ${i}\nGET ${r.pathname} HTTP/1.1`,l=crypto.createHmac("sha256",o).update(c).digest().toString("base64"),d=`api_key="${t}", algorithm="hmac-sha256", headers="host date request-line", signature="${l}"`,p=Buffer.from(d).toString("base64");e(`wss://${r.host}${r.pathname}?authorization=${p}&date=${i}&host=${r.host}`)}))}function onParse$m(e,t){try{const{header:o,payload:a}=JSON.parse(e.data);if(2==o.status)return t.msgCallback(a.choices.text[0].content),void t.endCallback();t.id||(t.id=o.sid),t.msgCallback(a.choices.text[0].content)}catch(e){throw e}}async function cloudflare(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",[r,i]=s.split(separator);try{const e={messages:o.messages,stream:o.stream,temperature:o.temperature||.5},t=await fetch(`https://api.cloudflare.com/client/v4/accounts/${r}/ai/run/${o.model}`,{method:"POST",headers:{"content-type":"application/json",Authorization:`Bearer ${i}`},body:JSON.stringify(e)});if(!t.ok)return errorResponse(t);if(o.stream){if(t.headers.get("content-type").includes("application/json")){const e=await t.json();return new Response(JSON.stringify(e),{status:400,statusText:t.statusText,headers:{"Content-Type":"application/json"}})}const e=t.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),{readable:a,writable:s}=new TransformStream;return streamJsonResponseBodies$m(e,s,o.model),new Response(a,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const a=await t.json(),s=toOpenAIResponse(getRandomUuidv4(),a.result.response,o.model,!1);return new Response(JSON.stringify(s),{status:t.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$p=new TextEncoder;async function streamJsonResponseBodies$m(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),msgCallback:e=>{a.write(encoder$p.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$p.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){a.close();break}if(!t)continue;onParse$l(t,s)}catch(e){throw a.close(),e}}function onParse$l(e,t){try{if("[DONE]"===e.data)return void t.endCallback();const o=JSON.parse(e.data);t.msgCallback(o.response)}catch(e){throw e}}const fakeHeaders$1={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="125", "Chromium";v="125", "Not.A/Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","Referrer-Policy":"strict-origin-when-cross-origin"},mistral_ai_request_data={ory_session_key:"",ory_session_value:""},getCookie$1=()=>`${mistral_ai_request_data.ory_session_key}=${mistral_ai_request_data.ory_session_value};NEXT_LOCALE=en;ory_kratos_continuity=MTcxOTc3MDk2OHxEWDhFQVFMX2dBQUJFQUVRQUFCZl80QUFBUVp6ZEhKcGJtY01Jd0FoYjNKNVgydHlZWFJ2YzE5dmFXUmpYMkYxZEdoZlkyOWtaVjl6WlhOemFXOXVCbk4wY21sdVp3d21BQ1JpTmpOaFpqY3lOUzFsTURBNExUUXpPRGd0WVdKa05pMHpNRFUwWkRNMU1XTTVZalE9fPfD0SHupntGNg_XP_fUaHjsTLm9A0KmO1zh2MG71eLM;intercom-device-id-xel0jpx9=13cf9530-2b5d-4ee2-85e8-1f7c7f0423b1;intercom-session-xel0jpx9=U1I4MmFFRG1FN3RiNHdYaTFQNUNuL3RzaFdpQWpEMSs0U0FlSUlOMjR2V0pGeVZuK0FXT3lsMEJMa0FrSDZVTS0tRlJaSGZ1QXg1U2VYQTNxd2FUWkltZz09--495660161dc146e9de5bbdc172d8c5252df24db5;`;async function mistral_ai(e){var t,o,a;const s=Object.fromEntries(e.headers),r=await readBody(e),i=e.context.meta||r.meta;r.model=r.model&&"default"!==r.model?r.model:null==i?void 0:i.apiModel;let c=(null==i?void 0:i.apiKey)?i.apiKey:s.authorization?extractBearerToken(s.authorization):"",l=r.conversationId||"";i&&(l=i.apiConversationId?i.apiConversationId:l);try{const[e,s]=c.split(separator);mistral_ai_request_data.ory_session_key=e,mistral_ai_request_data.ory_session_value=s;let i=!1;if(""===l){const e=await fetch("https://chat.mistral.ai/api/trpc/message.newChat?batch=1",{headers:{...fakeHeaders$1,"content-type":"application/json",cookie:getCookie$1(),Referer:"https://chat.mistral.ai"},body:JSON.stringify({0:{json:{content:MergeMessages(r.messages),rag:!1}}}),method:"POST"});if(!e.ok)return errorResponse(e);let s=await e.json();l=null==(a=null==(o=null==(t=s[0].result)?void 0:t.data)?void 0:o.json)?void 0:a.chatId,i=!0}const removeConversationId=async()=>{0!=i&&removeConversation$1(l)},d=await fetch("https://chat.mistral.ai/api/chat",{method:"POST",headers:{...fakeHeaders$1,cookie:getCookie$1(),"Content-Type":"application/json",Referer:`https://chat.mistral.ai/chat/${l}`},body:JSON.stringify({chatId:l,model:r.model,messageInput:i?void 0:r.messages.pop().content,messageId:i?void 0:getRandomUuidv4(),mode:i?"retry":"append"})});if(!d.ok)return errorResponse(d);const p=d.body.pipeThrough(new TextDecoderStream).getReader();if(r.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseString(p,t,r.model,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let u={content:"",id:getRandomUuidv4(),endCallback:()=>{},msgCallback:e=>{u.content+=e}};for(;;){const{value:e,done:t}=await p.read();if(t){removeConversationId();break}if(!e)continue;const o=e.split("\n");for(let e=0;e0&&onParse$k(o[e],u)}return new Response(JSON.stringify(toOpenAIResponse(u.id,u.content,r.model,!1)),{status:d.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$o=new TextEncoder;async function streamJsonResponseString(e,t,o,a){const s=t.getWriter();let r={id:getRandomUuidv4(),msgCallback:e=>{s.write(encoder$o.encode(`data: ${JSON.stringify(toOpenAIResponse(r.id,e,o,!0))}\n\n`))},endCallback:()=>{s.write(encoder$o.encode("data: [DONE]\n\n"))}};for(;;)try{const{done:t,value:o}=await e.read();if(t){s.close(),a&&a();break}if(!o)continue;const i=o.split("\n");for(let e=0;e0&&onParse$k(i[e],r)}catch(e){throw s.close(),e}}function onParse$k(e,t){try{const o=e[0];if("2"===o)return;if(""!==o&&o||t.endCallback(),"0"!==o)return;let a=e.slice(3,e.length-1);a=decodeEscapedCharacters(a),t.msgCallback(a)}catch(e){throw e}}function decodeEscapedCharacters(e){const t={"\\n":"\n","\\r":"\r","\\t":"\t","\\b":"\b","\\f":"\f","\\v":"\v","\\'":"'",'\\"':'"',"\\\\":"\\"};return e.replace(/\\(n|r|t|b|f|v|'|\"|\\)/g,(e=>t[e]))}async function removeConversation$1(e){(await fetch("https://chat.mistral.ai/api/trpc/chat.delete?batch=1",{headers:{...fakeHeaders$1,cookie:getCookie$1(),"content-type":"application/json",Referer:`https://chat.mistral.ai/chat/${e}`},method:"POST",body:JSON.stringify({0:{json:{id:e}}})})).ok||console.error("移除会话失败")}var __defProp$3=Object.defineProperty,__defNormalProp$3=(e,t,o)=>t in e?__defProp$3(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__publicField$3=(e,t,o)=>__defNormalProp$3(e,t+"",o);class GoogleAuth{constructor(){__publicField$3(this,"googleTokenCache",{accessToken:"",expiry:0,client_id:"",client_secret:"",refresh_token:"",token_type:""})}async getGoogleCredentialsAccessToken(e,t,o){const a=Date.now()/1e3;if(this.googleTokenCache.accessToken&&a{let o="gcloud";"win32"===process.platform&&(o="gcloud.cmd");const a=spawn(o,["auth","print-access-token"]);let s="";a.stdout.on("data",(e=>{s+=e.toString()})),a.stderr.on("data",(e=>{console.error(`错误输出: ${e}`),t(new Error(`错误输出: ${e}`))})),a.on("close",(o=>{0!==o?t(new Error(`子进程退出,退出码 ${o}`)):e(s.trim())}))}))}}const encoder$n=new TextEncoder,auth$2=new GoogleAuth;async function anthropic(e){return await _anthropic(e,(async(t,o)=>await fetch("https://api.anthropic.com/v1/messages",{method:e.method,headers:{"Content-Type":"application/json","x-api-key":`${t}`,"anthropic-version":"2023-06-01"},body:JSON.stringify(o)})))}async function anthropic_vertex(e){var t,o,a,s;const r=getQuery(e);let i=r.location||(null==(o=null==(t=e.context.meta)?void 0:t.query)?void 0:o.location),c=r.project||(null==(s=null==(a=e.context.meta)?void 0:a.query)?void 0:s.project);return await _anthropic(e,(async(e,t)=>{if(e)if(e.includes("client_email")){const t=JSON.parse(e);e=await auth$2.getServiceAccountAccessToken(t.client_email,t.private_key)}else{const[t,o,a]=e.split(separator);e=await auth$2.getGoogleCredentialsAccessToken(t,o,a)}else e=await GoogleAuth.getGooglePrintAccessToken();t.anthropic_version="vertex-2023-10-16";const o=t.model;delete t.model;const a=`https://${i}-aiplatform.googleapis.com/v1/projects/${c}/locations/${i}/publishers/anthropic/models/${o}:streamRawPredict`;return await fetch(a,{method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${e}`},body:JSON.stringify(t)})}))}async function _anthropic(e,t){const o=Object.fromEntries(e.headers),a=await readBody(e),s=e.context.meta||a.meta,r=(null==s?void 0:s.apiKey)?s.apiKey:o.authorization?extractBearerToken(o.authorization):"";a.model=a.model&&"default"!==a.model?a.model:null==s?void 0:s.apiModel;let i="";"system"===a.messages[0].role&&(i=a.messages.shift().content);try{let e={model:a.model,temperature:a.temperature||1,max_tokens:a.max_tokens||4096,stream:a.stream||!1,system:i,messages:a.messages.map((e=>isArray(e.content)?{role:e.role,content:e.content.map((e=>"text"==e.type?e:"image_url"==e.type?{type:"image",source:{type:"base64",media_type:getMediaType(e.image_url.url)||"image/jpeg",data:e.image_url.url.split(",")[1]||""}}:void 0))}:e))};const o=await t(r,e);if(!o.ok)return errorResponse(o);if(e.stream){const e=o.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),{readable:t,writable:a}=new TransformStream;return streamJsonResponseBodies$l(e,a),new Response(t,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const s=await o.json();return new Response(JSON.stringify(toOpenAIResponse(s.id,s.content[0].text,s.model)),{status:o.status,headers:{"Content-Type":"application/json"}})}catch(e){return console.error(e),new Response(JSON.stringify(e),{status:404,headers:{"Content-Type":"application/json"}})}}async function streamJsonResponseBodies$l(e,t){const o=t.getWriter();let a={id:"",model:"",msgCallback:e=>{o.write(encoder$n.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,a.model,!0))}\n\n`))},endCallback:()=>{o.write(encoder$n.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:s}=await e.read();if(s){o.close();break}if(!t)continue;onParse$j(t,a)}catch(e){throw o.close(),e}}function onParse$j(e,t){try{if("message_start"===e.event){const o=JSON.parse(e.data);return t.id=o.message.id,void(t.model=o.message.model)}if("ping"===e.event)return;if("content_block_start"===e.event)return;if("content_block_stop"===e.event)return void t.endCallback();if("content_block_delta"===e.event){const o=JSON.parse(e.data);t.msgCallback(o.delta.text)}}catch(e){throw e}}async function coze_com(e){const t=await readBody(e),o=e.context.meta||t.meta;t.model=t.model&&"default"!==t.model?t.model:null==o?void 0:o.apiModel;const a=JSON.parse(o.apiKey);let s="";"system"===t.messages[0].role&&(s=t.messages.shift().content+"\r\n");let r={preset_bot:"coze_home",conversation_id:"7331923316200112146",local_message_id:randHex(21),content_type:"text",query:`${s}${t.messages.pop().content}`,extra:{},scene:3,draft_mode:!1,stream:!0,chat_history:[],mention_list:[],device_id:generateFixedIntegerFromDate(9)};return await _coze(e,a.msToken,r)}async function _coze(e,t,o){var a,s,r;const i=await readBody(e),c=e.context.meta||i.meta;i.model=i.model&&"default"!==i.model?i.model:null==c?void 0:c.apiModel;const l=getRandomUuidv4();o=(null==(a=null==c?void 0:c.data)?void 0:a.playground)?null==(s=null==c?void 0:c.data)?void 0:s.playground:o;let d=null==(r=null==c?void 0:c.data)?void 0:r.cozeUrl;d||(process.stdout.write(`cozecom#####${l}#####${t}#####${JSON.stringify(o)}`),d=await new Promise((e=>{let t=setTimeout((()=>{console.error("Timeout: waiting for input"),e(null)}),5e3);const listener=o=>{clearTimeout(t);let a=o.toString();a.startsWith(`cozecom#####${l}#####`)&&(e(a.replace(`cozecom#####${l}#####`,"")),process.stdin.removeListener("data",listener))};process.stdin.on("data",listener)})));try{let e=`https://www.coze.com${d}`;const t=await fetch(e,{method:"POST",headers:{Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"zh-CN","Content-Type":"application/json",Cookie:"i18next=en; passport_csrf_token=f5179141c1974818e626f8f4cd7667f3; passport_csrf_token_default=f5179141c1974818e626f8f4cd7667f3; store-idc=maliva; store-country-code=us; store-country-code-src=uid; odin_tt=f250ba249e3e62f12828b4423305f4315d28c6384e25f27b18e03abd3f4fb3adf71d2c8933f8991cf5207eabf50816f29a748a040504109ab79f3adefc98e579; passport_auth_status=373fd7125b7fedd59554c0f74af2eef1%2C37c2226ca97696536053eba2f987c286; passport_auth_status_ss=373fd7125b7fedd59554c0f74af2eef1%2C37c2226ca97696536053eba2f987c286; sid_guard=26725e058894b05c76833ce275b577a9%7C1717046248%7C5184000%7CMon%2C+29-Jul-2024+05%3A17%3A28+GMT; uid_tt=82872796e139416ef645afbdf1a894c691e7e6938d08d0bb9a529b2cf3200a45; uid_tt_ss=82872796e139416ef645afbdf1a894c691e7e6938d08d0bb9a529b2cf3200a45; sid_tt=26725e058894b05c76833ce275b577a9; sessionid=26725e058894b05c76833ce275b577a9; sessionid_ss=26725e058894b05c76833ce275b577a9; sid_ucp_v1=1.0.0-KDMxNGViNTBjM2QyMTJkMDY4MWYwMmY0NzdhNGRhNDk5M2EzMzc3OWUKIAiCiNrm9b-O4GUQ6JfgsgYY1J0fIAwws_SArgY4CEASEAMaBm1hbGl2YSIgMjY3MjVlMDU4ODk0YjA1Yzc2ODMzY2UyNzViNTc3YTk; ssid_ucp_v1=1.0.0-KDMxNGViNTBjM2QyMTJkMDY4MWYwMmY0NzdhNGRhNDk5M2EzMzc3OWUKIAiCiNrm9b-O4GUQ6JfgsgYY1J0fIAwws_SArgY4CEASEAMaBm1hbGl2YSIgMjY3MjVlMDU4ODk0YjA1Yzc2ODMzY2UyNzViNTc3YTk; msToken=l1rZrtK7I-rrCvQNH5k-z6i935WDz7DRDxYHwizNU6uwPDmX0Dek0SLnPoCEpASUOEmk2K7w2lrBepnUvS4TqDWO2rPO4V6TE-iR5RV-nyCJH3UH4y3tHa6uPO_aZrFB; msToken=l1rZrtK7I-rrCvQNH5k-z6i935WDz7DRDxYHwizNU6uwPDmX0Dek0SLnPoCEpASUOEmk2K7w2lrBepnUvS4TqDWO2rPO4V6TE-iR5RV-nyCJH3UH4y3tHa6uPO_aZrFB; ttwid=1%7Cpzi23E8G88pA4Syzpvpe3MECptlFpQCGH5GavjMDgKo%7C1719135609%7C0a78e8782127db212f5ad28765891f30db6b5eea905a23fc2dee68fd9658cf99; s_v_web_id=verify_lxrcyeix_O8HV7nRd_mc2P_4ok7_9SDD_8784NSsd3sOP",Origin:"https://www.coze.com",Referer:"https://www.coze.com/home","sec-ch-ua":'"Not-A.Brand";v="99", "Chromium";v="124"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-origin","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.6367.243 Electron/30.1.2 Safari/537.36","x-requested-with":"XMLHttpRequest"},body:JSON.stringify(o)});if(!t.ok)return errorResponse(t);if(t.headers.get("content-type").includes("application/json")){const e=await t.json();return new Response(JSON.stringify(e),{status:400,statusText:t.statusText,headers:{"Content-Type":"application/json"}})}const a=t.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(i.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$k(a,t),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let s={content:"",id:getRandomUuidv4(),endCallback:()=>{},msgCallback:e=>{s.content+=e}};for(;;){const{value:e,done:t}=await a.read();if(t)break;e&&onParse$i(e,s)}const r=toOpenAIResponse(s.id,s.content,"",!1);return new Response(JSON.stringify(r),{status:t.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$m=new TextEncoder;async function streamJsonResponseBodies$k(e,t){const o=t.getWriter();let a={id:getRandomUuidv4(),msgCallback:e=>{o.write(encoder$m.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,"",!0))}\n\n`))},endCallback:()=>{o.write(encoder$m.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:s}=await e.read();if(s){o.close();break}if(!t)continue;onParse$i(t,a)}catch(e){throw o.close(),e}}function onParse$i(e,t){try{if("done"===e.event||!e.data)return void t.endCallback();const o=JSON.parse(e.data);if("error"===e.event)return t.msgCallback(o.msg),void t.endCallback();if("answer"!=o.message.type)return;t.msgCallback(o.message.content)}catch(t){throw console.log(e),t}}async function coze_cn(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=getQuery(e);let i=r.token_url.toString()||"",c="",l="",d=null,p=o.model,u=o.conversationId||r.conversation_id.toString()||"";a&&(p=a.apiAgentId?a.apiAgentId:p,u=a.apiConversationId?a.apiConversationId:u);const m=JSON.parse(s);if(d={bot_id:p,conversation_id:u,local_message_id:randHex(21),content_type:"text",query:o.messages.pop().content,extra:{},scene:4,draft_mode:!0,stream:!0,chat_history:[],mention_list:[],device_id:"707811472",space_id:m.space_id},console.log("playground",d),!d.bot_id||!d.conversation_id)return new Response("apiAgentId或者apiConversationId没有配置",{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}});if(""!=i){console.log("token_url",i);const e=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(d)});if(!e.ok)return errorResponse(e);const t=await e.json();c=t.url,l=t.cookies,console.log("cozeUrl",t)}else{const e=getRandomUuidv4();process.stdout.write(`cozecn#####${e}#####${JSON.stringify({body:JSON.stringify(d)})}`),[c,l]=await new Promise((t=>{let o=setTimeout((()=>{console.error("Timeout: waiting for input"),t(null)}),2e3);const listener=a=>{clearTimeout(o);let s=a.toString();s.startsWith(`cozecn#####${e}#####`)&&(t(s.replace(`cozecn#####${e}#####`,"").split("#####")),process.stdin.removeListener("data",listener))};process.stdin.on("data",listener)}))}try{const e=await fetch(c,{method:"POST",headers:{accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache",priority:"u=1, i","rpc-persist-mock-space-id":`${d.space_id}`,"rpc-persist-mock-traffic-caller-id":`${d.bot_id}`,"rpc-persist-mock-traffic-enable":"1","rpc-persist-mock-traffic-scene":"10000","sec-ch-ua":'"Microsoft Edge";v="131", "Chromium";v="131", "Not_A Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.6367.207 Electron/30.0.6 Safari/537.36",Referer:`https://www.coze.cn/space/${d.space_id}/bot/${d.bot_id}`,cookie:l},body:JSON.stringify(d)});if(!e.ok)return errorResponse(e);if(e.headers.get("content-type").includes("application/json")){const t=await e.json();return new Response(JSON.stringify(t),{status:400,statusText:e.statusText,headers:{"Content-Type":"application/json"}})}const t=e.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:o}=new TransformStream;return streamJsonResponseBodies$j(t,o),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let a={content:"",id:getRandomUuidv4(),endCallback:()=>{},msgCallback:e=>{a.content+=e}};for(;;){const{value:e,done:o}=await t.read();if(o)break;e&&onParse$h(e,a)}const s=toOpenAIResponse(a.id,a.content,"",!1);return new Response(JSON.stringify(s),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$l=new TextEncoder;async function streamJsonResponseBodies$j(e,t){const o=t.getWriter();let a={id:getRandomUuidv4(),msgCallback:e=>{o.write(encoder$l.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,"",!0))}\n\n`))},endCallback:()=>{o.write(encoder$l.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:s}=await e.read();if(s){o.close();break}if(!t)continue;onParse$h(t,a)}catch(e){throw o.close(),e}}function onParse$h(e,t){try{if("done"===e.event||!e.data)return void t.endCallback();const o=JSON.parse(e.data);if("answer"!=o.message.type)return;t.msgCallback(o.message.content)}catch(e){throw e}}const FakeHeaders$2={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Microsoft Edge";v="125", "Chromium";v="125", "Not.A/Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin",Referer:"https://sdk.vercel.ai/","Referrer-Policy":"strict-origin-when-cross-origin"};function toBinary(e){let t=new Uint16Array(e.length);for(let o=0;o{let o=setTimeout((()=>{console.error("Timeout: waiting for input"),e(null)}),5e3);const listener=a=>{let s=a.toString();s.startsWith(`vercelai#####${t}#####`)&&(e(s.replace(`vercelai#####${t}#####`,"")),process.stdin.removeListener("data",listener)),clearTimeout(o)};process.stdin.on("data",listener)}));if(null===o)throw new Error("Timeout: waiting for input");e=JSON.parse(o.toString())}const r=await getAntiBotToken(e.Cookie),i=await fetch("https://sdk.vercel.ai/api/generate",{method:"POST",headers:{...e,"Content-Type":"application/json","Custom-Encoding":r},body:JSON.stringify({chatId:0,chatIds:[0],frequencyPenalty:0,maxTokens:o.max_tokens||4096,messages:o.messages,model:o.model,playgroundId:s,presencePenalty:0,stopSequences:[],temperature:o.temperature||.7,topP:o.topP||1})});if(!i.ok)return errorResponse(i);const c=null==(t=i.body)?void 0:t.pipeThrough(new TextDecoderStream).getReader();if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$i(c,t,o.model),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let l={id:getRandomUuidv4(),content:""};for(;;)try{const{value:e,done:t}=await c.read();if(t)break;if(!e)continue;l.content+=e}catch(e){throw e}const d=toOpenAIResponse(l.id,l.content,o.model,!1);return new Response(JSON.stringify(d),{status:i.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$k=new TextEncoder;async function streamJsonResponseBodies$i(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),msgCallback:e=>{a.write(encoder$k.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$k.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){s.endCallback(),a.close();break}if(!t)continue;s.msgCallback(t)}catch(e){throw a.close(),e}}async function cohere(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r={message:o.messages.pop().content,model:o.model,stream:o.stream,chat_history:o.messages.map((e=>{let t="";return"assistant"===e.role&&(t="CHATBOT"),"user"===e.role&&(t="USER"),"system"===e.role&&(t="SYSTEM"),{role:t,message:e.content}})),temperature:o.temperature||.3};try{const e=await fetch("https://api.cohere.com/v1/chat",{method:"POST",headers:{Authorization:`Bearer ${s}`,"content-type":"application/json",Connection:"Keep-alive",Accept:"*/*"},body:JSON.stringify(r)});if(!e.ok)return errorResponse(e);if(o.stream){if(e.headers.get("content-type").includes("application/json")){const t=await e.json();return new Response(JSON.stringify(t),{status:400,statusText:e.statusText,headers:{"Content-Type":"application/json"}})}const t=e.body.pipeThrough(new TextDecoderStream).getReader(),{readable:a,writable:s}=new TransformStream;return streamJsonResponseBodies$h(t,s,o.model),new Response(a,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const t=await e.json(),a=toOpenAIResponse(t.generation_id,t.text,o.model,!1);return new Response(JSON.stringify(a),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$j=new TextEncoder;async function streamJsonResponseBodies$h(e,t,o){const a=t.getWriter();let s={id:"",msg:"",msgCallback:e=>{a.write(encoder$j.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$j.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){a.close();break}if(!t)continue;onParse$g(t,s)}catch(e){throw a.close(),e}}function onParse$g(e,t){try{if(t.msg+=e.trim(),"}"!==t.msg.charAt(t.msg.length-1))return;const o=JSON.parse(t.msg);if(t.msg="","stream-start"===o.event_type)return void(t.id=o.generation_id);if("stream-end"===o.event_type)return void t.endCallback();if("text-generation"!==o.event_type)return;o.text&&t.msgCallback(o.text)}catch(e){throw e}}const auth$1=new GoogleAuth;async function gemini(e){return await _gemini(e,(async(e,t,o,a)=>{const s=a.systemInstruction.parts[0].text;delete a.systemInstruction;const r=a.contents[a.contents.length-1].parts;for(let e=0;e{let t="";"assistant"===e.role&&(t="model"),"user"===e.role&&(t="user");const o=[];return isArray(e.content)?e.content.forEach((e=>{"text"==e.type&&o.push({text:e.text}),"image_url"==e.type&&o.push({inlineData:{mimeType:getMediaType(e.image_url.url)||"image/jpeg",data:e.image_url.url.split(",")[1]||""}})})):o.push({text:e.content}),{role:t,parts:o}})),systemInstruction:{parts:[{text:l}]},generationConfig:{temperature:r.temperature||1}};try{const e=await t(r.model,r.stream,c,d);if(!e.ok)return errorResponse(e);if(r.stream){const t=e.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),{readable:o,writable:a}=new TransformStream;return streamJsonResponseBodies$g(t,a,r.model),new Response(o,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const s=await e.json(),i=toOpenAIResponse(getRandomUuidv4(),null==(a=null==(o=s.candidates[0])?void 0:o.content.parts[0])?void 0:a.text,r.model,!1);return new Response(JSON.stringify(i),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function gemini_vertex(e){var t,o,a,s;const r=getQuery(e);let i=r.location||(null==(o=null==(t=e.context.meta)?void 0:t.query)?void 0:o.location),c=r.project||(null==(s=null==(a=e.context.meta)?void 0:a.query)?void 0:s.project);return await _gemini(e,(async(e,t,o,a)=>{if(o)if(o.includes("client_email")){const e=JSON.parse(o);o=await auth$1.getServiceAccountAccessToken(e.client_email,e.private_key)}else{const[e,t,a]=o.split(separator);o=await auth$1.getGoogleCredentialsAccessToken(e,t,a)}else o=await GoogleAuth.getGooglePrintAccessToken();const s=`https://${i}-aiplatform.googleapis.com/v1/projects/${c}/locations/${i}/publishers/google/models/${e}:${t?"streamGenerateContent?alt=sse":"generateContent"}`;return await fetch(s,{method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${o}`},body:JSON.stringify(a)})}))}const encoder$i=new TextEncoder;async function streamJsonResponseBodies$g(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),msgCallback:e=>{a.write(encoder$i.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$i.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){s.endCallback(),a.close();break}if(!t)continue;onParse$f(t,s)}catch(e){throw a.close(),e}}function onParse$f(e,t){var o,a;try{const s=JSON.parse(e.data);t.msgCallback(null==(a=null==(o=s.candidates[0])?void 0:o.content.parts[0])?void 0:a.text)}catch(e){throw e}}const FAKE_HEADERS$9={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache",priority:"u=1, i","r-timezone":"Asia/Shanghai","sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Microsoft Edge";v="126"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","x-msh-platform":"web","x-traffic-id":"co152og3r0723dm8icg0","Referrer-Policy":"strict-origin-when-cross-origin"},kimi_request_data={refresh_token:"",access_token:"",cookie:""};async function kimi(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";try{const e=JSON.parse(s);kimi_request_data.refresh_token=e.refresh_token,kimi_request_data.access_token=e.access_token,kimi_request_data.cookie=e.cookie;let t=o.conversationId||"";a&&(t=a.apiConversationId?a.apiConversationId:t);let r="",i=!1;if(""!==t)r=o.messages.pop().content;else{const e=await fetch("https://kimi.moonshot.cn/api/chat",{headers:{...FAKE_HEADERS$9,"content-type":"application/json",Referer:"https://kimi.moonshot.cn/",Authorization:`${kimi_request_data.access_token}`,cookie:kimi_request_data.cookie},body:JSON.stringify({name:"未命名会话",is_example:!1,born_from:"",kimiplus_id:"kimi"}),method:"POST"});if(!e.ok)return errorResponse(e);let a=await e.json();t=a.id,r=MergeMessages(o.messages),i=!0}const c=await fetch(`https://kimi.moonshot.cn/api/chat/${t}/completion/stream`,{method:"POST",headers:{...FAKE_HEADERS$9,Authorization:`${kimi_request_data.access_token}`,"content-type":"application/json",Referer:`https://kimi.moonshot.cn/chat/${t}`,cookie:kimi_request_data.cookie},body:JSON.stringify({messages:[{role:"user",content:r}],refs:[],use_search:!0,kimiplus_id:"kimi"})});if(!c.ok)return errorResponse(c);const l=c.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),removeConversationId=async()=>{0!=i&&removeConversation(t)};if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$f(l,t,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let d={content:"",id:"",msgCallback:e=>{d.content+=e},endCallback:()=>{}};for(;;){const{value:e,done:t}=await l.read();if(t){removeConversationId();break}e&&onParse$e(e,d)}return new Response(JSON.stringify(toOpenAIResponse(d.id,d.content,"",!1)),{status:c.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$e(e,t){try{const o=JSON.parse(e.data);if("resp"==o.event)return void(t.id=o.id);if("all_done"==o.event)return void t.endCallback();if("cmpl"!=o.event)return;t.msgCallback(o.text)}catch(e){throw e}}const encoder$h=new TextEncoder;async function streamJsonResponseBodies$f(e,t,o){const a=t.getWriter();let s={id:"",msgCallback:e=>{a.write(encoder$h.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,"",!0))}\n\n`))},endCallback:()=>{a.write(encoder$h.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){o&&o(),a.close();break}if(!t)continue;onParse$e(t,s)}catch(e){throw a.close(),e}}async function removeConversation(e){(await fetch(`https://kimi.moonshot.cn/api/chat/${e}`,{headers:{...FAKE_HEADERS$9,"content-type":"application/json",Authorization:`${kimi_request_data.access_token}`,Referer:"https://kimi.moonshot.cn/kimiplus-square",cookie:kimi_request_data.cookie},method:"DELETE"})).ok||console.error("移除会话失败")}const auth=new GoogleAuth;async function openai_vertex(e){var t,o,a,s;const r=getQuery(e);let i=r.location||(null==(o=null==(t=e.context.meta)?void 0:t.query)?void 0:o.location),c=r.project||(null==(s=null==(a=e.context.meta)?void 0:a.query)?void 0:s.project);const l=Object.fromEntries(e.headers),d=await readBody(e),p=e.context.meta||d.meta;let u=(null==p?void 0:p.apiKey)?p.apiKey:l.authorization?extractBearerToken(l.authorization):"";if(d.model=d.model&&"default"!==d.model?d.model:null==p?void 0:p.apiModel,u)if(u.includes("client_email")){const e=JSON.parse(u);u=await auth.getServiceAccountAccessToken(e.client_email,e.private_key)}else{const[e,t,o]=u.split(separator);u=await auth.getGoogleCredentialsAccessToken(e,t,o)}else u=await GoogleAuth.getGooglePrintAccessToken();const m=`https://${i}-aiplatform.googleapis.com/v1beta1/projects/${c}/locations/${i}/endpoints/openapi/chat/completions`;return await requestOpenAI(m,u,d)}async function mistralai_vertex(e){var t,o,a,s;const r=getQuery(e);let i=r.location||(null==(o=null==(t=e.context.meta)?void 0:t.query)?void 0:o.location),c=r.project||(null==(s=null==(a=e.context.meta)?void 0:a.query)?void 0:s.project);const l=Object.fromEntries(e.headers),d=await readBody(e),p=e.context.meta||d.meta;let u=(null==p?void 0:p.apiKey)?p.apiKey:l.authorization?extractBearerToken(l.authorization):"";if(d.model=d.model&&"default"!==d.model?d.model:null==p?void 0:p.apiModel,u)if(u.includes("client_email")){const e=JSON.parse(u);u=await auth.getServiceAccountAccessToken(e.client_email,e.private_key)}else{const[e,t,o]=u.split(separator);u=await auth.getGoogleCredentialsAccessToken(e,t,o)}else u=await GoogleAuth.getGooglePrintAccessToken();const[m,h]=d.model.split("@");d.model=m;const g=`https://${i}-aiplatform.googleapis.com/v1/projects/${c}/locations/${i}/publishers/mistralai/models/${m}@${h}:streamRawPredict`;return await requestOpenAI(g,u,d)}const gptToken={accessToken:"",oaiDid:"",cfClearance:"",device_id:""},userAgent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",fakeHeaders={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json","oai-echo-logs":"0,25371,1,25374,0,30443,1,30448,0,30611,1,35675,0,36619,1,36622,0,36748","oai-language":"zh-CN",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Microsoft Edge";v="126"',"sec-ch-ua-arch":'"x86"',"sec-ch-ua-bitness":'"64"',"sec-ch-ua-full-version":'"126.0.2592.81"',"sec-ch-ua-full-version-list":'"Not/A)Brand";v="8.0.0.0", "Chromium";v="126.0.6478.127", "Microsoft Edge";v="126.0.2592.81"',"sec-ch-ua-mobile":"?0","sec-ch-ua-model":'""',"sec-ch-ua-platform":'"Windows"',"sec-ch-ua-platform-version":'"15.0.0"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","Referrer-Policy":"strict-origin-when-cross-origin"};function getCookie(){return`oai-did=${gptToken.oaiDid};cf_clearance=${gptToken.cfClearance};`}async function chatgpt(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=o.conversationId||"";a&&(r=a.apiConversationId?a.apiConversationId:r);const i=JSON.parse(s);gptToken.access_token=i.access_token,gptToken.oaiDid=i["oai-did"],gptToken.cfClearance=i.cf_clearance,gptToken.device_id=await getDeviceId();try{const e=o.messages;let t=getRandomUuidv4();e.length>=2&&"assistant"===e[e.length-2].role&&(t=e[e.length-2].id);let a="variant",s="",i=!1;r?s=e.pop().content:(a="next",i=!0,s=MergeMessages(e));const c={action:a,parent_message_id:t,websocket_request_id:getRandomUuidv4(),messages:[{id:getRandomUuidv4(),author:{role:"user"},content:{content_type:"text",parts:[s]},metadata:{}}],model:o.model,timezone_offset_min:-480,history_and_training_disabled:i,conversation_mode:{kind:"primary_assistant"},force_paragen:!1,force_paragen_model_slug:"",force_nulligen:!1,force_rate_limit:!1,reset_rate_limits:!1,force_use_sse:!0,conversation_origin:null,variant_purpose:"none"};r&&(c.conversation_id=r);const removeConversationId=async e=>{};let l=null;for(let e=0;e<3;e++)try{const e=await getRequirementsWithRetry(),t={...fakeHeaders,accept:"text/event-stream",authorization:"Bearer "+gptToken.access_token,Referer:r?`https://chatgpt.com/c/${r}`:"https://chatgpt.com","oai-device-id":gptToken.device_id,cookie:getCookie(),"openai-sentinel-chat-requirements-token":e.token};if(e.proofofwork&&e.proofofwork.required&&(t["openai-sentinel-proof-token"]=generateP(e.proofofwork.seed,e.proofofwork.difficulty,userAgent)),await new Promise((e=>setTimeout(e,1e3))),l=await fetch("https://chatgpt.com/backend-api/conversation",{method:"POST",headers:t,body:JSON.stringify(c)}),l.ok)break;await new Promise((e=>setTimeout(e,1e3)))}catch(e){throw e}if(!l.ok)return errorResponse(l);const d=l.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponse(d,t,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let p={id:"",conversation_id:"",lastText:"",model:"",msgCallback:e=>{},endCallback:()=>{}};for(;;){const{value:e,done:t}=await d.read();if(t){removeConversationId(p.conversation_id);break}e&&onParse$d(e,p)}return new Response(JSON.stringify(toOpenAIResponse(p.id,p.lastText,p.model,!1)),{status:l.status,headers:{"Content-Type":"application/json"}})}catch(e){return console.error(e),new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$g=new TextEncoder;async function streamJsonResponse(e,t,o){const a=t.getWriter();let s={id:"",conversation_id:"",lastText:"",model:"",msgCallback:e=>{a.write(encoder$g.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0))}\n\n`))},endCallback:()=>{a.write(encoder$g.encode("data: [DONE]\n\n"))}};for(;;)try{const{done:t,value:r}=await e.read();if(t){a.close(),o&&o(s.conversation_id);break}if(!r)continue;onParse$d(r,s)}catch(e){throw a.close(),e}}function onParse$d(e,t){try{if("[DONE]"===e.data)return void t.endCallback();const o=JSON.parse(e.data);if(!o.message||!o.message.content.parts||"assistant"!==o.message.author.role)return;t.id||(t.id=o.message.id),t.conversation_id||(t.conversation_id=o.conversation_id),!t.model&&o.message.metadata&&(t.model=o.message.metadata.model_slug);for(const e of o.message.content.parts){const o=t.lastText;t.lastText=e,t.msgCallback(t.lastText.substring(o.length))}}catch(e){throw e}}async function getRequirementsWithRetry(e=3){let t;for(let o=0;osetTimeout(e,500)))}throw t}function generateP(e="",t="",o=null,a=[]){let s;if(a.length>0)s=a[a.length-1];else{let e=[3008,4010,6e3][Math.floor(3*Math.random())]*[1,2,4][Math.floor(3*Math.random())];e=2073600;s={screen:e,parseTime:(new Date).toUTCString(),userAgent:o,counter:0,url:"https://tcr9i.chat.openai.com/v2/35536E1E-65B4-4D96-9D97-6ADB7EFF8147/api.js",dpl:"dpl=1440a687921de39ff5ee56b92807faaadce73f13",language:"en",languageRegion:"en-US",pluginArray:"plugins−[object PluginArray]",reactListening:["_reactListeningcfilawjnerp","_reactListening9ne2dfo1i47","_reactListening410nzwhan2a"][Math.floor(3*Math.random())],eventType:["alert","ontransitionend","onprogress"][Math.floor(3*Math.random())]}}const r=t.length;for(let o=0;o<1e5;o++){s.counter=o;const a=JSON.stringify(s),i=Buffer.from(a).toString("base64");if(crypto.createHash("sha3-512").update(e+i).digest("hex").slice(0,r)<=t)return"gAAAAAB"+i}return"gAAAAABwQ8Lk5FbGpA2NcR9dShT6gYjU7VxZ4D"+Buffer.from(`"${e}"`).toString("base64")}const encoder$f=new TextEncoder,FAKE_HEADERS$8={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Microsoft Edge";v="126"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-site",Referer:"https://lyihub.com/","Referrer-Policy":"strict-origin-when-cross-origin"};async function lyihub(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=o.conversationId||"";a&&(r=a.apiConversationId?a.apiConversationId:r);let i=!1;if(!r){const e=await fetch("https://api.lyihub.com/arena/battle",{headers:{...FAKE_HEADERS$8,Authorization:`bearer ${s}`},method:"POST"});if(!e.ok)return errorResponse(e);r=(await e.json()).id,i=!0}const c=MergeMessages(i?o.messages:["system"===o.messages[0].role?o.messages.shift():null,o.messages.pop()]);try{const e=await fetch("https://api.lyihub.com/arena/chat",{method:"POST",headers:{...FAKE_HEADERS$8,Authorization:`bearer ${s}`,"content-type":"application/json",accept:"text/event-stream"},body:JSON.stringify({sessionId:r,modelId:o.model,question:c})});if(!e.ok)return errorResponse(e);const t=e.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:o}=new TransformStream;return streamJsonResponseBodies$e(t,o),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let a={content:"",id:"",msgCallback:e=>{a.content+=e},endCallback:()=>{}};for(;;){const{value:e,done:o}=await t.read();if(o)break;e&&onParse$c(e,a)}return new Response(JSON.stringify(toOpenAIResponse(a.id,a.content,"",!1)),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$c(e,t){try{const o=JSON.parse(e.data);t.id||(t.id=o.session_id),t.msgCallback(o.data.content)}catch(e){throw e}}async function streamJsonResponseBodies$e(e,t){const o=t.getWriter();let a={id:"",msgCallback:e=>{o.write(encoder$f.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,"",!0))}\n\n`))},endCallback:()=>{o.write(encoder$f.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:s}=await e.read();if(s){a.endCallback(),o.close();break}if(!t)continue;onParse$c(t,a)}catch(e){throw o.close(),e}}async function deepinfra(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;return(null==a?void 0:a.apiKey)?a.apiKey:t.authorization&&extractBearerToken(t.authorization),o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel,await requestOpenAI("https://api.deepinfra.com/v1/openai/chat/completions","",o,{accept:"text/event-stream","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Not)A;Brand";v="99", "Microsoft Edge";v="127", "Chromium";v="127"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-site","x-deepinfra-source":"web-page",Referer:"https://deepinfra.com/","Referrer-Policy":"strict-origin-when-cross-origin"})}async function replicate(e){Object.fromEntries(e.headers);const t=await readBody(e),o=e.context.meta||t.meta;t.model=t.model&&"default"!==t.model?t.model:null==o?void 0:o.apiModel;let a="";"system"===t.messages[0].role&&(a=t.messages.shift().content);let s=MergeMessages(t.messages);const r=await fetch(`https://replicate.com/api/models/${t.model}/predictions`,{headers:{accept:"application/json","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not)A;Brand";v="99", "Microsoft Edge";v="127", "Chromium";v="127"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","Referrer-Policy":"same-origin",Referer:`https://replicate.com/${t.model}`},body:JSON.stringify({input:{top_p:.9,prompt:s,max_tokens:1024,min_tokens:0,temperature:.6,system_prompt:a,presence_penalty:0,frequency_penalty:0}}),method:"POST"});if(!r.ok)return errorResponse(r);const i=(await r.json()).urls.stream,c=await fetch(i,{headers:{accept:"text/event-stream","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Not)A;Brand";v="99", "Microsoft Edge";v="127", "Chromium";v="127"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site"},body:null,method:"GET"});if(!c.ok)return errorResponse(c);const l=c.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(t.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$d(l,t),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let d={content:"",id:"",msgCallback:e=>{d.content+=e},endCallback:()=>{}};for(;;){const{value:e,done:t}=await l.read();if(t)break;e&&onParse$b(e,d)}return new Response(JSON.stringify(toOpenAIResponse(d.id,d.content,"",!1)),{status:c.status,headers:{"Content-Type":"application/json"}})}const encoder$e=new TextEncoder;async function streamJsonResponseBodies$d(e,t){const o=t.getWriter();let a={id:"",msgCallback:e=>{o.write(encoder$e.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,"",!0))}\n\n`))},endCallback:()=>{o.write(encoder$e.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:s}=await e.read();if(s){o.close();break}if(!t)continue;onParse$b(t,a)}catch(e){throw o.close(),e}}function onParse$b(e,t){try{if("done"===e.event)return void(null==t||t.endCallback());if("output"!==e.event)return;if(t.id||(t.id=e.id.split(":")[0]),!e.data)return;t.msgCallback(e.data)}catch(e){throw e}}const encoder$d=new TextEncoder;async function vecmul(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=0,i=o.messages.pop().content;a.apiConversationId?r=o.messages.length-2:a.apiConversationId=getRandomUuidv4();try{let e="wss://api.vecmul.com/ws";s&&(e=`${e}?token=Bearer%20${s}`);const t=new WebSocket(e,void 0,{handshakeTimeout:3e3});if(t.on("open",(function(){t.send(JSON.stringify({type:"CHAT",spaceName:"Free Space",message:{isAnonymous:!0,rootMsgId:a.apiConversationId,public:!1,model:o.model,order:r,role:"user",content:i,fileId:null,relatedLinkInfo:null,messageType:"MESSAGE",fileKey:null,language:"zh-CN"}}))})),o.stream){const{readable:e,writable:o}=new TransformStream,a=o.getWriter();let s={id:getRandomUuidv4(),msgCallback:e=>{a.write(encoder$d.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,"",!0))}\n\n`))},endCallback:()=>{a.write(encoder$d.encode("data: [DONE]\n\n")),t.close()}};return t.on("message",(function(e){onParse$a(e,s)})),t.on("error",(function(e){s.msgCallback(e.message)})),t.on("close",(function(){a.close()})),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let c={content:"",id:getRandomUuidv4(),msgCallback:e=>{c.content+=e},endCallback:()=>{t.close()}};return t.on("message",(function(e){onParse$a(e,c)})),t.on("error",(function(e){c.msgCallback(e.message)})),t.on("close",(function(){})),new Response(JSON.stringify(toOpenAIResponse(c.id,c.content,"",!1)),{status:200,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$a(e,t){try{const o=JSON.parse(e);if("ERROR"==o.type)return t.msgCallback(o.data.message),void t.endCallback();if("AI_STREAM_MESSAGE"!=o.type)return;if("stop"==o.data.finishedReason||"end_turn"==o.data.finishedReason||null!=o.data.finishedReason)return void t.endCallback();t.msgCallback(o.data.content)}catch(e){throw e}}new TextEncoder;const FAKE_HEADERS$7={"Content-Type":"application/json",pragma:"no-cache","cache-control":"no-cache","sec-ch-ua":'"Chromium";v="128", "Not;A=Brand";v="24", "Microsoft Edge";v="128"',"x-title":"Magai","http-referer":"https://magai.co","sec-ch-ua-mobile":"?0","user-agent":generateRandomUserAgent(),"x-api-key":"","sec-ch-ua-platform":'"Windows"',accept:"*/*",origin:"https://app.magai.co","sec-fetch-site":"same-site","sec-fetch-mode":"cors","sec-fetch-dest":"empty",referer:"https://app.magai.co/","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",priority:"u=1, i"},magaiToken={cookie:"",appLastChange:"",currentPageItem:"",currentUser:""},UUID_LENGTH=1e18,MODULO=1e18;function generateUUID(){let e=Math.round(Math.random()*UUID_LENGTH);return`${Date.now()}x${pad(e,18)}`}function pad(e,t){let o=String(e);return o+new Array(t+1-o.length).join("0")}function createLUID(e="x",t=!0){let o=1900;return()=>{const a=Date.now();return t?`${a}${e}${o++}`:`${a}`}}function getRandomSeed(){return Math.round(Math.random()*UUID_LENGTH)%MODULO}function formatModelName(e){return e.replace(/[/:-]/g,"_").replace(/_+/g,"_").replace(/\./g,"_")}function findTokenInObject(e){for(const t in e){if("token"===t&&"string"==typeof e[t])return e[t];if("object"==typeof e[t]&&null!==e[t]){const o=findTokenInObject(e[t]);if(o)return o}}return null}function getLastUserContent(e){for(let t=e.length-1;t>=0;t--)if("user"===e[t].role)return e[t].content;return null}async function magai(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;const s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=JSON.parse(s);magaiToken.cookie=r.cookie,magaiToken.currentPageItem=r.CreatedBy,magaiToken.currentUser=r.CreatedBy,magaiToken.appLastChange=r.appLastChange;const i=r.CreatedBy.split("__")[0];try{magaiToken.currentPageItem=a.apiConversationId?`${i}__LOOKUP__${a.apiConversationId}`:magaiToken.currentPageItem;const e=await getNewToken(o.model,getLastUserContent(o.messages));return console.log(e),await requestOpenAI("https://live.proxy.magai.co:4430/opr/api/v1/chat/completions","",o,{...FAKE_HEADERS$7,token:e})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function getNewToken(e,t){const o=generateUUID(),a=magaiToken.currentPageItem.split("__")[0],s=magaiToken.currentUser.split("__")[2],r="037a52ff10ee72bcd845e75d5ec48ac2",i={app_last_change:magaiToken.appLastChange,calls:[{client_state:{element_instances:{bUNib7:{dehydrated:`${a}__LOOKUP__ElementInstance::bUNib7`,parent_element_id:"bUMiq3"},bTezP:{dehydrated:`${a}__LOOKUP__ElementInstance::bTezP`,parent_element_id:"bTezJ"},bTezE:{dehydrated:`${a}__LOOKUP__ElementInstance::bTezE`,parent_element_id:"bTeqc"},bTezJ:{dehydrated:`${a}__LOOKUP__ElementInstance::bTezJ`,parent_element_id:"bUKFL2"},bTezQ:{dehydrated:`${a}__LOOKUP__ElementInstance::bTezQ`,parent_element_id:"bUKFL2"},bUiru0:{dehydrated:`${a}__LOOKUP__ElementInstance::bUiru0`,parent_element_id:"bUjNK"},bUDVj0:{dehydrated:`${a}__LOOKUP__ElementInstance::bUDVj0`,parent_element_id:"bUMiq3"},bUXzm2:{dehydrated:`${a}__LOOKUP__ElementInstance::bUXzm2`,parent_element_id:"bUMhk3"},bUifI1:{dehydrated:`${a}__LOOKUP__ElementInstance::bUifI1`,parent_element_id:"bTeqg"},bUMiq3:{dehydrated:`${a}__LOOKUP__ElementInstance::bUMiq3`,parent_element_id:"bTezE"},bTekm:{dehydrated:`${a}__LOOKUP__ElementInstance::bTekm`,parent_element_id:null}},element_state:{[`${a}__LOOKUP__ElementInstance::bTezP`]:{is_visible:!0,value_that_is_valid:t,value:t},[`${a}__LOOKUP__ElementInstance::bTezE`]:{"custom.images_":null,"custom.file_":null,"custom.file_content_":null,"custom.file_name_":null,"custom.file_type_":null},[`${a}__LOOKUP__ElementInstance::bTezJ`]:{"custom.isrecording_":null,"custom.prompt_":null},[`${a}__LOOKUP__ElementInstance::bUiru0`]:{AAE:t},[`${a}__LOOKUP__ElementInstance::bUDVj0`]:{AAE:t},[`${a}__LOOKUP__ElementInstance::bUifI1`]:{"custom.is_visible_":null,group_data:null},[`${a}__LOOKUP__ElementInstance::bUMiq3`]:{group_data:null}},other_data:{"Current Page Scroll Position":0,"Current Page Width":661},cache:{[`${r}`]:formatModelName(e),CurrentPageItem:magaiToken.currentPageItem,CurrentUser:magaiToken.currentUser},exists:{[`${r}`]:!0,CurrentPageItem:!0,CurrentUser:!0}},run_id:generateUUID(),server_call_id:o,item_id:"bUNih7",element_id:"bUNib7",page_id:"bTekm",uid_generator:{timestamp:Date.now(),seed:getRandomSeed()},random_seed:Math.random(),current_date_time:(new Date).getTime(),current_wf_params:{}}],client_breaking_revision:5,timezone_offset:-480,timezone_string:"Asia/Shanghai",user_id:s,wait_for:[]},c=await fetch("https://app.magai.co/workflow/start",{method:"POST",headers:{...FAKE_HEADERS$7,"x-bubble-fiber-id":generateUUID(),"x-bubble-pl":createLUID()(),accept:"application/json, text/javascript, */*; q=0.01",cookie:magaiToken.cookie},body:JSON.stringify(i)}),l=await c.json();if(l.error_class)throw new Error(l.message);const d=l[o];if(!d||!d.step_results)return null;for(const e in d.step_results){const t=d.step_results[e];if("object"==typeof t.return_value&&null!==t.return_value){const e=findTokenInObject(t.return_value);if(e)return e}}}async function azure(e){var t,o,a;const s=getQuery(e);let r=s["api-version"]||(null==(t=e.context.meta)?void 0:t.query["api-version"]),i=s.resource||(null==(a=null==(o=e.context.meta)?void 0:o.query)?void 0:a.resource);const c=Object.fromEntries(e.headers),l=await readBody(e),d=e.context.meta||l.meta;let p=(null==d?void 0:d.apiKey)?d.apiKey:c.authorization?extractBearerToken(c.authorization):"";l.model=l.model&&"default"!==l.model?l.model:null==d?void 0:d.apiModel;const u=`https://${i}.openai.azure.com/openai/deployments/${l.model}/chat/completions?api-version=${r}`;return console.log(u,p,l),await requestOpenAI(u,p,l,{"api-key":p})}const FakeHeaders$1={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36",Accept:"*/*","Accept-Language":"en-US,en;q=0.5","Accept-Encoding":"gzip, deflate, br",Referer:"https://www.blackbox.ai","Content-Type":"application/json",Origin:"https://www.blackbox.ai",DNT:"1","Sec-GPC":"1","Alt-Used":"www.blackbox.ai",Connection:"keep-alive"};async function blackbox(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=JSON.parse(s),i=randHex(7);o.messages.map((e=>{e.id=randHex(7)}));let c="";"system"===o.messages[0].role&&(c=o.messages.shift().content);try{const e=await fetch("https://www.blackbox.ai/api/chat",{method:"POST",headers:{...FakeHeaders$1,Referer:`https://www.blackbox.ai/chat/${i}`,cookie:r.cookie},body:JSON.stringify({messages:o.messages,id:i,previewToken:null,userId:null,codeModelMode:!0,agentMode:{},trendingAgentMode:{},isMicMode:!1,userSystemPrompt:c,maxTokens:o.max_tokens||1024,playgroundTopP:.9,playgroundTemperature:.5,isChromeExt:!1,githubToken:null,clickedAnswer2:!1,clickedAnswer3:!1,clickedForceWebSearch:!1,visitFromDelta:!1,mobileClient:!1,userSelectedModel:o.model,validated:"69783381-2ce4-4dbd-ac78-35e9063feabc"})});if(!e.ok)return errorResponse(e);if(o.stream){if(e.headers.get("content-type").includes("application/json")){const t=await e.json();return new Response(JSON.stringify(t),{status:400,statusText:e.statusText,headers:{"Content-Type":"application/json"}})}const t=e.body.pipeThrough(new TextDecoderStream).getReader(),{readable:a,writable:s}=new TransformStream;return streamJsonResponseBodies$c(t,s,o.model),new Response(a,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const t=await e.json(),a=toOpenAIResponse(t.generation_id,t.text,o.model,!1);return new Response(JSON.stringify(a),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$c=new TextEncoder;async function streamJsonResponseBodies$c(e,t,o){const a=t.getWriter();let s={id:"",msgCallback:e=>{a.write(encoder$c.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$c.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){s.endCallback(),a.close();break}if(!t)continue;s.msgCallback(t)}catch(e){throw a.close(),e}}async function zed(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const[r,i]=o.model.split(":");let c="";"system"===o.messages[0].role&&(c=o.messages.shift().content),console.log(s),console.log(JSON.stringify({provider:r,model:i,provider_request:{model:i,max_tokens:(null==o?void 0:o.max_tokens)||8192,messages:o.messages.map((e=>({role:e.role,content:[{type:"text",text:e.content}]}))),system:c,temperature:(null==o?void 0:o.temperature)||1}}));try{const e=await fetch("https://llm.zed.dev/completion",{method:"POST",headers:{"content-type":"application/json; charset=UTF-8",authorization:`Bearer ${s}`,"user-agent":"Zed/0.165.0 (windows; x86_64)",accept:"*/*"},body:JSON.stringify({provider:r,model:i,provider_request:{model:i,max_tokens:(null==o?void 0:o.max_tokens)||8192,messages:o.messages.map((e=>({role:e.role,content:[{type:"text",text:e.content}]}))),system:c,temperature:(null==o?void 0:o.temperature)||1}})});if(!e.ok)return errorResponse(e);const t=e.body.pipeThrough(new TextDecoderStream).getReader();if(o.stream){const{readable:e,writable:o}=new TransformStream;return streamJsonResponseBodies$b(t,o),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}if(e.ok){const t=await e.json();return new Response(JSON.stringify(t),{status:e.status,statusText:e.statusText,headers:{"Content-Type":"application/json"}})}return errorResponse(e)}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$b=new TextEncoder;async function streamJsonResponseBodies$b(e,t,o){const a=t.getWriter();let s={id:"",model:"",msgCallback:e=>{a.write(encoder$b.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0))}\n\n`))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){a.write(encoder$b.encode("data: [DONE]\n\n")),o&&o(),a.close();break}if(!t)continue;try{const e=t.split("\n");for(let t=0;t=t)throw new Error(`Failed to solve recaptcha after ${t} attempts`);console.log(`Retrying in ${o}ms...`),await new Promise((e=>setTimeout(e,o)))}}async function genspark$2(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=getQuery(e);let i=o.conversationId||r.id||"";a&&(i=a.apiConversationId?a.apiConversationId:i),i=void 0;try{const e=JSON.parse(s);genspark_request_data$1.cookie=e.cookie;let t=e.token;const a=o.messages[o.messages.length-1].content;if(o.messages=[{role:"user",content:MergeMessagesNoMarkup(o.messages)}],!t){const e=r.tokenUrl||"https://zhepama-playwright-proxy.hf.space/genspark";t=await solveRecaptcha$1(e.toString())}const c={type:"COPILOT_MOA_CHAT",current_query_string:i?`id=${i}&type=COPILOT_MOA_CHAT`:"type=COPILOT_MOA_CHAT",messages:o.messages,user_s_input:a,action_params:{},g_recaptcha_token:t,extra_data:{models:[o.model],request_web_knowledge:!1,run_with_another_model:!1,writingContent:null,speed_mode:!1}},l="396b0fc5e3d54edd8122e601d6b277a6",d=randHex(16);let p="https://www.genspark.ai/api/copilot/ask";r.proxyurl&&(p=r.proxyurl.toString()+"?stream=true&url="+p);const u=await fetch(p,{method:"POST",headers:{...FAKE_HEADERS$6,"content-type":"application/json",Origin:"https://www.genspark.ai",Referer:"https://www.genspark.ai/agents?type=moa_chat","request-id":`|${l}.${d}`,traceparent:`00-${l}-${d}-01`,cookie:genspark_request_data$1.cookie},body:JSON.stringify(c)});if(!u.ok)return errorResponse(u);const m=u.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),{readable:h,writable:g}=new TransformStream;return streamJsonResponseBodies$a(m,g),new Response(h,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$8(e,t){try{const o=JSON.parse(e.data);""===t.model&&"session_state"===o.field_name&&"message_field"===o.type&&(t.model=o.field_value.models[0]),""===t.id&&"content"===o.field_name&&"message_field"===o.type&&(t.id=o.message_id),"session_state.answerthink"==o.field_name&&"message_field_delta"==o.type&&t.msgCallback(o.field_value||o.delta,"thinking"),"session_state.answer"==o.field_name&&"message_field_delta"==o.type&&t.msgCallback(o.field_value||o.delta),"message_result"==o.type&&""==o.id&&(console.log(o),t.msgCallback(o.content))}catch(e){throw e}}const encoder$a=new TextEncoder;async function streamJsonResponseBodies$a(e,t,o){const a=t.getWriter();let s={id:"",model:"",msgCallback:(e,t="text")=>{a.write(encoder$a.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0,t))}\n\n`))},endCallback:()=>{a.write(encoder$a.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){s.endCallback(),o&&o(),a.close();break}if(!t)continue;onParse$8(t,s)}catch(e){throw a.close(),e}}const claude_request_data={cookie:"",lastActiveOrg:""},FAKE_HEADERS$5={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",pragma:"no-cache",priority:"u=1, i","Referrer-Policy":"strict-origin-when-cross-origin","cache-control":"no-cache","sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Microsoft Edge";v="126"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","anthropic-client-sha":"unknown","anthropic-client-version":"unknown"};async function claude(e){const t=getQuery(e),o=Object.fromEntries(e.headers),a=await readBody(e),s=e.context.meta||a.meta;a.model=a.model&&"default"!==a.model?a.model:null==s?void 0:s.apiModel;let r=(null==s?void 0:s.apiKey)?s.apiKey:o.authorization?extractBearerToken(o.authorization):"";try{const e=JSON.parse(r);claude_request_data.cookie=e.cookie,claude_request_data.lastActiveOrg=e.lastActiveOrg,console.log("claude_request_data",claude_request_data);let o=a.conversationId||"";s&&(o=s.apiConversationId?s.apiConversationId:o);let i=!1,c="";if(""===o)try{let e="https://claude.ai";t.proxyurl&&(e=t.proxyurl.toString()+"?url="+e),console.log(`${e}/api/organizations/${claude_request_data.lastActiveOrg}/chat_conversations`);const s=await fetch(`${e}/api/organizations/${claude_request_data.lastActiveOrg}/chat_conversations`,{headers:{...FAKE_HEADERS$5,"content-type":"application/json",Referer:"https://claude.ai/chats",cookie:claude_request_data.cookie},body:JSON.stringify({include_conversation_preferences:!0,name:"",uuid:getRandomUuidv4()}),method:"POST"}),r=await s.json();if(console.log("创建会话结果",r),r.error)return new Response(JSON.stringify(r),{status:400,headers:{"Content-Type":"application/json; charset=utf-8"}});o=r.uuid,i=!0,c=MergeMessages(a.messages),await new Promise((e=>setTimeout(e,500)))}catch(e){console.error("创建会话失败",e)}else c=a.messages.pop().content;if(!o)return new Response("获取convid失败",{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}});let l="https://claude.ai";t.proxyurl&&(l=t.proxyurl.toString()+"?stream=true&url="+l);const d=await fetch(`${l}/api/organizations/${claude_request_data.lastActiveOrg}/chat_conversations/${o}/completion?rendering_mode=raw`,{method:"POST",headers:{...FAKE_HEADERS$5,"content-type":"application/json",accept:"text/event-stream, text/event-stream",Referer:`https://claude.ai/chat/${o}`,cookie:claude_request_data.cookie},body:JSON.stringify({prompt:c,timezone:"America/Sitka",rendering_mode:"raw",attachments:[],files:[]})});if(0==d.ok){const e=await d.json();return new Response(JSON.stringify(e),{status:400,headers:{"Content-Type":"application/json; charset=utf-8"}})}const p=d.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),removeConversationId=async()=>{0!=i&&async function(){}()};if(a.stream){const{readable:e,writable:t}=new TransformStream;try{return streamJsonResponseBodies$9(p,t,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}let u={id:"",content:"",model:"",msgCallback:e=>{u.content+=e},endCallback:()=>{}};for(;;){const{value:e,done:t}=await p.read();if(t){removeConversationId();break}e&&onParse$7(e,u)}return new Response(JSON.stringify(toOpenAIResponse(u.id,u.content,u.model,!1)),{status:200,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$7(e,t){try{if("completion"!==e.event)return;const o=JSON.parse(e.data);t.id||(t.id=o.id),t.model||(t.model=o.model),t.buffer||(t.buffer=""),void 0===t.isCapturingArtifact&&(t.isCapturingArtifact=!1),void 0===t.artifactBuffer&&(t.artifactBuffer=null),void 0===t.artifactType&&(t.artifactType=null),void 0===t.hasStartedCodeBlock&&(t.hasStartedCodeBlock=!1),t.buffer+=o.completion;const a=t.buffer.indexOf("=0&&!t.isCapturingArtifact)return a>0&&t.msgCallback(t.buffer.substring(0,a)),t.isCapturingArtifact=!0,t.artifactBuffer=t.buffer.substring(a),t.hasStartedCodeBlock=!1,t.buffer=t.buffer.substring(a),void processStartTag(t);if(t.isCapturingArtifact){t.hasStartedCodeBlock||processStartTag(t);const e=t.buffer.indexOf("");return void(e>=0?processEndTag(t,e):t.hasStartedCodeBlock&&(t.msgCallback(t.buffer),t.buffer=""))}!t.isCapturingArtifact&&o.completion&&(t.msgCallback(o.completion),t.buffer="")}catch(e){throw e}}function processStartTag(e){const t=e.buffer.indexOf(">");if(t>=0){const o=e.buffer.substring(0,t).match(/type="([^"]+)"/);o&&(e.artifactType=o[1]);let a="text";const s=e.buffer.substring(0,t).match(/language="([^"]+)"/);s?a=s[1]:e.artifactType&&(e.artifactType.startsWith("text/")?a=e.artifactType.substring(5):e.artifactType.includes("javascript")?a="javascript":e.artifactType.includes("typescript")?a="typescript":e.artifactType.includes("mermaid")?a="mermaid":(e.artifactType.includes("react")||e.artifactType.includes("vue"))&&(a="javascript")),e.msgCallback(`\`\`\`${a}\n`),e.hasStartedCodeBlock=!0,e.buffer=e.buffer.substring(t+1)}}function processEndTag(e,t){t>0&&e.msgCallback(e.buffer.substring(0,t)),e.msgCallback("\n```"),t+14{a.write(encoder$9.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0))}\n\n`))},endCallback:()=>{a.write(encoder$9.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){o&&o(),s.endCallback(),a.close();break}if(!t)continue;if("error"==t.event){s.msgCallback(t.data),o&&o(),a.close();break}onParse$7(t,s)}catch(e){throw a.close(),e}}const encoder$8=new TextEncoder;async function deepseek(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r="https://api.deepseek.com/chat/completions";const i=getQuery(e);i.url&&(r=i.url.toString());try{const e=await fetch(r,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${s}`},body:JSON.stringify({messages:o.messages,model:o.model,max_tokens:o.max_tokens||4096,temperature:o.temperature||.1,top_p:o.top_p||1,stream:o.stream||!1})});if(!e.ok)return errorResponse(e);const t=e.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:o}=new TransformStream;return streamJsonResponseBodies$8(t,o),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$6(e,t){try{const o=JSON.parse(e.data),a=t.content;t.content=o.choices[0].message.content,t.msgCallback(t.content.slice(a.length))}catch(e){throw e}}async function streamJsonResponseBodies$8(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),model:"",content:"",msgCallback:e=>{a.write(encoder$8.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0))}\n\n`))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){a.write(encoder$8.encode("data: [DONE]\n\n")),o&&o(),a.close();break}if(!t)continue;console.log(t),onParse$6(t,s)}catch(e){throw a.close(),e}}var __defProp$2=Object.defineProperty,__defNormalProp$2=(e,t,o)=>t in e?__defProp$2(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__publicField$2=(e,t,o)=>__defNormalProp$2(e,"symbol"!=typeof t?t+"":t,o);class DeepSeekHash{constructor(){__publicField$2(this,"wasmInstance"),__publicField$2(this,"offset",0),__publicField$2(this,"cachedUint8Memory",null),__publicField$2(this,"cachedTextEncoder",new TextEncoder)}encodeString(e,t,o){if(!o){const o=this.cachedTextEncoder.encode(e),a=t(o.length,1)>>>0;return this.getCachedUint8Memory().subarray(a,a+o.length).set(o),this.offset=o.length,a}const a=e.length;let s=t(a,1)>>>0;const r=this.getCachedUint8Memory();let i=0;for(;i127)break;r[s+i]=t}if(i!==a){i>0&&(e=e.slice(i)),s=o(s,a,i+3*e.length,1)>>>0;i+=this.cachedTextEncoder.encodeInto(e,this.getCachedUint8Memory().subarray(s+i,s+i+3*e.length)).written,s=o(s,i+3*e.length,i,1)>>>0}return this.offset=i,s}getCachedUint8Memory(){return null!==this.cachedUint8Memory&&0!==this.cachedUint8Memory.byteLength||(this.cachedUint8Memory=new Uint8Array(this.wasmInstance.memory.buffer)),this.cachedUint8Memory}calculateHash(e,t,o,a,s){if("DeepSeekHashV1"!==e)throw new Error("Unsupported algorithm: "+e);const r=`${o}_${s}_`;try{const e=this.wasmInstance.__wbindgen_add_to_stack_pointer(-16),o=this.encodeString(t,this.wasmInstance.__wbindgen_export_0,this.wasmInstance.__wbindgen_export_1),s=this.offset,i=this.encodeString(r,this.wasmInstance.__wbindgen_export_0,this.wasmInstance.__wbindgen_export_1),c=this.offset;this.wasmInstance.wasm_solve(e,o,s,i,c,a);const l=new DataView(this.wasmInstance.memory.buffer),d=l.getInt32(e+0,!0),p=l.getFloat64(e+8,!0);if(0===d)return;return p}finally{this.wasmInstance.__wbindgen_add_to_stack_pointer(16)}}async init(e){const{instance:t}=await WebAssembly.instantiate(e,{wbg:{}});return this.wasmInstance=t.exports,this.wasmInstance}}const encoder$7=new TextEncoder,FAKE_HEADERS$4={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Microsoft Edge";v="131", "Chromium";v="131", "Not_A Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","x-app-version":"20241129.1",cookie:"smidV2=202501071758311c8fb048f29cd7f7cc31db1011a681f00096d072af8bd8300; .thumbcache_6b2e5483f9d858d7c661c5e276b6a6ae=fNcJ2RnfL30O9J5gHnkBTP0/MxQ6s2tURNvV3+9Y8Vn4zHZ4ZSBC2leidije5bTrV2JKqJQyyRAjIgJ6G0pbAA%3D%3D; intercom-device-id-guh50jw4=e051c3da-f78b-49ce-9708-b08849c433d6; Hm_lvt_fb5acee01d9182aabb2b61eb816d24ff=1736382697,1736771276,1736781381,1736781753; Hm_lpvt_fb5acee01d9182aabb2b61eb816d24ff=1736781753; HMACCOUNT=3D9A9797304A080B; ds_session_id: 1538d1ad1e31466abe60d85251028d3d; Hm_lvt_1fff341d7a963a4043e858ef0e19a17c=1736382699,1736770543,1736781385,1736781873; Hm_lpvt_1fff341d7a963a4043e858ef0e19a17c=1736781873; HWWAFSESTIME=1736781870960; ds_session_id=c005b2072f60496fbaff10522f5e8138; HWWAFSESID=8a834f1a13a60202cc; intercom-session-guh50jw4=SW1SSVoxaVl4ZEdMdCtDMEFGTlhJSjRPUHRJeWR1WHBaUWMxM3E3VGt1cnY5UmpaY0VveTdlbHU5UVdhT3dEUi0tb0JIVi95amViZWpTQUFXRUdmMHZxZz09--918bff8581dee8d3bfa33c8b274139df40248990",Referer:"https://chat.deepseek.com/","Referrer-Policy":"strict-origin-when-cross-origin"};async function deepseek_com(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r="https://chat.deepseek.com";const i=getQuery(e);i.proxy&&process.env.USE_DEEPSEEK_PROXY&&(r=i.proxy.toString()),i.proxyurl&&process.env.USE_DEEPSEEK_PROXY&&(r=i.proxyurl.toString()+"?url="+r);try{let e=o.conversationId||"";a&&(e=a.apiConversationId?a.apiConversationId:e);let t="",i=!1;if(""!==e)t=o.messages.pop().content;else{const a=await fetch(`${r}/api/v0/chat_session/create`,{headers:{...FAKE_HEADERS$4,"content-type":"application/json",Authorization:`Bearer ${s}`},body:JSON.stringify({character_id:null}),method:"POST"});if(!a.ok)return errorResponse(a);let c=await a.json();if(0!=c.code)throw new Error(c.msg);e=c.data.biz_data.id,t=MergeMessages(o.messages),i=!0}const c=await getChallengeResponse(s,"/api/v0/chat/completion"),l=await answerChallenge(c,"/api/v0/chat/completion");let d=!1;o.model.includes("deepseek-reasoner")&&(d=!0);const p=await fetch(`${r}/api/v0/chat/completion`,{method:"POST",headers:{...FAKE_HEADERS$4,Authorization:`Bearer ${s}`,"content-type":"application/json","X-Ds-Pow-Response":l},body:JSON.stringify({chat_session_id:e,parent_message_id:null,prompt:t,ref_file_ids:[],thinking_enabled:d,search_enabled:!1})});if(!p.ok)return errorResponse(p);const u=p.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),removeConversationId=async()=>{if(0==i)return;(await fetch(`${r}/api/v0/chat_session/delete`,{headers:{...FAKE_HEADERS$4,"content-type":"application/json",Authorization:`Bearer ${s}`},body:JSON.stringify({chat_session_id:e}),method:"POST"})).ok||console.error("移除会话失败")};if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$7(u,t,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let m={content:"",id:getRandomUuidv4(),model:"",msgCallback:e=>{m.content+=e.content}};for(;;){const{value:e,done:t}=await u.read();if(t){removeConversationId();break}e&&onParse$5(e,m)}return new Response(JSON.stringify(toOpenAIResponse(m.id,m.content,m.model,!1)),{status:p.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$5(e,t){try{if("[DONE]"===e.data)return;const o=JSON.parse(e.data);t.model||(t.model=o.model),t.msgCallback(o.choices[0].delta)}catch(e){throw e}}async function streamJsonResponseBodies$7(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),model:"",msgCallback:e=>{a.write(encoder$7.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e.content,s.model,!0,e.type))}\n\n`))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){a.write(encoder$7.encode("data: [DONE]\n\n")),o&&o(),a.close();break}if(!t)continue;onParse$5(t,s)}catch(e){throw a.close(),e}}function generateCookie(){return`intercom-HWWAFSESTIME=${timestamp()}; HWWAFSESID=${randHex(18)}; Hm_lvt_${uuid(!1)}=${unixTimestamp()},${unixTimestamp()},${unixTimestamp()}; Hm_lpvt_${uuid(!1)}=${unixTimestamp()}; _frid=${uuid(!1)}; _fr_ssid=${uuid(!1)}; _fr_pvid=${uuid(!1)}`}async function answerChallenge(e,t){const{algorithm:o,challenge:a,salt:s,difficulty:r,expire_at:i,signature:c}=e,l=new DeepSeekHash,d=await useStorage("assets:server").getItemRaw("sha3_wasm_bg.7b9ca65ddd.wasm");await l.init(d);const p=l.calculateHash(o,a,s,r,i);return Buffer.from(JSON.stringify({algorithm:o,challenge:a,salt:s,answer:p,signature:c,target_path:t})).toString("base64")}async function getChallengeResponse(e,t){const o=await fetch("https://chat.deepseek.com/api/v0/chat/create_pow_challenge",{headers:{...FAKE_HEADERS$4,"content-type":"application/json",Authorization:`Bearer ${e}`,Cookie:generateCookie()},body:JSON.stringify({target_path:t}),method:"POST"});return(await o.json()).data.biz_data.challenge}const encoder$6=new TextEncoder,qwenlmData={cookies:"",token:""},FAKE_HEADERS$3={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","bx-v":"2.5.0","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not A(Brand";v="8", "Chromium";v="132", "Microsoft Edge";v="132"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin"};async function t2i(e,t){let o="1024*1024";"IMAGE_ASPECT_RATIO_SQUARE"===t.aspectRatio?o="1024*1024":"IMAGE_ASPECT_RATIO_PORTRAIT"===t.aspectRatio?o="768*1024":"IMAGE_ASPECT_RATIO_LANDSCAPE"===t.aspectRatio?o="1024*768":"IMAGE_ASPECT_RATIO_PORTRAIT_THREE_FOUR"===t.aspectRatio?o="720*1280":"IMAGE_ASPECT_RATIO_LANDSCAPE_FOUR_THREE"===t.aspectRatio&&(o="1280*720");const a=Array(2).fill(null).map((()=>(async()=>{const t=await fetch("https://chat.qwenlm.ai/api/chat/completions",{headers:{...FAKE_HEADERS$3,Authorization:`Bearer ${qwenlmData.token}`,"content-type":"application/json",cookie:qwenlmData.cookies},body:JSON.stringify({stream:!1,chat_type:"t2i",model:"qwen-max-latest",messages:e.messages,session_id:getRandomUuidv4(),chat_id:getRandomUuidv4(),id:getRandomUuidv4(),size:o}),method:"POST"});return t.ok?(await t.json()).messages.pop().extra.wanx.task_id:(console.error(await t.text()),"")})())),s=await Promise.all(a),r=await Promise.all(s.filter((e=>""!=e)).map((async t=>{try{const o=await(async(e,t=30)=>{let o=null;for(let a=0;asetTimeout(e,s)))}catch(e){o=e,console.error(`Attempt ${a+1} failed:`,e)}throw new Error(`Task check failed after ${t} attempts. Last error: ${null==o?void 0:o.message}`)})(t);return{model:e.model,url:o}}catch(t){return{model:e.model,url:null,error:t.message}}})));return new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),r.filter((e=>null!=e.url)).map((e=>({model:e.model,type:"url",url:e.url}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}async function qwenlm(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=JSON.parse(s);qwenlmData.cookies=r.cookies,qwenlmData.token=r.token;try{if(o.model.includes("image"))return await t2i(o,a);if(o.model.includes("vl")){const e=o.messages.pop();if("user"===e.role&&Array.isArray(e.content)){const t=await Promise.all(e.content.map((async e=>{if("image_url"===e.type){const t=e.image_url.url,o=await fetch(t),a=await o.blob(),s=new FormData;s.append("file",a);const r=await fetch("https://chat.qwenlm.ai/api/v1/files/",{method:"POST",headers:{accept:"application/json",authorization:`Bearer ${qwenlmData.token}`,cookie:qwenlmData.cookies},body:s});return{type:"image",image:(await r.json()).id}}return e}))),a={role:e.role,content:t};o.messages.push(a)}else o.messages.push(e)}const e=await fetch("https://chat.qwenlm.ai/api/chat/completions",{method:"POST",headers:{...FAKE_HEADERS$3,Authorization:`Bearer ${qwenlmData.token}`,"content-type":"application/json",cookie:qwenlmData.cookies},body:JSON.stringify({chat_type:"t2t",stream:o.stream,model:o.model,messages:o.messages,session_id:getRandomUuidv4(),chat_id:getRandomUuidv4(),id:getRandomUuidv4()})});if(!e.ok)return errorResponse(e);const t=e.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:a}=new TransformStream;return streamJsonResponseBodies$6(t,a,o.model),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let s={content:"",id:getRandomUuidv4(),model:o.model,msgCallback:e=>{s.content+=e}};for(;;){const{value:e,done:o}=await t.read();if(o)break;e&&onParse$4(e,s)}return new Response(JSON.stringify(toOpenAIResponse(s.id,s.content,s.model,!1)),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function streamJsonResponseBodies$6(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),lastContent:"",msgCallback:e=>{a.write(encoder$6.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){a.write(encoder$6.encode("data: [DONE]\n\n")),a.close();break}if(!t)continue;onParse$4(t,s)}catch(e){throw a.close(),e}}function onParse$4(e,t){try{const o=JSON.parse(e.data).choices[0].delta.content,a=o.slice(t.lastContent?t.lastContent.length:0);t.lastContent=o,t.msgCallback(a)}catch(e){throw e}}const FAKE_HEADERS$2={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache",priority:"u=1, i","request-id":"|1b9e4c7cc9a14d26908656ee722fa2a9.82541aef7ca2400c","sec-ch-ua":'"Microsoft Edge";v="131", "Chromium";v="131", "Not_A Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin",traceparent:"00-1b9e4c7cc9a14d26908656ee722fa2a9-82541aef7ca2400c-01"},genspark_request_data={cookie:""},models=["flux","flux-pro/ultra","ideogram","recraft-v3","dalle-3"];async function solveRecaptcha(e,t=3,o=1e3){let a=0;for(;a=t)throw new Error(`Failed to solve recaptcha after ${t} attempts`);console.log(`Retrying in ${o}ms...`),await new Promise((e=>setTimeout(e,o)))}}async function genspark$1(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=getQuery(e);let i=o.conversationId||r.id;a&&(i=a.apiConversationId?a.apiConversationId:i);try{const e=JSON.parse(s);genspark_request_data.cookie=e.cookie;let t=e.token;if(!t){const e=r.tokenUrl||"https://zhepama-playwright-proxy.hf.space/genspark";t=await solveRecaptcha(e.toString())}const c=o.messages[o.messages.length-1].content,l=[];let d="auto";if("IMAGE_ASPECT_RATIO_SQUARE"===a.aspectRatio?d="1:1":"IMAGE_ASPECT_RATIO_PORTRAIT"===a.aspectRatio?d="9:16":"IMAGE_ASPECT_RATIO_LANDSCAPE"===a.aspectRatio?d="16:9":"IMAGE_ASPECT_RATIO_PORTRAIT_THREE_FOUR"===a.aspectRatio?d="3:4":"IMAGE_ASPECT_RATIO_LANDSCAPE_FOUR_THREE"===a.aspectRatio&&(d="4:3"),"mixture"==o.model){const getRandomElements=(e,t)=>[...e].sort((()=>.5-Math.random())).slice(0,t);getRandomElements(models,4).forEach((e=>{l.push({model:e,aspect_ratio:d,use_personalized_models:!1,fashion_profile_id:null,hd:!1,reflection_enabled:!1,style:"auto"})}))}else l.push({model:o.model,aspect_ratio:d,use_personalized_models:!1,fashion_profile_id:null,hd:!1,reflection_enabled:!1,style:"auto"});const p={type:"COPILOT_MOA_IMAGE",current_query_string:i?`id=${i}&type=COPILOT_MOA_IMAGE`:"type=COPILOT_MOA_IMAGE",messages:[{role:"user",content:c}],user_s_input:c,action_params:{},extra_data:{model_configs:l,llm_model:"gpt-4o",imageModelMap:{}},g_recaptcha_token:t};console.log("genspark request data:",p);let u="https://www.genspark.ai/api/copilot/ask";r.proxyurl&&(u=r.proxyurl.toString()+"?stream=true&url="+u);const m=await fetch(u,{method:"POST",headers:{...FAKE_HEADERS$2,"content-type":"application/json",Referer:"https://www.genspark.ai/agents?type=moa_generate_image",cookie:genspark_request_data.cookie},body:JSON.stringify(p)});if(!m.ok)return errorResponse(m);const h=m.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),g=await streamJsonResponseBodies$5(h),checkTaskStatus=async(e,t=30)=>{let o=null;for(let a=0;asetTimeout(e,s)))}catch(e){o=e,console.error(`Attempt ${a+1} failed:`,e)}throw new Error(`Task check failed after ${t} attempts. Last error: ${null==o?void 0:o.message}`)},f=await Promise.all(g.map((async e=>{try{return await checkTaskStatus(e.task_id)}catch(t){return{model:e.model,url:null,error:t.message}}}))),y=f.map((e=>e.data.id));let w=[];for(let e=0;e<3;e++)try{const t=await fetch("https://www.genspark.ai/api/ig_tasks_status",{headers:{...FAKE_HEADERS$2,Referer:"https://www.genspark.ai/agents?type=moa_generate_image",cookie:genspark_request_data.cookie},referrerPolicy:"no-referrer",body:JSON.stringify({task_ids:y}),method:"POST"});if(!t.ok){const t=Math.min(1e3*Math.pow(1.5,e),1e4);await new Promise((e=>setTimeout(e,t)));continue}const o=t.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();for(;;)try{const{value:e,done:t}=await o.read();if(t)break;if(!e)continue;const a=JSON.parse(e.data);if("TASKS_STATUS_UPDATE"===a.type&&a.tasks)continue;if("TASKS_STATUS_COMPLETE"===a.type&&a.final_status){Object.values(a.final_status).filter((e=>"SUCCESS"===e.status)).forEach((e=>{e.image_urls_nowatermark&&e.image_urls_nowatermark.length>0&&w.push({id:e.id,url:e.image_urls_nowatermark[0]})}));break}}catch(e){throw e}break}catch(t){console.error(`Attempt ${e+1} failed:`,t)}return new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),w.filter((e=>null!=e.url)).map((e=>({model:f.find((t=>t.data.id==e.id)).data.model,type:"url",url:e.url}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function isString(e){return"string"==typeof e||e instanceof String}async function streamJsonResponseBodies$5(e,t){for(;;)try{const{value:o,done:a}=await e.read();if(a){t&&t();break}if(!o)continue;console.log("genspark response data:",o.data);const s=JSON.parse(o.data);if(!s.role||"assistant"!=s.role)continue;if(isString(s.content)&&-1==s.content.indexOf("generated_images"))throw new Error(s.content);return JSON.parse(s.content).generated_images}catch(e){throw e}}function isAllChinese(e){return/^[\u4E00-\u9FA5\u3400-\u4DBF]+$/.test(e)}async function genspark(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";try{const e=JSON.parse(s),t=(e.cookies,e.access_token),r=o.messages[o.messages.length-1].content;if(isAllChinese(r))throw new Error("prompt 不能为中文");const i=await fetch("https://aisandbox-pa.googleapis.com/v1:runImageFx",{headers:{accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",authorization:`Bearer ${t}`,"cache-control":"no-cache","content-type":"text/plain;charset=UTF-8",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Microsoft Edge";v="131", "Chromium";v="131", "Not_A Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site",Referer:"https://labs.google/","Referrer-Policy":"strict-origin-when-cross-origin"},body:JSON.stringify({userInput:{candidatesCount:4,prompts:[r],seed:Math.floor(9e5*Math.random())+1e5},clientContext:{sessionId:";1736820270799",tool:"IMAGE_FX"},modelInput:{modelNameType:o.model},aspectRatio:a.aspectRatio}),method:"POST"});if(!i.ok)return errorResponse(i);const c=await i.json();return new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),c.imagePanels[0].generatedImages.map((e=>({model:e.modelNameType,type:"base64",content:`data:image/jpg;base64,${e.encodedImage}`}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const sleep=e=>new Promise((t=>setTimeout(t,e)));async function bing_image(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";try{const e=`_U=${JSON.parse(s).cookies}`,t=o.messages[o.messages.length-1].content,a=encodeURIComponent(t),r=`q=${a}&qs=ds`,i={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36","Accept-Encoding":"gzip, deflate",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",Connection:"keep-alive",Referer:"https://www.bing.com/images/create","Accept-Language":"en-US,en;q=0.9",Cookie:e},c=await fetch("https://www.bing.com/images/create",{headers:i}),l=(await c.text()).match(/bal" aria-label="(\d+) /),d=parseInt(l[1],10)>0?"4":"3";let p=await fetch(`https://www.bing.com/images/create?q=${a}&rt=${d}&FORM=GENCRE`,{method:"POST",body:r,headers:i,redirect:"manual"});const{status:u}=p;if(p.headers.forEach(((e,t)=>{console.log(t,e)})),302!==u)throw new Error(`Bing Image Creator Not as Expected: response status = ${u}`);let m=`https://www.bing.com/${p.headers.get("Location").replace("&nfy=1","")}`;const h=`https://www.bing.com/images/create/async/results/${m.split("id=")[1]}?q${a}`;console.log(`Sending request to redirect url...${m}`),await fetch(m,{method:"POST",body:r,headers:i,redirect:"manual"});let g,f=Date.now();for(console.log("Start pulling result...");;){if(Date.now()-f>6e5)throw new Error("Timeout pulling the result.");const e=await fetch(h,{method:"POST",body:r,headers:i});if(200!==e.status)throw new Error("Error when pulling the results");if(g=await e.text(),g&&-1===g.indexOf("errorMessage"))break;console.log("Waiting for the result..."),await sleep(1e3)}let y=/src="([^"]+)"/g,w=g.match(y).map((e=>e.replace('src="',"").replace('"',""))).map((e=>e.split("?w=")[0])).filter((e=>e.includes("th")));return console.log(w),new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),w.map((e=>({model:"bing",type:"url",url:e}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function siliconflow_image(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";try{const e=o.messages[o.messages.length-1].content;let t="1024x1024";"IMAGE_ASPECT_RATIO_SQUARE"===a.aspectRatio?t="1024x1024":"IMAGE_ASPECT_RATIO_PORTRAIT"===a.aspectRatio?t="576x1024":"IMAGE_ASPECT_RATIO_LANDSCAPE"===a.aspectRatio?t="1024x576":"IMAGE_ASPECT_RATIO_PORTRAIT_THREE_FOUR"===a.aspectRatio?t="512x768":"IMAGE_ASPECT_RATIO_LANDSCAPE_FOUR_THREE"===a.aspectRatio&&(t="768x512");const r=await fetch("https://api.siliconflow.cn/v1/images/generations",{method:"POST",headers:{Authorization:`Bearer ${s}`,"Content-Type":"application/json"},body:JSON.stringify({model:o.model,prompt:e,image_size:t,batch_size:4,seed:Math.floor(9999999999*Math.random())+1,num_inference_steps:20,guidance_scale:7.5})}),i=await r.json();return new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),i.images.map((e=>({model:o.model,type:"url",url:e.url}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function cloudflare_image(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",[r,i]=s.split(separator);try{const e=o.messages[o.messages.length-1].content,t=await fetch(`https://api.cloudflare.com/client/v4/accounts/${r}/ai/run/${o.model}`,{method:"POST",headers:{"content-type":"application/json",Authorization:`Bearer ${i}`},body:JSON.stringify({prompt:e})});if(!t.ok)return errorResponse(t);const a=await t.json();console.log(a);const s=toImageResponse(getRandomUuidv4(),[{model:o.model,type:"base64",content:`data:image/jpg;base64,${a.result.image}`}]);return new Response(JSON.stringify(s),{status:t.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function designer(e){var t,o,a,s;const r=Object.fromEntries(e.headers),i=await readBody(e),c=e.context.meta||i.meta;i.model=i.model&&"default"!==i.model?i.model:null==c?void 0:c.apiModel;let l=(null==c?void 0:c.apiKey)?c.apiKey:r.authorization?extractBearerToken(r.authorization):"";try{const e=i.messages[i.messages.length-1].content;let r="1024x1024";"IMAGE_ASPECT_RATIO_SQUARE"===c.aspectRatio?r="1024x1024":"IMAGE_ASPECT_RATIO_PORTRAIT"===c.aspectRatio?r="1024x1792":"IMAGE_ASPECT_RATIO_LANDSCAPE"===c.aspectRatio?r="1792x1024":"IMAGE_ASPECT_RATIO_PORTRAIT_THREE_FOUR"===c.aspectRatio?r="1024x1792":"IMAGE_ASPECT_RATIO_LANDSCAPE_FOUR_THREE"===c.aspectRatio&&(r="1792x1024");const d=getRandomUuidv4(),p="https://designerapp.officeapps.live.com/designerapp/DallE.ashx?action=GetDallEImagesCogSci",u={accept:"application/json, text/plain, */*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",audiencegroup:"Production",authorization:`Bearer ${l}`,"cache-control":"no-cache",caller:"DesignerApp",clientbuild:"1.0.20250110.19",clientid:"dbb92fb1-bc4a-4e9d-81e2-0ac48258e264",clientname:"DesignerApp",containerid:"1913fc7f-1654-437a-be48-a69acf1b6c78",filetoken:"cf795914-fd3c-4a1d-8f83-07e96d571afa",hostapp:"DesignerApp",issignedinuser:"true",locale:"zh-CN",platform:"Web",pragma:"no-cache",priority:"u=1, i",releasechannel:"","sec-ch-ua":'"Microsoft Edge";v="131", "Chromium";v="131", "Not_A Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site",sessionid:d,traceparent:"00-9c8be8bf5e8c4773989f6bab9cb6edd5-8c56166e0d6aab2c-01",userid:"8e4808619178f916",usertype:"MSA","x-correlation":"f0153d36-83dc-4ed8-83bc-b8dfd9be6fa3","x-dc-hint":"EastUS","x-edge-shopping-flag":"1","x-req-start":"53322.70000000298","x-upload-to-storage-das":"1",Referer:"https://designer.microsoft.com/","Referrer-Policy":"strict-origin-when-cross-origin"},m=new FormData;m.append("dalle-caption",e),m.append("dalle-scenario-name","TextToImage"),m.append("dalle-batch-size","4"),m.append("dalle-last-prompt",""),m.append("dalle-last-user-prompt",""),m.append("dalle-image-response-format","UrlWithBase64Thumbnail"),m.append("dalle-seed",Math.floor(1e4*Math.random()).toString()),m.append("ClientFlights","EnableBICForDALLEFlight"),m.append("dalle-hear-back-in-ms","1000"),m.append("dalle-include-b64-thumbnails","true"),m.append("dalle-aspect-ratio-scaling-factor-b64-thumbnails","0.3"),m.append("dalle-image-size",r);const h=await fetch(p,{headers:u,body:m,method:"POST"});if(!h.ok)return errorResponse(h);const g=await h.json();m.set("dalle-boost-count",null!=(o=null==(t=null==g?void 0:g["dalle-boost-count"])?void 0:t.toString())?o:"0");const f=null==(a=null==g?void 0:g.polling_response)?void 0:a.polling_meta_data;let y;m.set("dalle-poll-url",null!=(s=null==f?void 0:f.poll_url)?s:"");const w=30;let _=0;for(;_{var t;return setTimeout(e,null!=(t=null==f?void 0:f.poll_interval)?t:2e3)}));const e=await fetch(p,{method:"POST",headers:u,body:m});if(!e.ok)throw new Error(`Failed to poll images: ${e.status} ${e.statusText}`);const t=await e.json();if(1==t.polling_response.status){y=t.b64_thumbnails;break}_++}return new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),y.map((e=>({model:"dall-3",type:"base64",content:e}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const FAKE_HEADERS$1={accept:"text/event-stream","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",baggage:"sentry-environment=production,sentry-release=Oo3GOuv3r81hzTog5xH9y,sentry-public_key=b311e0f2690c81f25e2c4cf6d4f7ce1c,sentry-trace_id=446673ead5af472888af0bb6688f638d,sentry-sample_rate=1,sentry-sampled=true","cache-control":"no-cache","content-type":"text/plain;charset=UTF-8",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not A(Brand";v="8", "Chromium";v="132", "Microsoft Edge";v="132"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","sentry-trace":"446673ead5af472888af0bb6688f638d-849a1615f88a565e-1",Referer:"https://grok.com/","Referrer-Policy":"origin-when-cross-origin"},grok_request_data={cookie:""};async function handleImageResponse(e){let t,o=0;for(;o<3;)try{if(t=await fetch(`https://assets.grok.com/${e}`,{method:"GET",headers:{...FAKE_HEADERS$1,cookie:grok_request_data.cookie}}),t.ok)break;if(o++,3===o)throw new Error(`上游服务请求失败! status: ${t.status}`);await new Promise((e=>setTimeout(e,500*o)))}catch(e){if(o++,3===o)throw e;await new Promise((e=>setTimeout(e,500*o)))}const a=await t.arrayBuffer(),s=Buffer.from(a).toString("base64");return`data:${t.headers.get("content-type")};base64,${s}`}function processJsonString(e,t){let o=e.trim(),a=0,s=0,r=!1,i=!1;for(let e=0;e{if("image_url"===e.type){const t=e.image_url.url;let o;o=t.includes("data:image")?t.split(",")[1]:t;const s=await fetch("https://grok.com/api/rpc",{method:"POST",headers:{...FAKE_HEADERS$1,cookie:grok_request_data.cookie},body:JSON.stringify({rpc:"uploadFile",req:{fileName:"lansefangzi.png",fileMimeType:"image/png",content:o}})}),r=await s.json();return a.push(r.fileMetadataId),null}return e}))),t={role:i.role,content:e.filter((e=>null!=e))};o.messages.push(t)}else o.messages.push(i);const c=MergeMessages(o.messages),l={customInstructions:"",deepsearchPreset:"",disableSearch:!1,enableImageGeneration:!0,enableImageStreaming:!0,enableSideBySide:!0,fileAttachments:a,forceConcise:!1,imageAttachments:[],imageGenerationCount:2,isPreset:!1,isReasoning:o.model.includes("reasoning"),message:c,modelName:o.model.toString().replace("-reasoning","").replace("-image",""),returnImageBytes:!1,returnRawGrokInXaiRequest:!1,sendFinalMetadata:!0,temporary:!1,toolOverrides:{imageGen:o.model.includes("image")}};let d="https://grok.com/rest/app-chat/conversations/new";if(r.proxyurl){const e=decodeURIComponent(r.proxyurl.toString());d=`${e}${e.includes("?")?"&":"?"}stream=true&url=${d}`}if(t=await fetch(d,{headers:{...FAKE_HEADERS$1,cookie:grok_request_data.cookie},body:JSON.stringify(l),method:"POST"}),!t.ok)return errorResponse(t);const p=t.body.pipeThrough(new TextDecoderStream).getReader();if(!o.model.includes("image")){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$4(p,t,o.model),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let u=[];for(;;){const{value:e,done:t}=await p.read();if(t)break;e&&processJsonString(e,(e=>{const t=JSON.parse(e).result;t.response&&t.response.streamingImageGenerationResponse&&100==t.response.streamingImageGenerationResponse.progress&&t.response.streamingImageGenerationResponse.imageUrl&&u.push(`${t.response.streamingImageGenerationResponse.imageUrl}`)}))}return u=await Promise.all(u.map((async e=>handleImageResponse(e)))),new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),u.filter((e=>null!=e)).map((e=>({model:"grok-latest-image",type:"base64",content:e}))))),{status:t.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$3(e,t){try{const o=JSON.parse(e).result;if(!o.response||!o.response.token)return;t.msgCallback(o.response.token,o.response.isThinking?"thinking":"text")}catch(e){throw e}}const encoder$5=new TextEncoder;async function streamJsonResponseBodies$4(e,t,o,a){const s=t.getWriter();let r={id:"",model:o,msgCallback:(e,t)=>{s.write(encoder$5.encode(`data: ${JSON.stringify(toOpenAIResponse(r.id,e,r.model,!0,t))}\n\n`))},endCallback:()=>{s.write(encoder$5.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){r.endCallback(),a&&a(),s.close();break}if(!t)continue;processJsonString(t,(e=>{onParse$3(e,r)}))}catch(e){throw s.close(),e}}const nData={mid:"",cookies:"",authToken:""};global.aiso_base64=e=>btoa(e),global.aiso_md5=e=>md5(e),global.aiso_aes=(e,t)=>{const o=crypto.createCipheriv("aes-256-cbc",t,Buffer.alloc(16,0));let a=o.update(e,"utf8","hex");return a+=o.final("hex"),a},global.aiso_sha1=e=>{const t=crypto.createHash("sha1");return t.update(e),t.digest("hex")},global.aiso_h256=(e,t)=>{const o=crypto.createHmac("sha256",t);return o.update(e),o.digest("hex")};const getChatToken=async(uri,body,now)=>{let date=now.toUTCString(),data={"Chat-Date":date,"Chat-Token":""};const response=await fetch("https://bot.n.cn/js/chatsdk-1.0.js"),jsCode=await response.text(),customObj={},modifiedCode=jsCode.replace("window","customObj");eval(modifiedCode);const propertyName=Object.keys(customObj)[0];let jsText=customObj[propertyName];try{jsText=atob(jsText).trim(),jsText+="(".concat(JSON.stringify({method:"POST",uri:uri,access_token:nData.mid,http_version:"HTTP/1.1",date:date,body:body}),")");const{token:token}=eval(jsText);data["Chat-Token"]=token}catch(e){console.error(e),data["Chat-Token"]="-2"}return data};function getLocalISOString(e){const t=new Date,o=-t.getTimezoneOffset(),a=Math.floor(Math.abs(o)/60),s=Math.abs(o)%60,r=`${o>=0?"+":"-"}${String(a).padStart(2,"0")}:${String(s).padStart(2,"0")}`,i=t.getFullYear(),c=String(t.getMonth()+1).padStart(2,"0"),l=String(t.getDate()).padStart(2,"0"),d=String(t.getHours()).padStart(2,"0"),p=String(t.getMinutes()).padStart(2,"0"),u=String(t.getSeconds()).padStart(2,"0");return String(t.getMilliseconds()).padStart(3,"0"),`${i}-${c}-${l}T${d}:${p}:${u}${r}`}const getHeaders=()=>{const e=["Web",getLocalISOString(),"1.2",nData.mid,md5("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 Edg/133.0.0.0")];return{"device-platform":e[0],timestamp:e[1],"zm-ver":e[2],"access-token":e[3],"zm-token":md5(e.join("")),"zm-ua":e[4],"func-ver":"1","Content-Type":"application/x-www-form-urlencoded;charset=UTF-8",mid:"",sid:nData.mid,"Request-Id":getRandomUuidv4(),"Auth-Token":nData.authToken,cookie:nData.cookies,accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not A(Brand";v="8", "Chromium";v="132", "Microsoft Edge";v="132"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin",Referer:"https://bot.n.cn","Referrer-Policy":"strict-origin-when-cross-origin"}},deleteConversation=async e=>{let t=getHeaders();await fetch("https://bot.n.cn/api/batch/remove/conversation",{headers:{...t,Referer:`https://bot.n.cn/chat/${e}`},body:`cid=${e}`,method:"POST"})};async function n(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=JSON.parse(s);nData.mid=r.mid,nData.cookies=r.cookies,nData.authToken=r.authToken;try{const e={role:o.model,prompt:MergeMessagesNoMarkup(o.messages),re_answer:0,retry:!1,last_id:0,compare_parent_id:"",role_biz:"",firm_id:"",rewrite_type:"",annex_msg_id:"",kwargs:{think_stream:!0},is_so:!1,role_mode:0},t=new Date,a={...await getChatToken("/api/assistant/chat",e,t),...getHeaders(),accept:"text/event-stream","Content-Type":"application/json"},s=await fetch("https://bot.n.cn/api/assistant/chat",{method:"POST",headers:a,body:JSON.stringify(e)});if(!s.ok)return errorResponse(s);const r=s.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$3(r,t,deleteConversation),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$4=new TextEncoder;function onParse$2(e,t){try{if("100"==e.event)return void(t.conversationId=e.data.replace("CONVERSATIONID####",""));if("101"==e.event)return void(t.id=e.data.replace("MESSAGEID####",""));if("102"==e.event&&e.data&&e.data.length>0){if(e.data.startsWith("{")&&e.data.endsWith("}")){const o=JSON.parse(e.data);t.msgCallback(o.message,"thinking")}else t.msgCallback(e.data,"thinking");return}if("200"==e.event)return void t.msgCallback(e.data,"text")}catch(e){throw e}}async function streamJsonResponseBodies$3(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),conversationId:"",model:"",content:"",msgCallback:(e,t)=>{a.write(encoder$4.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0,t))}\n\n`))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){a.write(encoder$4.encode("data: [DONE]\n\n")),o&&o(s.conversationId),a.close();break}if(!t)continue;onParse$2(t,s)}catch(e){throw a.close(),o&&o(s.conversationId),e}}async function requestUntilConditionMet(e,t){let o=0;for(;o<10;){o++;try{const o=await fetch(e,{headers:{accept:"application/json","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",authorization:`Bearer ${t}`,"cache-control":"no-cache",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not(A:Brand";v="99", "Microsoft Edge";v="133", "Chromium";v="133"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","x-api-key":"clio-playground-web",Referer:"https://firefly.adobe.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),a=await o.json();if(!("progress"in a)&&"outputs"in a)return a;await new Promise((e=>setTimeout(e,1e3)))}catch(e){throw console.error("请求或解析出现错误: ",e),e}}return console.log("超过 10 次请求仍未满足条件"),null}async function firefly(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r="2048",i="2048";"IMAGE_ASPECT_RATIO_SQUARE"===a.aspectRatio?(r="2048",i="2048"):"IMAGE_ASPECT_RATIO_PORTRAIT"===a.aspectRatio?(r="1536",i="2688"):"IMAGE_ASPECT_RATIO_LANDSCAPE"===a.aspectRatio?(r="2688",i="1536"):"IMAGE_ASPECT_RATIO_PORTRAIT_THREE_FOUR"===a.aspectRatio?(r="1792",i="2304"):"IMAGE_ASPECT_RATIO_LANDSCAPE_FOUR_THREE"===a.aspectRatio&&(r="2304",i="1792");try{const e=o.messages[o.messages.length-1].content,t=await fetch("https://firefly-clio-imaging-preview.adobe.io/v2/images/generate-async",{headers:{accept:"application/json","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",authorization:`Bearer ${s}`,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Not(A:Brand";v="99", "Microsoft Edge";v="133", "Chromium";v="133"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","x-api-key":"clio-playground-web",Referer:"https://firefly.adobe.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:JSON.stringify({prompt:e,seeds:[generateRandomInteger(5),generateRandomInteger(5),generateRandomInteger(5),generateRandomInteger(5)],size:{width:r,height:i},visualIntensity:6,locale:"en-US",detailLevel:"preview",modelVersion:o.model,output:{cai:{directive:"dont_sign"},storeInputs:!0}}),method:"POST"});if(!t.ok)return errorResponse(t);await t.json();const a=t.headers.get("x-override-status-link"),c=await requestUntilConditionMet(a,s);return new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),c.outputs.map((e=>({model:o.model,type:"url",url:e.image.presignedUrl}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const FAKE_HEADERS={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",chat_version:"v1","content-type":"text/plain;charset=UTF-8",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not(A:Brand";v="99", "Microsoft Edge";v="133", "Chromium";v="133"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","x-requested-with":"XMLHttpRequest","x-source":"web","Referrer-Policy":"strict-origin-when-cross-origin"},yuanbao_request_data={cookie:"",cookieObject:{}};async function yuanbao(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=getQuery(e);let i=o.conversationId||r.id||"";a&&(i=a.apiConversationId?a.apiConversationId:i),i||(i=getRandomUuidv4());try{const e=JSON.parse(s);yuanbao_request_data.cookie=e.cookie,yuanbao_request_data.cookieObject=parseStrCookies(yuanbao_request_data.cookie);const t=MergeMessagesNoMarkup(o.messages),a={model:"gpt_175B_0404",prompt:t,plugin:"Adaptive",displayPrompt:t,displayPromptType:1,options:{imageIntention:{needIntentionModel:!0,backendUpdateFlag:2,intentionStatus:!0}},multimedia:[],agentId:"naQivTmsDa",supportHint:1,version:"v2",chatModelId:o.model},clearConversation=async()=>{await fetch("https://yuanbao.tencent.com/api/user/agent/conversation/v1/clear",{headers:{...FAKE_HEADERS,accept:"application/json, text/plain, */*","content-type":"application/json","t-userid":yuanbao_request_data.cookieObject.hy_user,"x-agentid":"naQivTmsDa","x-commit-tag":"d1b1f33c","x-requested-with":"XMLHttpRequest","x-source":"web",cookie:yuanbao_request_data.cookie,Referer:"https://yuanbao.tencent.com/chat/naQivTmsDa","Referrer-Policy":"strict-origin-when-cross-origin"},body:JSON.stringify({conversationIds:[i]}),method:"POST"})},r=await fetch(`https://yuanbao.tencent.com/api/chat/${i}`,{headers:{...FAKE_HEADERS,cookie:yuanbao_request_data.cookie,"x-agentid":`naQivTmsDa/${i}`,Referer:`https://yuanbao.tencent.com/chat/naQivTmsDa/${i}`},body:JSON.stringify(a),method:"POST"});if(!r.ok)return errorResponse(r);const c=r.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$2(c,t,o.model,clearConversation),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}return new Response("不支持��流式",{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$1(e,t){try{if(!e.data.startsWith("{")||!e.data.endsWith("}"))return;const o=JSON.parse(e.data);if("think"!=o.type&&"text"!=o.type)return;t.msgCallback("think"==o.type?o.content:o.msg,"think"==o.type?"thinking":"text")}catch(e){throw e}}const encoder$3=new TextEncoder;async function streamJsonResponseBodies$2(e,t,o,a){const s=t.getWriter();let r={id:"",model:o,msgCallback:(e,t)=>{s.write(encoder$3.encode(`data: ${JSON.stringify(toOpenAIResponse(r.id,e,r.model,!0,t))}\n\n`))},endCallback:()=>{s.write(encoder$3.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){r.endCallback(),a&&a(),s.close();break}if(!t)continue;onParse$1(t,r)}catch(e){throw s.close(),e}}function generateHashed64Hex(e,t=""){const o=createHash$1("sha256");return o.update(e+t),o.digest("hex")}function obfuscateBytes(e){let t=165;for(let o=0;o>40&255,a>>32&255,a>>24&255,a>>16&255,a>>8&255,255&a]));return`${Buffer.from(s).toString("base64")}${t}/${o}`}const FakeHeaders={"connect-accept-encoding":"gzip,br","connect-protocol-version":"1","content-type":"application/connect+proto",cookie:"","user-agent":"connect-es/1.6.1","x-client-key":"","x-cursor-checksum":"","x-cursor-client-version":"0.42.4","x-cursor-timezone":"Asia/Shanghai","x-ghost-mode":"false",Host:"api2.cursor.sh",Connection:"keep-alive"},protoDefinition$1='\n syntax = "proto3";\n \n message Message {\n string msg = 1;\n int32 no = 2;\n string id = 13;\n }\n \n message Info {\n string system = 1;\n string path = 5;\n }\n \n message Model {\n string model = 1;\n string other = 4;\n }\n \n message Payload {\n repeated Message msgs = 2;\n Info info = 4;\n Model model = 7;\n string requestId = 9;\n int32 field13 = 13;\n int32 field14 = 14;\n string convId = 15;\n int32 field16 = 16;\n int32 field22 = 22;\n int32 field24 = 24;\n int32 field28 = 28;\n int32 field29 = 29;\n }\n \n message ResponseMsg {\n string msg = 1;\n }\n';let root,Payload,ResponseMsg;function loadProtoTypes(){root=protobuf.parse(protoDefinition$1).root,root.lookupType("Message"),root.lookupType("Info"),root.lookupType("Model"),Payload=root.lookupType("Payload"),ResponseMsg=root.lookupType("ResponseMsg")}async function generateClietKey(){const e=new Date,t=e.getFullYear(),o=String(e.getMonth()+1).padStart(2,"0"),a=e.getDate()<=15?"01":"02";return await generateSHA256(`${t}${o}${a}`)}function getCurrentDateString(){const e=new Date;return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}async function cursor(e){var t,o;const a=Object.fromEntries(e.headers),s=await readBody(e),r=e.context.meta||s.meta;s.model=s.model&&"default"!==s.model?s.model:null==r?void 0:r.apiModel;let i=(null==r?void 0:r.apiKey)?r.apiKey:a.authorization?extractBearerToken(a.authorization):"",c="";"system"===s.messages[0].role&&(c=s.messages.shift().content);const l=Payload.create({msgs:s.messages.map((e=>({msg:e.content,no:"user"==e.role?1:2,id:getRandomUuidv4()}))),info:{system:c,path:"/d:/Workspace/openall"},model:{model:s.model,other:""},requestId:getRandomUuidv4(),field13:0,field14:0,convId:getRandomUuidv4(),field16:1,field22:0,field24:0,field28:0,field29:0});try{const e=Payload.encode(l).finish(),r=new DataView(new ArrayBuffer(4));r.setInt32(0,e.length,!1);const c=Buffer.concat([Buffer.from([0]),Buffer.from(r.buffer),e]),d=null!=(o=null!=(t=a["x-cursor-checksum"])?t:process.env["x-cursor-checksum"])?o:generateCursorChecksum(i.trim()+getCurrentDateString),p=getRandomUuidv4(),u=await fetch("https://api2.cursor.sh/aiserver.v1.AiService/StreamChat",{method:"POST",headers:{...FakeHeaders,"x-client-key":await generateClietKey(),"x-amzn-trace-id":`Root=${p}`,"x-request-id":p,authorization:`Bearer ${i}`,"x-cursor-checksum":d},body:c});if(!u.ok)return errorResponse(u);if(u.headers.get("content-type").includes("application/json")){const e=await u.json();return new Response(JSON.stringify(e),{status:400,statusText:u.statusText,headers:{"Content-Type":"application/json"}})}const m=u.body.getReader(),{readable:h,writable:g}=new TransformStream;return streamJsonResponseBodies$1(m,g,s.model),new Response(h,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}loadProtoTypes();const encoder$2=new TextEncoder;async function streamJsonResponseBodies$1(e,t,o){const a=t.getWriter();let s={id:"",msgCallback:e=>{a.write(encoder$2.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$2.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){s.endCallback(),a.close();break}if(!t)continue;const r=t[0],i=new Uint32Array(t.slice(1,5).reverse().buffer)[0],c=t.slice(5,5+i);if(0!=r){if(2==r)continue;continue}const l=ResponseMsg.decode(Buffer.from(c));s.msgCallback(l.msg)}catch(e){throw a.close(),e}}var __defProp$1=Object.defineProperty,__defNormalProp$1=(e,t,o)=>t in e?__defProp$1(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__publicField$1=(e,t,o)=>__defNormalProp$1(e,"symbol"!=typeof t?t+"":t,o);const qodoApiKey="AIzaSyCMMynYm5VRHj1NOwkfWinX-HYsFArdUbk",_AuthManager=class _AuthManager{constructor(){__publicField$1(this,"tokenInfo",null),__publicField$1(this,"REFRESH_THRESHOLD",300),__publicField$1(this,"storage"),__publicField$1(this,"currentEmail",null),__publicField$1(this,"currentAuthToken",null),this.storage=getStorage()}static getInstance(){return _AuthManager.instance||(_AuthManager.instance=new _AuthManager),_AuthManager.instance}async loadTokenFromStorage(){try{return await this.storage.getItem("qodoToken")}catch(e){return console.error("加载存储的 token 失败:",e),null}}async saveTokenToStorage(e,t,o){try{const a={tokenInfo:e,email:t,authToken:o};await this.storage.setItem("qodoToken",JSON.stringify(a)),this.currentEmail=t,this.currentAuthToken=o}catch(e){console.error("保存 token 失败:",e)}}async refreshAuthToken(e){if(!(null==e?void 0:e.refreshToken)||!this.currentEmail||!this.currentAuthToken)throw new Error("没有可用的刷新令牌或登录信息");try{const t=await fetch(`https://securetoken.googleapis.com/v1/token?key=${qodoApiKey}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({grant_type:"refresh_token",refresh_token:e.refreshToken})}),o=await t.json();if(o.error)throw console.error(o.error.errors),new Error(o.error.message);const a={apiToken:o.id_token,refreshToken:o.refresh_token,expiryTime:Date.now()+1e3*o.expires_in,email:e.email};return await this.saveTokenToStorage(a,this.currentEmail,this.currentAuthToken),this.tokenInfo=a,a}catch(e){throw console.error("刷新token失败:",e),e}}async getValidTokenUseEmail(e,t){if(this.tokenInfo){const o=Date.now();if(this.tokenInfo.expiryTime-o<=1e3*this.REFRESH_THRESHOLD)try{return(await this.refreshAuthToken(this.tokenInfo)).apiToken}catch(o){if(e&&t){return(await this.signInWithEmailLink(e,t)).apiToken}throw o}return this.tokenInfo.apiToken}const o=await this.loadTokenFromStorage();if(console.log("加载token从storage",o),o){if(e&&t&&(e!==o.email||t!==o.authToken)){return(await this.signInWithEmailLink(e,t)).apiToken}this.tokenInfo=o.tokenInfo,this.currentEmail=o.email,this.currentAuthToken=o.authToken;const a=Date.now();if(this.tokenInfo.expiryTime-a<=1e3*this.REFRESH_THRESHOLD)try{return(await this.refreshAuthToken(this.tokenInfo)).apiToken}catch(o){if(e&&t){return(await this.signInWithEmailLink(e,t)).apiToken}throw o}return this.tokenInfo.apiToken}if(e&&t){return(await this.signInWithEmailLink(e,t)).apiToken}throw new Error("无法获取有效的token: 没有存储的认证信息,也没有提供登录参数")}async signInWithEmailLink(e,t){try{const o=await fetch(`https://identitytoolkit.googleapis.com/v1/accounts:signInWithEmailLink?key=${qodoApiKey}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:e,oobCode:t})}),a=await o.json();if(a.error)throw console.error(a.error.errors),new Error(a.error.message);const s={apiToken:a.idToken,refreshToken:a.refreshToken,expiryTime:Date.now()+1e3*parseInt(a.expiresIn),email:a.email};return await this.saveTokenToStorage(s,e,t),this.tokenInfo=s,s}catch(e){throw console.error("登录失败:",e),e}}async getValidTokenUseWithIdp(e){if(this.tokenInfo){const t=Date.now();if(this.tokenInfo.expiryTime-t<=1e3*this.REFRESH_THRESHOLD)try{return(await this.refreshAuthToken(this.tokenInfo)).apiToken}catch(t){if(e){return(await this.signInWithIdp(e)).apiToken}throw t}return this.tokenInfo.apiToken}const t=await this.loadTokenFromStorage();if(console.log("加载token从storage",t),t){if(e&&e!==t.authToken){return(await this.signInWithIdp(e)).apiToken}this.tokenInfo=t.tokenInfo,this.currentEmail=t.email,this.currentAuthToken=t.authToken;const o=Date.now();if(this.tokenInfo.expiryTime-o<=1e3*this.REFRESH_THRESHOLD)try{return(await this.refreshAuthToken(this.tokenInfo)).apiToken}catch(t){if(e){return(await this.signInWithIdp(e)).apiToken}throw t}return this.tokenInfo.apiToken}if(e){return(await this.signInWithIdp(e)).apiToken}throw new Error("无法获取有效的token: 没有存储的认证信息,也没有提供登录参数")}async signInWithIdp(e){try{const t=await fetch(`https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=${qodoApiKey}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({requestUri:"http://localhost",returnSecureToken:!0,postBody:`&id_token=${e}&providerId=google.com`})}),o=await t.json();if(o.error)throw console.error(o.error.errors),new Error(o.error.message);const a={apiToken:o.idToken,refreshToken:o.refreshToken,expiryTime:Date.now()+1e3*parseInt(o.expiresIn),email:o.email};return await this.saveTokenToStorage(a,a.email,e),this.tokenInfo=a,a}catch(e){throw console.error("登录失败:",e),e}}};__publicField$1(_AuthManager,"instance");let AuthManager=_AuthManager;const authManager=AuthManager.getInstance();async function qodo(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";console.log("apiKey:",s);const r=JSON.parse(s),i=await authManager.getValidTokenUseWithIdp(r.token);console.log("当前有效token:",i);const c=getRandomUuidv4(),l=getRandomUuidv4();let d=o.messages.pop().content;"system"===o.messages[0].role&&(o.messages[0].role="user",o.messages.splice(1,0,{role:"assistant",content:"你的问题很好,请补充,我接下来会回答"}));let p=o.messages.filter((e=>"system"!==e.role)).map((e=>({role:e.role,content:e.content,..."user"===e.role?{command:"chat",mode:"freeChat"}:{}})));p=[];const u=await fetch("https://api.gen.qodo.ai/v2/chats/chat",{method:"POST",headers:{"user-agent":"axios/1.6.2",host:"api.gen.qodo.ai","content-type":"application/json",Authorization:`Bearer ${i}`},body:JSON.stringify({max_remote_context:0,remote_context_tags:[],max_repo_context:5,user_data:{installation_id:c,installation_fingerprint_uuid:l,editor_version:"1.96.1",extension_version:"0.12.7",os_platform:"win32",os_version:"v20.18.1",editor_type:"vscode"},task:"",chat_input:d,previous_messages:p,user_context:[],repo_context:[],custom_model:o.model})});if(!u.ok)return errorResponse(u);const m=u.body.pipeThrough(new TextDecoderStream).getReader(),{readable:h,writable:g}=new TransformStream;return streamJsonResponseBodies(m,g,o.model),new Response(h,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const encoder$1=new TextEncoder;async function streamJsonResponseBodies(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),msgCallback:e=>{a.write(encoder$1.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$1.encode("data: [DONE]\n\n"))},buff:""};for(;;)try{const{value:t,done:o}=await e.read();if(o){s.endCallback(),a.close();break}if(!t)continue;if(0==t.trim().endsWith("}")){s.buff+=t;continue}s.buff+=t;const r=s.buff;s.buff="";try{r.split("\n").forEach((e=>{if(!e)return;const t=JSON.parse(e);"reference_context"!==t.sub_type&&onParse(t,s)}))}catch(e){console.error("parse error: ",t,r,e)}}catch(e){throw a.close(),e}}function onParse(e,t){try{let o=e.data.content;o.includes("")&&(o=o.replace("","")),t.msgCallback(o)}catch(e){throw e}}var __defProp=Object.defineProperty,__defNormalProp=(e,t,o)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__publicField=(e,t,o)=>__defNormalProp(e,"symbol"!=typeof t?t+"":t,o);const protoDefinition='\n syntax = "proto3";\n\n\n// AI对话请求消息\nmessage PredictWithStream {\n string modelName = 1; // AI模型名称\n Conversation context = 2; // 对话上下文\n}\n\n\n// 表示单条消息内容\nmessage Message {\n int32 roleType = 1; // 1: user, 2: assistant 等角色类型\n string content = 2; // 具体的消息内容\n}\n\n// 对话上下文\nmessage Conversation {\n Message messages = 2; // 对话历史消息列表\n string systemPrompt = 3; // 系统指令/提示语\n}\n\n// AI对话请求\nmessage Predict {\n string modelName = 1; // AI模型名称\n Conversation context = 2; // 对话上下文\n}\n\n\n\n\nmessage PredictWithStreamResponse {\n int32 statusCode = 2; // 状态码 200\n ResponseContainer data = 4; // 响应数据\n}\n\n\n// 对话结果内容\nmessage DialogueResult {\n int64 resultType = 1; // 结果类型为3\n string content = 2; // JSON格式的具体内容\n}\n\n// 响应内容包装\nmessage ResponseWrapper {\n DialogueResult result = 2; // 包装的对话结果\n}\n\n// 外层响应包装\nmessage ResponseContainer {\n ResponseWrapper response = 1; // 最外层包装\n}\n\n// AI聊天响应\nmessage PredictResponse {\n int32 statusCode = 2; // 状态码 200\n ResponseContainer data = 4; // 响应数据\n}\n\n';class ProtobufHandler{constructor(){__publicField(this,"root"),__publicField(this,"PredictWithStream"),__publicField(this,"Predict"),__publicField(this,"PredictResponse"),__publicField(this,"PredictWithStreamResponse"),this.loadProtoTypes()}loadProtoTypes(){this.root=protobuf.parse(protoDefinition).root,this.PredictWithStream=this.root.lookupType("PredictWithStream"),this.Predict=this.root.lookupType("Predict"),this.PredictResponse=this.root.lookupType("PredictResponse"),this.PredictWithStreamResponse=this.root.lookupType("PredictWithStreamResponse")}async createPredictWithStream(e,t,o){const a=this.PredictWithStream.create({modelName:e,context:{messages:{roleType:1,content:t},systemPrompt:o}});return this.PredictWithStream.encode(a).finish()}async createPredict(e,t,o){const a=this.Predict.create({modelName:e,context:{messages:{roleType:1,content:t},systemPrompt:o}});return this.Predict.encode(a).finish()}}async function createJWT(){return"eyJvcyI6ImZhOTIyNzU4LWZiZWYtNDAxNS1iNzM0LWIwMjE5MmU4ZjMwZCIsInVzZXJfaWQiOiJVTktOT1dOIiwidXNlcl9lbWFpbCI6IlVOS05PV04iLCJjbGllbnRfaXBfYWRkcmVzcyI6IlVOS05PV04iLCJjb3VudHJ5X2lwX25hbWUiOiJVTktOT1dOIiwiY291bnRyeV9pcF9hZGRyZXNzIjoiVU5LTk9XTiIsImNvdW50cnlfaXBfY29kZSI6IlVOS05PV04iLCJvcGVyYXRpbmdfc3lzdGVtIjoid2luZG93cyIsIm9zX3NlcnZlcl92ZXJzaW9uIjoiMTAuMS4xNSIsImFsZyI6IkhTMjU2IiwidHlwIjoiSldUIn0.eyJzdHJlYW1Jbml0Ijp0cnVlLCJ0aW1lc3RhbXAiOiIyMDI0LTEyLTEwVDEyOjAxOjI0LjI0NjE3MloiLCJpYXQiOjE3MzM4MzIwODQsImV4cCI6MTczMzgzMjE0NH0.EB-5eyZn3nik2secKX_6X038xofpIYWBy9snDzV6fOI"}process.env.NODE_TLS_REJECT_UNAUTHORIZED="0";class GrpcClient{constructor(){__publicField(this,"client"),__publicField(this,"protobufHandler"),__publicField(this,"metadata",null),this.protobufHandler=new ProtobufHandler,credentials.createSsl(null,null,null,{checkServerIdentity:()=>{}});this.client=new Client("runtime-native-io-vertex-inference-grpc-service.aot.runtime.services:443",credentials.createSsl(),{"grpc.primary_user_agent":"dart-grpc/2.0.0","grpc.max_receive_message_length":-1,"grpc.max_send_message_length":-1,"grpc.max_concurrent_streams":1e3})}async initialize(){try{const e=await this.createMetadata();return new Promise(((t,o)=>{this.client.makeUnaryRequest("/runtime.aot.machine_learning.parents.vertex.VertexInferenceService/Initialize",(e=>Buffer.from([])),(e=>e),{},e,((e,a)=>{if(e)return console.error("Initialize error:",e),void o(e);t(a)}))}))}catch(e){throw console.error("Error in initialize:",e),e}}async initializeWithTask(){try{const e=await this.createMetadata();return e.add("os-server-predict-task","messageTitle"),new Promise(((t,o)=>{this.client.makeUnaryRequest("/runtime.aot.machine_learning.parents.vertex.VertexInferenceService/Initialize",(e=>Buffer.from([])),(e=>e),{},e,((e,a)=>{if(e)return console.error("Initialize with task error:",e),void o(e);t(a)}))}))}catch(e){throw console.error("Error in initialize with task:",e),e}}async sendPredictWithStream(e){try{const t=await this.createMetadata(),o=await this.protobufHandler.createPredictWithStream(e.model,e.message,e.systemPrompt);let a=!1;const s=this.client.makeServerStreamRequest("/runtime.aot.machine_learning.parents.vertex.VertexInferenceService/PredictWithStream",(e=>Buffer.from(e)),(e=>{try{return this.protobufHandler.PredictWithStreamResponse.decode(new Uint8Array(e))}catch(e){throw console.error("响应解析错误:",e),e}}),o,t);s.on("data",(async t=>{if(!a&&t.data)try{await e.onData(t.data.response.result.content)}catch(t){a||(a=!0,s.cancel(),await e.onError(t))}})),s.on("end",(async()=>{a||(a=!0,await e.onEnd())})),s.on("error",(async t=>{a||(a=!0,s.cancel(),await e.onError(t))}))}catch(t){await e.onError(t)}}async createMetadata(){const e=await createJWT();return this.metadata=new Metadata,this.metadata.add("authorization",`Bearer ${e}`),this.metadata.add("os","UNKNOWN"),this.metadata.add("user_id","UNKNOWN"),this.metadata.add("user_email","UNKNOWN"),this.metadata.add("client_ip_address","UNKNOWN"),this.metadata.add("country_ip_name","UNKNOWN"),this.metadata.add("country_ip_address","UNKNOWN"),this.metadata.add("country_ip_code","UNKNOWN"),this.metadata.add("operating_system","windows"),this.metadata.add("os_server_version","11.0.3"),this.metadata}async sendPredictRequest(e){try{const t=await this.createMetadata(),o=await this.protobufHandler.createPredict(e.model,e.message,e.systemPrompt);return new Promise(((e,a)=>{const s=this.client.makeClientStreamRequest("/runtime.aot.machine_learning.parents.vertex.VertexInferenceService/Predict",(e=>Buffer.from(e)),(e=>this.protobufHandler.PredictResponse.decode(Uint8Array.from(e))),t,((t,o)=>{t?a(t):e(o)}));s.write(o,(e=>{e?a(e):s.end()})),s.end();let r="";s.on("data",(e=>{r+=e.content.toString()})),s.on("error",(e=>{a(e)}))}))}catch(e){throw console.error("Error in sendRequest:",e),e}}}const encoder=new TextEncoder,client=new GrpcClient;async function pieces(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel,(null==a?void 0:a.apiKey)?a.apiKey:t.authorization&&extractBearerToken(t.authorization);let s="";"system"===o.messages[0].role&&(s=o.messages.shift().content);const r=MergeMessages(o.messages);try{const e=`You are a software developer who specializes in providing assistance to other developers.I would like you to answer coding-related questions in a helpful and straightforward manner.The included context will be the codeblocks that you have previously generated within this conversation.1. Read and understand the query thoroughly. 2. Use all information provided to provide a clear and helpful response. 3. If you include a code example, you must include it in the proper markdown code block syntax. it is critical that you specify the proper code language in the beginning of the markdown code. 4. If you are completely unable to answer the query, say "I'm sorry, I can't answer that." 5. Answer the following question only if you know the answer or can make a well-informed guess; otherwise tell me you don't know it.Previously generated codeblocks in chronological order:\nPreviously generated code blocks:\nNo previously generated code blocks\n\nRecent message history in chronological order:\n${s}\nRelevant past chat message:\nNo relevant messages\n\n\n`,{readable:t,writable:o}=new TransformStream,a=o.getWriter(),i=getRandomUuidv4();return(async()=>{try{await client.sendPredictWithStream({model:"claude-3-5-sonnet@20240620",message:r,systemPrompt:e,onData:async e=>{const t=toOpenAIResponse(i,e,"claude-3-5-sonnet",!0),o=`data: ${JSON.stringify(t)}\n\n`;await a.write(encoder.encode(o))},onEnd:async()=>{await a.write(encoder.encode("data: [DONE]\n\n")),await a.close()},onError:async e=>{console.error("流处理错误:",e);const t=`data: ${JSON.stringify({error:e.message})}\n\n`;await a.write(encoder.encode(t)),await a.close()}})}catch(e){console.error("处理流错误:",e),await a.close()}})(),new Response(t,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){console.error("Error in main:",e)}}const llm_providers={coze_com:coze_com,coze_cn:coze_cn,vercel:vercel,openai:openai,github_copilot:github_copilot,ernie:ernie,hunyuan:hunyuan,chatglm:chatglm,tongyi:tongyi,wanzhi:wanzhi,coze:coze,huggingface:huggingface,lmsys:lmsys,spark:spark,cloudflare:cloudflare,mistral_ai:mistral_ai,anthropic:anthropic,cohere:cohere,gemini:gemini,claude:claude,kimi:kimi,gemini_vertex:gemini_vertex,anthropic_vertex:anthropic_vertex,openai_vertex:openai_vertex,mistralai_vertex:mistralai_vertex,chatgpt:chatgpt,lyihub:lyihub,deepinfra:deepinfra,replicate:replicate,vecmul:vecmul,magai:magai,azure:azure,blackbox:blackbox,cursor:cursor,zed:zed,pieces:pieces,qodo:qodo,genspark:genspark$2,qwenlm:qwenlm,deepseek:deepseek,deepseek_com:deepseek_com,genspark_image:genspark$1,imagefx:genspark,bing_image:bing_image,siliconflow_image:siliconflow_image,cloudflare_image:cloudflare_image,designer:designer,grok:grok,n:n,firefly:firefly,yuanbao:yuanbao};export{llm_providers as l}; +import{r as readBody,b as getQuery,c as useStorage}from"../nitro/nitro.mjs";import{v4}from"uuid";import{g as getStorage,D as DEVICE_ID}from"./storage.mjs";import*as crypto from"node:crypto";import{createHash as createHash$1}from"node:crypto";import{EventSourceParserStream}from"eventsource-parser/stream";import{createParser}from"eventsource-parser";import http2 from"http2";import FormData$1 from"form-data";import{WebSocket}from"ws";import*as jose from"jose";import{spawn}from"child_process";import protobuf from"protobufjs";import{credentials,Client,Metadata}from"@grpc/grpc-js";const separator=":";async function generateSHA256(e){return await createHash("sha256",e,"hex")}async function createHash(e,t,o="hex"){const a={sha256:"SHA-256",sha512:"SHA-512",sha1:"SHA-1",sha384:"SHA-384"}[e.toLowerCase()];if(!a)throw new Error(`Unsupported hash algorithm: ${e}`);const s=(new TextEncoder).encode(t),r=await crypto.subtle.digest(a,s);switch(o.toLowerCase()){case"hex":return Array.from(new Uint8Array(r)).map((e=>e.toString(16).padStart(2,"0"))).join("");case"base64":return btoa(String.fromCharCode(...new Uint8Array(r)));case"buffer":return r;default:throw new Error(`Unsupported encoding: ${o}`)}}async function createHmac(e,t,o){const a=await crypto.subtle.importKey("raw",(new TextEncoder).encode(t),{name:"HMAC",hash:e},!1,["sign"]),s=await crypto.subtle.sign("HMAC",a,(new TextEncoder).encode(o));return Array.from(new Uint8Array(s)).map((e=>e.toString(16).padStart(2,"0"))).join("")}function md5(e,t="utf8",o="hex"){const a=crypto.createHash("md5");return Buffer.isBuffer(e)?a.update(e):a.update(e,t),a.digest(o)}function uuid(e=!0){return e?v4():v4().replace(/\-/g,"")}function getRandomUuidv4(){return v4()}function randHex(e){const t="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";let o="";for(let a=0;a{const t=new Date,o=t.getFullYear().toString()+(t.getMonth()+1).toString().padStart(2,"0")+t.getDate().toString().padStart(2,"0");let a=0;for(let e=0;ee[Math.floor(Math.random()*e.length)];let t=`${randomChoice(["Mozilla/5.0","AppleWebKit/537.36","Chrome","Safari","Opera","Firefox"])} (${randomChoice(["Windows NT 10.0; Win64; x64","Macintosh; Intel Mac OS X 10_15_7","X11; Linux x86_64"])})`;t+=` ${randomChoice(["AppleWebKit/537.36","Gecko/20100101","Trident/7.0"])}`,t.includes("AppleWebKit")&&(t+=" (KHTML, like Gecko)");const o=randomChoice(["Chrome","Safari","Firefox","Edge"]);return t+=` ${o}/${randomChoice(e)}`,"Chrome"===o&&(t+=` Safari/${randomChoice(e)}`),t}async function errorResponse(e){const t=e.headers.get("content-type");if(null===t)return new Response(e.statusText,{status:e.status,statusText:e.statusText,headers:{"Content-Type":"text/plain; charset=utf-8"}});if(t.includes("application/json")){const t=await e.json();return new Response(JSON.stringify(t),{status:e.status,statusText:e.statusText,headers:{"Content-Type":"application/json"}})}{const t=await e.text();return console.error(t,e.status,e.statusText),new Response(t,{status:e.status,statusText:e.statusText,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function getMediaType(e){const t=e.match(/^data:(.*?);base64,/);return t&&t.length>1?t[1]:null}function MergeMessages(e){if(!e||0===e.length)return"";let t="";for(let o=0;o0&&(r.choices[0].delta={content:t,type:s})):(r.object="chat.completion",r.usage={prompt_tokens:0,completion_tokens:0,total_tokens:0},r.choices[0].message={role:"assistant",content:t}),r}function toImageResponse(e,t){return{id:e,created:Math.floor(Date.now()/1e3),model:"",object:"chat.images",choices:t}}function timestamp(){return Date.now()}function unixTimestamp(){return parseInt(""+Date.now()/1e3)}function parseStrCookies(e){return e.split(";").filter(Boolean).reduce(((e,t)=>{const[o,a]=t.trim().split("=");return e[decodeURIComponent(o)]=decodeURIComponent(a||""),e}),{})}async function openai(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";return o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel,await requestOpenAI(e.context.model.apiBase,s,o)}async function requestOpenAI(e,t,o,a=null){try{o.meta&&delete o.meta,o.hasOwnProperty("system_prompt")&&delete o.system_prompt,o.hasOwnProperty("stream")||(o.stream=!1),a||(a={}),a["content-type"]||(a["content-type"]="application/json"),a.Authorization||a["api-key"]||!t||(a.Authorization=`Bearer ${t}`);const s=await fetch(e,{method:"POST",headers:a,body:JSON.stringify({...o})});if(o.stream)return new Response(s.body,{status:s.status,statusText:s.statusText,headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}});if(s.ok){const e=await s.json();return new Response(JSON.stringify(e),{status:s.status,statusText:s.statusText,headers:{"Content-Type":"application/json"}})}return errorResponse(s)}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}let copilotToken={token:"",expires_at:0,key:""},copilotClinet={vscode_sessionid:"",machineid:""};async function authenticate$1(e){const t=await fetch("https://api.github.com/copilot_internal/v2/token",{method:"GET",headers:{authorization:`token ${e}`,"editor-version":"vscode/1.95.3","editor-plugin-version":"copilot-chat/0.23.2024102903","user-agent":"GitHubCopilotChat/0.23.2024102903"}}),o=await t.json();if(t.ok)return o.key=e,o;throw new Error(o.message)}async function github_copilot(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";try{(""===copilotToken.token||(new Date).getTime()>1e3*copilotToken.expires_at||copilotToken.key!==s)&&(copilotToken=await authenticate$1(s))}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}if(""===copilotClinet.vscode_sessionid){const e=getRandomUuidv4()+String(Math.round((new Date).getTime()));copilotClinet.vscode_sessionid=e}if(""===copilotClinet.machineid){const e=Math.floor(1e11*Math.random()).toString(16);copilotClinet.machineid=await generateSHA256(e)}o.stream?(o.top_p=1,o.n=1,o.messages=[...o.messages]):(delete o.temperature,delete o.max_tokens,"system"===o.messages[0].role&&(o.messages[0].role="user"),o.messages=[...o.messages]);return await requestOpenAI("https://api.individual.githubcopilot.com/chat/completions",copilotToken.token,o,{"Content-Type":"application/json","copilot-integration-id":"vscode-chat","editor-plugin-version":"copilot-chat/0.23.2024102903","editor-version":"vscode/1.95.3","openai-intent":"conversation-panel","openai-organization":"github-copilot","user-agent":"GitHubCopilotChat/0.23.2024102903","vscode-machineid":copilotClinet.machineid,"Vscode-Sessionid":copilotClinet.vscode_sessionid,"x-github-api-version":"2023-07-07","X-Request-Id":getRandomUuidv4(),"sec-fetch-site":"none","sec-fetch-mode":"no-cors","sec-fetch-dest":"empty","accept-encoding":"gzip, deflate, br, zstd"})}let glmToken={token:"",expires_at:0,key:""};const encoder$x=new TextEncoder,GLM_DEFAULT_ASSISTANT_ID="65940acff94777010aa6b796",FAKE_HEADERS$c={Accept:"*/*","Accept-Encoding":"gzip, deflate, br",Connection:"keep-alive",Host:"chatglm.cn",Origin:"https://chatglm.cn","Sec-Ch-Ua":'"Chromium";v="122", "Not(A:Brand";v="24", "Google Chrome";v="122"',"Sec-Ch-Ua-Mobile":"?0","Sec-Ch-Ua-Platform":'"Windows"',"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36"},glm_deveice_id=randHex(32);async function authenticate(e){const t=await fetch("https://chatglm.cn/chatglm/backend-api/v1/user/refresh",{method:"POST",headers:{...FAKE_HEADERS$c,authorization:`Bearer ${e}`,Referer:"https://chatglm.cn/main/alltoolsdetail"}}),o=await t.json();if(t.ok&&0==o.status)return{token:o.result.accessToken,expires_at:(new Date).getTime()+36e5,key:e};throw new Error(o.message)}async function chatglm(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";try{(""===glmToken.token||(new Date).getTime()>glmToken.expires_at||glmToken.key!==s)&&(glmToken=await authenticate(s))}catch(e){return console.error(e),new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}let r=o.conversationId||"",i=null,c=GLM_DEFAULT_ASSISTANT_ID;a&&(c=a.apiAgentId?a.apiAgentId:c,r=a.apiConversationId?a.apiConversationId:r),i=""!==r?messagesPrepare([o.messages.pop()],[],!0):messagesPrepare(o.messages,[],!1);try{let e=""===r;const t=await fetch("https://chatglm.cn/chatglm/backend-api/assistant/stream",{method:"POST",headers:{...FAKE_HEADERS$c,Authorization:`Bearer ${glmToken.token}`,"content-type":"application/json",Referer:c==GLM_DEFAULT_ASSISTANT_ID?"https://chatglm.cn/main/alltoolsdetail":`https://chatglm.cn/main/gdetail/${c}`},body:JSON.stringify({assistant_id:c,conversation_id:r,meta_data:{mention_conversation_id:"",is_test:!1,input_question_type:"xxxx",channel:"",draft_id:"",quote:""},messages:i})});if(!t.ok)return errorResponse(t);const a=t.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),removeConversationId=t=>{0!=e&&removeConversation$5(t,c)};if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$q(a,t,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let s,l;for(;;){const{value:e,done:t}=await a.read();if(t){const e=JSON.parse(l.data);s=toOpenAIResponse(e.id,e.parts[0].content[0].text,e.model,!1),removeConversationId(e.conversation_id);break}e&&(l=e)}return new Response(JSON.stringify(s),{status:t.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function messagesPrepare(e,t,o=!1){let a;if(o||e.length<2)a=e.reduce(((e,t)=>Array.isArray(t.content)?t.content.reduce(((e,t)=>isObject(t)&&"text"==t.type?e+(t.text||"")+"\n":e),e):e+`${t.content}\n`),"");else{let t=e[e.length-1];if(Array.isArray(t.content)&&t.content.some((e=>"object"==typeof e&&["file","image_url"].includes(e.type)))){let t={content:"关注用户最新发送文件和消息",role:"system"};e.splice(e.length-1,0,t)}a=(e.reduce(((e,t)=>{const o=t.role.replace("system","<|sytstem|>").replace("assistant","<|assistant|>").replace("user","<|user|>");return Array.isArray(t.content)?t.content.reduce(((e,t)=>isObject(t)&&"text"==t.type?e+(`${o}\n`+t.text||"")+"\n":e),e):e+`${o}\n${t.content}\n`}),"")+"<|assistant|>\n").replace(/\!\[.+\]\(.+\)/g,"").replace(/\/mnt\/data\/.+/g,"")}const s=t.filter((e=>!e.width&&!e.height)),r=t.filter((e=>e.width||e.height)).map((e=>(e.image_url=e.file_url,e)));return[{role:"user",content:[{type:"text",text:a},...0==s.length?[]:[{type:"file",file:s}],...0==r.length?[]:[{type:"image",image:r}]]}]}function onParse$t(e,t){try{const o=JSON.parse(e.data);if("finish"==o.status)return void t.endCallback();if("intervene"==o.status){const e=o.last_error&&o.last_error.intervene_text?`\n\n${o.last_error.intervene_text}`:"";return t.msgCallback(e),void t.endCallback()}t.id||(t.id=o.id),t.conversation_id||(t.conversation_id=o.conversation_id),t.model||(t.model=o.parts.length&&o.parts[0].model);const a=o.parts.reduce(((e,o)=>{const{status:a,content:s,meta_data:r}=o;if(!Array.isArray(s))return e;return e+s.reduce(((e,o)=>{const{status:s,type:i,text:c,image:l,code:d,content:p}=o;if("init"==s&&t.textChunkLength>0&&(t.textOffset+=t.textChunkLength+1,t.textChunkLength=0,e+="\n"),"text"==i)return t.toolCall&&(e+="\n",t.textOffset++,t.toolCall=!1),"finish"==s&&(t.textChunkLength=c.length),e+c;if("quote_result"==i&&"finish"==a&&r&&Array.isArray(r.metadata_list)){const o=r.metadata_list.reduce(((e,t)=>e+`检索 ${t.title}(${t.url}) ...`),"")+"\n";return t.textOffset+=o.length,t.toolCall=!0,e+o}if("image"==i&&Array.isArray(l)&&"finish"==a){const o=l.reduce(((e,t)=>e+(/^(http|https):\/\//.test(t.image_url)?`![图像](${t.image_url||""})`:"")),"")+"\n";return t.textOffset+=o.length,t.toolCall=!0,e+o}if("code"==i&&"init"==s){let o="";t.codeGenerating||(t.codeGenerating=!0,o="```python\n");const a=d.substring(t.codeTemp.length,d.length);return t.codeTemp+=a,t.textOffset+=o.length+a.length,e+o+a}if("code"==i&&"finish"==s&&t.codeGenerating){const o="\n```\n";return t.codeGenerating=!1,t.codeTemp="",t.textOffset+=o.length,e+o}return"execution_output"==i&&"string"==typeof p&&"done"==s&&t.lastExecutionOutput!=p?(t.lastExecutionOutput=p,t.textOffset+=p.length+1,e+p+"\n"):e}),"")}),""),s=a.substring(t.content.length-t.textOffset,a.length);s&&(t.content+=s,t.msgCallback(s))}catch(e){throw e}}async function streamJsonResponseBodies$q(e,t,o){const a=t.getWriter();let s={id:"",model:"",conversation_id:"",content:"",toolCall:!1,codeGenerating:!1,textChunkLength:0,codeTemp:"",lastExecutionOutput:"",textOffset:0,msgCallback:e=>{a.write(encoder$x.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0))}\n\n`))},endCallback:()=>{a.write(encoder$x.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){a.close(),o&&o(s.conversation_id);break}if(!t)continue;onParse$t(t,s)}catch(e){throw a.close(),e}}async function removeConversation$5(e,t=GLM_DEFAULT_ASSISTANT_ID){(await fetch("https://chatglm.cn/chatglm/backend-api/assistant/conversation/delete",{method:"POST",headers:{...FAKE_HEADERS$c,Authorization:`Bearer ${glmToken.token}`,"content-type":"application/json",Referer:"https://chatglm.cn/main/alltoolsdetail","App-Name":"chatglm",Platform:"pc","X-Device-Id":glm_deveice_id,"X-Request-Id":randHex(32)},body:JSON.stringify({assistant_id:t,conversation_id:e})})).ok||console.error("移除会话失败")}let qwenToken={login_tongyi_ticket:"",login_aliyunid_ticket:"",tongyi_guest_ticket:"",tongyi_sso_ticket:""};const encoder$w=new TextEncoder,FAKE_HEADERS$b={"accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="125", "Chromium";v="125", "Not.A/Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-site","x-platform":"pc_tongyi","x-xsrf-token":"cd0ebf7c-7a70-412b-8e57-43f83ee081d5",Host:"qianwen.biz.aliyun.com",Referer:"https://tongyi.aliyun.com/","Referrer-Policy":"strict-origin-when-cross-origin"};async function tongyi(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=JSON.parse(s);qwenToken.login_tongyi_ticket=r.login_tongyi_ticket,qwenToken.login_aliyunid_ticket=r.login_aliyunid_ticket,qwenToken.tongyi_guest_ticket=r.tongyi_guest_ticket,qwenToken.tongyi_sso_ticket=r.tongyi_sso_ticket;let i=o.conversationId||"",c="";a&&(c=a.apiAgentId?a.apiAgentId:c,i=a.apiConversationId?a.apiConversationId:i);const l=o.messages;if(l.length>=2&&"assistant"===l[l.length-2].role){const e=l[l.length-2].id;c=e||c}i&&!c&&(c="",i="");let d=null,p=""===i;d=""!==i?l.pop().content:MergeMessages(l);const removeConversationId=e=>{0!=p&&removeConversation$4(e)};try{const e=http2.connect("https://qianwen.biz.aliyun.com"),t=e.request({":method":"POST",":path":"/dialog/conversation","content-type":"application/json",Accept:"text/event-stream",Cookie:getCookie$3(),...FAKE_HEADERS$b,Referer:`https://tongyi.aliyun.com/qianwen/?spm=5176.28103460.0.0.40f713f4tP8ZYT&sessionId=${i}`});if(t.write(JSON.stringify({model:"",action:"next",mode:"chat",userAction:"chat",requestId:getRandomUuidv4(),sessionId:i,sessionType:"text_chat",parentMsgId:c,params:{fileUploadBatchId:getRandomUuidv4()},contents:[{content:d,contentType:"text"}]})),t.setEncoding("utf8"),t.on("end",(()=>{e.close()})),o.stream){const{readable:e,writable:o}=new TransformStream;return http2StreamJsonResponseBodies(t,o,removeConversationId),t.end(),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let a=await new Promise(((e,o)=>{let a,s={id:"",convId:"",content:"",msgCallback:(e,t)=>{a=e},endCallback:()=>{const t=toOpenAIResponse(`${a.sessionId}-${a.msgId}`,s.content,"",!1);removeConversationId(s.convId),e(t)}};const r=createParser({onEvent:e=>{onParse$s(e,s)}});t.on("data",(e=>r.feed(e.toString()))),t.on("error",o),t.end()}));return new Response(JSON.stringify(a),{status:200,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$s(e,t){try{if("[DONE]"==e.data)return void t.endCallback();const o=JSON.parse(e.data);if(o.errorCode)return void t.msgCallback(o.errorCode);!t.convId&&o.sessionId&&(t.convId=o.sessionId),!t.id&&o.msgId&&(t.id=o.msgId);const a=(o.contents||[]).reduce(((e,t)=>{const{contentType:o,role:a,content:s}=t;return"text"!=o&&"text2image"!=o?e:"assistant"==a||isString$1(s)?e+s:e}),"");let s=a.substring(t.content.length,a.length);s&&"text2image"==o.contentType&&(s=s.replace(/https?:\/\/[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=\,]*)/gi,(e=>{const t=new URL(e);return t.search="",t.toString()}))),t.content=a,t.msgCallback(s)}catch(e){throw e}}async function http2StreamJsonResponseBodies(e,t,o){const a=t.getWriter();let s={id:"",convId:"",content:"",msgCallback:e=>{a.write(encoder$w.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,"",!0))}\n\n`))},endCallback:()=>{a.write(encoder$w.encode("data: [DONE]\n\n")),o&&o(s.convId)}};const r=createParser({onEvent:e=>{onParse$s(e,s)}});e.on("data",(e=>r.feed(e.toString()))),e.once("error",(()=>a.close())),e.once("close",(()=>a.close()))}async function removeConversation$4(e){const t=await fetch("https://qianwen.biz.aliyun.com/dialog/session/delete",{method:"POST",headers:{Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br, zstd","Content-Type":"application/json",Cookie:getCookie$3(),...FAKE_HEADERS$b},body:JSON.stringify({sessionId:e})});t.ok||console.error(`移除会话失败:${t}`)}function getCookie$3(){let e=[];for(let t in qwenToken)qwenToken.hasOwnProperty(t)&&""!==qwenToken[t]&&e.push(`${t}=${qwenToken[t]}`);return e.join("; ")}let yiToken={token:"",expires_at:0,key:""};const encoder$v=new TextEncoder,FAKE_HEADERS$a={"accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","app-name":"wanzhi-web","cache-control":"no-cache","device-info":'{"web_id":"MCfvYwUh4iKX-gH55xrA5","baidu_id":"18f9fffca0502883465b60"}',"pop-url":"https://www.wanzhi.com/",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="125", "Chromium";v="125", "Not.A/Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-site"};async function wanzhi(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";yiToken.token=s;try{let e=o.conversationId||"";a&&(e=a.apiConversationId?a.apiConversationId:e);let t="",s=!1;if(""!==e)t=o.messages.pop().content;else{const a=await fetch("https://api.wanzhi.com/api/v1/chat/getChannel",{headers:{...FAKE_HEADERS$a,accept:"application/json","content-type":"application/json",Authorization:`${yiToken.token}`},body:JSON.stringify({model:o.model,templateId:"",message:t,language:"Chinese"}),method:"POST"});if(!a.ok)return errorResponse(a);let r=await a.json();if(200!=r.code)throw new Error(r.message);e=r.data.channelId,t=MergeMessages(o.messages),s=!0}const r=await fetch("https://api.wanzhi.com/api/v1/chat/send",{method:"POST",headers:{...FAKE_HEADERS$a,Authorization:`${yiToken.token}`,"content-type":"application/json",accept:"text/event-stream"},body:JSON.stringify({isGetJson:!0,version:"1.4.0",language:"zh-CN",channelId:e,message:t,model:o.model,messageIds:[],improveId:null,richMessageId:null,isImprove:!1,isNewChat:!1,action:null,isGeneratePpt:!1,isSlidesChat:!1,imageUrls:[],roleEnum:null,pptCoordinates:"",docPromptTemplateId:null})});if(!r.ok)return errorResponse(r);const i=r.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),removeConversationId=async()=>{0!=s&&removeConversation$3(e)};if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$p(i,t,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let c={content:"",id:"",model:"",msgCallback:e=>{c.content+=e.content,c.id=e.messageId}};for(;;){const{value:e,done:t}=await i.read();if(t){removeConversationId();break}e&&onParse$r(e,c)}return new Response(JSON.stringify(toOpenAIResponse(c.id,c.content,c.model,!1)),{status:r.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$r(e,t){try{const o=JSON.parse(e.data);if(!isArray(o))return;const a=o[0];if(t.model||(t.model=a.model),!a.hasOwnProperty("chunkId")||!a.hasOwnProperty("content"))return;t.msgCallback(a)}catch(e){throw e}}async function streamJsonResponseBodies$p(e,t,o){const a=t.getWriter();let s={model:"",msgCallback:e=>{a.write(encoder$v.encode(`data: ${JSON.stringify(toOpenAIResponse(e.messageId,e.content,s.model,!0))}\n\n`))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){a.write(encoder$v.encode("data: [DONE]\n\n")),o&&o(),a.close();break}if(!t)continue;onParse$r(t,s)}catch(e){throw a.close(),e}}async function removeConversation$3(e){(await fetch("https://api.wanzhi.com/api/v1/channel/delete",{headers:{...FAKE_HEADERS$a,accept:"application/json","content-type":"application/json",Authorization:`${yiToken.token}`},body:JSON.stringify({channelId:e}),method:"POST"})).ok||console.error("移除会话失败")}async function coze(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=o.model,i=o.conversationId||"";a&&(r=a.apiAgentId?a.apiAgentId:r,i=a.apiConversationId?a.apiConversationId:i);let c="";"system"===o.messages[0].role&&a&&a.data.useConversationSetting&&(c=o.messages.shift().content+"\r\n");const l=o.messages.map(((e,t,o)=>{const a={role:e.role};"assistant"===a.role&&(a.type="answer");const s=t===o.length-1;return isArray(e.content)?(a.content_type="object_string",a.content=JSON.stringify(e.content.map((e=>"image_url"===e.type?null:("text"===e.type&&s&&(e.text=`${c}${e.content}`),e))).filter((e=>null!==e)))):(a.content=e.content,a.content_type="text",s&&(a.content=`${c}${a.content}`)),a})),d={bot_id:r,user_id:"seedchat",stream:o.stream,auto_save_history:!0,additional_messages:l};if(!d.bot_id)return new Response("未设置botid",{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}});try{if(o.stream){const t=await fetch(`${e.context.model.apiBase}?conversation_id=${i}`,{method:"POST",headers:{Authorization:`Bearer ${s}`,"content-type":"application/json",Connection:"Keep-alive",Accept:"*/*"},body:JSON.stringify(d)});if(!t.ok)return errorResponse(t);if(t.headers.get("content-type").includes("application/json")){const e=await t.json();return new Response(JSON.stringify(e),{status:400,statusText:t.statusText,headers:{"Content-Type":"application/json"}})}const o=t.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),{readable:a,writable:r}=new TransformStream;return streamJsonResponseBodies$o(o,r),new Response(a,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const t=toOpenAIResponse("","不支持非流响应","",!1);return new Response(JSON.stringify(t),{status:400,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$u=new TextEncoder;async function streamJsonResponseBodies$o(e,t){const o=t.getWriter();let a={id:"",msgCallback:e=>{o.write(encoder$u.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,"",!0))}\n\n`))},endCallback:()=>{o.write(encoder$u.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:s}=await e.read();if(s){o.close();break}if(!t)continue;onParse$q(t,a)}catch(e){throw o.close(),e}}function onParse$q(e,t){try{const o=JSON.parse(e.data);if(t.id||(t.id=o.id),"conversation.chat.failed"===e.event)return t.msgCallback(o.last_error.msg),void t.endCallback();if("done"===e.event)return void t.endCallback();if("conversation.message.delta"!==e.event)return;t.msgCallback(o.content)}catch(e){throw e}}const huggingface_request_data={hf_chat:"",token:"",aws_waf_token:""},FakeHeaders$4={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Microsoft Edge";v="125", "Chromium";v="125", "Not.A/Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","Referrer-Policy":"strict-origin-when-cross-origin","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.6367.207 Electron/30.0.6 Safari/537.36"},getCookie$2=()=>`hf-chat=${huggingface_request_data.hf_chat};token=${huggingface_request_data.token}; aws-waf-token=${huggingface_request_data.aws_waf_token}`;async function huggingface(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=o.conversationId||"";a&&(r=a.apiConversationId?a.apiConversationId:r);try{const e=JSON.parse(s);huggingface_request_data.hf_chat=e["hf-chat"],huggingface_request_data.token=e.token,huggingface_request_data.aws_waf_token=e["aws-waf-token"];let t="",a=!1;if(""===r){const e=await fetch("https://huggingface.co/chat/conversation",{headers:{...FakeHeaders$4,"content-type":"application/json",cookie:getCookie$2(),Referer:"https://huggingface.co/chat",origin:"https://huggingface.co"},body:JSON.stringify({model:o.model}),method:"POST"});if(!e.ok)return errorResponse(e);let s=await e.json();r=s.conversationId,a=!0,t=MergeMessages(o.messages)}else t=o.messages.pop().content;const removeConversationId=async()=>{0!=a&&removeConversation$2(r)},i=await getLastId(r);if(!i)return new Response("获取ID失败",{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}});const c=JSON.stringify({inputs:t,id:i,is_retry:!1,is_continue:!1,web_search:!1,tools:[]}),l=new FormData$1;l.setBoundary("----WebKitFormBoundary"+Math.random().toString(36).substring(2)),l.append("data",c);const d=await fetch(`https://huggingface.co/chat/conversation/${r}`,{method:"POST",headers:{...FakeHeaders$4,cookie:getCookie$2(),referer:`https://huggingface.co/chat/conversation/${r}`,origin:"https://huggingface.co","Content-Type":`multipart/form-data; boundary=${l.getBoundary()}`},body:l.getBuffer()});if(!d.ok)return errorResponse(d);const p=d.body.pipeThrough(new TextDecoderStream).getReader();if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseString$1(p,t,o.model,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let u={content:"",id:getRandomUuidv4(),endCallback:()=>{},msgCallback:e=>{u.content+=e}};for(;;){const{value:e,done:t}=await p.read();if(t){removeConversationId();break}if(!e)continue;const o=e.split("\n");for(let e=0;e0&&onParse$p(o[e],u)}return new Response(JSON.stringify(toOpenAIResponse(u.id,u.content,o.model,!1)),{status:d.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$t=new TextEncoder;async function streamJsonResponseString$1(e,t,o,a){const s=t.getWriter();let r={id:getRandomUuidv4(),msgCallback:e=>{s.write(encoder$t.encode(`data: ${JSON.stringify(toOpenAIResponse(r.id,e,o,!0))}\n\n`))},endCallback:()=>{s.write(encoder$t.encode("data: [DONE]\n\n"))}};for(;;)try{const{done:t,value:o}=await e.read();if(t){s.close(),a&&a();break}if(!o)continue;const i=o.split("\n");for(let e=0;e0&&onParse$p(i[e],r)}catch(e){throw s.close(),e}}function onParse$p(e,t){try{const o=JSON.parse(e);if("finalAnswer"===o.type)return void t.endCallback(o.text);if("stream"!=o.type)return;t.msgCallback(o.token.split("\0").join(""))}catch(e){throw e}}async function removeConversation$2(e){(await fetch(`https://huggingface.co/chat/conversation/${e}`,{headers:{...FakeHeaders$4,cookie:getCookie$2(),Referer:`https://huggingface.co/chat/conversation/${e}`},method:"DELETE"})).ok||console.error("移除会话失败")}async function getLastId(e){const t=await fetch(`https://huggingface.co/chat/conversation/${e}/__data.json?x-sveltekit-invalidated=11`,{headers:{...FakeHeaders$4,cookie:getCookie$2(),Referer:`https://huggingface.co/chat/conversation/${e}`},method:"GET"});if(!t.ok)throw new Error("获取ID失败");const o=await t.text(),a=JSON.parse(getFirstJson(o)).nodes[1].data,s=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;let r;for(let e=a.length-1;e>=0;e--)if("string"==typeof a[e]&&s.test(a[e])){r=a[e];break}return r}function getFirstJson(e){const t=e.indexOf("\n");return-1===t?"":e.substring(0,t+1)}let ernieToken={refresh_token:"",expires_in:2592e3,session_key:"",access_token:"",scope:"",session_secret:"",secretId:"",expirationTime:0};function getTimestampString(){return(new Date).toISOString().replace(/\.\d*/,"")}function getQueryString(e){let t="",o=[];if(e){for(let t in e)o.push(t);o=o.sort()}if(o&&o.length>0){for(let a of o)t+=encodeURIComponent(a)+"="+encodeURIComponent(e[a])+"&";t=t.substr(0,t.length-1)}return t}async function getAuthString(e,t,o,a,s,r,i){let c=`bce-auth-v1/${e}/${i}/1800`,l=r+"\n"+a+"\n"+s+"\n"+(encodeURIComponent("host")+":"+encodeURIComponent(o)+"\n"+encodeURIComponent("x-bce-date")+":"+encodeURIComponent(i)),d=await createHmac("SHA-256",t,c);return`${c}/host;x-bce-date/${await createHmac("SHA-256",d,l)}`}async function ernie(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",[r,i]=s.split(separator);try{if(""===ernieToken.access_token||(new Date).getTime()>ernieToken.expirationTime||ernieToken.secretId!==r){const e="iam.bj.baidubce.com",t="application/json; charset=utf-8",o="/v1/BCE-BEARER/token",a="GET";let s=getTimestampString(),c=getQueryString({expireInSeconds:2592e3}),l=await getAuthString(r,i,e,o,c,a,s),d=await fetch("https://"+e+o+"?"+c,{method:a,headers:{Authorization:l,"Content-Type":t,Host:e,"x-bce-date":s}}),p=await d.json();ernieToken.secretId=r,ernieToken.access_token=p.token,ernieToken.expirationTime=new Date(p.expireTime).getTime()}}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}return await requestOpenAI("https://qianfan.baidubce.com/v2/chat/completions",ernieToken.access_token,o)}new TextEncoder;const encoder$s=new TextEncoder;async function hunyuan(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",[r,i]=s.split(separator);const c={secretId:r,secretKey:i},l="ap-beijing",d={httpProfile:{endpoint:"hunyuan.tencentcloudapi.com"}}.httpProfile.endpoint,p=l,u="hunyuan",m=Math.floor((new Date).getTime()/1e3),h=getDate(m),g=JSON.stringify({Temperature:o.temperature?o.temperature:1,Stream:o.stream||!1,Model:o.model,Messages:o.messages.map((e=>({Role:e.role,Content:e.content})))}),f="content-type;host",y=getHash(g),w="TC3-HMAC-SHA256",_=h+"/"+u+"/tc3_request",k=w+"\n"+m+"\n"+_+"\n"+getHash("POST\n/\n\n"+("content-type:application/json; charset=utf-8\nhost:"+d+"\n")+"\n"+f+"\n"+y),b=sha256(h,"TC3"+c.secretKey),T=sha256(u,b),C=sha256("tc3_request",T),A=sha256(k,C,"hex"),v=w+" Credential="+c.secretId+"/"+_+", SignedHeaders="+f+", Signature="+A;try{const e=await fetch(`https://${d}`,{method:"POST",headers:{Authorization:v,Host:d,"Content-Type":"application/json; charset=utf-8","X-TC-Action":"ChatCompletions","X-TC-Timestamp":`${m}`,"X-TC-Version":"2023-09-01","X-TC-Region":p},body:g});if(o.stream){if(e.headers.get("content-type").includes("application/json")){const t=await e.json();return new Response(JSON.stringify(t),{status:400,statusText:e.statusText,headers:{"Content-Type":"application/json"}})}const t=e.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),{readable:a,writable:s}=new TransformStream;return streamJsonResponseBodies$n(t,s,o.model),new Response(a,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const t=(await e.json()).Response,a=toOpenAIResponse(t.id,t.Choices[0].Message.Content,o.model,!1);return new Response(JSON.stringify(a),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function streamJsonResponseBodies$n(e,t,o){const a=t.getWriter();let s={id:"",msgCallback:e=>{a.write(encoder$s.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$s.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){a.close();break}if(!t)continue;onParse$o(t,s)}catch(e){throw a.close(),e}}function onParse$o(e,t){try{const o=JSON.parse(e.data);if("stop"===o.Choices[0].FinishReason)return void t.endCallback();t.id||(t.id=o.Id),t.msgCallback(o.Choices[0].Delta.Content)}catch(e){throw e}}function sha256(e,t="",o){return crypto.createHmac("sha256",t).update(e).digest(o)}function getHash(e,t="hex"){return crypto.createHash("sha256").update(e).digest(t)}function getDate(e){const t=new Date(1e3*e);return`${t.getUTCFullYear()}-${("0"+(t.getUTCMonth()+1)).slice(-2)}-${("0"+t.getUTCDate()).slice(-2)}`}var __defProp$4=Object.defineProperty,__defNormalProp$4=(e,t,o)=>t in e?__defProp$4(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__publicField$4=(e,t,o)=>__defNormalProp$4(e,"symbol"!=typeof t?t+"":t,o);const encoder$r=new TextEncoder,FakeHeaders$3={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Microsoft Edge";v="126"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","Referrer-Policy":"strict-origin-when-cross-origin"},baseCookies="_gid=GA1.2.68066840.1717017781; _ga_K6D24EE9ED=GS1.1.1717087813.23.1.1717088648.0.0.0; _gat_gtag_UA_156449732_1=1; _ga_R1FN4KJKJH=GS1.1.1717087813.37.1.1717088648.0.0.0; _ga=GA1.1.1320014795.1715641484";class LmsysAPI{constructor(){__publicField$4(this,"baseUrl"),__publicField$4(this,"sessionHash"),__publicField$4(this,"cookie"),__publicField$4(this,"textModel"),__publicField$4(this,"stream"),__publicField$4(this,"ver",""),__publicField$4(this,"fn"),this.baseUrl="https://arena.lmsys.org"}init(e,t,o=null,a){this.textModel=o,this.fn=JSON.parse(t),this.sessionHash=this.generateHashFromUUID(e),this.stream=a}generateHashFromUUID(e){return crypto.createHash("sha1").update(e).digest("base64").replace(/[+/=]/g,"").substring(0,11).toLowerCase()}async rJoin(e){const t=await fetch(`${this.baseUrl}/queue/join?`,{method:"POST",headers:{...FakeHeaders$3,cookie:this.cookie,Origin:`${this.baseUrl}`,Referer:`${this.baseUrl}/`},body:JSON.stringify(e)});if(t.headers.get("content-type").includes("application/json")){const e=await t.json();console.log(e);const o=t.headers.getSetCookie();for(const e of o)e.includes("SERVERID")&&(this.cookie=this.mergeCookies(baseCookies,e))}else{const e=await t.text();if(e.includes("Just a moment...")||e.includes("Attention Required! | Cloudflare"))throw new Error("被cf盾了")}}async getRequestAnswer(e=!1){const t=await fetch(`${this.baseUrl}/queue/data?session_hash=${this.sessionHash}`,{method:"GET",headers:{...FakeHeaders$3,cookie:this.cookie,accept:"text/event-stream",Origin:`${this.baseUrl}`,Referer:`${this.baseUrl}/`}});if(!e)return;if(!t.ok)return errorResponse(t);const o=t.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(this.stream){const{readable:e,writable:t}=new TransformStream;return this.streamJsonResponseBodies(o,t),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let a={id:"",lastText:"",msgCallback:e=>{},endCallback:()=>{}};for(;;)try{const{done:e,value:t}=await o.read();if(e)break;if(!t)continue;onParse$n(t,a)}catch(e){throw e}const s=toOpenAIResponse(a.id,a.lastText,this.textModel,!1);return new Response(JSON.stringify(s),{status:t.status,headers:{"Content-Type":"application/json"}})}async getAnswer(e){try{this.cookie=await this.fetchCookie();let t={data:[null,this.textModel,e,null],event_data:null,fn_index:this.fn.fn_index_send,trigger_id:this.fn.trigger_id,session_hash:this.sessionHash};await this.rJoin(t),await this.getRequestAnswer();const o={temperature:.7,topP:1,maxTokens:1024};return t={data:[null,`${o.temperature}`,`${o.topP}`,`${o.maxTokens}`],event_data:null,fn_index:this.fn.fn_index_recv,trigger_id:this.fn.trigger_id,session_hash:this.sessionHash},await this.rJoin(t),await this.getRequestAnswer(!0)}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async fetchCookie(){if(""!==this.ver){const e=`SERVERID=${this.ver}|${Math.random().toString(36).substring(7)}`;return this.mergeCookies(baseCookies,e)}let e=0;for(;e<3;){e++;try{const e=await fetch(`${this.baseUrl}/info`,{method:"GET",headers:{...FakeHeaders$3,accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",cookie:baseCookies,Origin:`${this.baseUrl}`,Referer:`${this.baseUrl}/`},body:null});if(e.headers.get("content-type").includes("application/json")){const t=e.headers.getSetCookie();for(const e of t)if(e.includes("SERVERID")){const t=this.getCookie(e,"SERVERID");if(!t)continue;const o=t.split("|");if(o.length<2||!o[0].startsWith("S")||"S0"===o[0])continue;this.ver=o[0];const a=`SERVERID=${this.ver}|${Math.random().toString(36).substring(7)}`;return this.mergeCookies(baseCookies,a)}}(await e.text()).includes("Just a moment...")&&console.log("被盾了"),await new Promise((e=>setTimeout(e,1e3)))}catch(e){console.error(e)}}return""}mergeCookies(e,t){return e+"; "+t}getCookie(e,t){const o=e.split(";");for(const e of o){const[o,a]=e.split("=");if(o.trim()===t)return a}}async clearChat(){const e={data:[],event_data:null,fn_index:50,trigger_id:118,session_hash:this.sessionHash};await this.rJoin(e),await this.getRequestAnswer()}async streamJsonResponseBodies(e,t){const o=t.getWriter();let a={id:"",lastText:"",msgCallback:e=>{o.write(encoder$r.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,this.textModel,!0))}\n\n`))},endCallback:()=>{o.write(encoder$r.encode("data: [DONE]\n\n"))}};for(;;)try{const{done:t,value:s}=await e.read();if(t){o.close();break}if(!s)continue;onParse$n(s,a)}catch(e){throw o.close(),e}}}function onParse$n(e,t){try{const o=JSON.parse(e.data);if("unexpected_error"===o.msg)return t.msgCallback(o.message),void t.endCallback();if("close_stream"===o.msg)return void t.endCallback();if("estimation"===o.msg)return;if("process_starts"===o.msg)return;if("process_completed"===o.msg)return;if(t.id||(t.id=o.event_id),!o.output||!o.output.data||!o.output.data[0])return;const a=t.lastText;t.lastText=o.output.data[1][0][2].replace(/▌$/,""),t.msgCallback(t.lastText.substring(a.length))}catch(e){throw e}}const lmsysApi=new LmsysAPI;async function lmsys(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;const s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):'{"fn_index_send":52,"fn_index_recv":53,"trigger_id":110}',r=o.conversationId||getRandomUuidv4();return lmsysApi.init(r,s,o.model,o.stream),await lmsysApi.getAnswer(o.messages.pop().content)}const encoder$q=new TextEncoder;async function spark(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",[r,i,c]=s.split(separator),l=await getWebsocketUrl(o.model,i,c);const d=new WebSocket(l);if(d.onopen=()=>{const e={header:{app_id:r},parameter:{chat:{domain:o.model,temperature:o.temperature||.5,max_tokens:o.max_tokens||4096}},payload:{message:{text:o.messages}}};d.send(JSON.stringify(e))},o.stream){const{readable:p,writable:u}=new TransformStream,m=u.getWriter(),h={id:"",msgCallback:e=>{m.write(encoder$q.encode(`data: ${JSON.stringify(toOpenAIResponse(h.id,e,o.model,!0))}\n\n`))},endCallback:()=>{m.write(encoder$q.encode("data: [DONE]\n\n"))}};return d.onmessage=e=>{onParse$m(e,h)},d.onerror=e=>{h.msgCallback(e.message),m.close()},d.onclose=()=>{m.close()},new Response(p,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}try{async function waitForContent(){return new Promise(((e,t)=>{const a={id:"",content:"",msgCallback:e=>{a.content+=e},endCallback:()=>{e(toOpenAIResponse(a.id,a.content,o.model,!1))}};d.onmessage=e=>{onParse$m(e,a)},d.onerror=e=>{t(e.message)},d.onclose=()=>{""===a.content&&t("WebSocket closed before receiving content.")}}))}const g=await waitForContent();return new Response(JSON.stringify(g),{status:200,headers:{"Content-Type":"application/json"}})}catch(f){return new Response(f.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function getWebsocketUrl(e,t,o){let a="";switch(e){case"4.0Ultra":a="wss://spark-api.xf-yun.com/v4.0/chat";break;case"generalv3.5":a="wss://spark-api.xf-yun.com/v3.5/chat";break;case"generalv3":a="wss://spark-api.xf-yun.com/v3.1/chat";break;case"generalv2":a="wss://spark-api.xf-yun.com/v2.1/chat";break;case"general":a="wss://spark-api.xf-yun.com/v1.1/chat"}return new Promise(((e,s)=>{const r=new URL(a),i=(new Date).toUTCString(),c=`host: ${r.host}\ndate: ${i}\nGET ${r.pathname} HTTP/1.1`,l=crypto.createHmac("sha256",o).update(c).digest().toString("base64"),d=`api_key="${t}", algorithm="hmac-sha256", headers="host date request-line", signature="${l}"`,p=Buffer.from(d).toString("base64");e(`wss://${r.host}${r.pathname}?authorization=${p}&date=${i}&host=${r.host}`)}))}function onParse$m(e,t){try{const{header:o,payload:a}=JSON.parse(e.data);if(2==o.status)return t.msgCallback(a.choices.text[0].content),void t.endCallback();t.id||(t.id=o.sid),t.msgCallback(a.choices.text[0].content)}catch(e){throw e}}async function cloudflare(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",[r,i]=s.split(separator);try{const e={messages:o.messages,stream:o.stream,temperature:o.temperature||.5},t=await fetch(`https://api.cloudflare.com/client/v4/accounts/${r}/ai/run/${o.model}`,{method:"POST",headers:{"content-type":"application/json",Authorization:`Bearer ${i}`},body:JSON.stringify(e)});if(!t.ok)return errorResponse(t);if(o.stream){if(t.headers.get("content-type").includes("application/json")){const e=await t.json();return new Response(JSON.stringify(e),{status:400,statusText:t.statusText,headers:{"Content-Type":"application/json"}})}const e=t.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),{readable:a,writable:s}=new TransformStream;return streamJsonResponseBodies$m(e,s,o.model),new Response(a,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const a=await t.json(),s=toOpenAIResponse(getRandomUuidv4(),a.result.response,o.model,!1);return new Response(JSON.stringify(s),{status:t.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$p=new TextEncoder;async function streamJsonResponseBodies$m(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),msgCallback:e=>{a.write(encoder$p.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$p.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){a.close();break}if(!t)continue;onParse$l(t,s)}catch(e){throw a.close(),e}}function onParse$l(e,t){try{if("[DONE]"===e.data)return void t.endCallback();const o=JSON.parse(e.data);t.msgCallback(o.response)}catch(e){throw e}}const fakeHeaders$1={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="125", "Chromium";v="125", "Not.A/Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","Referrer-Policy":"strict-origin-when-cross-origin"},mistral_ai_request_data={ory_session_key:"",ory_session_value:""},getCookie$1=()=>`${mistral_ai_request_data.ory_session_key}=${mistral_ai_request_data.ory_session_value};NEXT_LOCALE=en;ory_kratos_continuity=MTcxOTc3MDk2OHxEWDhFQVFMX2dBQUJFQUVRQUFCZl80QUFBUVp6ZEhKcGJtY01Jd0FoYjNKNVgydHlZWFJ2YzE5dmFXUmpYMkYxZEdoZlkyOWtaVjl6WlhOemFXOXVCbk4wY21sdVp3d21BQ1JpTmpOaFpqY3lOUzFsTURBNExUUXpPRGd0WVdKa05pMHpNRFUwWkRNMU1XTTVZalE9fPfD0SHupntGNg_XP_fUaHjsTLm9A0KmO1zh2MG71eLM;intercom-device-id-xel0jpx9=13cf9530-2b5d-4ee2-85e8-1f7c7f0423b1;intercom-session-xel0jpx9=U1I4MmFFRG1FN3RiNHdYaTFQNUNuL3RzaFdpQWpEMSs0U0FlSUlOMjR2V0pGeVZuK0FXT3lsMEJMa0FrSDZVTS0tRlJaSGZ1QXg1U2VYQTNxd2FUWkltZz09--495660161dc146e9de5bbdc172d8c5252df24db5;`;async function mistral_ai(e){var t,o,a;const s=Object.fromEntries(e.headers),r=await readBody(e),i=e.context.meta||r.meta;r.model=r.model&&"default"!==r.model?r.model:null==i?void 0:i.apiModel;let c=(null==i?void 0:i.apiKey)?i.apiKey:s.authorization?extractBearerToken(s.authorization):"",l=r.conversationId||"";i&&(l=i.apiConversationId?i.apiConversationId:l);try{const[e,s]=c.split(separator);mistral_ai_request_data.ory_session_key=e,mistral_ai_request_data.ory_session_value=s;let i=!1;if(""===l){const e=await fetch("https://chat.mistral.ai/api/trpc/message.newChat?batch=1",{headers:{...fakeHeaders$1,"content-type":"application/json",cookie:getCookie$1(),Referer:"https://chat.mistral.ai"},body:JSON.stringify({0:{json:{content:MergeMessages(r.messages),rag:!1}}}),method:"POST"});if(!e.ok)return errorResponse(e);let s=await e.json();l=null==(a=null==(o=null==(t=s[0].result)?void 0:t.data)?void 0:o.json)?void 0:a.chatId,i=!0}const removeConversationId=async()=>{0!=i&&removeConversation$1(l)},d=await fetch("https://chat.mistral.ai/api/chat",{method:"POST",headers:{...fakeHeaders$1,cookie:getCookie$1(),"Content-Type":"application/json",Referer:`https://chat.mistral.ai/chat/${l}`},body:JSON.stringify({chatId:l,model:r.model,messageInput:i?void 0:r.messages.pop().content,messageId:i?void 0:getRandomUuidv4(),mode:i?"retry":"append"})});if(!d.ok)return errorResponse(d);const p=d.body.pipeThrough(new TextDecoderStream).getReader();if(r.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseString(p,t,r.model,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let u={content:"",id:getRandomUuidv4(),endCallback:()=>{},msgCallback:e=>{u.content+=e}};for(;;){const{value:e,done:t}=await p.read();if(t){removeConversationId();break}if(!e)continue;const o=e.split("\n");for(let e=0;e0&&onParse$k(o[e],u)}return new Response(JSON.stringify(toOpenAIResponse(u.id,u.content,r.model,!1)),{status:d.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$o=new TextEncoder;async function streamJsonResponseString(e,t,o,a){const s=t.getWriter();let r={id:getRandomUuidv4(),msgCallback:e=>{s.write(encoder$o.encode(`data: ${JSON.stringify(toOpenAIResponse(r.id,e,o,!0))}\n\n`))},endCallback:()=>{s.write(encoder$o.encode("data: [DONE]\n\n"))}};for(;;)try{const{done:t,value:o}=await e.read();if(t){s.close(),a&&a();break}if(!o)continue;const i=o.split("\n");for(let e=0;e0&&onParse$k(i[e],r)}catch(e){throw s.close(),e}}function onParse$k(e,t){try{const o=e[0];if("2"===o)return;if(""!==o&&o||t.endCallback(),"0"!==o)return;let a=e.slice(3,e.length-1);a=decodeEscapedCharacters(a),t.msgCallback(a)}catch(e){throw e}}function decodeEscapedCharacters(e){const t={"\\n":"\n","\\r":"\r","\\t":"\t","\\b":"\b","\\f":"\f","\\v":"\v","\\'":"'",'\\"':'"',"\\\\":"\\"};return e.replace(/\\(n|r|t|b|f|v|'|\"|\\)/g,(e=>t[e]))}async function removeConversation$1(e){(await fetch("https://chat.mistral.ai/api/trpc/chat.delete?batch=1",{headers:{...fakeHeaders$1,cookie:getCookie$1(),"content-type":"application/json",Referer:`https://chat.mistral.ai/chat/${e}`},method:"POST",body:JSON.stringify({0:{json:{id:e}}})})).ok||console.error("移除会话失败")}var __defProp$3=Object.defineProperty,__defNormalProp$3=(e,t,o)=>t in e?__defProp$3(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__publicField$3=(e,t,o)=>__defNormalProp$3(e,t+"",o);class GoogleAuth{constructor(){__publicField$3(this,"googleTokenCache",{accessToken:"",expiry:0,client_id:"",client_secret:"",refresh_token:"",token_type:""})}async getGoogleCredentialsAccessToken(e,t,o){const a=Date.now()/1e3;if(this.googleTokenCache.accessToken&&a{let o="gcloud";"win32"===process.platform&&(o="gcloud.cmd");const a=spawn(o,["auth","print-access-token"]);let s="";a.stdout.on("data",(e=>{s+=e.toString()})),a.stderr.on("data",(e=>{console.error(`错误输出: ${e}`),t(new Error(`错误输出: ${e}`))})),a.on("close",(o=>{0!==o?t(new Error(`子进程退出,退出码 ${o}`)):e(s.trim())}))}))}}const encoder$n=new TextEncoder,auth$2=new GoogleAuth;async function anthropic(e){return await _anthropic(e,(async(t,o)=>await fetch("https://api.anthropic.com/v1/messages",{method:e.method,headers:{"Content-Type":"application/json","x-api-key":`${t}`,"anthropic-version":"2023-06-01"},body:JSON.stringify(o)})))}async function anthropic_vertex(e){var t,o,a,s;const r=getQuery(e);let i=r.location||(null==(o=null==(t=e.context.meta)?void 0:t.query)?void 0:o.location),c=r.project||(null==(s=null==(a=e.context.meta)?void 0:a.query)?void 0:s.project);return await _anthropic(e,(async(e,t)=>{if(e)if(e.includes("client_email")){const t=JSON.parse(e);e=await auth$2.getServiceAccountAccessToken(t.client_email,t.private_key)}else{const[t,o,a]=e.split(separator);e=await auth$2.getGoogleCredentialsAccessToken(t,o,a)}else e=await GoogleAuth.getGooglePrintAccessToken();t.anthropic_version="vertex-2023-10-16";const o=t.model;delete t.model;const a=`https://${i}-aiplatform.googleapis.com/v1/projects/${c}/locations/${i}/publishers/anthropic/models/${o}:streamRawPredict`;return await fetch(a,{method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${e}`},body:JSON.stringify(t)})}))}async function _anthropic(e,t){const o=Object.fromEntries(e.headers),a=await readBody(e),s=e.context.meta||a.meta,r=(null==s?void 0:s.apiKey)?s.apiKey:o.authorization?extractBearerToken(o.authorization):"";a.model=a.model&&"default"!==a.model?a.model:null==s?void 0:s.apiModel;let i="";"system"===a.messages[0].role&&(i=a.messages.shift().content);try{let e={model:a.model,temperature:a.temperature||1,max_tokens:a.max_tokens||4096,stream:a.stream||!1,system:i,messages:a.messages.map((e=>isArray(e.content)?{role:e.role,content:e.content.map((e=>"text"==e.type?e:"image_url"==e.type?{type:"image",source:{type:"base64",media_type:getMediaType(e.image_url.url)||"image/jpeg",data:e.image_url.url.split(",")[1]||""}}:void 0))}:e))};const o=await t(r,e);if(!o.ok)return errorResponse(o);if(e.stream){const e=o.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),{readable:t,writable:a}=new TransformStream;return streamJsonResponseBodies$l(e,a),new Response(t,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const s=await o.json();return new Response(JSON.stringify(toOpenAIResponse(s.id,s.content[0].text,s.model)),{status:o.status,headers:{"Content-Type":"application/json"}})}catch(e){return console.error(e),new Response(JSON.stringify(e),{status:404,headers:{"Content-Type":"application/json"}})}}async function streamJsonResponseBodies$l(e,t){const o=t.getWriter();let a={id:"",model:"",msgCallback:e=>{o.write(encoder$n.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,a.model,!0))}\n\n`))},endCallback:()=>{o.write(encoder$n.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:s}=await e.read();if(s){o.close();break}if(!t)continue;onParse$j(t,a)}catch(e){throw o.close(),e}}function onParse$j(e,t){try{if("message_start"===e.event){const o=JSON.parse(e.data);return t.id=o.message.id,void(t.model=o.message.model)}if("ping"===e.event)return;if("content_block_start"===e.event)return;if("content_block_stop"===e.event)return void t.endCallback();if("content_block_delta"===e.event){const o=JSON.parse(e.data);t.msgCallback(o.delta.text)}}catch(e){throw e}}async function coze_com(e){const t=await readBody(e),o=e.context.meta||t.meta;t.model=t.model&&"default"!==t.model?t.model:null==o?void 0:o.apiModel;const a=JSON.parse(o.apiKey);let s="";"system"===t.messages[0].role&&(s=t.messages.shift().content+"\r\n");let r={preset_bot:"coze_home",conversation_id:"7331923316200112146",local_message_id:randHex(21),content_type:"text",query:`${s}${t.messages.pop().content}`,extra:{},scene:3,draft_mode:!1,stream:!0,chat_history:[],mention_list:[],device_id:generateFixedIntegerFromDate(9)};return await _coze(e,a.msToken,r)}async function _coze(e,t,o){var a,s,r;const i=await readBody(e),c=e.context.meta||i.meta;i.model=i.model&&"default"!==i.model?i.model:null==c?void 0:c.apiModel;const l=getRandomUuidv4();o=(null==(a=null==c?void 0:c.data)?void 0:a.playground)?null==(s=null==c?void 0:c.data)?void 0:s.playground:o;let d=null==(r=null==c?void 0:c.data)?void 0:r.cozeUrl;d||(process.stdout.write(`cozecom#####${l}#####${t}#####${JSON.stringify(o)}`),d=await new Promise((e=>{let t=setTimeout((()=>{console.error("Timeout: waiting for input"),e(null)}),5e3);const listener=o=>{clearTimeout(t);let a=o.toString();a.startsWith(`cozecom#####${l}#####`)&&(e(a.replace(`cozecom#####${l}#####`,"")),process.stdin.removeListener("data",listener))};process.stdin.on("data",listener)})));try{let e=`https://www.coze.com${d}`;const t=await fetch(e,{method:"POST",headers:{Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"zh-CN","Content-Type":"application/json",Cookie:"i18next=en; passport_csrf_token=f5179141c1974818e626f8f4cd7667f3; passport_csrf_token_default=f5179141c1974818e626f8f4cd7667f3; store-idc=maliva; store-country-code=us; store-country-code-src=uid; odin_tt=f250ba249e3e62f12828b4423305f4315d28c6384e25f27b18e03abd3f4fb3adf71d2c8933f8991cf5207eabf50816f29a748a040504109ab79f3adefc98e579; passport_auth_status=373fd7125b7fedd59554c0f74af2eef1%2C37c2226ca97696536053eba2f987c286; passport_auth_status_ss=373fd7125b7fedd59554c0f74af2eef1%2C37c2226ca97696536053eba2f987c286; sid_guard=26725e058894b05c76833ce275b577a9%7C1717046248%7C5184000%7CMon%2C+29-Jul-2024+05%3A17%3A28+GMT; uid_tt=82872796e139416ef645afbdf1a894c691e7e6938d08d0bb9a529b2cf3200a45; uid_tt_ss=82872796e139416ef645afbdf1a894c691e7e6938d08d0bb9a529b2cf3200a45; sid_tt=26725e058894b05c76833ce275b577a9; sessionid=26725e058894b05c76833ce275b577a9; sessionid_ss=26725e058894b05c76833ce275b577a9; sid_ucp_v1=1.0.0-KDMxNGViNTBjM2QyMTJkMDY4MWYwMmY0NzdhNGRhNDk5M2EzMzc3OWUKIAiCiNrm9b-O4GUQ6JfgsgYY1J0fIAwws_SArgY4CEASEAMaBm1hbGl2YSIgMjY3MjVlMDU4ODk0YjA1Yzc2ODMzY2UyNzViNTc3YTk; ssid_ucp_v1=1.0.0-KDMxNGViNTBjM2QyMTJkMDY4MWYwMmY0NzdhNGRhNDk5M2EzMzc3OWUKIAiCiNrm9b-O4GUQ6JfgsgYY1J0fIAwws_SArgY4CEASEAMaBm1hbGl2YSIgMjY3MjVlMDU4ODk0YjA1Yzc2ODMzY2UyNzViNTc3YTk; msToken=l1rZrtK7I-rrCvQNH5k-z6i935WDz7DRDxYHwizNU6uwPDmX0Dek0SLnPoCEpASUOEmk2K7w2lrBepnUvS4TqDWO2rPO4V6TE-iR5RV-nyCJH3UH4y3tHa6uPO_aZrFB; msToken=l1rZrtK7I-rrCvQNH5k-z6i935WDz7DRDxYHwizNU6uwPDmX0Dek0SLnPoCEpASUOEmk2K7w2lrBepnUvS4TqDWO2rPO4V6TE-iR5RV-nyCJH3UH4y3tHa6uPO_aZrFB; ttwid=1%7Cpzi23E8G88pA4Syzpvpe3MECptlFpQCGH5GavjMDgKo%7C1719135609%7C0a78e8782127db212f5ad28765891f30db6b5eea905a23fc2dee68fd9658cf99; s_v_web_id=verify_lxrcyeix_O8HV7nRd_mc2P_4ok7_9SDD_8784NSsd3sOP",Origin:"https://www.coze.com",Referer:"https://www.coze.com/home","sec-ch-ua":'"Not-A.Brand";v="99", "Chromium";v="124"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-origin","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.6367.243 Electron/30.1.2 Safari/537.36","x-requested-with":"XMLHttpRequest"},body:JSON.stringify(o)});if(!t.ok)return errorResponse(t);if(t.headers.get("content-type").includes("application/json")){const e=await t.json();return new Response(JSON.stringify(e),{status:400,statusText:t.statusText,headers:{"Content-Type":"application/json"}})}const a=t.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(i.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$k(a,t),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let s={content:"",id:getRandomUuidv4(),endCallback:()=>{},msgCallback:e=>{s.content+=e}};for(;;){const{value:e,done:t}=await a.read();if(t)break;e&&onParse$i(e,s)}const r=toOpenAIResponse(s.id,s.content,"",!1);return new Response(JSON.stringify(r),{status:t.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$m=new TextEncoder;async function streamJsonResponseBodies$k(e,t){const o=t.getWriter();let a={id:getRandomUuidv4(),msgCallback:e=>{o.write(encoder$m.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,"",!0))}\n\n`))},endCallback:()=>{o.write(encoder$m.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:s}=await e.read();if(s){o.close();break}if(!t)continue;onParse$i(t,a)}catch(e){throw o.close(),e}}function onParse$i(e,t){try{if("done"===e.event||!e.data)return void t.endCallback();const o=JSON.parse(e.data);if("error"===e.event)return t.msgCallback(o.msg),void t.endCallback();if("answer"!=o.message.type)return;t.msgCallback(o.message.content)}catch(t){throw console.log(e),t}}async function coze_cn(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=getQuery(e);let i=r.token_url.toString()||"",c="",l="",d=null,p=o.model,u=o.conversationId||r.conversation_id.toString()||"";a&&(p=a.apiAgentId?a.apiAgentId:p,u=a.apiConversationId?a.apiConversationId:u);const m=JSON.parse(s);if(d={bot_id:p,conversation_id:u,local_message_id:randHex(21),content_type:"text",query:o.messages.pop().content,extra:{},scene:4,draft_mode:!0,stream:!0,chat_history:[],mention_list:[],device_id:"707811472",space_id:m.space_id},console.log("playground",d),!d.bot_id||!d.conversation_id)return new Response("apiAgentId或者apiConversationId没有配置",{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}});if(""!=i){console.log("token_url",i);const e=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(d)});if(!e.ok)return errorResponse(e);const t=await e.json();c=t.url,l=t.cookies,console.log("cozeUrl",t)}else{const e=getRandomUuidv4();process.stdout.write(`cozecn#####${e}#####${JSON.stringify({body:JSON.stringify(d)})}`),[c,l]=await new Promise((t=>{let o=setTimeout((()=>{console.error("Timeout: waiting for input"),t(null)}),2e3);const listener=a=>{clearTimeout(o);let s=a.toString();s.startsWith(`cozecn#####${e}#####`)&&(t(s.replace(`cozecn#####${e}#####`,"").split("#####")),process.stdin.removeListener("data",listener))};process.stdin.on("data",listener)}))}try{const e=await fetch(c,{method:"POST",headers:{accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache",priority:"u=1, i","rpc-persist-mock-space-id":`${d.space_id}`,"rpc-persist-mock-traffic-caller-id":`${d.bot_id}`,"rpc-persist-mock-traffic-enable":"1","rpc-persist-mock-traffic-scene":"10000","sec-ch-ua":'"Microsoft Edge";v="131", "Chromium";v="131", "Not_A Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.6367.207 Electron/30.0.6 Safari/537.36",Referer:`https://www.coze.cn/space/${d.space_id}/bot/${d.bot_id}`,cookie:l},body:JSON.stringify(d)});if(!e.ok)return errorResponse(e);if(e.headers.get("content-type").includes("application/json")){const t=await e.json();return new Response(JSON.stringify(t),{status:400,statusText:e.statusText,headers:{"Content-Type":"application/json"}})}const t=e.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:o}=new TransformStream;return streamJsonResponseBodies$j(t,o),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let a={content:"",id:getRandomUuidv4(),endCallback:()=>{},msgCallback:e=>{a.content+=e}};for(;;){const{value:e,done:o}=await t.read();if(o)break;e&&onParse$h(e,a)}const s=toOpenAIResponse(a.id,a.content,"",!1);return new Response(JSON.stringify(s),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$l=new TextEncoder;async function streamJsonResponseBodies$j(e,t){const o=t.getWriter();let a={id:getRandomUuidv4(),msgCallback:e=>{o.write(encoder$l.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,"",!0))}\n\n`))},endCallback:()=>{o.write(encoder$l.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:s}=await e.read();if(s){o.close();break}if(!t)continue;onParse$h(t,a)}catch(e){throw o.close(),e}}function onParse$h(e,t){try{if("done"===e.event||!e.data)return void t.endCallback();const o=JSON.parse(e.data);if("answer"!=o.message.type)return;t.msgCallback(o.message.content)}catch(e){throw e}}const FakeHeaders$2={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Microsoft Edge";v="125", "Chromium";v="125", "Not.A/Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin",Referer:"https://sdk.vercel.ai/","Referrer-Policy":"strict-origin-when-cross-origin"};function toBinary(e){let t=new Uint16Array(e.length);for(let o=0;o{let o=setTimeout((()=>{console.error("Timeout: waiting for input"),e(null)}),5e3);const listener=a=>{let s=a.toString();s.startsWith(`vercelai#####${t}#####`)&&(e(s.replace(`vercelai#####${t}#####`,"")),process.stdin.removeListener("data",listener)),clearTimeout(o)};process.stdin.on("data",listener)}));if(null===o)throw new Error("Timeout: waiting for input");e=JSON.parse(o.toString())}const r=await getAntiBotToken(e.Cookie),i=await fetch("https://sdk.vercel.ai/api/generate",{method:"POST",headers:{...e,"Content-Type":"application/json","Custom-Encoding":r},body:JSON.stringify({chatId:0,chatIds:[0],frequencyPenalty:0,maxTokens:o.max_tokens||4096,messages:o.messages,model:o.model,playgroundId:s,presencePenalty:0,stopSequences:[],temperature:o.temperature||.7,topP:o.topP||1})});if(!i.ok)return errorResponse(i);const c=null==(t=i.body)?void 0:t.pipeThrough(new TextDecoderStream).getReader();if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$i(c,t,o.model),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let l={id:getRandomUuidv4(),content:""};for(;;)try{const{value:e,done:t}=await c.read();if(t)break;if(!e)continue;l.content+=e}catch(e){throw e}const d=toOpenAIResponse(l.id,l.content,o.model,!1);return new Response(JSON.stringify(d),{status:i.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$k=new TextEncoder;async function streamJsonResponseBodies$i(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),msgCallback:e=>{a.write(encoder$k.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$k.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){s.endCallback(),a.close();break}if(!t)continue;s.msgCallback(t)}catch(e){throw a.close(),e}}async function cohere(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r={message:o.messages.pop().content,model:o.model,stream:o.stream,chat_history:o.messages.map((e=>{let t="";return"assistant"===e.role&&(t="CHATBOT"),"user"===e.role&&(t="USER"),"system"===e.role&&(t="SYSTEM"),{role:t,message:e.content}})),temperature:o.temperature||.3};try{const e=await fetch("https://api.cohere.com/v1/chat",{method:"POST",headers:{Authorization:`Bearer ${s}`,"content-type":"application/json",Connection:"Keep-alive",Accept:"*/*"},body:JSON.stringify(r)});if(!e.ok)return errorResponse(e);if(o.stream){if(e.headers.get("content-type").includes("application/json")){const t=await e.json();return new Response(JSON.stringify(t),{status:400,statusText:e.statusText,headers:{"Content-Type":"application/json"}})}const t=e.body.pipeThrough(new TextDecoderStream).getReader(),{readable:a,writable:s}=new TransformStream;return streamJsonResponseBodies$h(t,s,o.model),new Response(a,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const t=await e.json(),a=toOpenAIResponse(t.generation_id,t.text,o.model,!1);return new Response(JSON.stringify(a),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$j=new TextEncoder;async function streamJsonResponseBodies$h(e,t,o){const a=t.getWriter();let s={id:"",msg:"",msgCallback:e=>{a.write(encoder$j.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$j.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){a.close();break}if(!t)continue;onParse$g(t,s)}catch(e){throw a.close(),e}}function onParse$g(e,t){try{if(t.msg+=e.trim(),"}"!==t.msg.charAt(t.msg.length-1))return;const o=JSON.parse(t.msg);if(t.msg="","stream-start"===o.event_type)return void(t.id=o.generation_id);if("stream-end"===o.event_type)return void t.endCallback();if("text-generation"!==o.event_type)return;o.text&&t.msgCallback(o.text)}catch(e){throw e}}const auth$1=new GoogleAuth;async function gemini(e){return await _gemini(e,(async(e,t,o,a)=>{const s=a.systemInstruction.parts[0].text;delete a.systemInstruction;const r=a.contents[a.contents.length-1].parts;for(let e=0;e{let t="";"assistant"===e.role&&(t="model"),"user"===e.role&&(t="user");const o=[];return isArray(e.content)?e.content.forEach((e=>{"text"==e.type&&o.push({text:e.text}),"image_url"==e.type&&o.push({inlineData:{mimeType:getMediaType(e.image_url.url)||"image/jpeg",data:e.image_url.url.split(",")[1]||""}})})):o.push({text:e.content}),{role:t,parts:o}})),systemInstruction:{parts:[{text:l}]},generationConfig:{temperature:r.temperature||1}};try{const e=await t(r.model,r.stream,c,d);if(!e.ok)return errorResponse(e);if(r.stream){const t=e.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),{readable:o,writable:a}=new TransformStream;return streamJsonResponseBodies$g(t,a,r.model),new Response(o,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const s=await e.json(),i=toOpenAIResponse(getRandomUuidv4(),null==(a=null==(o=s.candidates[0])?void 0:o.content.parts[0])?void 0:a.text,r.model,!1);return new Response(JSON.stringify(i),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function gemini_vertex(e){var t,o,a,s;const r=getQuery(e);let i=r.location||(null==(o=null==(t=e.context.meta)?void 0:t.query)?void 0:o.location),c=r.project||(null==(s=null==(a=e.context.meta)?void 0:a.query)?void 0:s.project);return await _gemini(e,(async(e,t,o,a)=>{if(o)if(o.includes("client_email")){const e=JSON.parse(o);o=await auth$1.getServiceAccountAccessToken(e.client_email,e.private_key)}else{const[e,t,a]=o.split(separator);o=await auth$1.getGoogleCredentialsAccessToken(e,t,a)}else o=await GoogleAuth.getGooglePrintAccessToken();const s=`https://${i}-aiplatform.googleapis.com/v1/projects/${c}/locations/${i}/publishers/google/models/${e}:${t?"streamGenerateContent?alt=sse":"generateContent"}`;return await fetch(s,{method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${o}`},body:JSON.stringify(a)})}))}const encoder$i=new TextEncoder;async function streamJsonResponseBodies$g(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),msgCallback:e=>{a.write(encoder$i.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$i.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){s.endCallback(),a.close();break}if(!t)continue;onParse$f(t,s)}catch(e){throw a.close(),e}}function onParse$f(e,t){var o,a;try{const s=JSON.parse(e.data);t.msgCallback(null==(a=null==(o=s.candidates[0])?void 0:o.content.parts[0])?void 0:a.text)}catch(e){throw e}}const FAKE_HEADERS$9={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache",priority:"u=1, i","r-timezone":"Asia/Shanghai","sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Microsoft Edge";v="126"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","x-msh-platform":"web","x-traffic-id":"co152og3r0723dm8icg0","Referrer-Policy":"strict-origin-when-cross-origin"},kimi_request_data={refresh_token:"",access_token:"",cookie:""};async function kimi(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";try{const e=JSON.parse(s);kimi_request_data.refresh_token=e.refresh_token,kimi_request_data.access_token=e.access_token,kimi_request_data.cookie=e.cookie;let t=o.conversationId||"";a&&(t=a.apiConversationId?a.apiConversationId:t);let r="",i=!1;if(""!==t)r=o.messages.pop().content;else{const e=await fetch("https://kimi.moonshot.cn/api/chat",{headers:{...FAKE_HEADERS$9,"content-type":"application/json",Referer:"https://kimi.moonshot.cn/",Authorization:`${kimi_request_data.access_token}`,cookie:kimi_request_data.cookie},body:JSON.stringify({name:"未命名会话",is_example:!1,born_from:"",kimiplus_id:"kimi"}),method:"POST"});if(!e.ok)return errorResponse(e);let a=await e.json();t=a.id,r=MergeMessages(o.messages),i=!0}const c=await fetch(`https://kimi.moonshot.cn/api/chat/${t}/completion/stream`,{method:"POST",headers:{...FAKE_HEADERS$9,Authorization:`${kimi_request_data.access_token}`,"content-type":"application/json",Referer:`https://kimi.moonshot.cn/chat/${t}`,cookie:kimi_request_data.cookie},body:JSON.stringify({messages:[{role:"user",content:r}],refs:[],use_search:!0,kimiplus_id:"kimi"})});if(!c.ok)return errorResponse(c);const l=c.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),removeConversationId=async()=>{0!=i&&removeConversation(t)};if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$f(l,t,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let d={content:"",id:"",msgCallback:e=>{d.content+=e},endCallback:()=>{}};for(;;){const{value:e,done:t}=await l.read();if(t){removeConversationId();break}e&&onParse$e(e,d)}return new Response(JSON.stringify(toOpenAIResponse(d.id,d.content,"",!1)),{status:c.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$e(e,t){try{const o=JSON.parse(e.data);if("resp"==o.event)return void(t.id=o.id);if("all_done"==o.event)return void t.endCallback();if("cmpl"!=o.event)return;t.msgCallback(o.text)}catch(e){throw e}}const encoder$h=new TextEncoder;async function streamJsonResponseBodies$f(e,t,o){const a=t.getWriter();let s={id:"",msgCallback:e=>{a.write(encoder$h.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,"",!0))}\n\n`))},endCallback:()=>{a.write(encoder$h.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){o&&o(),a.close();break}if(!t)continue;onParse$e(t,s)}catch(e){throw a.close(),e}}async function removeConversation(e){(await fetch(`https://kimi.moonshot.cn/api/chat/${e}`,{headers:{...FAKE_HEADERS$9,"content-type":"application/json",Authorization:`${kimi_request_data.access_token}`,Referer:"https://kimi.moonshot.cn/kimiplus-square",cookie:kimi_request_data.cookie},method:"DELETE"})).ok||console.error("移除会话失败")}const auth=new GoogleAuth;async function openai_vertex(e){var t,o,a,s;const r=getQuery(e);let i=r.location||(null==(o=null==(t=e.context.meta)?void 0:t.query)?void 0:o.location),c=r.project||(null==(s=null==(a=e.context.meta)?void 0:a.query)?void 0:s.project);const l=Object.fromEntries(e.headers),d=await readBody(e),p=e.context.meta||d.meta;let u=(null==p?void 0:p.apiKey)?p.apiKey:l.authorization?extractBearerToken(l.authorization):"";if(d.model=d.model&&"default"!==d.model?d.model:null==p?void 0:p.apiModel,u)if(u.includes("client_email")){const e=JSON.parse(u);u=await auth.getServiceAccountAccessToken(e.client_email,e.private_key)}else{const[e,t,o]=u.split(separator);u=await auth.getGoogleCredentialsAccessToken(e,t,o)}else u=await GoogleAuth.getGooglePrintAccessToken();const m=`https://${i}-aiplatform.googleapis.com/v1beta1/projects/${c}/locations/${i}/endpoints/openapi/chat/completions`;return await requestOpenAI(m,u,d)}async function mistralai_vertex(e){var t,o,a,s;const r=getQuery(e);let i=r.location||(null==(o=null==(t=e.context.meta)?void 0:t.query)?void 0:o.location),c=r.project||(null==(s=null==(a=e.context.meta)?void 0:a.query)?void 0:s.project);const l=Object.fromEntries(e.headers),d=await readBody(e),p=e.context.meta||d.meta;let u=(null==p?void 0:p.apiKey)?p.apiKey:l.authorization?extractBearerToken(l.authorization):"";if(d.model=d.model&&"default"!==d.model?d.model:null==p?void 0:p.apiModel,u)if(u.includes("client_email")){const e=JSON.parse(u);u=await auth.getServiceAccountAccessToken(e.client_email,e.private_key)}else{const[e,t,o]=u.split(separator);u=await auth.getGoogleCredentialsAccessToken(e,t,o)}else u=await GoogleAuth.getGooglePrintAccessToken();const[m,h]=d.model.split("@");d.model=m;const g=`https://${i}-aiplatform.googleapis.com/v1/projects/${c}/locations/${i}/publishers/mistralai/models/${m}@${h}:streamRawPredict`;return await requestOpenAI(g,u,d)}const gptToken={accessToken:"",oaiDid:"",cfClearance:"",device_id:""},userAgent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",fakeHeaders={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json","oai-echo-logs":"0,25371,1,25374,0,30443,1,30448,0,30611,1,35675,0,36619,1,36622,0,36748","oai-language":"zh-CN",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Microsoft Edge";v="126"',"sec-ch-ua-arch":'"x86"',"sec-ch-ua-bitness":'"64"',"sec-ch-ua-full-version":'"126.0.2592.81"',"sec-ch-ua-full-version-list":'"Not/A)Brand";v="8.0.0.0", "Chromium";v="126.0.6478.127", "Microsoft Edge";v="126.0.2592.81"',"sec-ch-ua-mobile":"?0","sec-ch-ua-model":'""',"sec-ch-ua-platform":'"Windows"',"sec-ch-ua-platform-version":'"15.0.0"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","Referrer-Policy":"strict-origin-when-cross-origin"};function getCookie(){return`oai-did=${gptToken.oaiDid};cf_clearance=${gptToken.cfClearance};`}async function chatgpt(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=o.conversationId||"";a&&(r=a.apiConversationId?a.apiConversationId:r);const i=JSON.parse(s);gptToken.access_token=i.access_token,gptToken.oaiDid=i["oai-did"],gptToken.cfClearance=i.cf_clearance,gptToken.device_id=await getDeviceId();try{const e=o.messages;let t=getRandomUuidv4();e.length>=2&&"assistant"===e[e.length-2].role&&(t=e[e.length-2].id);let a="variant",s="",i=!1;r?s=e.pop().content:(a="next",i=!0,s=MergeMessages(e));const c={action:a,parent_message_id:t,websocket_request_id:getRandomUuidv4(),messages:[{id:getRandomUuidv4(),author:{role:"user"},content:{content_type:"text",parts:[s]},metadata:{}}],model:o.model,timezone_offset_min:-480,history_and_training_disabled:i,conversation_mode:{kind:"primary_assistant"},force_paragen:!1,force_paragen_model_slug:"",force_nulligen:!1,force_rate_limit:!1,reset_rate_limits:!1,force_use_sse:!0,conversation_origin:null,variant_purpose:"none"};r&&(c.conversation_id=r);const removeConversationId=async e=>{};let l=null;for(let e=0;e<3;e++)try{const e=await getRequirementsWithRetry(),t={...fakeHeaders,accept:"text/event-stream",authorization:"Bearer "+gptToken.access_token,Referer:r?`https://chatgpt.com/c/${r}`:"https://chatgpt.com","oai-device-id":gptToken.device_id,cookie:getCookie(),"openai-sentinel-chat-requirements-token":e.token};if(e.proofofwork&&e.proofofwork.required&&(t["openai-sentinel-proof-token"]=generateP(e.proofofwork.seed,e.proofofwork.difficulty,userAgent)),await new Promise((e=>setTimeout(e,1e3))),l=await fetch("https://chatgpt.com/backend-api/conversation",{method:"POST",headers:t,body:JSON.stringify(c)}),l.ok)break;await new Promise((e=>setTimeout(e,1e3)))}catch(e){throw e}if(!l.ok)return errorResponse(l);const d=l.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponse(d,t,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let p={id:"",conversation_id:"",lastText:"",model:"",msgCallback:e=>{},endCallback:()=>{}};for(;;){const{value:e,done:t}=await d.read();if(t){removeConversationId(p.conversation_id);break}e&&onParse$d(e,p)}return new Response(JSON.stringify(toOpenAIResponse(p.id,p.lastText,p.model,!1)),{status:l.status,headers:{"Content-Type":"application/json"}})}catch(e){return console.error(e),new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$g=new TextEncoder;async function streamJsonResponse(e,t,o){const a=t.getWriter();let s={id:"",conversation_id:"",lastText:"",model:"",msgCallback:e=>{a.write(encoder$g.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0))}\n\n`))},endCallback:()=>{a.write(encoder$g.encode("data: [DONE]\n\n"))}};for(;;)try{const{done:t,value:r}=await e.read();if(t){a.close(),o&&o(s.conversation_id);break}if(!r)continue;onParse$d(r,s)}catch(e){throw a.close(),e}}function onParse$d(e,t){try{if("[DONE]"===e.data)return void t.endCallback();const o=JSON.parse(e.data);if(!o.message||!o.message.content.parts||"assistant"!==o.message.author.role)return;t.id||(t.id=o.message.id),t.conversation_id||(t.conversation_id=o.conversation_id),!t.model&&o.message.metadata&&(t.model=o.message.metadata.model_slug);for(const e of o.message.content.parts){const o=t.lastText;t.lastText=e,t.msgCallback(t.lastText.substring(o.length))}}catch(e){throw e}}async function getRequirementsWithRetry(e=3){let t;for(let o=0;osetTimeout(e,500)))}throw t}function generateP(e="",t="",o=null,a=[]){let s;if(a.length>0)s=a[a.length-1];else{let e=[3008,4010,6e3][Math.floor(3*Math.random())]*[1,2,4][Math.floor(3*Math.random())];e=2073600;s={screen:e,parseTime:(new Date).toUTCString(),userAgent:o,counter:0,url:"https://tcr9i.chat.openai.com/v2/35536E1E-65B4-4D96-9D97-6ADB7EFF8147/api.js",dpl:"dpl=1440a687921de39ff5ee56b92807faaadce73f13",language:"en",languageRegion:"en-US",pluginArray:"plugins−[object PluginArray]",reactListening:["_reactListeningcfilawjnerp","_reactListening9ne2dfo1i47","_reactListening410nzwhan2a"][Math.floor(3*Math.random())],eventType:["alert","ontransitionend","onprogress"][Math.floor(3*Math.random())]}}const r=t.length;for(let o=0;o<1e5;o++){s.counter=o;const a=JSON.stringify(s),i=Buffer.from(a).toString("base64");if(crypto.createHash("sha3-512").update(e+i).digest("hex").slice(0,r)<=t)return"gAAAAAB"+i}return"gAAAAABwQ8Lk5FbGpA2NcR9dShT6gYjU7VxZ4D"+Buffer.from(`"${e}"`).toString("base64")}const encoder$f=new TextEncoder,FAKE_HEADERS$8={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Microsoft Edge";v="126"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-site",Referer:"https://lyihub.com/","Referrer-Policy":"strict-origin-when-cross-origin"};async function lyihub(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=o.conversationId||"";a&&(r=a.apiConversationId?a.apiConversationId:r);let i=!1;if(!r){const e=await fetch("https://api.lyihub.com/arena/battle",{headers:{...FAKE_HEADERS$8,Authorization:`bearer ${s}`},method:"POST"});if(!e.ok)return errorResponse(e);r=(await e.json()).id,i=!0}const c=MergeMessages(i?o.messages:["system"===o.messages[0].role?o.messages.shift():null,o.messages.pop()]);try{const e=await fetch("https://api.lyihub.com/arena/chat",{method:"POST",headers:{...FAKE_HEADERS$8,Authorization:`bearer ${s}`,"content-type":"application/json",accept:"text/event-stream"},body:JSON.stringify({sessionId:r,modelId:o.model,question:c})});if(!e.ok)return errorResponse(e);const t=e.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:o}=new TransformStream;return streamJsonResponseBodies$e(t,o),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let a={content:"",id:"",msgCallback:e=>{a.content+=e},endCallback:()=>{}};for(;;){const{value:e,done:o}=await t.read();if(o)break;e&&onParse$c(e,a)}return new Response(JSON.stringify(toOpenAIResponse(a.id,a.content,"",!1)),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$c(e,t){try{const o=JSON.parse(e.data);t.id||(t.id=o.session_id),t.msgCallback(o.data.content)}catch(e){throw e}}async function streamJsonResponseBodies$e(e,t){const o=t.getWriter();let a={id:"",msgCallback:e=>{o.write(encoder$f.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,"",!0))}\n\n`))},endCallback:()=>{o.write(encoder$f.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:s}=await e.read();if(s){a.endCallback(),o.close();break}if(!t)continue;onParse$c(t,a)}catch(e){throw o.close(),e}}async function deepinfra(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;return(null==a?void 0:a.apiKey)?a.apiKey:t.authorization&&extractBearerToken(t.authorization),o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel,await requestOpenAI("https://api.deepinfra.com/v1/openai/chat/completions","",o,{accept:"text/event-stream","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Not)A;Brand";v="99", "Microsoft Edge";v="127", "Chromium";v="127"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-site","x-deepinfra-source":"web-page",Referer:"https://deepinfra.com/","Referrer-Policy":"strict-origin-when-cross-origin"})}async function replicate(e){Object.fromEntries(e.headers);const t=await readBody(e),o=e.context.meta||t.meta;t.model=t.model&&"default"!==t.model?t.model:null==o?void 0:o.apiModel;let a="";"system"===t.messages[0].role&&(a=t.messages.shift().content);let s=MergeMessages(t.messages);const r=await fetch(`https://replicate.com/api/models/${t.model}/predictions`,{headers:{accept:"application/json","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not)A;Brand";v="99", "Microsoft Edge";v="127", "Chromium";v="127"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","Referrer-Policy":"same-origin",Referer:`https://replicate.com/${t.model}`},body:JSON.stringify({input:{top_p:.9,prompt:s,max_tokens:1024,min_tokens:0,temperature:.6,system_prompt:a,presence_penalty:0,frequency_penalty:0}}),method:"POST"});if(!r.ok)return errorResponse(r);const i=(await r.json()).urls.stream,c=await fetch(i,{headers:{accept:"text/event-stream","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Not)A;Brand";v="99", "Microsoft Edge";v="127", "Chromium";v="127"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site"},body:null,method:"GET"});if(!c.ok)return errorResponse(c);const l=c.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(t.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$d(l,t),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let d={content:"",id:"",msgCallback:e=>{d.content+=e},endCallback:()=>{}};for(;;){const{value:e,done:t}=await l.read();if(t)break;e&&onParse$b(e,d)}return new Response(JSON.stringify(toOpenAIResponse(d.id,d.content,"",!1)),{status:c.status,headers:{"Content-Type":"application/json"}})}const encoder$e=new TextEncoder;async function streamJsonResponseBodies$d(e,t){const o=t.getWriter();let a={id:"",msgCallback:e=>{o.write(encoder$e.encode(`data: ${JSON.stringify(toOpenAIResponse(a.id,e,"",!0))}\n\n`))},endCallback:()=>{o.write(encoder$e.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:s}=await e.read();if(s){o.close();break}if(!t)continue;onParse$b(t,a)}catch(e){throw o.close(),e}}function onParse$b(e,t){try{if("done"===e.event)return void(null==t||t.endCallback());if("output"!==e.event)return;if(t.id||(t.id=e.id.split(":")[0]),!e.data)return;t.msgCallback(e.data)}catch(e){throw e}}const encoder$d=new TextEncoder;async function vecmul(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=0,i=o.messages.pop().content;a.apiConversationId?r=o.messages.length-2:a.apiConversationId=getRandomUuidv4();try{let e="wss://api.vecmul.com/ws";s&&(e=`${e}?token=Bearer%20${s}`);const t=new WebSocket(e,void 0,{handshakeTimeout:3e3});if(t.on("open",(function(){t.send(JSON.stringify({type:"CHAT",spaceName:"Free Space",message:{isAnonymous:!0,rootMsgId:a.apiConversationId,public:!1,model:o.model,order:r,role:"user",content:i,fileId:null,relatedLinkInfo:null,messageType:"MESSAGE",fileKey:null,language:"zh-CN"}}))})),o.stream){const{readable:e,writable:o}=new TransformStream,a=o.getWriter();let s={id:getRandomUuidv4(),msgCallback:e=>{a.write(encoder$d.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,"",!0))}\n\n`))},endCallback:()=>{a.write(encoder$d.encode("data: [DONE]\n\n")),t.close()}};return t.on("message",(function(e){onParse$a(e,s)})),t.on("error",(function(e){s.msgCallback(e.message)})),t.on("close",(function(){a.close()})),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let c={content:"",id:getRandomUuidv4(),msgCallback:e=>{c.content+=e},endCallback:()=>{t.close()}};return t.on("message",(function(e){onParse$a(e,c)})),t.on("error",(function(e){c.msgCallback(e.message)})),t.on("close",(function(){})),new Response(JSON.stringify(toOpenAIResponse(c.id,c.content,"",!1)),{status:200,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$a(e,t){try{const o=JSON.parse(e);if("ERROR"==o.type)return t.msgCallback(o.data.message),void t.endCallback();if("AI_STREAM_MESSAGE"!=o.type)return;if("stop"==o.data.finishedReason||"end_turn"==o.data.finishedReason||null!=o.data.finishedReason)return void t.endCallback();t.msgCallback(o.data.content)}catch(e){throw e}}new TextEncoder;const FAKE_HEADERS$7={"Content-Type":"application/json",pragma:"no-cache","cache-control":"no-cache","sec-ch-ua":'"Chromium";v="128", "Not;A=Brand";v="24", "Microsoft Edge";v="128"',"x-title":"Magai","http-referer":"https://magai.co","sec-ch-ua-mobile":"?0","user-agent":generateRandomUserAgent(),"x-api-key":"","sec-ch-ua-platform":'"Windows"',accept:"*/*",origin:"https://app.magai.co","sec-fetch-site":"same-site","sec-fetch-mode":"cors","sec-fetch-dest":"empty",referer:"https://app.magai.co/","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",priority:"u=1, i"},magaiToken={cookie:"",appLastChange:"",currentPageItem:"",currentUser:""},UUID_LENGTH=1e18,MODULO=1e18;function generateUUID(){let e=Math.round(Math.random()*UUID_LENGTH);return`${Date.now()}x${pad(e,18)}`}function pad(e,t){let o=String(e);return o+new Array(t+1-o.length).join("0")}function createLUID(e="x",t=!0){let o=1900;return()=>{const a=Date.now();return t?`${a}${e}${o++}`:`${a}`}}function getRandomSeed(){return Math.round(Math.random()*UUID_LENGTH)%MODULO}function formatModelName(e){return e.replace(/[/:-]/g,"_").replace(/_+/g,"_").replace(/\./g,"_")}function findTokenInObject(e){for(const t in e){if("token"===t&&"string"==typeof e[t])return e[t];if("object"==typeof e[t]&&null!==e[t]){const o=findTokenInObject(e[t]);if(o)return o}}return null}function getLastUserContent(e){for(let t=e.length-1;t>=0;t--)if("user"===e[t].role)return e[t].content;return null}async function magai(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;const s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r=JSON.parse(s);magaiToken.cookie=r.cookie,magaiToken.currentPageItem=r.CreatedBy,magaiToken.currentUser=r.CreatedBy,magaiToken.appLastChange=r.appLastChange;const i=r.CreatedBy.split("__")[0];try{magaiToken.currentPageItem=a.apiConversationId?`${i}__LOOKUP__${a.apiConversationId}`:magaiToken.currentPageItem;const e=await getNewToken(o.model,getLastUserContent(o.messages));return console.log(e),await requestOpenAI("https://live.proxy.magai.co:4430/opr/api/v1/chat/completions","",o,{...FAKE_HEADERS$7,token:e})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function getNewToken(e,t){const o=generateUUID(),a=magaiToken.currentPageItem.split("__")[0],s=magaiToken.currentUser.split("__")[2],r="037a52ff10ee72bcd845e75d5ec48ac2",i={app_last_change:magaiToken.appLastChange,calls:[{client_state:{element_instances:{bUNib7:{dehydrated:`${a}__LOOKUP__ElementInstance::bUNib7`,parent_element_id:"bUMiq3"},bTezP:{dehydrated:`${a}__LOOKUP__ElementInstance::bTezP`,parent_element_id:"bTezJ"},bTezE:{dehydrated:`${a}__LOOKUP__ElementInstance::bTezE`,parent_element_id:"bTeqc"},bTezJ:{dehydrated:`${a}__LOOKUP__ElementInstance::bTezJ`,parent_element_id:"bUKFL2"},bTezQ:{dehydrated:`${a}__LOOKUP__ElementInstance::bTezQ`,parent_element_id:"bUKFL2"},bUiru0:{dehydrated:`${a}__LOOKUP__ElementInstance::bUiru0`,parent_element_id:"bUjNK"},bUDVj0:{dehydrated:`${a}__LOOKUP__ElementInstance::bUDVj0`,parent_element_id:"bUMiq3"},bUXzm2:{dehydrated:`${a}__LOOKUP__ElementInstance::bUXzm2`,parent_element_id:"bUMhk3"},bUifI1:{dehydrated:`${a}__LOOKUP__ElementInstance::bUifI1`,parent_element_id:"bTeqg"},bUMiq3:{dehydrated:`${a}__LOOKUP__ElementInstance::bUMiq3`,parent_element_id:"bTezE"},bTekm:{dehydrated:`${a}__LOOKUP__ElementInstance::bTekm`,parent_element_id:null}},element_state:{[`${a}__LOOKUP__ElementInstance::bTezP`]:{is_visible:!0,value_that_is_valid:t,value:t},[`${a}__LOOKUP__ElementInstance::bTezE`]:{"custom.images_":null,"custom.file_":null,"custom.file_content_":null,"custom.file_name_":null,"custom.file_type_":null},[`${a}__LOOKUP__ElementInstance::bTezJ`]:{"custom.isrecording_":null,"custom.prompt_":null},[`${a}__LOOKUP__ElementInstance::bUiru0`]:{AAE:t},[`${a}__LOOKUP__ElementInstance::bUDVj0`]:{AAE:t},[`${a}__LOOKUP__ElementInstance::bUifI1`]:{"custom.is_visible_":null,group_data:null},[`${a}__LOOKUP__ElementInstance::bUMiq3`]:{group_data:null}},other_data:{"Current Page Scroll Position":0,"Current Page Width":661},cache:{[`${r}`]:formatModelName(e),CurrentPageItem:magaiToken.currentPageItem,CurrentUser:magaiToken.currentUser},exists:{[`${r}`]:!0,CurrentPageItem:!0,CurrentUser:!0}},run_id:generateUUID(),server_call_id:o,item_id:"bUNih7",element_id:"bUNib7",page_id:"bTekm",uid_generator:{timestamp:Date.now(),seed:getRandomSeed()},random_seed:Math.random(),current_date_time:(new Date).getTime(),current_wf_params:{}}],client_breaking_revision:5,timezone_offset:-480,timezone_string:"Asia/Shanghai",user_id:s,wait_for:[]},c=await fetch("https://app.magai.co/workflow/start",{method:"POST",headers:{...FAKE_HEADERS$7,"x-bubble-fiber-id":generateUUID(),"x-bubble-pl":createLUID()(),accept:"application/json, text/javascript, */*; q=0.01",cookie:magaiToken.cookie},body:JSON.stringify(i)}),l=await c.json();if(l.error_class)throw new Error(l.message);const d=l[o];if(!d||!d.step_results)return null;for(const e in d.step_results){const t=d.step_results[e];if("object"==typeof t.return_value&&null!==t.return_value){const e=findTokenInObject(t.return_value);if(e)return e}}}async function azure(e){var t,o,a;const s=getQuery(e);let r=s["api-version"]||(null==(t=e.context.meta)?void 0:t.query["api-version"]),i=s.resource||(null==(a=null==(o=e.context.meta)?void 0:o.query)?void 0:a.resource);const c=Object.fromEntries(e.headers),l=await readBody(e),d=e.context.meta||l.meta;let p=(null==d?void 0:d.apiKey)?d.apiKey:c.authorization?extractBearerToken(c.authorization):"";l.model=l.model&&"default"!==l.model?l.model:null==d?void 0:d.apiModel;const u=`https://${i}.openai.azure.com/openai/deployments/${l.model}/chat/completions?api-version=${r}`;return console.log(u,p,l),await requestOpenAI(u,p,l,{"api-key":p})}const FakeHeaders$1={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36",Accept:"*/*","Accept-Language":"en-US,en;q=0.5","Accept-Encoding":"gzip, deflate, br",Referer:"https://www.blackbox.ai","Content-Type":"application/json",Origin:"https://www.blackbox.ai",DNT:"1","Sec-GPC":"1","Alt-Used":"www.blackbox.ai",Connection:"keep-alive"};async function blackbox(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=JSON.parse(s),i=randHex(7);o.messages.map((e=>{e.id=randHex(7)}));let c="";"system"===o.messages[0].role&&(c=o.messages.shift().content);try{const e=await fetch("https://www.blackbox.ai/api/chat",{method:"POST",headers:{...FakeHeaders$1,Referer:`https://www.blackbox.ai/chat/${i}`,cookie:r.cookie},body:JSON.stringify({messages:o.messages,id:i,previewToken:null,userId:null,codeModelMode:!0,agentMode:{},trendingAgentMode:{},isMicMode:!1,userSystemPrompt:c,maxTokens:o.max_tokens||1024,playgroundTopP:.9,playgroundTemperature:.5,isChromeExt:!1,githubToken:null,clickedAnswer2:!1,clickedAnswer3:!1,clickedForceWebSearch:!1,visitFromDelta:!1,mobileClient:!1,userSelectedModel:o.model,validated:"69783381-2ce4-4dbd-ac78-35e9063feabc"})});if(!e.ok)return errorResponse(e);if(o.stream){if(e.headers.get("content-type").includes("application/json")){const t=await e.json();return new Response(JSON.stringify(t),{status:400,statusText:e.statusText,headers:{"Content-Type":"application/json"}})}const t=e.body.pipeThrough(new TextDecoderStream).getReader(),{readable:a,writable:s}=new TransformStream;return streamJsonResponseBodies$c(t,s,o.model),new Response(a,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const t=await e.json(),a=toOpenAIResponse(t.generation_id,t.text,o.model,!1);return new Response(JSON.stringify(a),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$c=new TextEncoder;async function streamJsonResponseBodies$c(e,t,o){const a=t.getWriter();let s={id:"",msgCallback:e=>{a.write(encoder$c.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$c.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){s.endCallback(),a.close();break}if(!t)continue;s.msgCallback(t)}catch(e){throw a.close(),e}}async function zed(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const[r,i]=o.model.split(":");let c="";"system"===o.messages[0].role&&(c=o.messages.shift().content),console.log(s),console.log(JSON.stringify({provider:r,model:i,provider_request:{model:i,max_tokens:(null==o?void 0:o.max_tokens)||8192,messages:o.messages.map((e=>({role:e.role,content:[{type:"text",text:e.content}]}))),system:c,temperature:(null==o?void 0:o.temperature)||1}}));try{const e=await fetch("https://llm.zed.dev/completion",{method:"POST",headers:{"content-type":"application/json; charset=UTF-8",authorization:`Bearer ${s}`,"user-agent":"Zed/0.165.0 (windows; x86_64)",accept:"*/*"},body:JSON.stringify({provider:r,model:i,provider_request:{model:i,max_tokens:(null==o?void 0:o.max_tokens)||8192,messages:o.messages.map((e=>({role:e.role,content:[{type:"text",text:e.content}]}))),system:c,temperature:(null==o?void 0:o.temperature)||1}})});if(!e.ok)return errorResponse(e);const t=e.body.pipeThrough(new TextDecoderStream).getReader();if(o.stream){const{readable:e,writable:o}=new TransformStream;return streamJsonResponseBodies$b(t,o),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}if(e.ok){const t=await e.json();return new Response(JSON.stringify(t),{status:e.status,statusText:e.statusText,headers:{"Content-Type":"application/json"}})}return errorResponse(e)}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$b=new TextEncoder;async function streamJsonResponseBodies$b(e,t,o){const a=t.getWriter();let s={id:"",model:"",msgCallback:e=>{a.write(encoder$b.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0))}\n\n`))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){a.write(encoder$b.encode("data: [DONE]\n\n")),o&&o(),a.close();break}if(!t)continue;try{const e=t.split("\n");for(let t=0;t=t)throw new Error(`Failed to solve recaptcha after ${t} attempts`);console.log(`Retrying in ${o}ms...`),await new Promise((e=>setTimeout(e,o)))}}async function genspark$2(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=getQuery(e);let i=o.conversationId||r.id||"";a&&(i=a.apiConversationId?a.apiConversationId:i),i=void 0;try{const e=JSON.parse(s);genspark_request_data$1.cookie=e.cookie;let t=e.token;const a=o.messages[o.messages.length-1].content;if(o.messages=[{role:"user",content:MergeMessages(o.messages)}],!t){const e=r.tokenUrl||"https://zhepama-playwright-proxy.hf.space/genspark";t=await solveRecaptcha$1(e.toString())}const c={type:"COPILOT_MOA_CHAT",current_query_string:i?`id=${i}&type=COPILOT_MOA_CHAT`:"type=COPILOT_MOA_CHAT",messages:o.messages,user_s_input:a,action_params:{},g_recaptcha_token:t,extra_data:{models:[o.model],request_web_knowledge:!1,run_with_another_model:!1,writingContent:null,speed_mode:!1}},l="396b0fc5e3d54edd8122e601d6b277a6",d=randHex(16);let p="https://www.genspark.ai/api/copilot/ask";r.proxyurl&&(p=r.proxyurl.toString()+"?stream=true&url="+p);const u=await fetch(p,{method:"POST",headers:{...FAKE_HEADERS$6,"content-type":"application/json",Origin:"https://www.genspark.ai",Referer:"https://www.genspark.ai/agents?type=moa_chat","request-id":`|${l}.${d}`,traceparent:`00-${l}-${d}-01`,cookie:genspark_request_data$1.cookie},body:JSON.stringify(c)});if(!u.ok)return errorResponse(u);const m=u.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),{readable:h,writable:g}=new TransformStream;return streamJsonResponseBodies$a(m,g),new Response(h,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$8(e,t){try{const o=JSON.parse(e.data);""===t.model&&"session_state"===o.field_name&&"message_field"===o.type&&(t.model=o.field_value.models[0]),""===t.id&&"content"===o.field_name&&"message_field"===o.type&&(t.id=o.message_id),"session_state.answerthink"==o.field_name&&"message_field_delta"==o.type&&t.msgCallback(o.field_value||o.delta,"thinking"),"session_state.answer"==o.field_name&&"message_field_delta"==o.type&&t.msgCallback(o.field_value||o.delta),"message_result"==o.type&&""==o.id&&(console.log(o),t.msgCallback(o.content))}catch(e){throw e}}const encoder$a=new TextEncoder;async function streamJsonResponseBodies$a(e,t,o){const a=t.getWriter();let s={id:"",model:"",msgCallback:(e,t="text")=>{a.write(encoder$a.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0,t))}\n\n`))},endCallback:()=>{a.write(encoder$a.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){s.endCallback(),o&&o(),a.close();break}if(!t)continue;onParse$8(t,s)}catch(e){throw a.close(),e}}const claude_request_data={cookie:"",lastActiveOrg:""},FAKE_HEADERS$5={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",pragma:"no-cache",priority:"u=1, i","Referrer-Policy":"strict-origin-when-cross-origin","cache-control":"no-cache","sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Microsoft Edge";v="126"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","anthropic-client-sha":"unknown","anthropic-client-version":"unknown"};async function claude(e){const t=getQuery(e),o=Object.fromEntries(e.headers),a=await readBody(e),s=e.context.meta||a.meta;a.model=a.model&&"default"!==a.model?a.model:null==s?void 0:s.apiModel;let r=(null==s?void 0:s.apiKey)?s.apiKey:o.authorization?extractBearerToken(o.authorization):"";try{const e=JSON.parse(r);claude_request_data.cookie=e.cookie,claude_request_data.lastActiveOrg=e.lastActiveOrg,console.log("claude_request_data",claude_request_data);let o=a.conversationId||"";s&&(o=s.apiConversationId?s.apiConversationId:o);let i=!1,c="";if(""===o)try{let e="https://claude.ai";t.proxyurl&&(e=t.proxyurl.toString()+"?url="+e),console.log(`${e}/api/organizations/${claude_request_data.lastActiveOrg}/chat_conversations`);const s=await fetch(`${e}/api/organizations/${claude_request_data.lastActiveOrg}/chat_conversations`,{headers:{...FAKE_HEADERS$5,"content-type":"application/json",Referer:"https://claude.ai/chats",cookie:claude_request_data.cookie},body:JSON.stringify({include_conversation_preferences:!0,name:"",uuid:getRandomUuidv4()}),method:"POST"}),r=await s.json();if(console.log("创建会话结果",r),r.error)return new Response(JSON.stringify(r),{status:400,headers:{"Content-Type":"application/json; charset=utf-8"}});o=r.uuid,i=!0,c=MergeMessages(a.messages),await new Promise((e=>setTimeout(e,500)))}catch(e){console.error("创建会话失败",e)}else c=a.messages.pop().content;if(!o)return new Response("获取convid失败",{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}});let l="https://claude.ai";t.proxyurl&&(l=t.proxyurl.toString()+"?stream=true&url="+l);const d=await fetch(`${l}/api/organizations/${claude_request_data.lastActiveOrg}/chat_conversations/${o}/completion?rendering_mode=raw`,{method:"POST",headers:{...FAKE_HEADERS$5,"content-type":"application/json",accept:"text/event-stream, text/event-stream",Referer:`https://claude.ai/chat/${o}`,cookie:claude_request_data.cookie},body:JSON.stringify({prompt:c,timezone:"America/Sitka",rendering_mode:"raw",attachments:[],files:[]})});if(0==d.ok){const e=await d.json();return new Response(JSON.stringify(e),{status:400,headers:{"Content-Type":"application/json; charset=utf-8"}})}const p=d.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),removeConversationId=async()=>{0!=i&&async function(){}()};if(a.stream){const{readable:e,writable:t}=new TransformStream;try{return streamJsonResponseBodies$9(p,t,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}let u={id:"",content:"",model:"",msgCallback:e=>{u.content+=e},endCallback:()=>{}};for(;;){const{value:e,done:t}=await p.read();if(t){removeConversationId();break}e&&onParse$7(e,u)}return new Response(JSON.stringify(toOpenAIResponse(u.id,u.content,u.model,!1)),{status:200,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$7(e,t){try{if("completion"!==e.event)return;const o=JSON.parse(e.data);t.id||(t.id=o.id),t.model||(t.model=o.model),t.buffer||(t.buffer=""),void 0===t.isCapturingArtifact&&(t.isCapturingArtifact=!1),void 0===t.artifactBuffer&&(t.artifactBuffer=null),void 0===t.artifactType&&(t.artifactType=null),void 0===t.hasStartedCodeBlock&&(t.hasStartedCodeBlock=!1),t.buffer+=o.completion;const a=t.buffer.indexOf("=0&&!t.isCapturingArtifact)return a>0&&t.msgCallback(t.buffer.substring(0,a)),t.isCapturingArtifact=!0,t.artifactBuffer=t.buffer.substring(a),t.hasStartedCodeBlock=!1,t.buffer=t.buffer.substring(a),void processStartTag(t);if(t.isCapturingArtifact){t.hasStartedCodeBlock||processStartTag(t);const e=t.buffer.indexOf("");return void(e>=0?processEndTag(t,e):t.hasStartedCodeBlock&&(t.msgCallback(t.buffer),t.buffer=""))}!t.isCapturingArtifact&&o.completion&&(t.msgCallback(o.completion),t.buffer="")}catch(e){throw e}}function processStartTag(e){const t=e.buffer.indexOf(">");if(t>=0){const o=e.buffer.substring(0,t).match(/type="([^"]+)"/);o&&(e.artifactType=o[1]);let a="text";const s=e.buffer.substring(0,t).match(/language="([^"]+)"/);s?a=s[1]:e.artifactType&&(e.artifactType.startsWith("text/")?a=e.artifactType.substring(5):e.artifactType.includes("javascript")?a="javascript":e.artifactType.includes("typescript")?a="typescript":e.artifactType.includes("mermaid")?a="mermaid":(e.artifactType.includes("react")||e.artifactType.includes("vue"))&&(a="javascript")),e.msgCallback(`\`\`\`${a}\n`),e.hasStartedCodeBlock=!0,e.buffer=e.buffer.substring(t+1)}}function processEndTag(e,t){t>0&&e.msgCallback(e.buffer.substring(0,t)),e.msgCallback("\n```"),t+14{a.write(encoder$9.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0))}\n\n`))},endCallback:()=>{a.write(encoder$9.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){o&&o(),s.endCallback(),a.close();break}if(!t)continue;if("error"==t.event){s.msgCallback(t.data),o&&o(),a.close();break}onParse$7(t,s)}catch(e){throw a.close(),e}}const encoder$8=new TextEncoder;async function deepseek(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r="https://api.deepseek.com/chat/completions";const i=getQuery(e);i.url&&(r=i.url.toString());try{const e=await fetch(r,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${s}`},body:JSON.stringify({messages:o.messages,model:o.model,max_tokens:o.max_tokens||4096,temperature:o.temperature||.1,top_p:o.top_p||1,stream:o.stream||!1})});if(!e.ok)return errorResponse(e);const t=e.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:o}=new TransformStream;return streamJsonResponseBodies$8(t,o),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$6(e,t){try{const o=JSON.parse(e.data),a=t.content;t.content=o.choices[0].message.content,t.msgCallback(t.content.slice(a.length))}catch(e){throw e}}async function streamJsonResponseBodies$8(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),model:"",content:"",msgCallback:e=>{a.write(encoder$8.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0))}\n\n`))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){a.write(encoder$8.encode("data: [DONE]\n\n")),o&&o(),a.close();break}if(!t)continue;console.log(t),onParse$6(t,s)}catch(e){throw a.close(),e}}var __defProp$2=Object.defineProperty,__defNormalProp$2=(e,t,o)=>t in e?__defProp$2(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__publicField$2=(e,t,o)=>__defNormalProp$2(e,"symbol"!=typeof t?t+"":t,o);class DeepSeekHash{constructor(){__publicField$2(this,"wasmInstance"),__publicField$2(this,"offset",0),__publicField$2(this,"cachedUint8Memory",null),__publicField$2(this,"cachedTextEncoder",new TextEncoder)}encodeString(e,t,o){if(!o){const o=this.cachedTextEncoder.encode(e),a=t(o.length,1)>>>0;return this.getCachedUint8Memory().subarray(a,a+o.length).set(o),this.offset=o.length,a}const a=e.length;let s=t(a,1)>>>0;const r=this.getCachedUint8Memory();let i=0;for(;i127)break;r[s+i]=t}if(i!==a){i>0&&(e=e.slice(i)),s=o(s,a,i+3*e.length,1)>>>0;i+=this.cachedTextEncoder.encodeInto(e,this.getCachedUint8Memory().subarray(s+i,s+i+3*e.length)).written,s=o(s,i+3*e.length,i,1)>>>0}return this.offset=i,s}getCachedUint8Memory(){return null!==this.cachedUint8Memory&&0!==this.cachedUint8Memory.byteLength||(this.cachedUint8Memory=new Uint8Array(this.wasmInstance.memory.buffer)),this.cachedUint8Memory}calculateHash(e,t,o,a,s){if("DeepSeekHashV1"!==e)throw new Error("Unsupported algorithm: "+e);const r=`${o}_${s}_`;try{const e=this.wasmInstance.__wbindgen_add_to_stack_pointer(-16),o=this.encodeString(t,this.wasmInstance.__wbindgen_export_0,this.wasmInstance.__wbindgen_export_1),s=this.offset,i=this.encodeString(r,this.wasmInstance.__wbindgen_export_0,this.wasmInstance.__wbindgen_export_1),c=this.offset;this.wasmInstance.wasm_solve(e,o,s,i,c,a);const l=new DataView(this.wasmInstance.memory.buffer),d=l.getInt32(e+0,!0),p=l.getFloat64(e+8,!0);if(0===d)return;return p}finally{this.wasmInstance.__wbindgen_add_to_stack_pointer(16)}}async init(e){const{instance:t}=await WebAssembly.instantiate(e,{wbg:{}});return this.wasmInstance=t.exports,this.wasmInstance}}const encoder$7=new TextEncoder,FAKE_HEADERS$4={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Microsoft Edge";v="131", "Chromium";v="131", "Not_A Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","x-app-version":"20241129.1",cookie:"smidV2=202501071758311c8fb048f29cd7f7cc31db1011a681f00096d072af8bd8300; .thumbcache_6b2e5483f9d858d7c661c5e276b6a6ae=fNcJ2RnfL30O9J5gHnkBTP0/MxQ6s2tURNvV3+9Y8Vn4zHZ4ZSBC2leidije5bTrV2JKqJQyyRAjIgJ6G0pbAA%3D%3D; intercom-device-id-guh50jw4=e051c3da-f78b-49ce-9708-b08849c433d6; Hm_lvt_fb5acee01d9182aabb2b61eb816d24ff=1736382697,1736771276,1736781381,1736781753; Hm_lpvt_fb5acee01d9182aabb2b61eb816d24ff=1736781753; HMACCOUNT=3D9A9797304A080B; ds_session_id: 1538d1ad1e31466abe60d85251028d3d; Hm_lvt_1fff341d7a963a4043e858ef0e19a17c=1736382699,1736770543,1736781385,1736781873; Hm_lpvt_1fff341d7a963a4043e858ef0e19a17c=1736781873; HWWAFSESTIME=1736781870960; ds_session_id=c005b2072f60496fbaff10522f5e8138; HWWAFSESID=8a834f1a13a60202cc; intercom-session-guh50jw4=SW1SSVoxaVl4ZEdMdCtDMEFGTlhJSjRPUHRJeWR1WHBaUWMxM3E3VGt1cnY5UmpaY0VveTdlbHU5UVdhT3dEUi0tb0JIVi95amViZWpTQUFXRUdmMHZxZz09--918bff8581dee8d3bfa33c8b274139df40248990",Referer:"https://chat.deepseek.com/","Referrer-Policy":"strict-origin-when-cross-origin"};async function deepseek_com(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r="https://chat.deepseek.com";const i=getQuery(e);i.proxy&&process.env.USE_DEEPSEEK_PROXY&&(r=i.proxy.toString()),i.proxyurl&&process.env.USE_DEEPSEEK_PROXY&&(r=i.proxyurl.toString()+"?url="+r);try{let e=o.conversationId||"";a&&(e=a.apiConversationId?a.apiConversationId:e);let t="",i=!1;if(""!==e)t=o.messages.pop().content;else{const a=await fetch(`${r}/api/v0/chat_session/create`,{headers:{...FAKE_HEADERS$4,"content-type":"application/json",Authorization:`Bearer ${s}`},body:JSON.stringify({character_id:null}),method:"POST"});if(!a.ok)return errorResponse(a);let c=await a.json();if(0!=c.code)throw new Error(c.msg);e=c.data.biz_data.id,t=MergeMessages(o.messages),i=!0}const c=await getChallengeResponse(s,"/api/v0/chat/completion"),l=await answerChallenge(c,"/api/v0/chat/completion");let d=!1;o.model.includes("deepseek-reasoner")&&(d=!0);const p=await fetch(`${r}/api/v0/chat/completion`,{method:"POST",headers:{...FAKE_HEADERS$4,Authorization:`Bearer ${s}`,"content-type":"application/json","X-Ds-Pow-Response":l},body:JSON.stringify({chat_session_id:e,parent_message_id:null,prompt:t,ref_file_ids:[],thinking_enabled:d,search_enabled:!1})});if(!p.ok)return errorResponse(p);const u=p.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),removeConversationId=async()=>{if(0==i)return;(await fetch(`${r}/api/v0/chat_session/delete`,{headers:{...FAKE_HEADERS$4,"content-type":"application/json",Authorization:`Bearer ${s}`},body:JSON.stringify({chat_session_id:e}),method:"POST"})).ok||console.error("移除会话失败")};if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$7(u,t,removeConversationId),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let m={content:"",id:getRandomUuidv4(),model:"",msgCallback:e=>{m.content+=e.content}};for(;;){const{value:e,done:t}=await u.read();if(t){removeConversationId();break}e&&onParse$5(e,m)}return new Response(JSON.stringify(toOpenAIResponse(m.id,m.content,m.model,!1)),{status:p.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$5(e,t){try{if("[DONE]"===e.data)return;const o=JSON.parse(e.data);t.model||(t.model=o.model),t.msgCallback(o.choices[0].delta)}catch(e){throw e}}async function streamJsonResponseBodies$7(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),model:"",msgCallback:e=>{a.write(encoder$7.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e.content,s.model,!0,e.type))}\n\n`))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){a.write(encoder$7.encode("data: [DONE]\n\n")),o&&o(),a.close();break}if(!t)continue;onParse$5(t,s)}catch(e){throw a.close(),e}}function generateCookie(){return`intercom-HWWAFSESTIME=${timestamp()}; HWWAFSESID=${randHex(18)}; Hm_lvt_${uuid(!1)}=${unixTimestamp()},${unixTimestamp()},${unixTimestamp()}; Hm_lpvt_${uuid(!1)}=${unixTimestamp()}; _frid=${uuid(!1)}; _fr_ssid=${uuid(!1)}; _fr_pvid=${uuid(!1)}`}async function answerChallenge(e,t){const{algorithm:o,challenge:a,salt:s,difficulty:r,expire_at:i,signature:c}=e,l=new DeepSeekHash,d=await useStorage("assets:server").getItemRaw("sha3_wasm_bg.7b9ca65ddd.wasm");await l.init(d);const p=l.calculateHash(o,a,s,r,i);return Buffer.from(JSON.stringify({algorithm:o,challenge:a,salt:s,answer:p,signature:c,target_path:t})).toString("base64")}async function getChallengeResponse(e,t){const o=await fetch("https://chat.deepseek.com/api/v0/chat/create_pow_challenge",{headers:{...FAKE_HEADERS$4,"content-type":"application/json",Authorization:`Bearer ${e}`,Cookie:generateCookie()},body:JSON.stringify({target_path:t}),method:"POST"});return(await o.json()).data.biz_data.challenge}const encoder$6=new TextEncoder,qwenlmData={cookies:"",token:""},FAKE_HEADERS$3={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","bx-v":"2.5.0","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not A(Brand";v="8", "Chromium";v="132", "Microsoft Edge";v="132"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin"};async function t2i(e,t){let o="1024*1024";"IMAGE_ASPECT_RATIO_SQUARE"===t.aspectRatio?o="1024*1024":"IMAGE_ASPECT_RATIO_PORTRAIT"===t.aspectRatio?o="768*1024":"IMAGE_ASPECT_RATIO_LANDSCAPE"===t.aspectRatio?o="1024*768":"IMAGE_ASPECT_RATIO_PORTRAIT_THREE_FOUR"===t.aspectRatio?o="720*1280":"IMAGE_ASPECT_RATIO_LANDSCAPE_FOUR_THREE"===t.aspectRatio&&(o="1280*720");const a=Array(2).fill(null).map((()=>(async()=>{const t=await fetch("https://chat.qwenlm.ai/api/chat/completions",{headers:{...FAKE_HEADERS$3,Authorization:`Bearer ${qwenlmData.token}`,"content-type":"application/json",cookie:qwenlmData.cookies},body:JSON.stringify({stream:!1,chat_type:"t2i",model:"qwen-max-latest",messages:e.messages,session_id:getRandomUuidv4(),chat_id:getRandomUuidv4(),id:getRandomUuidv4(),size:o}),method:"POST"});return t.ok?(await t.json()).messages.pop().extra.wanx.task_id:(console.error(await t.text()),"")})())),s=await Promise.all(a),r=await Promise.all(s.filter((e=>""!=e)).map((async t=>{try{const o=await(async(e,t=30)=>{let o=null;for(let a=0;asetTimeout(e,s)))}catch(e){o=e,console.error(`Attempt ${a+1} failed:`,e)}throw new Error(`Task check failed after ${t} attempts. Last error: ${null==o?void 0:o.message}`)})(t);return{model:e.model,url:o}}catch(t){return{model:e.model,url:null,error:t.message}}})));return new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),r.filter((e=>null!=e.url)).map((e=>({model:e.model,type:"url",url:e.url}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}async function qwenlm(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=JSON.parse(s);qwenlmData.cookies=r.cookies,qwenlmData.token=r.token;try{if(o.model.includes("image"))return await t2i(o,a);if(o.model.includes("vl")){const e=o.messages.pop();if("user"===e.role&&Array.isArray(e.content)){const t=await Promise.all(e.content.map((async e=>{if("image_url"===e.type){const t=e.image_url.url,o=await fetch(t),a=await o.blob(),s=new FormData;s.append("file",a);const r=await fetch("https://chat.qwenlm.ai/api/v1/files/",{method:"POST",headers:{accept:"application/json",authorization:`Bearer ${qwenlmData.token}`,cookie:qwenlmData.cookies},body:s});return{type:"image",image:(await r.json()).id}}return e}))),a={role:e.role,content:t};o.messages.push(a)}else o.messages.push(e)}const e=await fetch("https://chat.qwenlm.ai/api/chat/completions",{method:"POST",headers:{...FAKE_HEADERS$3,Authorization:`Bearer ${qwenlmData.token}`,"content-type":"application/json",cookie:qwenlmData.cookies},body:JSON.stringify({chat_type:"t2t",stream:o.stream,model:o.model,messages:o.messages,session_id:getRandomUuidv4(),chat_id:getRandomUuidv4(),id:getRandomUuidv4()})});if(!e.ok)return errorResponse(e);const t=e.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:a}=new TransformStream;return streamJsonResponseBodies$6(t,a,o.model),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let s={content:"",id:getRandomUuidv4(),model:o.model,msgCallback:e=>{s.content+=e}};for(;;){const{value:e,done:o}=await t.read();if(o)break;e&&onParse$4(e,s)}return new Response(JSON.stringify(toOpenAIResponse(s.id,s.content,s.model,!1)),{status:e.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function streamJsonResponseBodies$6(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),lastContent:"",msgCallback:e=>{a.write(encoder$6.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){a.write(encoder$6.encode("data: [DONE]\n\n")),a.close();break}if(!t)continue;onParse$4(t,s)}catch(e){throw a.close(),e}}function onParse$4(e,t){try{const o=JSON.parse(e.data).choices[0].delta.content,a=o.slice(t.lastContent?t.lastContent.length:0);t.lastContent=o,t.msgCallback(a)}catch(e){throw e}}const FAKE_HEADERS$2={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache","content-type":"application/json",pragma:"no-cache",priority:"u=1, i","request-id":"|1b9e4c7cc9a14d26908656ee722fa2a9.82541aef7ca2400c","sec-ch-ua":'"Microsoft Edge";v="131", "Chromium";v="131", "Not_A Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin",traceparent:"00-1b9e4c7cc9a14d26908656ee722fa2a9-82541aef7ca2400c-01"},genspark_request_data={cookie:""},models=["flux","flux-pro/ultra","ideogram","recraft-v3","dalle-3"];async function solveRecaptcha(e,t=3,o=1e3){let a=0;for(;a=t)throw new Error(`Failed to solve recaptcha after ${t} attempts`);console.log(`Retrying in ${o}ms...`),await new Promise((e=>setTimeout(e,o)))}}async function genspark$1(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=getQuery(e);let i=o.conversationId||r.id;a&&(i=a.apiConversationId?a.apiConversationId:i);try{const e=JSON.parse(s);genspark_request_data.cookie=e.cookie;let t=e.token;if(!t){const e=r.tokenUrl||"https://zhepama-playwright-proxy.hf.space/genspark";t=await solveRecaptcha(e.toString())}const c=o.messages[o.messages.length-1].content,l=[];let d="auto";if("IMAGE_ASPECT_RATIO_SQUARE"===a.aspectRatio?d="1:1":"IMAGE_ASPECT_RATIO_PORTRAIT"===a.aspectRatio?d="9:16":"IMAGE_ASPECT_RATIO_LANDSCAPE"===a.aspectRatio?d="16:9":"IMAGE_ASPECT_RATIO_PORTRAIT_THREE_FOUR"===a.aspectRatio?d="3:4":"IMAGE_ASPECT_RATIO_LANDSCAPE_FOUR_THREE"===a.aspectRatio&&(d="4:3"),"mixture"==o.model){const getRandomElements=(e,t)=>[...e].sort((()=>.5-Math.random())).slice(0,t);getRandomElements(models,4).forEach((e=>{l.push({model:e,aspect_ratio:d,use_personalized_models:!1,fashion_profile_id:null,hd:!1,reflection_enabled:!1,style:"auto"})}))}else l.push({model:o.model,aspect_ratio:d,use_personalized_models:!1,fashion_profile_id:null,hd:!1,reflection_enabled:!1,style:"auto"});const p={type:"COPILOT_MOA_IMAGE",current_query_string:i?`id=${i}&type=COPILOT_MOA_IMAGE`:"type=COPILOT_MOA_IMAGE",messages:[{role:"user",content:c}],user_s_input:c,action_params:{},extra_data:{model_configs:l,llm_model:"gpt-4o",imageModelMap:{}},g_recaptcha_token:t};console.log("genspark request data:",p);let u="https://www.genspark.ai/api/copilot/ask";r.proxyurl&&(u=r.proxyurl.toString()+"?stream=true&url="+u);const m=await fetch(u,{method:"POST",headers:{...FAKE_HEADERS$2,"content-type":"application/json",Referer:"https://www.genspark.ai/agents?type=moa_generate_image",cookie:genspark_request_data.cookie},body:JSON.stringify(p)});if(!m.ok)return errorResponse(m);const h=m.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader(),g=await streamJsonResponseBodies$5(h),checkTaskStatus=async(e,t=30)=>{let o=null;for(let a=0;asetTimeout(e,s)))}catch(e){o=e,console.error(`Attempt ${a+1} failed:`,e)}throw new Error(`Task check failed after ${t} attempts. Last error: ${null==o?void 0:o.message}`)},f=await Promise.all(g.map((async e=>{try{return await checkTaskStatus(e.task_id)}catch(t){return{model:e.model,url:null,error:t.message}}}))),y=f.map((e=>e.data.id));let w=[];for(let e=0;e<3;e++)try{const t=await fetch("https://www.genspark.ai/api/ig_tasks_status",{headers:{...FAKE_HEADERS$2,Referer:"https://www.genspark.ai/agents?type=moa_generate_image",cookie:genspark_request_data.cookie},referrerPolicy:"no-referrer",body:JSON.stringify({task_ids:y}),method:"POST"});if(!t.ok){const t=Math.min(1e3*Math.pow(1.5,e),1e4);await new Promise((e=>setTimeout(e,t)));continue}const o=t.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();for(;;)try{const{value:e,done:t}=await o.read();if(t)break;if(!e)continue;const a=JSON.parse(e.data);if("TASKS_STATUS_UPDATE"===a.type&&a.tasks)continue;if("TASKS_STATUS_COMPLETE"===a.type&&a.final_status){Object.values(a.final_status).filter((e=>"SUCCESS"===e.status)).forEach((e=>{e.image_urls_nowatermark&&e.image_urls_nowatermark.length>0&&w.push({id:e.id,url:e.image_urls_nowatermark[0]})}));break}}catch(e){throw e}break}catch(t){console.error(`Attempt ${e+1} failed:`,t)}return new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),w.filter((e=>null!=e.url)).map((e=>({model:f.find((t=>t.data.id==e.id)).data.model,type:"url",url:e.url}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function isString(e){return"string"==typeof e||e instanceof String}async function streamJsonResponseBodies$5(e,t){for(;;)try{const{value:o,done:a}=await e.read();if(a){t&&t();break}if(!o)continue;console.log("genspark response data:",o.data);const s=JSON.parse(o.data);if(!s.role||"assistant"!=s.role)continue;if(isString(s.content)&&-1==s.content.indexOf("generated_images"))throw new Error(s.content);return JSON.parse(s.content).generated_images}catch(e){throw e}}function isAllChinese(e){return/^[\u4E00-\u9FA5\u3400-\u4DBF]+$/.test(e)}async function genspark(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";try{const e=JSON.parse(s),t=(e.cookies,e.access_token),r=o.messages[o.messages.length-1].content;if(isAllChinese(r))throw new Error("prompt 不能为中文");const i=await fetch("https://aisandbox-pa.googleapis.com/v1:runImageFx",{headers:{accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",authorization:`Bearer ${t}`,"cache-control":"no-cache","content-type":"text/plain;charset=UTF-8",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Microsoft Edge";v="131", "Chromium";v="131", "Not_A Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site",Referer:"https://labs.google/","Referrer-Policy":"strict-origin-when-cross-origin"},body:JSON.stringify({userInput:{candidatesCount:4,prompts:[r],seed:Math.floor(9e5*Math.random())+1e5},clientContext:{sessionId:";1736820270799",tool:"IMAGE_FX"},modelInput:{modelNameType:o.model},aspectRatio:a.aspectRatio}),method:"POST"});if(!i.ok)return errorResponse(i);const c=await i.json();return new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),c.imagePanels[0].generatedImages.map((e=>({model:e.modelNameType,type:"base64",content:`data:image/jpg;base64,${e.encodedImage}`}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const sleep=e=>new Promise((t=>setTimeout(t,e)));async function bing_image(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";try{const e=`_U=${JSON.parse(s).cookies}`,t=o.messages[o.messages.length-1].content,a=encodeURIComponent(t),r=`q=${a}&qs=ds`,i={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36","Accept-Encoding":"gzip, deflate",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",Connection:"keep-alive",Referer:"https://www.bing.com/images/create","Accept-Language":"en-US,en;q=0.9",Cookie:e},c=await fetch("https://www.bing.com/images/create",{headers:i}),l=(await c.text()).match(/bal" aria-label="(\d+) /),d=parseInt(l[1],10)>0?"4":"3";let p=await fetch(`https://www.bing.com/images/create?q=${a}&rt=${d}&FORM=GENCRE`,{method:"POST",body:r,headers:i,redirect:"manual"});const{status:u}=p;if(p.headers.forEach(((e,t)=>{console.log(t,e)})),302!==u)throw new Error(`Bing Image Creator Not as Expected: response status = ${u}`);let m=`https://www.bing.com/${p.headers.get("Location").replace("&nfy=1","")}`;const h=`https://www.bing.com/images/create/async/results/${m.split("id=")[1]}?q${a}`;console.log(`Sending request to redirect url...${m}`),await fetch(m,{method:"POST",body:r,headers:i,redirect:"manual"});let g,f=Date.now();for(console.log("Start pulling result...");;){if(Date.now()-f>6e5)throw new Error("Timeout pulling the result.");const e=await fetch(h,{method:"POST",body:r,headers:i});if(200!==e.status)throw new Error("Error when pulling the results");if(g=await e.text(),g&&-1===g.indexOf("errorMessage"))break;console.log("Waiting for the result..."),await sleep(1e3)}let y=/src="([^"]+)"/g,w=g.match(y).map((e=>e.replace('src="',"").replace('"',""))).map((e=>e.split("?w=")[0])).filter((e=>e.includes("th")));return console.log(w),new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),w.map((e=>({model:"bing",type:"url",url:e}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function siliconflow_image(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";try{const e=o.messages[o.messages.length-1].content;let t="1024x1024";"IMAGE_ASPECT_RATIO_SQUARE"===a.aspectRatio?t="1024x1024":"IMAGE_ASPECT_RATIO_PORTRAIT"===a.aspectRatio?t="576x1024":"IMAGE_ASPECT_RATIO_LANDSCAPE"===a.aspectRatio?t="1024x576":"IMAGE_ASPECT_RATIO_PORTRAIT_THREE_FOUR"===a.aspectRatio?t="512x768":"IMAGE_ASPECT_RATIO_LANDSCAPE_FOUR_THREE"===a.aspectRatio&&(t="768x512");const r=await fetch("https://api.siliconflow.cn/v1/images/generations",{method:"POST",headers:{Authorization:`Bearer ${s}`,"Content-Type":"application/json"},body:JSON.stringify({model:o.model,prompt:e,image_size:t,batch_size:4,seed:Math.floor(9999999999*Math.random())+1,num_inference_steps:20,guidance_scale:7.5})}),i=await r.json();return new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),i.images.map((e=>({model:o.model,type:"url",url:e.url}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function cloudflare_image(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",[r,i]=s.split(separator);try{const e=o.messages[o.messages.length-1].content,t=await fetch(`https://api.cloudflare.com/client/v4/accounts/${r}/ai/run/${o.model}`,{method:"POST",headers:{"content-type":"application/json",Authorization:`Bearer ${i}`},body:JSON.stringify({prompt:e})});if(!t.ok)return errorResponse(t);const a=await t.json();console.log(a);const s=toImageResponse(getRandomUuidv4(),[{model:o.model,type:"base64",content:`data:image/jpg;base64,${a.result.image}`}]);return new Response(JSON.stringify(s),{status:t.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}async function designer(e){var t,o,a,s;const r=Object.fromEntries(e.headers),i=await readBody(e),c=e.context.meta||i.meta;i.model=i.model&&"default"!==i.model?i.model:null==c?void 0:c.apiModel;let l=(null==c?void 0:c.apiKey)?c.apiKey:r.authorization?extractBearerToken(r.authorization):"";try{const e=i.messages[i.messages.length-1].content;let r="1024x1024";"IMAGE_ASPECT_RATIO_SQUARE"===c.aspectRatio?r="1024x1024":"IMAGE_ASPECT_RATIO_PORTRAIT"===c.aspectRatio?r="1024x1792":"IMAGE_ASPECT_RATIO_LANDSCAPE"===c.aspectRatio?r="1792x1024":"IMAGE_ASPECT_RATIO_PORTRAIT_THREE_FOUR"===c.aspectRatio?r="1024x1792":"IMAGE_ASPECT_RATIO_LANDSCAPE_FOUR_THREE"===c.aspectRatio&&(r="1792x1024");const d=getRandomUuidv4(),p="https://designerapp.officeapps.live.com/designerapp/DallE.ashx?action=GetDallEImagesCogSci",u={accept:"application/json, text/plain, */*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",audiencegroup:"Production",authorization:`Bearer ${l}`,"cache-control":"no-cache",caller:"DesignerApp",clientbuild:"1.0.20250110.19",clientid:"dbb92fb1-bc4a-4e9d-81e2-0ac48258e264",clientname:"DesignerApp",containerid:"1913fc7f-1654-437a-be48-a69acf1b6c78",filetoken:"cf795914-fd3c-4a1d-8f83-07e96d571afa",hostapp:"DesignerApp",issignedinuser:"true",locale:"zh-CN",platform:"Web",pragma:"no-cache",priority:"u=1, i",releasechannel:"","sec-ch-ua":'"Microsoft Edge";v="131", "Chromium";v="131", "Not_A Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site",sessionid:d,traceparent:"00-9c8be8bf5e8c4773989f6bab9cb6edd5-8c56166e0d6aab2c-01",userid:"8e4808619178f916",usertype:"MSA","x-correlation":"f0153d36-83dc-4ed8-83bc-b8dfd9be6fa3","x-dc-hint":"EastUS","x-edge-shopping-flag":"1","x-req-start":"53322.70000000298","x-upload-to-storage-das":"1",Referer:"https://designer.microsoft.com/","Referrer-Policy":"strict-origin-when-cross-origin"},m=new FormData;m.append("dalle-caption",e),m.append("dalle-scenario-name","TextToImage"),m.append("dalle-batch-size","4"),m.append("dalle-last-prompt",""),m.append("dalle-last-user-prompt",""),m.append("dalle-image-response-format","UrlWithBase64Thumbnail"),m.append("dalle-seed",Math.floor(1e4*Math.random()).toString()),m.append("ClientFlights","EnableBICForDALLEFlight"),m.append("dalle-hear-back-in-ms","1000"),m.append("dalle-include-b64-thumbnails","true"),m.append("dalle-aspect-ratio-scaling-factor-b64-thumbnails","0.3"),m.append("dalle-image-size",r);const h=await fetch(p,{headers:u,body:m,method:"POST"});if(!h.ok)return errorResponse(h);const g=await h.json();m.set("dalle-boost-count",null!=(o=null==(t=null==g?void 0:g["dalle-boost-count"])?void 0:t.toString())?o:"0");const f=null==(a=null==g?void 0:g.polling_response)?void 0:a.polling_meta_data;let y;m.set("dalle-poll-url",null!=(s=null==f?void 0:f.poll_url)?s:"");const w=30;let _=0;for(;_{var t;return setTimeout(e,null!=(t=null==f?void 0:f.poll_interval)?t:2e3)}));const e=await fetch(p,{method:"POST",headers:u,body:m});if(!e.ok)throw new Error(`Failed to poll images: ${e.status} ${e.statusText}`);const t=await e.json();if(1==t.polling_response.status){y=t.b64_thumbnails;break}_++}return new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),y.map((e=>({model:"dall-3",type:"base64",content:e}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const FAKE_HEADERS$1={accept:"text/event-stream","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",baggage:"sentry-environment=production,sentry-release=Oo3GOuv3r81hzTog5xH9y,sentry-public_key=b311e0f2690c81f25e2c4cf6d4f7ce1c,sentry-trace_id=446673ead5af472888af0bb6688f638d,sentry-sample_rate=1,sentry-sampled=true","cache-control":"no-cache","content-type":"text/plain;charset=UTF-8",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not A(Brand";v="8", "Chromium";v="132", "Microsoft Edge";v="132"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","sentry-trace":"446673ead5af472888af0bb6688f638d-849a1615f88a565e-1",Referer:"https://grok.com/","Referrer-Policy":"origin-when-cross-origin"},grok_request_data={cookie:""};async function handleImageResponse(e){let t,o=0;for(;o<3;)try{if(t=await fetch(`https://assets.grok.com/${e}`,{method:"GET",headers:{...FAKE_HEADERS$1,cookie:grok_request_data.cookie}}),t.ok)break;if(o++,3===o)throw new Error(`上游服务请求失败! status: ${t.status}`);await new Promise((e=>setTimeout(e,500*o)))}catch(e){if(o++,3===o)throw e;await new Promise((e=>setTimeout(e,500*o)))}const a=await t.arrayBuffer(),s=Buffer.from(a).toString("base64");return`data:${t.headers.get("content-type")};base64,${s}`}function processJsonString(e,t){let o=e.trim(),a=0,s=0,r=!1,i=!1;for(let e=0;e{if("image_url"===e.type){const t=e.image_url.url;let o;o=t.includes("data:image")?t.split(",")[1]:t;const s=await fetch("https://grok.com/api/rpc",{method:"POST",headers:{...FAKE_HEADERS$1,cookie:grok_request_data.cookie},body:JSON.stringify({rpc:"uploadFile",req:{fileName:"lansefangzi.png",fileMimeType:"image/png",content:o}})}),r=await s.json();return a.push(r.fileMetadataId),null}return e}))),t={role:i.role,content:e.filter((e=>null!=e))};o.messages.push(t)}else o.messages.push(i);const c=MergeMessages(o.messages),l={customInstructions:"",deepsearchPreset:"",disableSearch:!1,enableImageGeneration:!0,enableImageStreaming:!0,enableSideBySide:!0,fileAttachments:a,forceConcise:!1,imageAttachments:[],imageGenerationCount:2,isPreset:!1,isReasoning:o.model.includes("reasoning"),message:c,modelName:o.model.toString().replace("-reasoning","").replace("-image",""),returnImageBytes:!1,returnRawGrokInXaiRequest:!1,sendFinalMetadata:!0,temporary:!1,toolOverrides:{imageGen:o.model.includes("image")}};let d="https://grok.com/rest/app-chat/conversations/new";if(r.proxyurl){const e=decodeURIComponent(r.proxyurl.toString());d=`${e}${e.includes("?")?"&":"?"}stream=true&url=${d}`}if(t=await fetch(d,{headers:{...FAKE_HEADERS$1,cookie:grok_request_data.cookie},body:JSON.stringify(l),method:"POST"}),!t.ok)return errorResponse(t);const p=t.body.pipeThrough(new TextDecoderStream).getReader();if(!o.model.includes("image")){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$4(p,t,o.model),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}let u=[];for(;;){const{value:e,done:t}=await p.read();if(t)break;e&&processJsonString(e,(e=>{const t=JSON.parse(e).result;t.response&&t.response.streamingImageGenerationResponse&&100==t.response.streamingImageGenerationResponse.progress&&t.response.streamingImageGenerationResponse.imageUrl&&u.push(`${t.response.streamingImageGenerationResponse.imageUrl}`)}))}return u=await Promise.all(u.map((async e=>handleImageResponse(e)))),new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),u.filter((e=>null!=e)).map((e=>({model:"grok-latest-image",type:"base64",content:e}))))),{status:t.status,headers:{"Content-Type":"application/json"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$3(e,t){try{const o=JSON.parse(e).result;if(!o.response||!o.response.token)return;t.msgCallback(o.response.token,o.response.isThinking?"thinking":"text")}catch(e){throw e}}const encoder$5=new TextEncoder;async function streamJsonResponseBodies$4(e,t,o,a){const s=t.getWriter();let r={id:"",model:o,msgCallback:(e,t)=>{s.write(encoder$5.encode(`data: ${JSON.stringify(toOpenAIResponse(r.id,e,r.model,!0,t))}\n\n`))},endCallback:()=>{s.write(encoder$5.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){r.endCallback(),a&&a(),s.close();break}if(!t)continue;processJsonString(t,(e=>{onParse$3(e,r)}))}catch(e){throw s.close(),e}}const nData={mid:"",cookies:"",authToken:""};global.aiso_base64=e=>btoa(e),global.aiso_md5=e=>md5(e),global.aiso_aes=(e,t)=>{const o=crypto.createCipheriv("aes-256-cbc",t,Buffer.alloc(16,0));let a=o.update(e,"utf8","hex");return a+=o.final("hex"),a},global.aiso_sha1=e=>{const t=crypto.createHash("sha1");return t.update(e),t.digest("hex")},global.aiso_h256=(e,t)=>{const o=crypto.createHmac("sha256",t);return o.update(e),o.digest("hex")};const getChatToken=async(uri,body,now)=>{let date=now.toUTCString(),data={"Chat-Date":date,"Chat-Token":""};const response=await fetch("https://bot.n.cn/js/chatsdk-1.0.js"),jsCode=await response.text(),customObj={},modifiedCode=jsCode.replace("window","customObj");eval(modifiedCode);const propertyName=Object.keys(customObj)[0];let jsText=customObj[propertyName];try{jsText=atob(jsText).trim(),jsText+="(".concat(JSON.stringify({method:"POST",uri:uri,access_token:nData.mid,http_version:"HTTP/1.1",date:date,body:body}),")");const{token:token}=eval(jsText);data["Chat-Token"]=token}catch(e){console.error(e),data["Chat-Token"]="-2"}return data};function getLocalISOString(e){const t=new Date,o=-t.getTimezoneOffset(),a=Math.floor(Math.abs(o)/60),s=Math.abs(o)%60,r=`${o>=0?"+":"-"}${String(a).padStart(2,"0")}:${String(s).padStart(2,"0")}`,i=t.getFullYear(),c=String(t.getMonth()+1).padStart(2,"0"),l=String(t.getDate()).padStart(2,"0"),d=String(t.getHours()).padStart(2,"0"),p=String(t.getMinutes()).padStart(2,"0"),u=String(t.getSeconds()).padStart(2,"0");return String(t.getMilliseconds()).padStart(3,"0"),`${i}-${c}-${l}T${d}:${p}:${u}${r}`}const getHeaders=()=>{const e=["Web",getLocalISOString(),"1.2",nData.mid,md5("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 Edg/133.0.0.0")];return{"device-platform":e[0],timestamp:e[1],"zm-ver":e[2],"access-token":e[3],"zm-token":md5(e.join("")),"zm-ua":e[4],"func-ver":"1","Content-Type":"application/x-www-form-urlencoded;charset=UTF-8",mid:"",sid:nData.mid,"Request-Id":getRandomUuidv4(),"Auth-Token":nData.authToken,cookie:nData.cookies,accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not A(Brand";v="8", "Chromium";v="132", "Microsoft Edge";v="132"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin",Referer:"https://bot.n.cn","Referrer-Policy":"strict-origin-when-cross-origin"}},deleteConversation=async e=>{let t=getHeaders();await fetch("https://bot.n.cn/api/batch/remove/conversation",{headers:{...t,Referer:`https://bot.n.cn/chat/${e}`},body:`cid=${e}`,method:"POST"})};async function n(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=JSON.parse(s);nData.mid=r.mid,nData.cookies=r.cookies,nData.authToken=r.authToken;try{const e={role:o.model,prompt:MergeMessages(o.messages),re_answer:0,retry:!1,last_id:0,compare_parent_id:"",role_biz:"",firm_id:"",rewrite_type:"",annex_msg_id:"",kwargs:{think_stream:!0},is_so:!1,role_mode:0},t=new Date,a={...await getChatToken("/api/assistant/chat",e,t),...getHeaders(),accept:"text/event-stream","Content-Type":"application/json"},s=await fetch("https://bot.n.cn/api/assistant/chat",{method:"POST",headers:a,body:JSON.stringify(e)});if(!s.ok)return errorResponse(s);const r=s.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$3(r,t,deleteConversation),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const encoder$4=new TextEncoder;function onParse$2(e,t){try{if("100"==e.event)return void(t.conversationId=e.data.replace("CONVERSATIONID####",""));if("101"==e.event)return void(t.id=e.data.replace("MESSAGEID####",""));if("102"==e.event&&e.data&&e.data.length>0){if(e.data.startsWith("{")&&e.data.endsWith("}")){const o=JSON.parse(e.data);t.msgCallback(o.message,"thinking")}else t.msgCallback(e.data,"thinking");return}if("200"==e.event)return void t.msgCallback(e.data,"text")}catch(e){throw e}}async function streamJsonResponseBodies$3(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),conversationId:"",model:"",content:"",msgCallback:(e,t)=>{a.write(encoder$4.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,s.model,!0,t))}\n\n`))}};for(;;)try{const{value:t,done:r}=await e.read();if(r){a.write(encoder$4.encode("data: [DONE]\n\n")),o&&o(s.conversationId),a.close();break}if(!t)continue;onParse$2(t,s)}catch(e){throw a.close(),o&&o(s.conversationId),e}}async function requestUntilConditionMet(e,t){let o=0;for(;o<10;){o++;try{const o=await fetch(e,{headers:{accept:"application/json","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",authorization:`Bearer ${t}`,"cache-control":"no-cache",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not(A:Brand";v="99", "Microsoft Edge";v="133", "Chromium";v="133"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","x-api-key":"clio-playground-web",Referer:"https://firefly.adobe.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),a=await o.json();if(!("progress"in a)&&"outputs"in a)return a;await new Promise((e=>setTimeout(e,1e3)))}catch(e){throw console.error("请求或解析出现错误: ",e),e}}return console.log("超过 10 次请求仍未满足条件"),null}async function firefly(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"",r="2048",i="2048";"IMAGE_ASPECT_RATIO_SQUARE"===a.aspectRatio?(r="2048",i="2048"):"IMAGE_ASPECT_RATIO_PORTRAIT"===a.aspectRatio?(r="1536",i="2688"):"IMAGE_ASPECT_RATIO_LANDSCAPE"===a.aspectRatio?(r="2688",i="1536"):"IMAGE_ASPECT_RATIO_PORTRAIT_THREE_FOUR"===a.aspectRatio?(r="1792",i="2304"):"IMAGE_ASPECT_RATIO_LANDSCAPE_FOUR_THREE"===a.aspectRatio&&(r="2304",i="1792");try{const e=o.messages[o.messages.length-1].content,t=await fetch("https://firefly-clio-imaging-preview.adobe.io/v2/images/generate-async",{headers:{accept:"application/json","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",authorization:`Bearer ${s}`,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Not(A:Brand";v="99", "Microsoft Edge";v="133", "Chromium";v="133"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","x-api-key":"clio-playground-web",Referer:"https://firefly.adobe.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:JSON.stringify({prompt:e,seeds:[generateRandomInteger(5),generateRandomInteger(5),generateRandomInteger(5),generateRandomInteger(5)],size:{width:r,height:i},visualIntensity:6,locale:"en-US",detailLevel:"preview",modelVersion:o.model,output:{cai:{directive:"dont_sign"},storeInputs:!0}}),method:"POST"});if(!t.ok)return errorResponse(t);await t.json();const a=t.headers.get("x-override-status-link"),c=await requestUntilConditionMet(a,s);return new Response(JSON.stringify(toImageResponse(getRandomUuidv4(),c.outputs.map((e=>({model:o.model,type:"url",url:e.image.presignedUrl}))))),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}const FAKE_HEADERS={accept:"*/*","accept-language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6","cache-control":"no-cache",chat_version:"v1","content-type":"text/plain;charset=UTF-8",pragma:"no-cache",priority:"u=1, i","sec-ch-ua":'"Not(A:Brand";v="99", "Microsoft Edge";v="133", "Chromium";v="133"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","x-requested-with":"XMLHttpRequest","x-source":"web","Referrer-Policy":"strict-origin-when-cross-origin"},yuanbao_request_data={cookie:"",cookieObject:{}};async function yuanbao(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";const r=getQuery(e);let i=o.conversationId||r.id||"";a&&(i=a.apiConversationId?a.apiConversationId:i),i||(i=getRandomUuidv4());try{const e=JSON.parse(s);yuanbao_request_data.cookie=e.cookie,yuanbao_request_data.cookieObject=parseStrCookies(yuanbao_request_data.cookie);const t=MergeMessages(o.messages),a={model:"gpt_175B_0404",prompt:t,plugin:"Adaptive",displayPrompt:t,displayPromptType:1,options:{imageIntention:{needIntentionModel:!0,backendUpdateFlag:2,intentionStatus:!0}},multimedia:[],agentId:"naQivTmsDa",supportHint:1,version:"v2",chatModelId:o.model},clearConversation=async()=>{await fetch("https://yuanbao.tencent.com/api/user/agent/conversation/v1/clear",{headers:{...FAKE_HEADERS,accept:"application/json, text/plain, */*","content-type":"application/json","t-userid":yuanbao_request_data.cookieObject.hy_user,"x-agentid":"naQivTmsDa","x-commit-tag":"d1b1f33c","x-requested-with":"XMLHttpRequest","x-source":"web",cookie:yuanbao_request_data.cookie,Referer:"https://yuanbao.tencent.com/chat/naQivTmsDa","Referrer-Policy":"strict-origin-when-cross-origin"},body:JSON.stringify({conversationIds:[i]}),method:"POST"})},r=await fetch(`https://yuanbao.tencent.com/api/chat/${i}`,{headers:{...FAKE_HEADERS,cookie:yuanbao_request_data.cookie,"x-agentid":`naQivTmsDa/${i}`,Referer:`https://yuanbao.tencent.com/chat/naQivTmsDa/${i}`},body:JSON.stringify(a),method:"POST"});if(!r.ok)return errorResponse(r);const c=r.body.pipeThrough(new TextDecoderStream).pipeThrough(new EventSourceParserStream).getReader();if(o.stream){const{readable:e,writable:t}=new TransformStream;return streamJsonResponseBodies$2(c,t,o.model,clearConversation),new Response(e,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}return new Response("不支持非流式",{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}function onParse$1(e,t){try{if(!e.data.startsWith("{")||!e.data.endsWith("}"))return;const o=JSON.parse(e.data);if("think"!=o.type&&"text"!=o.type)return;t.msgCallback("think"==o.type?o.content:o.msg,"think"==o.type?"thinking":"text")}catch(e){throw e}}const encoder$3=new TextEncoder;async function streamJsonResponseBodies$2(e,t,o,a){const s=t.getWriter();let r={id:"",model:o,msgCallback:(e,t)=>{s.write(encoder$3.encode(`data: ${JSON.stringify(toOpenAIResponse(r.id,e,r.model,!0,t))}\n\n`))},endCallback:()=>{s.write(encoder$3.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){r.endCallback(),a&&a(),s.close();break}if(!t)continue;onParse$1(t,r)}catch(e){throw s.close(),e}}function generateHashed64Hex(e,t=""){const o=createHash$1("sha256");return o.update(e+t),o.digest("hex")}function obfuscateBytes(e){let t=165;for(let o=0;o>40&255,a>>32&255,a>>24&255,a>>16&255,a>>8&255,255&a]));return`${Buffer.from(s).toString("base64")}${t}/${o}`}const FakeHeaders={"connect-accept-encoding":"gzip,br","connect-protocol-version":"1","content-type":"application/connect+proto",cookie:"","user-agent":"connect-es/1.6.1","x-client-key":"","x-cursor-checksum":"","x-cursor-client-version":"0.42.4","x-cursor-timezone":"Asia/Shanghai","x-ghost-mode":"false",Host:"api2.cursor.sh",Connection:"keep-alive"},protoDefinition$1='\n syntax = "proto3";\n \n message Message {\n string msg = 1;\n int32 no = 2;\n string id = 13;\n }\n \n message Info {\n string system = 1;\n string path = 5;\n }\n \n message Model {\n string model = 1;\n string other = 4;\n }\n \n message Payload {\n repeated Message msgs = 2;\n Info info = 4;\n Model model = 7;\n string requestId = 9;\n int32 field13 = 13;\n int32 field14 = 14;\n string convId = 15;\n int32 field16 = 16;\n int32 field22 = 22;\n int32 field24 = 24;\n int32 field28 = 28;\n int32 field29 = 29;\n }\n \n message ResponseMsg {\n string msg = 1;\n }\n';let root,Payload,ResponseMsg;function loadProtoTypes(){root=protobuf.parse(protoDefinition$1).root,root.lookupType("Message"),root.lookupType("Info"),root.lookupType("Model"),Payload=root.lookupType("Payload"),ResponseMsg=root.lookupType("ResponseMsg")}async function generateClietKey(){const e=new Date,t=e.getFullYear(),o=String(e.getMonth()+1).padStart(2,"0"),a=e.getDate()<=15?"01":"02";return await generateSHA256(`${t}${o}${a}`)}function getCurrentDateString(){const e=new Date;return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}async function cursor(e){var t,o;const a=Object.fromEntries(e.headers),s=await readBody(e),r=e.context.meta||s.meta;s.model=s.model&&"default"!==s.model?s.model:null==r?void 0:r.apiModel;let i=(null==r?void 0:r.apiKey)?r.apiKey:a.authorization?extractBearerToken(a.authorization):"",c="";"system"===s.messages[0].role&&(c=s.messages.shift().content);const l=Payload.create({msgs:s.messages.map((e=>({msg:e.content,no:"user"==e.role?1:2,id:getRandomUuidv4()}))),info:{system:c,path:"/d:/Workspace/openall"},model:{model:s.model,other:""},requestId:getRandomUuidv4(),field13:0,field14:0,convId:getRandomUuidv4(),field16:1,field22:0,field24:0,field28:0,field29:0});try{const e=Payload.encode(l).finish(),r=new DataView(new ArrayBuffer(4));r.setInt32(0,e.length,!1);const c=Buffer.concat([Buffer.from([0]),Buffer.from(r.buffer),e]),d=null!=(o=null!=(t=a["x-cursor-checksum"])?t:process.env["x-cursor-checksum"])?o:generateCursorChecksum(i.trim()+getCurrentDateString),p=getRandomUuidv4(),u=await fetch("https://api2.cursor.sh/aiserver.v1.AiService/StreamChat",{method:"POST",headers:{...FakeHeaders,"x-client-key":await generateClietKey(),"x-amzn-trace-id":`Root=${p}`,"x-request-id":p,authorization:`Bearer ${i}`,"x-cursor-checksum":d},body:c});if(!u.ok)return errorResponse(u);if(u.headers.get("content-type").includes("application/json")){const e=await u.json();return new Response(JSON.stringify(e),{status:400,statusText:u.statusText,headers:{"Content-Type":"application/json"}})}const m=u.body.getReader(),{readable:h,writable:g}=new TransformStream;return streamJsonResponseBodies$1(m,g,s.model),new Response(h,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){return new Response(e.message,{status:400,headers:{"Content-Type":"text/plain; charset=utf-8"}})}}loadProtoTypes();const encoder$2=new TextEncoder;async function streamJsonResponseBodies$1(e,t,o){const a=t.getWriter();let s={id:"",msgCallback:e=>{a.write(encoder$2.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$2.encode("data: [DONE]\n\n"))}};for(;;)try{const{value:t,done:o}=await e.read();if(o){s.endCallback(),a.close();break}if(!t)continue;const r=t[0],i=new Uint32Array(t.slice(1,5).reverse().buffer)[0],c=t.slice(5,5+i);if(0!=r){if(2==r)continue;continue}const l=ResponseMsg.decode(Buffer.from(c));s.msgCallback(l.msg)}catch(e){throw a.close(),e}}var __defProp$1=Object.defineProperty,__defNormalProp$1=(e,t,o)=>t in e?__defProp$1(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__publicField$1=(e,t,o)=>__defNormalProp$1(e,"symbol"!=typeof t?t+"":t,o);const qodoApiKey="AIzaSyCMMynYm5VRHj1NOwkfWinX-HYsFArdUbk",_AuthManager=class _AuthManager{constructor(){__publicField$1(this,"tokenInfo",null),__publicField$1(this,"REFRESH_THRESHOLD",300),__publicField$1(this,"storage"),__publicField$1(this,"currentEmail",null),__publicField$1(this,"currentAuthToken",null),this.storage=getStorage()}static getInstance(){return _AuthManager.instance||(_AuthManager.instance=new _AuthManager),_AuthManager.instance}async loadTokenFromStorage(){try{return await this.storage.getItem("qodoToken")}catch(e){return console.error("加载存储的 token 失败:",e),null}}async saveTokenToStorage(e,t,o){try{const a={tokenInfo:e,email:t,authToken:o};await this.storage.setItem("qodoToken",JSON.stringify(a)),this.currentEmail=t,this.currentAuthToken=o}catch(e){console.error("保存 token 失败:",e)}}async refreshAuthToken(e){if(!(null==e?void 0:e.refreshToken)||!this.currentEmail||!this.currentAuthToken)throw new Error("没有可用的刷新令牌或登录信息");try{const t=await fetch(`https://securetoken.googleapis.com/v1/token?key=${qodoApiKey}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({grant_type:"refresh_token",refresh_token:e.refreshToken})}),o=await t.json();if(o.error)throw console.error(o.error.errors),new Error(o.error.message);const a={apiToken:o.id_token,refreshToken:o.refresh_token,expiryTime:Date.now()+1e3*o.expires_in,email:e.email};return await this.saveTokenToStorage(a,this.currentEmail,this.currentAuthToken),this.tokenInfo=a,a}catch(e){throw console.error("刷新token失败:",e),e}}async getValidTokenUseEmail(e,t){if(this.tokenInfo){const o=Date.now();if(this.tokenInfo.expiryTime-o<=1e3*this.REFRESH_THRESHOLD)try{return(await this.refreshAuthToken(this.tokenInfo)).apiToken}catch(o){if(e&&t){return(await this.signInWithEmailLink(e,t)).apiToken}throw o}return this.tokenInfo.apiToken}const o=await this.loadTokenFromStorage();if(console.log("加载token从storage",o),o){if(e&&t&&(e!==o.email||t!==o.authToken)){return(await this.signInWithEmailLink(e,t)).apiToken}this.tokenInfo=o.tokenInfo,this.currentEmail=o.email,this.currentAuthToken=o.authToken;const a=Date.now();if(this.tokenInfo.expiryTime-a<=1e3*this.REFRESH_THRESHOLD)try{return(await this.refreshAuthToken(this.tokenInfo)).apiToken}catch(o){if(e&&t){return(await this.signInWithEmailLink(e,t)).apiToken}throw o}return this.tokenInfo.apiToken}if(e&&t){return(await this.signInWithEmailLink(e,t)).apiToken}throw new Error("无法获取有效的token: 没有存储的认证信息,也没有提供登录参数")}async signInWithEmailLink(e,t){try{const o=await fetch(`https://identitytoolkit.googleapis.com/v1/accounts:signInWithEmailLink?key=${qodoApiKey}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:e,oobCode:t})}),a=await o.json();if(a.error)throw console.error(a.error.errors),new Error(a.error.message);const s={apiToken:a.idToken,refreshToken:a.refreshToken,expiryTime:Date.now()+1e3*parseInt(a.expiresIn),email:a.email};return await this.saveTokenToStorage(s,e,t),this.tokenInfo=s,s}catch(e){throw console.error("登录失败:",e),e}}async getValidTokenUseWithIdp(e){if(this.tokenInfo){const t=Date.now();if(this.tokenInfo.expiryTime-t<=1e3*this.REFRESH_THRESHOLD)try{return(await this.refreshAuthToken(this.tokenInfo)).apiToken}catch(t){if(e){return(await this.signInWithIdp(e)).apiToken}throw t}return this.tokenInfo.apiToken}const t=await this.loadTokenFromStorage();if(console.log("加载token从storage",t),t){if(e&&e!==t.authToken){return(await this.signInWithIdp(e)).apiToken}this.tokenInfo=t.tokenInfo,this.currentEmail=t.email,this.currentAuthToken=t.authToken;const o=Date.now();if(this.tokenInfo.expiryTime-o<=1e3*this.REFRESH_THRESHOLD)try{return(await this.refreshAuthToken(this.tokenInfo)).apiToken}catch(t){if(e){return(await this.signInWithIdp(e)).apiToken}throw t}return this.tokenInfo.apiToken}if(e){return(await this.signInWithIdp(e)).apiToken}throw new Error("无法获取有效的token: 没有存储的认证信息,也没有提供登录参数")}async signInWithIdp(e){try{const t=await fetch(`https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=${qodoApiKey}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({requestUri:"http://localhost",returnSecureToken:!0,postBody:`&id_token=${e}&providerId=google.com`})}),o=await t.json();if(o.error)throw console.error(o.error.errors),new Error(o.error.message);const a={apiToken:o.idToken,refreshToken:o.refreshToken,expiryTime:Date.now()+1e3*parseInt(o.expiresIn),email:o.email};return await this.saveTokenToStorage(a,a.email,e),this.tokenInfo=a,a}catch(e){throw console.error("登录失败:",e),e}}};__publicField$1(_AuthManager,"instance");let AuthManager=_AuthManager;const authManager=AuthManager.getInstance();async function qodo(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel;let s=(null==a?void 0:a.apiKey)?a.apiKey:t.authorization?extractBearerToken(t.authorization):"";console.log("apiKey:",s);const r=JSON.parse(s),i=await authManager.getValidTokenUseWithIdp(r.token);console.log("当前有效token:",i);const c=getRandomUuidv4(),l=getRandomUuidv4();let d=o.messages.pop().content;"system"===o.messages[0].role&&(o.messages[0].role="user",o.messages.splice(1,0,{role:"assistant",content:"你的问题很好,请补充,我接下来会回答"}));let p=o.messages.filter((e=>"system"!==e.role)).map((e=>({role:e.role,content:e.content,..."user"===e.role?{command:"chat",mode:"freeChat"}:{}})));p=[];const u=await fetch("https://api.gen.qodo.ai/v2/chats/chat",{method:"POST",headers:{"user-agent":"axios/1.6.2",host:"api.gen.qodo.ai","content-type":"application/json",Authorization:`Bearer ${i}`},body:JSON.stringify({max_remote_context:0,remote_context_tags:[],max_repo_context:5,user_data:{installation_id:c,installation_fingerprint_uuid:l,editor_version:"1.96.1",extension_version:"0.12.7",os_platform:"win32",os_version:"v20.18.1",editor_type:"vscode"},task:"",chat_input:d,previous_messages:p,user_context:[],repo_context:[],custom_model:o.model})});if(!u.ok)return errorResponse(u);const m=u.body.pipeThrough(new TextDecoderStream).getReader(),{readable:h,writable:g}=new TransformStream;return streamJsonResponseBodies(m,g,o.model),new Response(h,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}const encoder$1=new TextEncoder;async function streamJsonResponseBodies(e,t,o){const a=t.getWriter();let s={id:getRandomUuidv4(),msgCallback:e=>{a.write(encoder$1.encode(`data: ${JSON.stringify(toOpenAIResponse(s.id,e,o,!0))}\n\n`))},endCallback:()=>{a.write(encoder$1.encode("data: [DONE]\n\n"))},buff:""};for(;;)try{const{value:t,done:o}=await e.read();if(o){s.endCallback(),a.close();break}if(!t)continue;if(0==t.trim().endsWith("}")){s.buff+=t;continue}s.buff+=t;const r=s.buff;s.buff="";try{r.split("\n").forEach((e=>{if(!e)return;const t=JSON.parse(e);"reference_context"!==t.sub_type&&onParse(t,s)}))}catch(e){console.error("parse error: ",t,r,e)}}catch(e){throw a.close(),e}}function onParse(e,t){try{let o=e.data.content;o.includes("")&&(o=o.replace("","")),t.msgCallback(o)}catch(e){throw e}}var __defProp=Object.defineProperty,__defNormalProp=(e,t,o)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__publicField=(e,t,o)=>__defNormalProp(e,"symbol"!=typeof t?t+"":t,o);const protoDefinition='\n syntax = "proto3";\n\n\n// AI对话请求消息\nmessage PredictWithStream {\n string modelName = 1; // AI模型名称\n Conversation context = 2; // 对话上下文\n}\n\n\n// 表示单条消息内容\nmessage Message {\n int32 roleType = 1; // 1: user, 2: assistant 等角色类型\n string content = 2; // 具体的消息内容\n}\n\n// 对话上下文\nmessage Conversation {\n Message messages = 2; // 对话历史消息列表\n string systemPrompt = 3; // 系统指令/提示语\n}\n\n// AI对话请求\nmessage Predict {\n string modelName = 1; // AI模型名称\n Conversation context = 2; // 对话上下文\n}\n\n\n\n\nmessage PredictWithStreamResponse {\n int32 statusCode = 2; // 状态码 200\n ResponseContainer data = 4; // 响应数据\n}\n\n\n// 对话结果内容\nmessage DialogueResult {\n int64 resultType = 1; // 结果类型为3\n string content = 2; // JSON格式的具体内容\n}\n\n// 响应内容包装\nmessage ResponseWrapper {\n DialogueResult result = 2; // 包装的对话结果\n}\n\n// 外层响应包装\nmessage ResponseContainer {\n ResponseWrapper response = 1; // 最外层包装\n}\n\n// AI聊天响应\nmessage PredictResponse {\n int32 statusCode = 2; // 状态码 200\n ResponseContainer data = 4; // 响应数据\n}\n\n';class ProtobufHandler{constructor(){__publicField(this,"root"),__publicField(this,"PredictWithStream"),__publicField(this,"Predict"),__publicField(this,"PredictResponse"),__publicField(this,"PredictWithStreamResponse"),this.loadProtoTypes()}loadProtoTypes(){this.root=protobuf.parse(protoDefinition).root,this.PredictWithStream=this.root.lookupType("PredictWithStream"),this.Predict=this.root.lookupType("Predict"),this.PredictResponse=this.root.lookupType("PredictResponse"),this.PredictWithStreamResponse=this.root.lookupType("PredictWithStreamResponse")}async createPredictWithStream(e,t,o){const a=this.PredictWithStream.create({modelName:e,context:{messages:{roleType:1,content:t},systemPrompt:o}});return this.PredictWithStream.encode(a).finish()}async createPredict(e,t,o){const a=this.Predict.create({modelName:e,context:{messages:{roleType:1,content:t},systemPrompt:o}});return this.Predict.encode(a).finish()}}async function createJWT(){return"eyJvcyI6ImZhOTIyNzU4LWZiZWYtNDAxNS1iNzM0LWIwMjE5MmU4ZjMwZCIsInVzZXJfaWQiOiJVTktOT1dOIiwidXNlcl9lbWFpbCI6IlVOS05PV04iLCJjbGllbnRfaXBfYWRkcmVzcyI6IlVOS05PV04iLCJjb3VudHJ5X2lwX25hbWUiOiJVTktOT1dOIiwiY291bnRyeV9pcF9hZGRyZXNzIjoiVU5LTk9XTiIsImNvdW50cnlfaXBfY29kZSI6IlVOS05PV04iLCJvcGVyYXRpbmdfc3lzdGVtIjoid2luZG93cyIsIm9zX3NlcnZlcl92ZXJzaW9uIjoiMTAuMS4xNSIsImFsZyI6IkhTMjU2IiwidHlwIjoiSldUIn0.eyJzdHJlYW1Jbml0Ijp0cnVlLCJ0aW1lc3RhbXAiOiIyMDI0LTEyLTEwVDEyOjAxOjI0LjI0NjE3MloiLCJpYXQiOjE3MzM4MzIwODQsImV4cCI6MTczMzgzMjE0NH0.EB-5eyZn3nik2secKX_6X038xofpIYWBy9snDzV6fOI"}process.env.NODE_TLS_REJECT_UNAUTHORIZED="0";class GrpcClient{constructor(){__publicField(this,"client"),__publicField(this,"protobufHandler"),__publicField(this,"metadata",null),this.protobufHandler=new ProtobufHandler,credentials.createSsl(null,null,null,{checkServerIdentity:()=>{}});this.client=new Client("runtime-native-io-vertex-inference-grpc-service.aot.runtime.services:443",credentials.createSsl(),{"grpc.primary_user_agent":"dart-grpc/2.0.0","grpc.max_receive_message_length":-1,"grpc.max_send_message_length":-1,"grpc.max_concurrent_streams":1e3})}async initialize(){try{const e=await this.createMetadata();return new Promise(((t,o)=>{this.client.makeUnaryRequest("/runtime.aot.machine_learning.parents.vertex.VertexInferenceService/Initialize",(e=>Buffer.from([])),(e=>e),{},e,((e,a)=>{if(e)return console.error("Initialize error:",e),void o(e);t(a)}))}))}catch(e){throw console.error("Error in initialize:",e),e}}async initializeWithTask(){try{const e=await this.createMetadata();return e.add("os-server-predict-task","messageTitle"),new Promise(((t,o)=>{this.client.makeUnaryRequest("/runtime.aot.machine_learning.parents.vertex.VertexInferenceService/Initialize",(e=>Buffer.from([])),(e=>e),{},e,((e,a)=>{if(e)return console.error("Initialize with task error:",e),void o(e);t(a)}))}))}catch(e){throw console.error("Error in initialize with task:",e),e}}async sendPredictWithStream(e){try{const t=await this.createMetadata(),o=await this.protobufHandler.createPredictWithStream(e.model,e.message,e.systemPrompt);let a=!1;const s=this.client.makeServerStreamRequest("/runtime.aot.machine_learning.parents.vertex.VertexInferenceService/PredictWithStream",(e=>Buffer.from(e)),(e=>{try{return this.protobufHandler.PredictWithStreamResponse.decode(new Uint8Array(e))}catch(e){throw console.error("响应解析错误:",e),e}}),o,t);s.on("data",(async t=>{if(!a&&t.data)try{await e.onData(t.data.response.result.content)}catch(t){a||(a=!0,s.cancel(),await e.onError(t))}})),s.on("end",(async()=>{a||(a=!0,await e.onEnd())})),s.on("error",(async t=>{a||(a=!0,s.cancel(),await e.onError(t))}))}catch(t){await e.onError(t)}}async createMetadata(){const e=await createJWT();return this.metadata=new Metadata,this.metadata.add("authorization",`Bearer ${e}`),this.metadata.add("os","UNKNOWN"),this.metadata.add("user_id","UNKNOWN"),this.metadata.add("user_email","UNKNOWN"),this.metadata.add("client_ip_address","UNKNOWN"),this.metadata.add("country_ip_name","UNKNOWN"),this.metadata.add("country_ip_address","UNKNOWN"),this.metadata.add("country_ip_code","UNKNOWN"),this.metadata.add("operating_system","windows"),this.metadata.add("os_server_version","11.0.3"),this.metadata}async sendPredictRequest(e){try{const t=await this.createMetadata(),o=await this.protobufHandler.createPredict(e.model,e.message,e.systemPrompt);return new Promise(((e,a)=>{const s=this.client.makeClientStreamRequest("/runtime.aot.machine_learning.parents.vertex.VertexInferenceService/Predict",(e=>Buffer.from(e)),(e=>this.protobufHandler.PredictResponse.decode(Uint8Array.from(e))),t,((t,o)=>{t?a(t):e(o)}));s.write(o,(e=>{e?a(e):s.end()})),s.end();let r="";s.on("data",(e=>{r+=e.content.toString()})),s.on("error",(e=>{a(e)}))}))}catch(e){throw console.error("Error in sendRequest:",e),e}}}const encoder=new TextEncoder,client=new GrpcClient;async function pieces(e){const t=Object.fromEntries(e.headers),o=await readBody(e),a=e.context.meta||o.meta;o.model=o.model&&"default"!==o.model?o.model:null==a?void 0:a.apiModel,(null==a?void 0:a.apiKey)?a.apiKey:t.authorization&&extractBearerToken(t.authorization);let s="";"system"===o.messages[0].role&&(s=o.messages.shift().content);const r=MergeMessages(o.messages);try{const e=`You are a software developer who specializes in providing assistance to other developers.I would like you to answer coding-related questions in a helpful and straightforward manner.The included context will be the codeblocks that you have previously generated within this conversation.1. Read and understand the query thoroughly. 2. Use all information provided to provide a clear and helpful response. 3. If you include a code example, you must include it in the proper markdown code block syntax. it is critical that you specify the proper code language in the beginning of the markdown code. 4. If you are completely unable to answer the query, say "I'm sorry, I can't answer that." 5. Answer the following question only if you know the answer or can make a well-informed guess; otherwise tell me you don't know it.Previously generated codeblocks in chronological order:\nPreviously generated code blocks:\nNo previously generated code blocks\n\nRecent message history in chronological order:\n${s}\nRelevant past chat message:\nNo relevant messages\n\n\n`,{readable:t,writable:o}=new TransformStream,a=o.getWriter(),i=getRandomUuidv4();return(async()=>{try{await client.sendPredictWithStream({model:"claude-3-5-sonnet@20240620",message:r,systemPrompt:e,onData:async e=>{const t=toOpenAIResponse(i,e,"claude-3-5-sonnet",!0),o=`data: ${JSON.stringify(t)}\n\n`;await a.write(encoder.encode(o))},onEnd:async()=>{await a.write(encoder.encode("data: [DONE]\n\n")),await a.close()},onError:async e=>{console.error("流处理错误:",e);const t=`data: ${JSON.stringify({error:e.message})}\n\n`;await a.write(encoder.encode(t)),await a.close()}})}catch(e){console.error("处理流错误:",e),await a.close()}})(),new Response(t,{headers:{"Content-Type":"text/event-stream","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"*","Access-Control-Allow-Headers":"*","Access-Control-Allow-Credentials":"true"}})}catch(e){console.error("Error in main:",e)}}const llm_providers={coze_com:coze_com,coze_cn:coze_cn,vercel:vercel,openai:openai,github_copilot:github_copilot,ernie:ernie,hunyuan:hunyuan,chatglm:chatglm,tongyi:tongyi,wanzhi:wanzhi,coze:coze,huggingface:huggingface,lmsys:lmsys,spark:spark,cloudflare:cloudflare,mistral_ai:mistral_ai,anthropic:anthropic,cohere:cohere,gemini:gemini,claude:claude,kimi:kimi,gemini_vertex:gemini_vertex,anthropic_vertex:anthropic_vertex,openai_vertex:openai_vertex,mistralai_vertex:mistralai_vertex,chatgpt:chatgpt,lyihub:lyihub,deepinfra:deepinfra,replicate:replicate,vecmul:vecmul,magai:magai,azure:azure,blackbox:blackbox,cursor:cursor,zed:zed,pieces:pieces,qodo:qodo,genspark:genspark$2,qwenlm:qwenlm,deepseek:deepseek,deepseek_com:deepseek_com,genspark_image:genspark$1,imagefx:genspark,bing_image:bing_image,siliconflow_image:siliconflow_image,cloudflare_image:cloudflare_image,designer:designer,grok:grok,n:n,firefly:firefly,yuanbao:yuanbao};export{llm_providers as l};