一.API:
1,什么是API:应用程序编程接口,是一系列的规则,规范,协议。让用户不需要了解内部 工作原理,根据规定的输入获取到指定的输出
2,实现一个cozeAPI的调用:
《1》.查看官方文档,在github上寻找相似案例《2》,安装环境:conda create 新环境 |pip install cozepy《3》,把案例代码交给大模型辅助解读和分析《4》,根据案例的注释,官方文档,大模型的输出,修改代码,适配自己的业务
二.知识库:
<1>使用场景:适用于知识检索,数据基本不写入(成本较高),只做检索,且进行语义匹配的检索方式
作用:存储和管理外部数据,增强检索在
使用:创建:创建知识库,导入文档解析文件,分段
<2> 在工作流中使用:在工作流中添加一个知识库检索节点:传入query后添加知识库,设置好参数,最后对返回的结果进行润色
核心原理:《1》检索策略:全文:基于关键词检索;语义:基于语义相似度
混合:全文+语义
《2》召回数量:作用:限制返回的最大段落数,默认5,排序方式根据匹配度倒序排序
《3》匹配度阈值:作用:限制返回的最小匹配度,默认0.5
《4》查询改写:作用:优化查询的问题,提高检索的准确性
《5》结果重排:基于检索策略返回的结果(粗排)的基础上,再进行二次排序(精排)
三.提示词
用户给大模型的指令就是提示词,设计优秀的提示词的方法论就是提示词工程,提示词书写五个原则:《1》清晰的指令(详细的描述,让大模型扮演角色,符号分割,提供例子,限定长度)《2》提供文本《3》复杂任务拆分成子任务《4》给大模型思考的时间《5》让大模型调用外部工具
四.提示词进阶技术:
简单场景的zero-shot(直接询问大模型,不提供示例)和few-shot(提供少量示例);复杂逻辑中思维链(CoT)作用就是(引导大模型一步一步思考)将它分类成zero-shot(将任务按照步骤一步一步完成)few-shot(提供按照步骤思考的示例)。自我一致性(self-consistency)作用是(让大模型使用多种方法得到多结果,再聚合/投票得到最终答案)(配合Promot Chaining使用《1》让大模型基于问题产生不同的思路方法,《2》分别去执行不同的思路得到结果《3》把结果进行聚合投票);循环解决问题(将上一步的输出+提示词作为当前的输入,得到当前的结果,再作为下一步的输入的一部分)
五.dify是开源智能体应用开发平台
《1》Dify和coze的区别是:Coze一般指的是sass版,在云端,dify是本地部署的
Coze有比较多的插件可以使用,dify没有
Coze的知识库是自带的,比较难自定义,dify可以外接知识库,设置比较多。Embedding模型和rerank模型都可以自定义
Coze主要是豆包,dify可以接入多种平台
Coze面向与所有人,dify面向与程序员,主要是企业开发
《2》Dify安装教程:(1)windows系统先安装上WSL,WSL是在windows中运行的linux子系统(2)安装docker(3)拉取dify的代码(4)进入docker目录下,修改文件------.env.example->.env --------dify的环境变量(4)运行cmd/powershell,执行:docker compose up -d ------拉取/启动镜像