QwenLM / Qwen2.5

Qwen2.5 is the large language model series developed by Qwen team, Alibaba Cloud.
9.43k stars 582 forks source link

[Question]: 如果将此模型用作翻译使用,我遇到了一些问题。 #937

Closed Leowolf93 closed 1 month ago

Leowolf93 commented 1 month ago

Has this been raised before?

Description

我使用 llama.cpp 在我的 4090 中使用 Qwen2.5-32b-instruct-q4_k_m 进行推理。 我翻译的是对话形式的小说,英译中。每次给模型的只有一句话这样的长度。 1、我应该如何避免出现上下文人名不一致的问题:模型似乎没办法将人名对应。 2、有些词不会被正确的翻译为中文,会掺杂在中文翻译中。如:“他漫不经心地用手沿着匕首的边缘滑过,目光中透出一种陌生的强烈 intensity。 “

我应该如何调整参数?或者是否有一个比较完善的用于翻译的 prompt?

mingxing0769 commented 1 month ago

id_1 = "E:/oobabooga_windows/models/Qwen2-7B_gguf/qwen2-7b-instruct-q8_0.gguf" id_2 = "./models/Qwen2_5/7B/qwen2.5-7b-instruct-q8_0-00001-of-00003.gguf" id_3 = "./models/Qwen2_5/14B/qwen2.5-14b-instruct-q5_k_m-00001-of-00003.gguf" id_4 = "./models/Qwen2_5/3B/qwen2.5-3b-instruct-fp16-00001-of-00002.gguf" qwen2_config = { 'llama_config': { 'model_path': id_2, 'verbose': False, 'n_gpu_layers': -1, 'n_ctx': 4096, 'flash_attn': True, 'seed': 1024 }, 'completion_config': { 'temperature': 1.0, 'top_p': 0.6, 'top_k': 80, 'min_p': 0.15, 'seed': 1024, 'max_tokens': None, 'presence_penalty': 0.0, 'frequency_penalty': 0.0, 'repeat_penalty': 1.05, } messages = [{"role": "system", "content": "您是高级翻译助手,任务是将输入内容翻译为中文,要求:\n" "- 根据内容主题(如新闻、赛事等)及结合上下文进行翻译,确保翻译准确、连贯、简洁。\n" "- 当输入不完整时,暂不翻译,待更新后补充翻译。不要提示!\n" "- 人名备注原英文,如:瓦尔特里·博塔斯(Valtteri Bottas)。\n" "- 不对内容进行评论、总结、解释及试图交流。" }] 参考试试

Leowolf93 commented 1 month ago

id_1 = "E:/oobabooga_windows/models/Qwen2-7B_gguf/qwen2-7b-instruct-q8_0.gguf" id_2 = "./models/Qwen2_5/7B/qwen2.5-7b-instruct-q8_0-00001-of-00003.gguf" id_3 = "./models/Qwen2_5/14B/qwen2.5-14b-instruct-q5_k_m-00001-of-00003.gguf" id_4 = "./models/Qwen2_5/3B/qwen2.5-3b-instruct-fp16-00001-of-00002.gguf" qwen2_config = { 'llama_config': { 'model_path': id_2, 'verbose': False, 'n_gpu_layers': -1, 'n_ctx': 4096, 'flash_attn': True, 'seed': 1024 }, 'completion_config': { 'temperature': 1.0, 'top_p': 0.6, 'top_k': 80, 'min_p': 0.15, 'seed': 1024, 'max_tokens': None, 'presence_penalty': 0.0, 'frequency_penalty': 0.0, 'repeat_penalty': 1.05, } messages = [{"role": "system", "content": "您是高级翻译助手,任务是将输入内容翻译为中文,要求:\n" "- 根据内容主题(如新闻、赛事等)及结合上下文进行翻译,确保翻译准确、连贯、简洁。\n" "- 当输入不完整时,暂不翻译,待更新后补充翻译。不要提示!\n" "- 人名备注原英文,如:瓦尔特里·博塔斯(Valtteri Bottas)。\n" "- 不对内容进行评论、总结、解释及试图交流。" }] 参考试试

非常感谢,我去试试看!

despairTK commented 1 month ago

最好的方法是每次翻译时使用AI对进行翻译的文本进行简短总结,然后把总结出来的内容告诉模型,如果有一些特殊专业词汇需要你进行说明和实例你想要的翻译结果。

mingxing0769 commented 1 month ago

输入: He is out in the second part of qualifying along with Magnussen and Ocon. What happened there 输出: 他在这节排位赛的第二部分被淘汰了,与马格努森(Magnussen)和奥康(Ocon)一同出局。那里发生了什么? 运行时间:2.11秒

输入: He is out in the 2nd part of qualifying along with Magnussen and Ocon. What happened there? 输出: 他在这节排位赛的第二部分被淘汰了,与马格努森(Magnussen)和奥康(Ocon)一同出局。那里发生了什么? 运行时间:2.14秒

输入: What happened there? Verstappen's miles quicker in 输出: 那里发生了什么?维斯塔潘(Verstappen)快多了。他在哪个阶段更快? 运行时间:1.30秒

输入: Verstappen's miles quicker in the middle of the lap. Yeah, Verstappen 输出: 维斯塔潘(Verstappen)在单圈的中间部分快多了。是的,维斯塔潘。 运行时间:1.52秒

输入: Verstappen very comfortable at the moment. 输出: 维斯塔潘(Verstappen)目前非常从容。 运行时间:0.88秒

输入: Verstappen very comfortable at the moment. Norris going even quick 输出: 维斯塔潘(Verstappen)目前非常从容。诺里斯(Norris)则越来越快。 运行时间:1.48秒

输入: Norris going even quicker through the first sector 输出: 诺里斯(Norris)在第一个计时段中甚至更快了。 运行时间:1.06秒

输入: Norris going even quicker through the first sector of this three mile 输出: 诺里斯(Norris)在这条三英里的赛道的第一个计时段中甚至更快了。 运行时间:1.33秒

输入: Norris going even quicker through the first sector of this 3 mile race track. These are the final 输出: 诺里斯(Norris)在这条三英里的赛道的第一个计时段中甚至更快了。这是最后的冲刺阶段。 运行时间:1.70秒

输入: These are the final corners for Oscar Piastry 输出: 这些是奥斯卡·皮亚斯特里(Oscar Piastri)需要通过的最后一个弯道。 运行时间:1.47秒

输入: These are the final corners for Oscar Piastry, ringing the speed from the McL 输出: 这些是奥斯卡·皮亚斯特里(Oscar Piastri)需要通过的最后一个弯道,他正在从麦拉伦(McL)赛车中榨取出最大速度。 运行时间:2.41秒

输入: ringing the speed from the McLaren car off in the background there. Big moment off the wall 输出: 他在背景中驾驶迈凯伦(McLaren)赛车全力冲刺。这一刻非常关键。 运行时间:1.35秒 用的14B q5_k_m 效果还是不错的 就是显卡太旧 速度有点跟不上