手把手教你打造一个更懂你的AI翻译助手!

手把手AI Agent系列教程:

  • 如何用 Dify + Oracle + DeepSeek 来打造一个更懂你的AI翻译助手!

一、为什么需要AI翻译助手?

传统人工翻译行业的核心痛点:

  • 人工翻译效率低、成本高
  • 专业文档中英文术语众多,语境依赖强
  • 不同译者风格不同,专业术语更新快、难统一

AI时代下,为什么不直接使用LLM翻译?

  • 虽然目前主流大模型的能力都已经做很好的通用翻译工作,但是具体到专业领域,因为会涉及很多特定专业术语,甚至是私域的一些DIY需求,这些LLM都是不知道的,需要我们来额外告知它。
  • 若直接使用LLM翻译,就需要用户在每次翻译时都通过提示词来交互告知LLM。虽然看起来简单,但其实这样不仅不灵活,还存在一系列棘手的问题。比如专业术语表通常会有不定时更新,提示词也需要对应同步修改,又比如专业术语过多时,会导致提示词过长,匹配翻译的过程中也更容易出现幻觉导致翻译错误。

因此,我们需要利用 Dify 编排工作流 + Oracle 存储术语表 + DeepSeek 高性价比大模型,实现术语优先、上下文自然的智能翻译助手,轻松搞定专业文档翻译,节省人力成本!

技术组件 角色与优势
Oracle 数据库 作为术语表的存储中心,支持高效查询并保障数据安全
Dify 工作流平台 多节点编排 + 灵活变量传递 + 易维护提示词系统
DeepSeek 模型 国产开源大模型,性价比高、响应速度快、支持私有部署

二、翻译助手的实现原理

翻译助手的实现原理拆解如下:

  • 首先需要将专业术语定义到数据库中的一张表(这张术语表可开放给专业管理人员来进行维护)
  • 用户输入需要翻译的原文,数据库会自动处理提取出原文中的专业术语
  • 根据术语表强制替换,保持一致性
  • 非术语内容由 LLM 自然翻译
  • 输出流畅、准确、术语统一的专业中文结果

三、翻译助手Demo设计

测试用例:

  • Oracle Exadata Database Machine is powerful.
  • Oracle Database Appliance delivers exceptional cost-effectiveness for enterprise database workloads.

术语定义:

  • Oracle -> 甲骨文中国
  • Exadata Database Machine -> 原厂Exadata数据库一体机
  • Oracle Database Appliance -> 原厂ODA数据库一体机

为什么定义这样的术语,因为LLM再强大,默认也绝不会这么翻译,如此能快速验证术语翻译效果。

另外这样定义,其实也不是完全胡编,有一定的适用场景,比如Oracle很多资料介绍,都是Global层面的,原文只会讲Oracle如何如何,而针对国内市场的宣传,很多时候又需要强调是Oracle中国

数据库一体机在国内也是有相当多的产品,当在纯中文场景描述时,加上原厂标识可以让用户快速理解这是Oracle公司的一体机产品。

注:这个用例是极致简化之后的,以至于有读者会觉得这么简单直接把需求给LLM处理不也行?但真实场景下,术语会有很多,且可能不断更新,且不同领域的术语也是完全不同,总不能每次都去调整提示词。


四、翻译助手Demo实现

下面我们就手把手的演示如何具体实现这个Demo:

1.创建术语表

创建一张术语表,用于存放术语。

这里在建表之后手工插入3条术语定义,用于直观演示Demo效果:

SQL 复制代码
--创建术语表glossary,关键字段只有term和translation
--我这里加了domain字段,但目前测试还未用到,可以暂时忽略,默认为TEST业务域
CREATE TABLE glossary (
    id             NUMBER GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY, 
    term           VARCHAR2(200) NOT NULL,      -- 英文术语
    translation    VARCHAR2(500),               -- 中文翻译
    domain VARCHAR2(50) DEFAULT 'TEST',         -- 业务域
    CONSTRAINT glossary_uk UNIQUE (term,domain) -- 保证 同一domain内 term 唯一
);

--插入示例术语:
insert into glossary(term, translation) values ('Oracle','甲骨文中国');
insert into glossary(term, translation) values ('Exadata Database Machine','原厂Exadata数据库一体机');
insert into glossary(term, translation) values ('Oracle Database Appliance','原厂ODA数据库一体机');
commit;

2.创建匹配英文术语函数

定义一个函数,可接受原始文本,用于匹配筛选出其中的英文术语:

SQL 复制代码
--创建一个匹配英文术语的函数
--后续可以添加一个区分domain的参数,目前测试期间简化,默认都是TEST域
create or replace FUNCTION match_english_terms(
    p_input IN VARCHAR2
) RETURN VARCHAR2 IS
    v_result CLOB := '';

    -- 用于存储游标结果的变量
    v_term VARCHAR2(200);
    v_cn VARCHAR2(200);

    -- 游标定义
    CURSOR cur_full IS 
        SELECT term, translation FROM glossary 
        WHERE REGEXP_LIKE(p_input, '(^|\W)' || term || '(\W|$)', 'i');

BEGIN
    -- 处理完整英文术语匹配
    FOR rec IN cur_full LOOP
        v_result := v_result || '英文: ' || rec.term || '; 中文: ' || rec.translation || CHR(10);
    END LOOP;

    -- 返回结果,如果超过4000字节则截断
    IF LENGTH(v_result) > 4000 THEN
        RETURN SUBSTR(v_result, 1, 4000);
    ELSE
        RETURN v_result;
    END IF;
EXCEPTION
    WHEN OTHERS THEN
        RETURN '错误: ' || SQLERRM;
END match_english_terms;

注:这里测试阶段术语较少,使用的是REGEXP_LIKE + 游标遍历的方式;但实际上如果术语特别多,这种方式效率不高,可选择适合的数据库特性进一步优化方案,以后有机会分享,现Demo阶段暂不考虑。

3.为智能体编排工作流

使用Dify连接Oracle数据库的插件选择的是这个db_query:

连接信息说明如下:

Dify编排的工作流越简单越好:

  • 开始START节点,用户可以自定义输入文本
  • 数据库查询SQL QUERY节点,连接到Oracle数据库调用函数match_english_terms()
  • 大语言模型LLM节点,配置好提示词,调用指定的LLM模型执行翻译任务
  • 结束END节点,输出最终结果
  • 增加一个END2节点,想更直观快捷的看到提取后术语情况(可选项,只是方便调试使用)

关于LLM的节点,因为Demo比较简单,提示词写的也简单,当然你也可以测试改写为适合你场景的更加专业的提示词:

  • system:

    你是一个专业的技术文档翻译助手,能够识别指定术语并严格替换,同时将非术语部分自然翻译,最终组合成流畅的中文。请优先匹配最长术语,大小写敏感。

  • user:

    请将以下英文内容翻译为中文:{{#1753434053258.user_input#}}

    需要替换的术语如下:{{#1754555934960.text#}}


五、翻译助手Demo最终效果

最后翻译助手的测试可以得到我们所期望的结果,如下:

  • 用例1:Oracle Exadata Database Machine is powerful.

  • 用例2:Oracle Database Appliance delivers exceptional cost-effectiveness for enterprise database workloads.

可以看到两个测试用例,均按照我们的期望,替换了专业术语,翻译准确。

顺便提下,这里用例2后面的"说明",是LLM自己输出的,如果不想要这样的说明,也是可以在提示词那里要求下,比如只要最终翻译结果的输出,不要任何其他信息输出即可。

至此,我们使用 Dify + Oracle + DeepSeek 成功打造出一个更懂你的翻译助手。

相关推荐
新知图书15 小时前
10.1 项目背景与需求分析(智能客服智能体开发)
人工智能·agent·ai agent·智能体·扣子
赵康15 小时前
AI 写代码之后,Code Review 会议怎么开
ai·llm·skill
莫逸风16 小时前
【AgentScope 2.0】 0. 学习指南
java·llm·agent·agentscope
神奇霸王龙16 小时前
Claude Code屠榜:MiMo与Grok紧追Codex
服务器·网络·人工智能·gpt·ai·ai编程
决战灬16 小时前
langgraph之interrupt(理论篇)
人工智能·python·agent
TsingtaoAI16 小时前
3D高斯泼溅技术发展及其在具身智能领域的应用综述
人工智能·算法·ai·具身智能·高斯泼溅
汤姆yu17 小时前
CodeGeeX 4完整安装与实操使用全指南
人工智能·windows·ai·智能体·视频模型
人间凡尔赛18 小时前
2026 AI Agent 多智能体协同编程实战指南:从 Kimi K3 到 GPT-5.6 深度解析
ai·agent·多智能体·编程实战·waic·gpt-5.6·kimik3
ApacheSeaTunnel18 小时前
Apache SeaTunnel AI CLI Benchmark:7 款大模型、100 个 ETL 任务实测,谁真正能跑起来?
大数据·ai·开源·大模型·数据集成·cli·seatunnel·技术分享·数据同步
大卫小东(Sheldon)19 小时前
小鹤音形词典:一个用 Rust 写的离线编码查询桌面工具
ai·rust