苹果 writing-tool 正式出来之前,自己做了一个代替品 GinkgoGo - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cikelengfeng
V2EX    Apple

苹果 witing-tool 正式出来之前,自己做了一个代替品 GinkgoGo

  •  
  •   cikelengfeng 194 天前 1850 次点击
    这是一个创建于 194 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我在用 macOS 工作的时候有以下几种场景一直没有很方便的满足:

    1. 经常需要翻译英文(或其他语言)材料。
    2. 和老外交流需要先用中文打个稿,然后让 gpt 翻译成英文并润色,然后再发出去。
    3. 让 gpt 给我优化一下我的提示词。

    总之就是各种需要 AI 完成的日常小操作,我希望有个工具能够用一个快捷键随时调出来完成我预设好的 AI 操作,于是我就做了一个 macOS 上的工具 app 来帮助我,自己用下来感觉还不错,尤其是翻译功能,每次选择一段文本,快捷键调出 GinkgoGo 直接翻译,如果我选的是英文,它就给我翻译成中文,反之亦然。

    我还加了自定义操作的功能,只需要写提示词就可以创建新的操作。

    app 有一周免费试用,欢迎大家下载体验也欢迎提建议和 Bug: https://apps.apple.com/us/app/ginkgogo/id6743152815?mt=12

    Image1 Image2 Image3 Image4

    11 条回复    2025-04-09 14:46:07 +08:00
    musicbaby
        1
    musicbaby  
       193 天前
    简单用了一下,感觉还不错。APP 应该是用了大量原生控件,所以拥有比较好的无障碍兼容性。辅助功能(例如 VoiceOver )操作起来很友好。有几个个人建议:
    1 ,就目前功能而言,应用定价是否有点过高了?建议慎重定价。
    2 ,建议列出目前所使用的模型,如果有多个模型可选,能让用户自行选择就好了。
    3 ,翻译的多语言的处理逻辑还有些小问题,例如,一段话中如果多次混合了中英文,那么就有很大概率不能按预期处理。
    4 ,功能上,除了对选中文本处理外,是否可以加入一个对剪贴板文本处理的功能,拉起面板后,直接处理剪贴板中的内容。如果怕功能有干扰,可以做成开关让用户自行选择是处理选中的文本,还是处理剪贴板文本。
    cikelengfeng
        2
    cikelengfeng  
    OP
       193 天前
    @musicbaby 非常感谢你的专业反馈!
    1. 定价问题我也在持续思考,我计划下一步把定价做的更加精细一点,比如有一个可能的大方向是用随用随付模式代替订阅制,这个也是高优先级事项之一。
    2. 目前实装的模型只有一个 openai 的 gpt-4o ,我还测试过 gemini 系列以及 azure 上托管的 gpt-4o ,实际测试综合看就 gpt-4o 效果最好,你建议列出模型让用户选是希望能够自己对比不同的模型的效果么?
    3. 这个我继续多测试看看,btw 精细调整 LLM 提示词也和炼丹似的,调整结果不那么稳定。
    3. 剪贴板这个建议好啊,下个版本就带上。用这个逻辑怎么样:如果用户有选中的文本就处理他选中的,如果没有就处理剪贴板里的内容(用户可以在设置里开启这个逻辑)
    musicbaby
        3
    musicbaby  
       193 天前
    @cikelengfeng 1 ,是的,随用随付能处理好的话肯定是最好。订阅制也不是不行,只是处理好定价和当前功能的关系就行。否则不太有利于销量和推广。你可以调研一下同类工具的售价再决定。
    2 ,如果当前只有一个模型的话,没有模型相关设置也没啥问题。但后续有的话还是需要加上选择,并且最好加上温度设置的自定义。不同厂商模型,调节温度后得到的结果差异很大。我测试 gemini 2.0 或者 2.5 pro 的翻译效果和提示词的遵循度都很高,但显然,用来翻译的话有点贵不过整体来说,我这边的测试来看,gemini 对一些专业领域特别是科技相关的领域的英翻中的用词会比 gpt 4o 更精准一些。
    3 ,这个确实是个问题,可能还要进一步研究,特别是大量多语言混合的情况下,到底怎么判断应该翻译为何种语言。
    4 ,我也是那么想的。有选中文本就处理选中文本,没有就处理剪贴板。这样挺好。
    cikelengfeng
        4
    cikelengfeng  
    OP
       193 天前
    @musicbaby 模型这个事情确实可以做的更细一点,比如调节温度这个事儿目前就可以做,我下个版本先把温度调节带上。现在每个模型测试工作量比较大,因为要测试每个内置 action 的效果是不是符合预期,这玩意还不好自动测试,后续测试更多的模型看效果,多加一些比如 DeepSeek Qwen 之类的模型,用户要是想改就改,不想改就用默认的。
    musicbaby
        5
    musicbaby  
       193 天前
    @cikelengfeng 刚想起来两个需求,你看看也可以考虑做做:
    1 ,考虑增加输入框增强支持,类似于有一些 ai 工具可以在编辑框用命令直接调用,这样会比拉起窗口更为高效,例如这样:
    /GinkgoGo 翻译 文本内容
    具体细节上,给用户一个开关,让用户控制生成文本后是否替换掉输入框原文本内容,体验会更好。
    2 ,如果加模型的话,可以考虑直接加入用户自定义 API 功能,就是加入一个 open ai API 的自定义功能。由于目前大部分模型厂商和第三方转发平台都兼容 open ai API 规范。这样用户自己有 API 就可以直接用了。然后,可以把这个做成一个更便宜的订阅或者买断制套餐。
    cikelengfeng
        6
    cikelengfeng  
    OP
       193 天前
    @musicbaby
    1. 这个就是用户加入直接在任意一个输入文本的地方选中了一段以 /GinkgoGo 开头的文本,我就尝试把它当做一个命令来解析是吧?这个主意也不错啊,是个增强功能。(这个也加入 backlog )
    2. 这个我还真考虑过,就是用户自己输入一个 api key ,然后 GinkgoGo 就用你的 key 去请求了,这个会和定价策略放在一起考虑。这么看定价这块至少都有三种策略可以搞了呢,随用随付/高价订阅+开箱即用/低价订阅+用户 api key 。
    musicbaby
        7
    musicbaby  
       193 天前
    @cikelengfeng 1 ,是的,更准确说是通过命令,在编辑框理直接生成内容。例如:
    /GinkgoGo 翻译 文本内容 //直接生成翻译
    /GinkgoGo 重写 文本内容 //直接生成重写
    之后,通过一个快捷键来触发命令的执行,然后再编辑框里直接生成返回的内容。上面的 /GinkgoGo 是举例,实际使用的时候,触发命令最好别设置的那么长,不便于记忆和输入
    这样你的 APP 就能覆盖编辑框,选中文本和剪贴板三个场景了。而且,在编辑框里直接生成的交互体验要远好于选中后呼出面板,然后再拷贝回编辑框粘贴。怕生成文本不可靠或者有其他兼容问题,可以在设置里提供一个开关,让用户选择是否直接覆盖原文本就行。
    2 ,目前大部分大模型厂商和那些第三方 API 厂商都支持 Open AI API 格式,哪怕是 gemini ,其官方也提供了 Open AI 格式的 API 请求方法。坐支持之后,用户只需要拿到对应平台的 api 请求地址、API key 和 model ID 这三个东西就能使用了。
    cikelengfeng
        8
    cikelengfeng  
    OP
       192 天前
    @musicbaby
    1. 编辑框直接操作也是个好主意,我研究研究具体怎么搞。
    2. 对,我现在后端就是统一用的 openai 的 sdk 请求,可以搞个超低价版本订阅,这种订阅需要搭配用户自己提供的 api key 之类的配置来使用,这样就能方便那些已经有了 openai 或者 Gemini api key 的用户。
    musicbaby
        9
    musicbaby  
       192 天前
    @cikelengfeng 1 ,这个应该是通过键盘扩展来实现,你可以看看相关文档。但可能有个问题,由于商店沙河限制,键盘扩展有可能不能上架商店,可能需要以插件方式提供,或者提供非商店版 APP 来解决。如果自己建立支付系统比较麻烦的话,我看有些产品是通过提供非商店免费版,但购买仍然通过商店版内购来实现,具体由于我不是 macOS 开发者,不了解其中的细节,你可以自己研究下。
    cikelengfeng
        10
    cikelengfeng  
    OP
       192 天前
    @musicbaby 我有个很鸡贼的方法,利用现有的权限可能就行,尝试一下看看行不行
    musicbaby
        11
    musicbaby  
       192 天前
    @cikelengfeng 好好好
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1518 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 16:36 PVG 00:36 LAX 09:36 JFK 12:36
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86