简介
本文介绍Dify用本地文件创建知识库聊天应用的方法。
本文用的是强大的的嵌入模型,嵌入模型可以使用复杂的语义分析、更精准的索引等。
本文目标:用Dify做一个报价聊天应用,客户可以直接对商品数据进行聊天询价,无需客服。
整体步骤:将数据库的商品数据导出为Excel,将Excel导入Dify生成知识库,使用此知识库创建聊天应用。
1.生成数据库数据
数据库数据:
DROP TABLE IF EXISTS `t_goods`; CREATE TABLE `t_goods` ( `id` bigint(0) NOT NULL COMMENT '主键', `name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '商品名字', `description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '商品描述', `unit_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '商品单价', `stock_quantity` int(0) NULL DEFAULT NULL COMMENT '库存数量', `create_time` datetime(0) NOT NULL COMMENT '创建时间', `update_time` datetime(0) NOT NULL COMMENT '修改时间', `delete_flag` bigint(0) NOT NULL DEFAULT 0 COMMENT '删除标记。0:未删除;其他:已删除', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '商品管理' ROW_FORMAT = Dynamic; -- ---------------------------- -- Records of t_goods -- ---------------------------- INSERT INTO `t_goods` VALUES (1, '鼠标', '有线,无声', 50.00, 200, '2024-12-12 21:48:19', '2024-12-12 21:48:47', 0); INSERT INTO `t_goods` VALUES (2, '鼠标', '无线,无声', 60.00, 100, '2024-12-12 21:49:22', '2024-12-13 20:38:48', 0); INSERT INTO `t_goods` VALUES (3, '键盘', '有线,机械键盘,茶轴', 230.00, 10, '2025-05-04 11:06:03', '2025-05-04 11:06:06', 0); INSERT INTO `t_goods` VALUES (4, '键盘', '无线(蓝牙),机械键盘,红轴', 305.00, 13, '2025-05-04 11:06:58', '2025-05-04 11:07:00', 0); INSERT INTO `t_goods` VALUES (5, '耳机', '有线耳机', 35.00, 233, '2025-05-04 11:07:47', '2025-05-04 11:07:49', 0); INSERT INTO `t_goods` VALUES (6, '耳机', '蓝牙耳机', 69.00, 122, '2025-05-04 11:08:33', '2025-05-04 11:08:34', 0);
导出为Excel:

2.创建文本嵌入模型
在Dify里,用Ollama创建文本嵌入模型(Text Embedding):


添加之后:

3.Dify以Excel创建知识库
此内容 登录 后可见!
4.召回测试
可以测试一下,是否能通过文本搜到数据

此内容 登录 后可见!
5.创建聊天应用
创建聊天应用的方法详见:Dify实战-搭建聊天应用 – 自学精灵
6.添加知识库
此内容 登录 后可见!
7.提问
此内容 登录 后可见!
8.问题解决
此内容 登录 后可见!

请先 !