Delete accidentally committed file
This commit is contained in:
		
							parent
							
								
									6750a93cdb
								
							
						
					
					
						commit
						b75ca46565
					
				|  | @ -1,195 +0,0 @@ | ||||||
| const sendRequestBing = async (messages: Message[]): Promise<Response> => { |  | ||||||
|     const conversation = await ( |  | ||||||
|       await fetch("https://www.bing.com/turing/conversation/create", { |  | ||||||
|         credentials: "include", |  | ||||||
|       }) |  | ||||||
|     ).json(); |  | ||||||
| 
 |  | ||||||
|     return await new Promise((resolve, reject) => { |  | ||||||
|       const text = messages[messages.length - 1].content; |  | ||||||
|       const invocationId = "0"; |  | ||||||
| 
 |  | ||||||
|       const terminalChar = ""; |  | ||||||
| 
 |  | ||||||
|       const result = { |  | ||||||
|         author: "bot", |  | ||||||
|         id: crypto.randomUUID(), |  | ||||||
|         conversationId: conversation.conversationId, |  | ||||||
|         clientId: conversation.clientId, |  | ||||||
|         conversationSignature: conversation.conversationSignature, |  | ||||||
|         invocationId: `${parseInt(invocationId, 10) + 1}`, |  | ||||||
|         text: "", |  | ||||||
|         detail: "", |  | ||||||
|         conversationExpiryTime: null, |  | ||||||
|       }; |  | ||||||
| 
 |  | ||||||
|       const ws = new WebSocket("wss://sydney.bing.com/sydney/ChatHub"); |  | ||||||
|       ws.onopen = () => { |  | ||||||
|         ws.send(`{"protocol":"json","version":1}${terminalChar}`); |  | ||||||
|       }; |  | ||||||
| 
 |  | ||||||
|       ws.onmessage = (event) => { |  | ||||||
|         const objects = event.data.toString().split(terminalChar); |  | ||||||
|         const messages = objects |  | ||||||
|           .map((object) => { |  | ||||||
|             try { |  | ||||||
|               return JSON.parse(object); |  | ||||||
|             } catch (_) { |  | ||||||
|               return object; |  | ||||||
|             } |  | ||||||
|           }) |  | ||||||
|           .filter(Boolean); |  | ||||||
| 
 |  | ||||||
|         if (!messages.length) { |  | ||||||
|           return; |  | ||||||
|         } |  | ||||||
| 
 |  | ||||||
|         // Initial message |  | ||||||
|         if (messages.length === 1 && Object.keys(messages[0]).length === 0) { |  | ||||||
|           ws.send(`{"type":6}${terminalChar}`); |  | ||||||
| 
 |  | ||||||
|           const params = { |  | ||||||
|             arguments: [ |  | ||||||
|               { |  | ||||||
|                 source: "cib", |  | ||||||
|                 optionsSets: [ |  | ||||||
|                   "nlu_direct_response_filter", |  | ||||||
|                   "deepleo", |  | ||||||
|                   "disable_emoji_spoken_text", |  | ||||||
|                   "responsible_ai_policy_235", |  | ||||||
|                   "enablemm", |  | ||||||
|                   "harmonyv3", |  | ||||||
|                   "h3ads", |  | ||||||
|                   "wlthrottle", |  | ||||||
|                   "cpcttl7d", |  | ||||||
|                   "blocklistv2", |  | ||||||
|                   "h3toppfp2", |  | ||||||
|                   "dv3sugg", |  | ||||||
|                 ], |  | ||||||
|                 allowedMessageTypes: [ |  | ||||||
|                   "Chat", |  | ||||||
|                   "InternalSearchQuery", |  | ||||||
|                   "InternalSearchResult", |  | ||||||
|                   "Disengaged", |  | ||||||
|                   "InternalLoaderMessage", |  | ||||||
|                   "RenderCardRequest", |  | ||||||
|                   "AdsQuery", |  | ||||||
|                   "SemanticSerp", |  | ||||||
|                   "GenerateContentQuery", |  | ||||||
|                   "SearchQuery", |  | ||||||
|                 ], |  | ||||||
|                 sliceIds: [ |  | ||||||
|                   "perfsvgopt", |  | ||||||
|                   "228h3ads", |  | ||||||
|                   "h3ads", |  | ||||||
|                   "0310wlthrot", |  | ||||||
|                   "307retryscs0", |  | ||||||
|                   "307retryscs0", |  | ||||||
|                   "cache0307", |  | ||||||
|                   "ssoverlap50", |  | ||||||
|                   "ssplon", |  | ||||||
|                   "sssreduce", |  | ||||||
|                   "sswebtop2", |  | ||||||
|                   "302blocklist", |  | ||||||
|                   "308disbings0", |  | ||||||
|                   "311h3toppfp2", |  | ||||||
|                 ], |  | ||||||
|                 isStartOfSession: true, |  | ||||||
|                 message: { |  | ||||||
|                   locale: "en-US", |  | ||||||
|                   market: "en-US", |  | ||||||
|                   region: "US", |  | ||||||
|                   author: "user", |  | ||||||
|                   inputMethod: "Keyboard", |  | ||||||
|                   text, |  | ||||||
|                 }, |  | ||||||
|                 conversationSignature: conversation.conversationSignature, |  | ||||||
|                 participant: { |  | ||||||
|                   id: conversation.clientId, |  | ||||||
|                 }, |  | ||||||
|                 conversationId: conversation.conversationId, |  | ||||||
|               }, |  | ||||||
|             ], |  | ||||||
|             invocationId, |  | ||||||
|             target: "chat", |  | ||||||
|             type: 4, |  | ||||||
|           }; |  | ||||||
| 
 |  | ||||||
|           ws.send(`${JSON.stringify(params)}${terminalChar}`); |  | ||||||
| 
 |  | ||||||
|           return; |  | ||||||
|         } |  | ||||||
| 
 |  | ||||||
|         for (const message of messages) { |  | ||||||
|           if (message.type === 1) { |  | ||||||
|             // Message in progress |  | ||||||
|             const msg = message.arguments[0].messages[0]; |  | ||||||
| 
 |  | ||||||
|             if (!msg.messageType) { |  | ||||||
|               result.author = msg.author; |  | ||||||
|               result.text = msg.text; |  | ||||||
|               result.detail = msg; |  | ||||||
| 
 |  | ||||||
|               // Write to stdout |  | ||||||
|               console.log(`\r${result.text}`); |  | ||||||
|             } |  | ||||||
|           } else if (message.type === 2) { |  | ||||||
|             // Message complete |  | ||||||
|             if (message.item.result.error) { |  | ||||||
|               throw new Error(`Error message: ${message.item.result.error}`); |  | ||||||
|             } |  | ||||||
| 
 |  | ||||||
|             const validMessages = message.item.messages?.filter((m) => !m.messageType); |  | ||||||
|             const lastMessage = validMessages?.[validMessages?.length - 1]; |  | ||||||
| 
 |  | ||||||
|             if (lastMessage) { |  | ||||||
|               result.conversationId = message.item.conversationId; |  | ||||||
|               result.conversationExpiryTime = message.item.conversationExpiryTime; |  | ||||||
| 
 |  | ||||||
|               result.author = lastMessage.author; |  | ||||||
|               result.text = lastMessage.text; |  | ||||||
|               result.detail = lastMessage; |  | ||||||
| 
 |  | ||||||
|               //resolve(result); |  | ||||||
|             } |  | ||||||
|           } else if (message.type === 3) { |  | ||||||
|             // Conversation complete |  | ||||||
|             const response: Response = { |  | ||||||
|               id: result.id, |  | ||||||
|               object: "response", |  | ||||||
|               created: 1, |  | ||||||
|               choices: [ |  | ||||||
|                 { |  | ||||||
|                   index: 0, |  | ||||||
|                   message: { |  | ||||||
|                     role: "assistant", |  | ||||||
|                     content: result.text, |  | ||||||
|                   }, |  | ||||||
|                   finish_reason: "stop", |  | ||||||
|                 }, |  | ||||||
|               ], |  | ||||||
|               usage: null, |  | ||||||
|               error: null, |  | ||||||
|             }; |  | ||||||
|             resolve(response); |  | ||||||
| 
 |  | ||||||
|             ws.close(); |  | ||||||
|             return; |  | ||||||
|           } else { |  | ||||||
|             // TODO: handle other message types |  | ||||||
|             // these may be for displaying "adaptive cards" |  | ||||||
|             console.warn("Unexpected message type", message.type, message); |  | ||||||
|           } |  | ||||||
|         } |  | ||||||
|       }; |  | ||||||
| 
 |  | ||||||
|       ws.onerror = (error) => { |  | ||||||
|         console.log("WebSocket error:", error); |  | ||||||
|         reject(error); |  | ||||||
|       }; |  | ||||||
| 
 |  | ||||||
|       ws.onclose = (_event) => { |  | ||||||
|         console.log("WebSocket closed"); |  | ||||||
|       }; |  | ||||||
|     }); |  | ||||||
|   }; |  | ||||||
		Loading…
	
		Reference in New Issue
	
	 Niek van der Maas
						Niek van der Maas