Merge branch 'master' into interface-interlm
This commit is contained in:
		
						commit
						df90db210c
					
				@ -44,7 +44,7 @@ chat分析报告生成 | [函数插件] 运行后自动生成总结汇报
 | 
				
			|||||||
Latex论文一键校对 | [函数插件] 仿Grammarly对Latex文章进行语法、拼写纠错+输出对照PDF
 | 
					Latex论文一键校对 | [函数插件] 仿Grammarly对Latex文章进行语法、拼写纠错+输出对照PDF
 | 
				
			||||||
[谷歌学术统合小助手](https://www.bilibili.com/video/BV19L411U7ia) | [函数插件] 给定任意谷歌学术搜索页面URL,让gpt帮你[写relatedworks](https://www.bilibili.com/video/BV1GP411U7Az/)
 | 
					[谷歌学术统合小助手](https://www.bilibili.com/video/BV19L411U7ia) | [函数插件] 给定任意谷歌学术搜索页面URL,让gpt帮你[写relatedworks](https://www.bilibili.com/video/BV1GP411U7Az/)
 | 
				
			||||||
互联网信息聚合+GPT | [函数插件] 一键[让GPT从互联网获取信息](https://www.bilibili.com/video/BV1om4y127ck)回答问题,让信息永不过时
 | 
					互联网信息聚合+GPT | [函数插件] 一键[让GPT从互联网获取信息](https://www.bilibili.com/video/BV1om4y127ck)回答问题,让信息永不过时
 | 
				
			||||||
⭐Arxiv论文精细翻译 | [函数插件] 一键[以超高质量翻译arxiv论文](https://www.bilibili.com/video/BV1dz4y1v77A/),目前最好的论文翻译工具
 | 
					⭐Arxiv论文精细翻译 ([Docker](https://github.com/binary-husky/gpt_academic/pkgs/container/gpt_academic_with_latex)) | [函数插件] 一键[以超高质量翻译arxiv论文](https://www.bilibili.com/video/BV1dz4y1v77A/),目前最好的论文翻译工具
 | 
				
			||||||
⭐[实时语音对话输入](https://github.com/binary-husky/gpt_academic/blob/master/docs/use_audio.md) | [函数插件] 异步[监听音频](https://www.bilibili.com/video/BV1AV4y187Uy/),自动断句,自动寻找回答时机
 | 
					⭐[实时语音对话输入](https://github.com/binary-husky/gpt_academic/blob/master/docs/use_audio.md) | [函数插件] 异步[监听音频](https://www.bilibili.com/video/BV1AV4y187Uy/),自动断句,自动寻找回答时机
 | 
				
			||||||
公式/图片/表格显示 | 可以同时显示公式的[tex形式和渲染形式](https://user-images.githubusercontent.com/96192199/230598842-1d7fcddd-815d-40ee-af60-baf488a199df.png),支持公式、代码高亮
 | 
					公式/图片/表格显示 | 可以同时显示公式的[tex形式和渲染形式](https://user-images.githubusercontent.com/96192199/230598842-1d7fcddd-815d-40ee-af60-baf488a199df.png),支持公式、代码高亮
 | 
				
			||||||
多线程函数插件支持 | 支持多线调用chatgpt,一键处理[海量文本](https://www.bilibili.com/video/BV1FT411H7c5/)或程序
 | 
					多线程函数插件支持 | 支持多线调用chatgpt,一键处理[海量文本](https://www.bilibili.com/video/BV1FT411H7c5/)或程序
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										6
									
								
								main.py
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								main.py
									
									
									
									
									
								
							@ -22,8 +22,10 @@ def main():
 | 
				
			|||||||
    # 问询记录, python 版本建议3.9+(越新越好)
 | 
					    # 问询记录, python 版本建议3.9+(越新越好)
 | 
				
			||||||
    import logging, uuid
 | 
					    import logging, uuid
 | 
				
			||||||
    os.makedirs("gpt_log", exist_ok=True)
 | 
					    os.makedirs("gpt_log", exist_ok=True)
 | 
				
			||||||
    try:logging.basicConfig(filename="gpt_log/chat_secrets.log", level=logging.INFO, encoding="utf-8")
 | 
					    try:logging.basicConfig(filename="gpt_log/chat_secrets.log", level=logging.INFO, encoding="utf-8", format="%(asctime)s %(levelname)-8s %(message)s", datefmt="%Y-%m-%d %H:%M:%S")
 | 
				
			||||||
    except:logging.basicConfig(filename="gpt_log/chat_secrets.log", level=logging.INFO)
 | 
					    except:logging.basicConfig(filename="gpt_log/chat_secrets.log", level=logging.INFO,  format="%(asctime)s %(levelname)-8s %(message)s", datefmt="%Y-%m-%d %H:%M:%S")
 | 
				
			||||||
 | 
					    # Disable logging output from the 'httpx' logger
 | 
				
			||||||
 | 
					    logging.getLogger("httpx").setLevel(logging.WARNING)
 | 
				
			||||||
    print("所有问询记录将自动保存在本地目录./gpt_log/chat_secrets.log, 请注意自我隐私保护哦!")
 | 
					    print("所有问询记录将自动保存在本地目录./gpt_log/chat_secrets.log, 请注意自我隐私保护哦!")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # 一些普通功能模块
 | 
					    # 一些普通功能模块
 | 
				
			||||||
 | 
				
			|||||||
@ -447,6 +447,15 @@ class _ChatHub:
 | 
				
			|||||||
        """
 | 
					        """
 | 
				
			||||||
        Ask a question to the bot
 | 
					        Ask a question to the bot
 | 
				
			||||||
        """
 | 
					        """
 | 
				
			||||||
 | 
					        req_header = HEADERS
 | 
				
			||||||
 | 
					        if self.cookies is not None:
 | 
				
			||||||
 | 
					            ws_cookies = []
 | 
				
			||||||
 | 
					            for cookie in self.cookies:
 | 
				
			||||||
 | 
					                ws_cookies.append(f"{cookie['name']}={cookie['value']}")
 | 
				
			||||||
 | 
					            req_header.update({
 | 
				
			||||||
 | 
					                'Cookie': ';'.join(ws_cookies),
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
        timeout = aiohttp.ClientTimeout(total=30)
 | 
					        timeout = aiohttp.ClientTimeout(total=30)
 | 
				
			||||||
        self.session = aiohttp.ClientSession(timeout=timeout)
 | 
					        self.session = aiohttp.ClientSession(timeout=timeout)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -455,7 +464,7 @@ class _ChatHub:
 | 
				
			|||||||
        # Check if websocket is closed
 | 
					        # Check if websocket is closed
 | 
				
			||||||
        self.wss = await self.session.ws_connect(
 | 
					        self.wss = await self.session.ws_connect(
 | 
				
			||||||
            wss_link,
 | 
					            wss_link,
 | 
				
			||||||
            headers=HEADERS,
 | 
					            headers=req_header,
 | 
				
			||||||
            ssl=ssl_context,
 | 
					            ssl=ssl_context,
 | 
				
			||||||
            proxy=self.proxy,
 | 
					            proxy=self.proxy,
 | 
				
			||||||
            autoping=False,
 | 
					            autoping=False,
 | 
				
			||||||
@ -1109,4 +1118,4 @@ class ImageQuery(Query):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if __name__ == "__main__":
 | 
					if __name__ == "__main__":
 | 
				
			||||||
    main()
 | 
					    main()
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user