网站首页 > 技术文章 正文
这是我的第359篇原创文章。
一、引言
上篇文章我们介绍了如何使用dify云版本开发一个简单的工作流:
【Python大语言模型系列】一文教你使用dify云版本开发一个AI工作流(完整教程)
这篇文章我们将引入知识库和大模型,通过构建一个简单的聊天助手项目讲解如果配置知识检索节点和大模型节点以及如何上传知识库。
二、实现过程
工作室-创建空白应用-选择:聊天助手;工作流编排方式选择:进阶;名称设置为:智能客服机器人。
1、工作流编排设计
2、配置LLM节点
先选择模型供应商模型,这里选择chatglm:
LLM节点配置信息包括:
模型:这里我选择glm-4,模型有以下几个参数可以设置:
- 温度
- Top P
- 采用策略
- 流处理
- 最大标记
- 停止序列
上下文:这里用导入的知识库作为上下文,就是知识检索节点的输出结果
- SYSTEM:提示词,为对话提供高层指导
- 记忆:就是对话的记忆
- UESR:这里是开始节点的输入sys.query
- ASSISTANT:助手(大模型的中间回答)
记忆:这里默认设置为10
输出变量:是模型的生成内容
下一步:该节点的下一个节点
3、创建知识库
点击知识库:
选择数据源,导入已有文本(这里导入南瓜书):
文本分段与清洗:
前往文档:
召回测试:
4、配置知识检索节点
知识检索节点的配置信息包括:
- 查询变量:这里是开始节点的sys.query
- 知识库:这里点击添加第3步处理好的知识库
- 输出变量:这里输出召回的结果
- 下一步:该节点的一个下一个连接节点
5、发布
Dify平台应用发布的方式提供了三种:运行、嵌入网站、访问api。
第一种是直接运行:
直接运行就是dify为我们提供了这样一个现成的前端页面和链接,我们在任何地方使用这个链接,
第二种方式是嵌入网站的方式:
dify提供了三种嵌入到你自己已有网站的方式,第一种是使用iframe标签,将AI应用嵌入到你目标网站的任何位置,第二种方式是使用script标签将AI应用嵌入到你网站的任何位置,第三种方式是安装Dify chrome浏览器扩展,去chrome浏览器中去使用这个AI聊天应用。
第三种方式是访问api的方式:
直接运行和嵌入网站的方式,前端的页面都是dify定义好的,但是很多时候,我们有开发自己聊天页面的需求,那么显然直接运行和嵌入网站的方式是不能满足需求的,我们需要自定义聊天架构,那么我们就可以调用dify应用的API。
python示例代码:
import requests
import json
# 代理服务器的地址和端口
proxies = {'http': 'socks5://127.0.0.1:10809',
'https': 'socks5://127.0.0.1:10809'}
url = 'https://api.dify.ai/v1/chat-messages'
api_key = 'app-xxxxx'
headers = {
'Authorization': f'Bearer {api_key}',
'Content-Type': 'application/json',
}
data = {
"inputs": {},
"query": "你是谁?",
"response_mode": "streaming",
"conversation_id": "",
"user": "abc-123"
}
response = requests.post(url, headers=headers, data=json.dumps(data), proxies=proxies)
if response.status_code == 200:
print("Request successful")
print("Response:", response.json())
else:
print(f"Request failed with status code: {response.status_code}")
print("Error:", response.text)
作者简介: 读研期间发表6篇SCI数据算法相关论文,目前在某研究院从事数据算法相关研究工作,结合自身科研实践经历持续分享关于Python、数据分析、特征工程、机器学习、深度学习、人工智能系列基础知识与案例。关注gzh:数据杂坛,获取数据和源码学习更多内容。
原文链接:
- 上一篇: 机器人实用Python代码合集,帮你搞定自主导航
- 下一篇: 利用Python编程简单开发钉钉群机器人
猜你喜欢
- 2025-01-20 Python快速入门系列:PyQt5 深入理解信号与槽机制
- 2025-01-20 牛掰!Python炫技—— 企业微信机器人每天定时发消息实例
- 2025-01-20 阿愚呱呱RPA:RPA 机器人,找人定制一个还自己来组装
- 2025-01-20 微信群总是有人发广告?看我用Python写一个机器人消灭他
- 2025-01-20 博普乐 Popular Robotics | 机器人AI在线课程Python+树莓派
- 2025-01-20 Python机器人编程主控板microbit简介
- 2025-01-20 小试牛刀 自己建立一个AI聊天机器人
- 2025-01-20 python脚本实现钉钉机器人发送消息
- 2025-01-20 Python机器人教学——控制数码管显示字符
- 2025-01-20 大疆推出首款教育机器人,可编程支持竞速对战
- 258℃Python短文,Python中的嵌套条件语句(六)
- 257℃python笔记:for循环嵌套。end=""的作用,图形打印
- 256℃PythonNet:实现Python与.Net代码相互调用!
- 251℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 251℃Python实现字符串小写转大写并写入文件
- 106℃原来2025是完美的平方年,一起探索六种平方的算吧
- 91℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 83℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)