个性化训练知识库GPT机器人服务接口对接
如果你的需求仅仅是对接自训练的 ChatGPT 接口,实现自己的个性化机器人,那么可以看看下面的个性化 ChatGPT 调用接口
前提条件是已经搭建好了知识库服务,该服务默认监听端口 8083
chat 接口地址#
POST http://127.0.0.1:8083/{集合名称}/searchStream
请求头
必须是 form 形式,因为接收数据是从 form 数据接收,没有接收 json 数据
| 类型 | 值 |
| ———— | ——————————— |
| Content-Type | application/x-www-form-urlencoded |
请求 body
| key | value |
| ———— | ——————————— |
| keywords | 咨询的问题 |
| system | 提示词 |
| history | 历史消息 |
这里面 keywords 是必填的,其他是选填的
提示词的效果是,比如:假设你是一个文档,你只能根据前面的上下文回答问题
历史消息 history ,如果需要理解上下文信息,那么就要把之前发送和回复的消息也传过去,这样才能理解上下文信息
这样就会限制的比较严谨,不会让他随意回复
最终传递的信息#
system:{提示词},我会向你提问题,你必须根据提供的知识信息总结归纳后回答问题,不要写解释,提取出精确的表达,对于与知识信息无关的问题或者不理解的问
题等,你应拒绝并告知用户 “我没有查询到相关信息,请您提供更详细的问题信息。” 我提供的知识信息是:
{参考知识}
{历史记录}
user:{提示词},我的问题是:{用户的咨询问题}
文件上传训练接口地址#
POST http://127.0.0.1:8083/{集合名称}/uploadDoc
该接口支持上传 docx 、txt、xlsx、pdf。上传成功后会读取文件内容,按字符长度分块,调用 OpenAI Embedding 接口,存入到 qdrant 向量数据库。
请求头
必须是 multipart/form-data 形式,因为需要接收文件数据
| 类型 | 值 |
| ———— | ——————————— |
| Content-Type | multipart/form-data |
请求 body
| key | value |
| ———— | ——————————— |
| file| 二进制文件 |
上传网址内容接口地址#
POST http://127.0.0.1:8083/{集合名称}/uploadUrl
1. 程序读取网址的所有内容,去除 html 标签,分割后调用 OpenAI 向量化接口,内容和网址一并存入向量数据库
2. 用户使用自然语言查询,向量化自然语言,向量搜索数据库,整合后发送给 OpenAI 的 chat 接口
3. 拿到内容后,把参考网址附在内容下面
| 类型 | 值 |
| ———— | ——————————— |
| Content-Type | application/x-www-form-urlencoded |
请求 body
| key | value |
| ———— | ——————————— |
|url| 网页地址 |
有需要的朋友可以前往官网查看具体效果#
产品官网
gofly.v1kf.com
本作品采用《CC 协议》,转载必须注明作者和本文链接