尹会生:从零开始部署翻译助手【总结】

news2025/1/18 11:57:03
  1. 安装docker
  2. 安装dify

工具准备

Docker

简介:可以在不同电脑上运行相同的容器,类似于把软件装在便携箱子里,随身携带。

优点:安装Docker可以简化部署过程,避免安装许多依赖性软件。

网址:https://www.docker.com/products/docker-desktop/

Dify

优点:支持不同的模型(本地、在线、API、国内、国外...)、调用本地知识库、连接外部工具、支持工作流编辑任务、用户权限控制、API

网址:https://dify.ai/zh

如何在Dify上部署翻译助手

一、如何通过Docker安装Dify?

1.下载Dify安装脚本

方法一(推荐): 点击“Download ZIP”下载

网址:Dify.AI · 生成式 AI 应用创新引擎

方法二: 通过git clone

网址:https://github.com/langgenius/dify

2.安装步骤:

第一步:下载之后,你需要先解压缩包,查找到压缩包中【docker-compose.yaml】文件的位置。

Windows系统可以直接复制文件位置,Mac用户可以先右键选中文件夹,按住option键,查找到文件位置。

第二步:在终端中运行指令cd /path/to/your/project,注意此处将 /path/to/your/project 替换为你在上一步查找到的 docker-compose.yaml 文件所在的实际路径。

第三步:使用以下命令启动Docker Compose,指令:docker compose up -d

3.如果遇到部分容器安装不成功,应该怎么办?

打开 docker-compose.yaml 文件:使用文本编辑器打开 docker-compose.yaml 文件。

修改端口映射:将 nginx 服务的端口从 80:80 改为其他未被占用的端口,例如 8080:80:

保存并重新启动 Docker Compose:复制代码:docker compose up -d

4.如何验证Dify安装成功?

打开Docker Desktop,出现以docker为命名的文件夹,即为安装成功。

二、如何配置Dify?

1. 打开浏览器,访问 http://127.0.0.1

2. 设置你的管理员账户、邮箱及密码,特别提醒这里一定要记住你的账号密码,这是最大的管理员权限。

3.如果不能访问http://127.0.0.1该怎么办?

确认容器是否在运行,在终端运行【docker ps】,该命令将列出所有正在运行的Docker容器,确认你需要使用的容器是否在运行,并且是否绑定到正确的端口。终端输出下图内容,即视为正确运行。

如果没有看到预期的容器运行,尝试重新启动Docker Compose服务,在终端运行【docker compose up -d】。

如果显示容器在正常运行,但没有在预期端口,打开浏览器,修改网址为:http://127.0.0.1:【你的实际端口】,即可正常进入Dify。

4.如何修改网页端语言?

点击自己的账号,调整设置位置,点击语言,修改界面语言。

5.为什么需要在本地通过Docker下载安装Dify?

因为网页访问的就是Docker里安装的Dify,如果不使用Docker,直接在Windows里安装Dify会非常复杂。

三、如何创建应用程序?

1. 打开Dify-"探索"菜单,选择内置应用。

2. 为翻译助手增加大模型,选择任意你需要的大模型

四、如何安装Kimi模型?

如果因为网络原因,你无法使用ChatGPT,我为你提供一个使用国内大模型的替代方案,仅需三个步骤就可以完成安装,以Moonshot AI的Kimi模型为例:

1. 在模型供应商选择Moonshot AI模型的“设置”按钮。

2. 根据设置-月之暗面-点击“从Moonshot获取API Key”链接-扫二维码并登录

3.登录成功后,在左侧的API Key管理菜单,点击最右侧的“新建”按钮,为模型输入一个名字后,即可获得密钥,将其填入Dify, 即可完成。我将新建密钥、显示密钥、回填密钥分别截图,你可以参考下方图示,完成操作。

注意:密钥只会在新建后显示一次,请妥善保存。出于安全原因,您将无法通过您的 Moonshot AI 账户再次查看他。如果您丢失了此密钥,请删除它后生成一个新的。

4. 添加成功后,Dify的模型供应商界面

五、创建翻译助手

模仿是学习的一种最行之有效的方法之一。在创建自己的应用程序之前,你可以先使用内置的应用程序,掌握Dify的界面和功能,再创建自己需要的应用。

我以最常用的助手类AI为例,先带你掌握一下Dify的界面、如何整合添加好的模型、以及当翻译助手无法识别特殊用语,如何利用知识库解决。

1.首先利用Dify内置的Translate assistant,创建一个翻译助手。

2. 在Dify探索中选择内置应用,选择匹配大模型,进入编排页面,确定好变量。

创建翻译助手时,默认的是“Translate assistant”,你可以改为“翻译助手”,便于我们创建更多应用时,从名字更方便的找到它。

由于内建应用的提示已经写好,我们可以直接利用它的提示词,完成翻译功能。提示词分成了三部分:目的、 过程、结论。

目的:主要作用是告诉大模型,我们将要完成的任务是将我输入的文字翻译成目标的语言。

过程:为了方便大模型理解该如何输出结果,你需要把这里拆成两部分,一部分是解释如何直接翻译,另一部分是解释和意译。

结论:确定结论的显示格式,依照过程分成了直译和意译两部分。

如果你想要提示词更灵活,可以使用变量功能。

简单来说,变量能在用户提问时,把复杂问题集成到提示词中。

以翻译为例,当用户选择不同目标语言、源语言和提问问题时,提示词会自动根据你的需求,选择是汉译英,还是英译汉。

随着你编写应用数量的增长,变量的妙处,你也会有更多体会。

为了让大模型有更好的表现,你可以把三个变量的“可选”单选框都打开。这样当用户输入的源语言、目标语言和要翻译的文本时,提示词都能帮你提取到想要的格式。

3.测试不同模型,挑选出价格和性能最好的助手

再点击右上角更换不同的模型,观察哪个模型的表现更佳,价格也应该是辅助你选择的重要因素之一。

如何使用知识库?

增加知识库,是翻译专有名词的利器,尤其是对特殊行业、场景来说。那么,该如何通过Dify加载呢?

1. 选择最上方选项卡-知识库-点击创建知识库按钮-上传本地文档本地(中英文对照文本),其他设置保持默认即可。

2. 添加后,在右侧的调试与发布,进行测试,观察输出的结果是否加载了资料库,是否成功显示了你期望的资料库结果。

3. 切记要在发布之前保存:设置好模型的全部功能后,点击发布下拉菜单-点击更新按钮-保存。

如果没有及时保存,就离开页面,会回到上一次的设置。

4. 通过发布下拉菜单的“运行”按钮,你可以访问你创建好的翻译助手。

六、创建订单查询助手

通过创建翻译助手,你已经了解了助手类应用的创建基本步骤,接下来我带你用五步,带你从零创建一个新的订单助手,让用户可以根据订单号查询自己的订单是否已经发货。

1.新建空白应用,空白应用有以下几种不同类型。

聊天助手:类似翻译助手,是对话型的界面

文本生成应用:类似ChatGPT,生成文本界面

Agent:使用Dify以外的应用程序

工作流:过程更复杂的Agent应用程序

这里我们先选聊天助手,接下来只需要简单的基础编排,就能完美实现订单查询功能。

输入名称后,创建新的应用。

2.设置提示词:

你是一个订单查询助手,你需要在资料库中查询用户输入的订单信息,并显示出订单状态,只能显示用户要查询的单个订单,不要为用户显示全部的订单信息。

3.编写并上传知识库

为了能够让Dify查询订单,你需要将订单号和订单发货状态,逐一写入txt文件,并确保每行只有一个订单ip和发货状态。与翻译助手添加知识库步骤相同,将其添加到Dify即可。

订单的txt内容我也为你放在下方,供你参考

查询订单的id,返回订单信息

订单id,运输状态

001,发货

002,未发货

4.选择模型:

模型可以通过右上角的模型下拉列表选择,同样推荐你先从本地模型开始测试,如果本地模型表现不佳,再考虑费用较高的在线模型。

5.测试并保存:

设置完成后,可以通过对话“查询001订单发货状态”等类似提示词,让模型从资料库提取发货状态,并给用户返回,这里你需要测试相同id、不同id、不存在id的回复情况,确保模型不会出现幻觉后,再保存退出。

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

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

相关文章

分布式定时任务系列10:XXL-job源码分析之路由策略

传送门 分布式定时任务系列1:XXL-job安装 分布式定时任务系列2:XXL-job使用 分布式定时任务系列3:任务执行引擎设计 分布式定时任务系列4:任务执行引擎设计续 分布式定时任务系列5:XXL-job中blockingQueue的应用 …

SLAM ORB-SLAM2(27)词袋模型

SLAM ORB-SLAM2(27)词袋模型 1. 词袋模型1.1. 词汇树1.2. 逆向索引表1.3. 逆向索引表2. 词袋向量3. 匹配候选帧3.1. 找出和当前帧具有公共单词的所有关键帧3.2. 找出和当前帧最多公共单词的关键帧3.3. 剔除共享单词数较少的关键帧3.4. 计算关键帧的共视关键帧组的总得分3.5. …

CentOS系统查看版本的各个命令

cat /etc/centos-release 查看CentOS版本 uname -a 命令的结果分别代表:当前系统的内核名称、主机名、内核发型版本、节点名、系统时间、硬件名称、硬件平台、处理器类型以及操作系统名称 cat /proc/version 命令用于查看Linux内核的版本信息。执行该命令后&#xf…

Ubuntu/Linux系统安装JDK1.8(带jdk1.8资源和操作教程)

文章目录 前言一、JDK1.8下载二、上传三、安装四、配置环境变量五、查看总结 前言 !!!!!!!!!!!!Ubuntu/Linux jdk1.8安装包&#xff…

JetBrains PyCharm 2024 mac/win版编程艺术,智慧新篇

JetBrains PyCharm 2024是一款功能强大的Python集成开发环境(IDE),专为提升开发者的编程效率和体验而设计。这款IDE不仅继承了前代版本的优秀特性,还在多个方面进行了创新和改进,为Python开发者带来了全新的工作体验。 JetBrains PyCharm 20…

初阶《操作符详解》 3. 移位操作符

3. 移位操作符 <<  左移操作符 >>  右移操作符 注&#xff1a;移动的是二进制位&#xff0c;移位操作符的操作数只能是整数。 一个存储的二进制码分原码、反码、补码 1.十进制数据的二进制表现形式就是原码&#xff0c;原码最左边的一个数字就是符号位&#xff…

leetcode 二分查找·系统掌握

题目&#xff1a; 题解&#xff1a; 在阶梯数达到某一值后已有的硬币数量就小于了阶梯可以装的硬币数量&#xff0c;根据题意可以使用~10~泛型查找出最后一个可以被填满的阶梯。对于这类型可以二分答案的题目关键在于二分答案的上下界&#xff0c;本题的下界就是1上界就是硬币…

Redis-数据类型-Set(不允许重复)

文章目录 1、查看redis是否启动2、通过客户端连接redis3、切换到2数据库4、给key指定的set集合中存入数据&#xff0c;set会自动去重5、返回可以指定的set集合中所有的元素6、返回集合中元素的数量(set cardinality)7、检查当前指定member是否是集合中的元素8、从集合中删除元素…

[JS]数据类型

介绍 在计算中一切事物都是数据, 为了提高数据的存储和使用效率, 要对数据进行类型的分类 栈(操作系统): 由操作系统自动分配释放函数的参数值, 局部变量的值等, 其操作方式类似于数据结构中的栈; 基本数据类型存放在栈里面string, number, boolean, undefined, null 堆(操作…

C++STL 初阶(5)vector的简易实现(上)

不同于string只实现一个最简单的版本&#xff0c;vector在此处我们要实现的是模版类&#xff0c;类模版的声明和定义分离非常不方便&#xff08;会在链接时报错&#xff09;&#xff0c;所以我们都只在一个vector.h下去实现声明和定义。后续我们提及到的库里面实现的vector也是…

UEC++ 虚幻5第三人称射击游戏(一)

UEC 虚幻5第三人称射击游戏&#xff08;一&#xff09; 创建一个空白的C工程 人物角色基本移动 创建一个Character类添加一些虚幻商城中的基础动画 给角色类添加Camera与SPringArm组件 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category "SpringArm")clas…

正点原子rk3588烧录linux和安卓镜像

1、烧录 Linux buildroot 系统镜像 1.1 进入 Loader 模式&#xff1a; 按住开发板上的 V&#xff08;音量&#xff09;按键不松&#xff0c;给开发板 上电或复位&#xff0c;此时烧录工具会提示&#xff1a;发现一个 LOADER 设备&#xff0c;表示开发板此时已经处于 Loader 模…

什么是深度神经网络?与深度学习、机器学习、人工智能的关系是什么?

什么是深度神经网络&#xff1f;与深度学习、机器学习、人工智能的关系是什么&#xff1f; &#x1f916;什么是深度神经网络&#xff1f;与深度学习、机器学习、人工智能的关系是什么&#xff1f;摘要引言正文内容1. 什么是深度神经网络&#xff1f;&#x1f9e0;1.1 深度神经…

IDEA Plugins中搜索不到插件解决办法

IDEA中搜不到插件有三种解决方案&#xff1a; 设置HTTP选项&#xff0c;可以通过File->Settings->Plugins->⚙->HTTP Proxy Settings进行设置 具体可参考这篇博文&#xff1a;IDEA Plugins中搜索不到插件解决办法本地安装&#xff0c;ile->Settings->Plugin…

Linux下Cmake安装或版本更新

下载Cmake源码 https://cmake.org/download/ 找到对应的版本和类型 放进linux环境解压 编译 安装 tar -vxvf cmake-3.13.0.tar.gz cd cmake-3.13.0 ./bootstrap make make install设置环境变量 vi ~/.bashrc在文件尾加入 export PATH/your_path/cmake-3.13.0/bin:$PAT…

App推广告别邀请码,Xinstall助您一键触达海量用户!

在移动互联网高速发展的今天&#xff0c;App的推广与运营已成为每个开发者都必须面对的问题。然而&#xff0c;随着互联网流量的日益分散和用户需求的不断变化&#xff0c;传统的App推广方式已经难以满足现代市场的需求。尤其是在获取用户时&#xff0c;很多开发者还在采用传统…

面向对象修炼手册(二)(消息与继承)(Java宝典)

&#x1f308; 个人主页&#xff1a;十二月的猫-CSDN博客 &#x1f525; 系列专栏&#xff1a; &#x1f3c0;面向对象修炼手册 &#x1f4aa;&#x1f3fb; 十二月的寒冬阻挡不了春天的脚步&#xff0c;十二点的黑夜遮蔽不住黎明的曙光 目录 前言 消息传递 1 基本概念 1.…

关于read,write,open时出现的文本文件和二进制文件读写的问题(怎么写入怎么读)

1、发现问题 使用read读取文本文件&#xff0c;一般采用字符空间作为缓存&#xff0c;最后输出&#xff1b; 使用read读取二进制文件&#xff0c;这里采用整数读取的展示&#xff1a; 首先创建文本文件&#xff0c;用write写入i的值到文件中&#xff1b; 再通过lseek改变读写一…

1.Triangle

一、你好&#xff0c;三角形 在OpenGL中&#xff0c;任何事物都在3D空间中&#xff0c;而屏幕和窗口却是2D像素数组&#xff0c;这导致OpenGL的大部分工作都是关于把3D坐标转变为适应你屏幕的2D像素。 3D坐标转为2D坐标的处理过程是由OpenGL的图形渲染管线&#xff08;Graphi…

松下课堂 | 什么是EPS?通过马达来辅助转向操作的系统

EPS , 松下 EPS是一种通过马达来减轻和辅助驾驶员在转向操作时所需力量的设备。此外&#xff0c;通过采用EPS&#xff0c;可望提高燃效&#xff0c;降低车辆重量。。。 背景 EPS是一种通过马达来减轻和辅助驾驶员在转向操作时所需力量的设备。此外&#xff0c;通过采用EPS&…