解决退出报错event loop closed的错误

尝试了几个模型发现还是gpt-4o-mini更好,更准确
This commit is contained in:
Ekko.bao 2024-11-04 22:36:01 +08:00
parent d3ab696d10
commit ebd25b9cdb
2 changed files with 15 additions and 5 deletions

View File

@ -1,3 +1,9 @@
# excel_translate
Emma工作需要将excel中的所有中文转换为英文
Emma工作需要将excel中的所有中文转换为英文
如果出现以下错误,请关闭代理尝试
```bash
Error: Unknown scheme for proxy URL URL('socks4://127.0.0.1:1080')
```

View File

@ -3,6 +3,7 @@ import shutil
from typing import List, Tuple
import os
import sys
import platform
try:
import openpyxl
except ImportError:
@ -35,6 +36,8 @@ API_URL = "https://api.gpt.ge/v1"
# exit(0)
class Model:
default = "gpt-4o-mini"
doubao_lite_32k = "doubao-lite-32k"
gpt_4o_mini = "gpt-4o-mini"
text_davinci_002 = "text-davinci-002"
gpt_4o = "gpt-4o"
@ -49,7 +52,7 @@ class Model:
# 注意仅输出翻译后的内容即可,不要保留原文任何内容!!!
# 请翻译:\n"""
PROMT = "将如下内容翻译为英文,仅输出翻译后的内容,不输出任何原文:"
async def chinese2english(text, model=Model.gpt_4o_mini):
async def chinese2english(text, model=Model.default):
# print("start translate")
#Translate the text using OpenAI
client = AsyncOpenAI(api_key=API_KEY, base_url=API_URL)
@ -66,13 +69,12 @@ async def chinese2english(text, model=Model.gpt_4o_mini):
)
# print("translate done")
translated_text = response.choices[0].message.content
client.close()
return translated_text
# def chinese2english_stream(text, model=Model.gpt_4o_mini):
# def chinese2english_stream(text, model=Model.default):
# client = OpenAI(api_key=API_KEY, base_url=API_URL)
# with client.chat.completions.with_streaming_response.create(
# model = Model.gpt_4o_mini,
# model = model,
# messages = [
# {
# "role": "user",
@ -212,5 +214,7 @@ async def translate_excel_process(input_file_path="input.xlsx", output_file_path
output_workbook.save(output_file_path)
pass
if __name__ == "__main__":
if platform.system()=='Windows':
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy()) #解决windows下退出报错 event loop is closed
asyncio.run(main())
exit(0)