pot-app / pot-desktop

🌈一个跨平台的划词翻译和OCR软件 | A cross-platform software for text translation and recognition.
https://pot-app.com
GNU General Public License v3.0
9.15k stars 418 forks source link

[Feature]: 用户可自定义翻译服务图标文件 | Customize the translation service icon file #830

Closed syaoranwe closed 1 week ago

syaoranwe commented 3 weeks ago

功能描述

用户可以自定义一个网络URL,指向一个图标图片文件,配置翻译服务时Pot程序可以自动缓存一次图标,然后在后续的显示和翻译中使用自定义的图标展示。图标地址举例:

自定义图标示意图: 示意图

应用场景

我用了最新PR合并后的版本,多个openai翻译实例解决了之前无法自定义多个openai服务和不能自定义模型调用参数的不足,值得称赞。

不过目前不同实例都是共用同一个openai的icon(参见这个PR),是否能更进一步,让用户也可以自定义翻译服务的icon?这样方便区分不同模型服务。

比如我现在使用了多个不同的模型同时翻译(都是调用的兼容openai格式的API),每个模型我都是专门安装一个插件来自定义图标以方便区分(参见提供的图片),相较现在的版本,唯一的缺陷是插件不支持流式输出。

如果在现有的版本上,增加翻译服务可自定义icon图片地址,那么自定义服务就可以不用默认的openai的icon了,不同的图标可以更快地识别不同服务。我也就不需要再额外使用插件了。

顺便提一下

xtyuns commented 3 weeks ago

从功能上来讲,自定义图标并不能带来收益,且有可能导致后期维护混乱,因此基本上不会提供这个功能。

为 OpenAI 提供多实例功能是为了使那些兼容 OpenAI 接口规范的 LLM 服务可以借用已有的代码实现,自定义名称是为了区分不同配置,这就够了,我们不希望 OpenAI 的翻译服务变为一个其他 LLM 的工厂,OpenAI 就是 OpenAI,OpenAI 不是 Moonshot,OpenAI 也不是 DeepSeek,OpenAI 不需要考虑其他 LLM 的参数限制,它只需要关心自己的接口规范就好。

关于智谱的模型更新和 OpenAI 默认参数调整, @Pylogmon 你觉得怎么样?

syaoranwe commented 3 weeks ago

确实,自定义服务图标更多的不是提供新功能,而是让应用使用起来更美观或者寻找特定服务时更直观快捷,收益更多是体验上的。修改现有处理图标显示的逻辑确实有引入新Bug的风险。

而这一功能要解决的问题也只是让不同服务区分得更明显、寻找起来更快,这靠插件系统也能做到,只不过目前插件还不支持流式输出,如果插件能支持流式输出,也可以做到相同的使用体验,那自定义图标这个功能其实也没有太大必要。

其实这个Feature和之前提出的这个Feature出发点都是一样的: