Rouyan:使用WPF/C#构建的基于LLM的快捷翻译小工具

news/2025/9/24 10:28:01/文章来源:https://www.cnblogs.com/mingupupu/p/19108702

前言

都说技术服务于业务,对我个人而言可能谈不上有什么业务,但是确实有一些个人的需求。我很喜欢C#也很喜欢WPF,最近刚学了Stylet这个框架,就想着先试着用它搞一个解决自己阅读英文文献一些小需求的小工具,现在开源出来,希望也能帮助到跟我有一样需求的朋友。

Rouyan介绍

Rouyan是一个使用WPF/C#构建的基于LLM的快捷翻译(也能自定义其它功能)的小工具。

Rouyan的简介是Less Copying,More Convenience,说实话实现的功能用ChatBox类工具如CherryStudio也都能实现,所以没什么特别的,只是对我而言有些场景减少了复制粘贴。接下来我将以自己的使用场景来介绍Rouyan的功能。

1、直接翻译到文件

有时候我们会想把翻译内容直接保存到一个文件,使用ChatBox类工具流程可能是这样的:

flowchart LRA[复制原始文本] -->B[粘贴到ChatBox]B --> C[获取LLM返回内容]C --> D[复制翻译文本]D --> E[粘贴到文件]

使用Rouyan的流程是这样的:

flowchart LRA[复制原始文本] -->B[按下快捷键]B --> C[翻译内容到文件]

实际使用过程

打开Rouyan,先选择翻译内容要保存至的文件:

复制想要翻译的文本:

按下Tab + K快捷键:

出现等待窗体:

翻译内容直接写入文件:

2、直接流式显示

有时候不需要保存至文件,比如我们只是想知道这段话是什么意思即可。

还是一样复制文本,按下Tab + L即可流式显示翻译内容:

3、解释图表

有时候光有LLM还不够,还需要VLM,比如解释图表的功能。

随便截图一张:

按下Tab + D流式解释图表内容:

当然你也可以扩展自己的功能,目前Rouyan的设计是这样的,总共有8个快捷键绑定,可以从关于页面看到:

如何增加基于提示词的扩展功能

接下来我将向大家介绍一下如何扩展自定义的功能。

比如在看英文文献的时候,遇到不懂的单词,想要选中可以解释意思。

首先我们看当前Rouyan的提示词管理:

打开PromptConfig.txt:

这里配置了LLM与VLM的两个提示词分别是什么。

现在我们在LLMPrompts新增一个03.txt:

打开Rouyan来到提示词管理界面:

可以看到我们刚刚增加的提示词,然后将其设置为LLM提示词2。

会发现PromptConfig.txt中已经改了:

现在按Tab + I即可使用了:

Rouyan安装使用

Rouyan提供两种方式安装,一种直接压缩包解压,一种安装包安装。

Rouyan开源地址:https://github.com/Ming-jiayou/Rouyan

下载地址:https://github.com/Ming-jiayou/Rouyan/releases/tag/Rouyan-v1.0.0

第一个包含了.net8框架,剩下两个不包含,如果提示没有安装.net8,安装一下即可。

推荐使用下面那两个不包含框架的。

如果不方便访问GitHub,可以向公众号发送Rouyan,获取网盘链接。

在设置页面填入apikey即可,如果没有额度,可以使用免费模型,智谱有免费的LLM与VLM可以用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/915559.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

BM25 关键词检索算法

BM25 BM25,全称是 Best Matching 25,是一种用于信息检索的排名函数。它用来计算一个查询(Query)与一组文档(Documents)的相关性得分,并按照得分从高到低对文档进行排序。 简单来说,它的核心任务是:给定一个用…

记录用户业务请求日志

在用户的一般使用的时候,对于很多操作类型的接口,为了后面便于追查问题,需要记录用户的请求日志。 用户的请求日志目前主流的存储方式有:日志文件 数据库 MongoDB ElasticSearch在商城的项目中暂时存放在MySQL中了…

[C++:类的默认成员函数——Lesson7.const成员函数] - 指南

[C++:类的默认成员函数——Lesson7.const成员函数] - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consola…

55.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--新增功能--实现手机邮箱登录 - 实践

55.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--新增功能--实现手机邮箱登录 - 实践2025-09-24 10:26 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !im…

游戏网站的设计方案新农村建设管理网站

Problem - C - Codeforces 题目分析 <1>0&#xff1a;想被分割至左边&#xff1b; 1&#xff1a;想被分割至右边 <2>使得左右两侧均有一半及其以上的人满意&#xff08;我*******&#xff09; <3>答案若有多个&#xff0c;取最接近中间位置的答案 <4…

怎么选择网站建设干部信息管理系统

1 、请用 Python 手写实现插入排序。 解析&#xff1a; 插入排序&#xff08; Insertion Sort &#xff09;的工作原理是通过构建有序序列&#xff0c;对于未排序数据&#xff0c; 在已排序序列中从后向前扫描&#xff0c;找到相应位置并插入。 算法执行步骤&#xff1a; &…

详细介绍:Xilinx系列FPGA实现12G-SDI音视频编解码,支持4K60帧分辨率,提供2套工程源码和技术支持

详细介绍:Xilinx系列FPGA实现12G-SDI音视频编解码,支持4K60帧分辨率,提供2套工程源码和技术支持pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block …

CentOS6.8安装docker教程

在VMware新安装CentOS6.8系统CentOS6.8可在阿里镜像库下载: https://mirrors.aliyun.com/centos-vault/6.8/isos/x86_64/ 在新安装系统配置yum源2.1 进入目录 /etc/yum.repos.d2.2 对原配置备份mv *.repo ./bak2.3 下…

使用 VMware Workstation 安装 CentOS-7 虚拟机

使用 VMware Workstation 安装 CentOS-7 虚拟机1. 环境说明和软件准备 环境说明:宿主机操作系统:Window 10 宿主机 CPU 架构:x86_64 虚拟机软件:VMware Workstation Pro 15 虚拟机系统:CentOS-7.6软件下载:CentO…

K12教育 和 STEAM教育

K12教育定义:K12是“Kindergarten through twelfth grade”的缩写,指从幼儿园(Kindergarten,通常5-6岁)到十二年级(Grade 12,通常17-18岁)的教育阶段。它涵盖了学前教育、小学教育、初中教育和高中教育,是国际…

网站底部代码大全建设网站一定要电脑吗

binary 和 varbinary固定长度 (binary) 的或可变长度 (varbinary) 的 binary 数据类型。binary [ ( n ) ]固定长度的 n 个字节二进制数据。N 必须从 1 到 8,000。存储空间大小为 n4 字节。varbinary [ ( n ) ]n 个字节变长二进制数据。n 必须从 1 到 8,000。存储空间大小为实际…

uv Python安装镜像加速

uv Python安装镜像加速感谢南京大学开源镜像站!国内目前能找到的唯一镜像! Windows系统cmd设置环境变量命令如下: setx UV_PYTHON_INSTALL_MIRROR "https://mirror.nju.edu.cn/github-release/astral-sh/pytho…

AT_arc167_c [ARC167C] MST on Line++

首先遇到这种题先不要慌,先拆贡献。 考察一个权值为 \(a_i\) 的边会被 MST 包含多少次,因为我们确定了 \(p\),所以 \(a\) 的顺序就没有关系了,我们先将 \(a\) 排序,钦定某一种边权出现次数很难做,但是我们如果钦…

CentOS操作系统

CentOS操作系统CentOS操作系统更新时间:2025-07-31 09:59:20产品详情我的收藏 本文详细介绍CentOS所处的生命周期阶段,以及可以采取哪些应对方案来应对CentOS停止维护后的风险。CentOS生命周期概述 CentOS Linux 是一…

龙虎榜——20250912 - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

Lombok无法使用get set方法

问题描述:使用lombok@Data注解后,无法调用实体类的getter setter方法。 解决方案:安装lombok插件(记得安装后应用)

网站怎么做直播小制作简单手工

基本思想&#xff1a;需要使用linux系统调用alliedvisio工业相机完成业务&#xff0c;这里只做驱动相机调用&#xff0c;具体不涉及业务开发 Alvium 相机选型 - Allied Vision 一、先用软件调用一下用于机器视觉和嵌入式视觉的Vimba X 软件开发包 - Allied Vision VimbaX_Set…

网站与网页移动商城官网 积分兑换

论文笔记整理&#xff1a;谭亦鸣&#xff0c;东南大学博士生。来源&#xff1a;WWW 2020链接&#xff1a;https://dl.acm.org/doi/pdf/10.1145/3366423.3380114概述这篇论文关注的任务是&#xff1a;基于给定文本的“多跳问题生成”&#xff08;多关系问题&#xff09;。作者提…

redis的哈希扩容

Redis 哈希的扩容过程是其高效性的关键所在,它采用了一种非常巧妙的渐进式 rehash 策略来避免一次性扩容带来的服务停顿。 步骤 1:准备工作 当满足扩容条件时,为 ht[1] 分配空间。新的大小根据上述规则计算。 将字典…

vite tailwindcss配置

1. 安装tailwindcss依赖yarn add tailwindcss @tailwindcss/vite2.新建css文件引入tailwindcss//assets/styles/tailwind.css@import tailwindcss;3.main.js引入css文件import ./assets/styles/tailwind.css4.配置vite…