Fastgpt知识库接入oneapi和自定义大模型

2024-05-08 12:12

本文主要是介绍Fastgpt知识库接入oneapi和自定义大模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本期教程教大家训练自己的知识库回答chatgpt回答不了的问题

FastGPT 是一个知识库问答系统,可以通过调用大模型和知识库回答特定的问题

  1. 可以做成专属 AI 客服集成到现有的APP或者网站内当作智能客服
  2. 支持网络爬虫学习互联网上的很多知识
  3. 可以通过flow可视化进行工作流程编排

本期教程主要内容

  1. 实现fastgpt对接oneapi接入多种大模型
  2. 实现fastgpt自定义大模型
  3. 实现添加m3e索引模型
  4. 实现自定义文本处理模型
  5. 实现在线更新fastgpt
  6. 不需要以上5条功能可以查看往期教程一键部署教程
  7. ⚠️注意遇到报错或者问题请查看最后面的避坑指南或许能找到答案

推荐使用浪浪云服务器,省心 省时 省力安全稳定 教程全面且详细

需要采用一键部署的系统

Pasted image 20240425082923

添加端口转发

Pasted image 20240425095846

Pasted image 20240425095945

Pasted image 20240425100303

登录casaos

Pasted image 20240425162314

登录fastgpt

Pasted image 20240425162149

浏览器登录oneapi

Pasted image 20240425161949

fastgpt如何对接oneapi

打开files

Pasted image 20240425162522

进入fastgpt文件下

Pasted image 20240425162642

Pasted image 20240425162705

编辑docker-compose.yaml文件

Pasted image 20240425162814

修改配置文件

修改前

Pasted image 20240425163012

修改后

Pasted image 20240425163609

打开终端

Pasted image 20240425163727

登录终端

Pasted image 20240425202209

进入fastgpt文件夹下

cd fastgpt

Pasted image 20240425202708

停止运行fastgpt

docker compose down

Pasted image 20240425202750

启动fastgpt

docker compose up -d

Pasted image 20240425202816

此时fastgpt已经对接到oneapi上了

oneapi对接chatgpt或其他大模型

本次演示对接xi的中转api

Pasted image 20240425203122

Pasted image 20240425203422

Pasted image 20240425203523

登录fastgpt看一下能否使用

Pasted image 20240425204128

可以看到已经可以对话了,如果不能对话报错,就去检查一下docker-compose编辑那部检查一下时候填对了,填写没有问题就执行一下 停止fastgpt和启动fastgpt运行

Pasted image 20240425204229

如何自定义添加大模型

可以看到fastgpt里自带的模型只有3个,如何加入其他模型呢

Pasted image 20240425204523

编辑config.json

Pasted image 20240425204745

可以看到以下是相应的模型配置文件

Pasted image 20240425205050

示例:添加千问大模型

{ "model": "gpt-3.5-turbo", // 模型名(对应OneAPI中渠道的模型名) "name": "gpt-3.5-turbo", // 别名 "avatar": "/imgs/model/openai.svg", // 模型的logo "maxContext": 16000, // 最大上下文 "maxResponse": 4000, // 最大回复 "quoteMaxToken": 13000, // 最大引用内容 "maxTemperature": 1.2, // 最大温度 "charsPointsPrice": 0, // n积分/1k token(商业版) "censor": false, // 是否开启敏感校验(商业版) "vision": false, // 是否支持图片输入 "datasetProcess": true, // 是否设置为知识库处理模型(QA),务必保证至少有一个为true,否则知识库会报错 "usedInClassify": true, // 是否用于问题分类(务必保证至少有一个为true)    "usedInExtractFields": true, // 是否用于内容提取(务必保证至少有一个为true) "usedInToolCall": true, // 是否用于工具调用(务必保证至少有一个为true) "usedInQueryExtension": true, // 是否用于问题优化(务必保证至少有一个为true) "toolChoice": true, // 是否支持工具选择(分类,内容提取,工具调用会用到。目前只有gpt支持) "functionCall": false, // 是否支持函数调用(分类,内容提取,工具调用会用到。会优先使用 toolChoice,如果为false,则使用 functionCall,如果仍为 false,则使用提示词模式) "customCQPrompt": "", // 自定义文本分类提示词(不支持工具和函数调用的模型 "customExtractPrompt": "", // 自定义内容提取提示词 "defaultSystemChatPrompt": "", // 对话默认携带的系统提示词 "defaultConfig":{} // 请求API时,挟带一些默认配置(比如 GLM4 的 top_p) },

千问大模型

{"model": "qwen:14b","name": "qwen:14b","maxContext": 16000,"avatar": "/imgs/model/qwen.svg","maxResponse": 4000,"quoteMaxToken": 13000,"maxTemperature": 1.2,"charsPointsPrice": 0,"censor": false,"vision": false,"datasetProcess": true,"usedInClassify": true,"usedInExtractFields": true,"usedInToolCall": true,"usedInQueryExtension": true,"toolChoice": true,"functionCall": true,"customCQPrompt": "","customExtractPrompt": "","defaultSystemChatPrompt": "","defaultConfig": {}},

Pasted image 20240425210900

重启一下fastgpt

Pasted image 20240425211058

Pasted image 20240426104245

添加知识库m3e索引模型

fastgpt支持的索引模型有embedding和m3e,但是自带的只有emnedding,如何添加m3e索引模型

编辑这个config.json文件

Pasted image 20240427093725

添加m3e模型

{ "model": "m3e", "name": "m3e", "price": 0.1, "defaultToken": 500, "maxToken": 1800 
}

Pasted image 20240427093936

重启fastgpt

Pasted image 20240427094011

可以看到知识库创建已有M3e

Pasted image 20240427094041

知识库文本处理是如何添加的

Pasted image 20240427094533

在模型配置文件里设置为true就会显示在此

Pasted image 20240427094507

并且要在fastgpt对接的oneapi里添加索引模型m3e

Pasted image 20240427095156

测试是否成功

Pasted image 20240427095250

Pasted image 20240427095424

索引完成

Pasted image 20240427095510

可以看到可以回答知识库相关内容了

Pasted image 20240427101256

如何更新fastgpt

# 更新fastgpt
docker compose pull # 启动fastgpt
docker compose up -d

避坑指南

在测试过程中出现配置文件中添加了模型并且也重启了fastgpt,发现fastgpt里还是没有自定义添加的模型

  1. 仔细检查一下配置文件是否填对
  2. 配置文件没问题,可以多次重启fastgpt,大概率就会解决问题

oneapi里添加了模型名字,fastgpt里也添加了,但是就是提示无所用模型

  1. 仔细检查一下模型名字时候填对,或者多等一会在进行测试

更多问题可以加QQ群反馈

这篇关于Fastgpt知识库接入oneapi和自定义大模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/970286

相关文章

使用Sentinel自定义返回和实现区分来源方式

《使用Sentinel自定义返回和实现区分来源方式》:本文主要介绍使用Sentinel自定义返回和实现区分来源方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Sentinel自定义返回和实现区分来源1. 自定义错误返回2. 实现区分来源总结Sentinel自定

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

如何自定义Nginx JSON日志格式配置

《如何自定义NginxJSON日志格式配置》Nginx作为最流行的Web服务器之一,其灵活的日志配置能力允许我们根据需求定制日志格式,本文将详细介绍如何配置Nginx以JSON格式记录访问日志,这种... 目录前言为什么选择jsON格式日志?配置步骤详解1. 安装Nginx服务2. 自定义JSON日志格式各

Android自定义Scrollbar的两种实现方式

《Android自定义Scrollbar的两种实现方式》本文介绍两种实现自定义滚动条的方法,分别通过ItemDecoration方案和独立View方案实现滚动条定制化,文章通过代码示例讲解的非常详细,... 目录方案一:ItemDecoration实现(推荐用于RecyclerView)实现原理完整代码实现

基于Spring实现自定义错误信息返回详解

《基于Spring实现自定义错误信息返回详解》这篇文章主要为大家详细介绍了如何基于Spring实现自定义错误信息返回效果,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录背景目标实现产出背景Spring 提供了 @RestConChina编程trollerAdvice 用来实现 HTT

SpringSecurity 认证、注销、权限控制功能(注销、记住密码、自定义登入页)

《SpringSecurity认证、注销、权限控制功能(注销、记住密码、自定义登入页)》SpringSecurity是一个强大的Java框架,用于保护应用程序的安全性,它提供了一套全面的安全解决方案... 目录简介认识Spring Security“认证”(Authentication)“授权” (Auth

使用DeepSeek搭建个人知识库(在笔记本电脑上)

《使用DeepSeek搭建个人知识库(在笔记本电脑上)》本文介绍了如何在笔记本电脑上使用DeepSeek和开源工具搭建个人知识库,通过安装DeepSeek和RAGFlow,并使用CherryStudi... 目录部署环境软件清单安装DeepSeek安装Cherry Studio安装RAGFlow设置知识库总

SpringBoot自定义注解如何解决公共字段填充问题

《SpringBoot自定义注解如何解决公共字段填充问题》本文介绍了在系统开发中,如何使用AOP切面编程实现公共字段自动填充的功能,从而简化代码,通过自定义注解和切面类,可以统一处理创建时间和修改时间... 目录1.1 问题分析1.2 实现思路1.3 代码开发1.3.1 步骤一1.3.2 步骤二1.3.3

IDEA接入Deepseek的图文教程

《IDEA接入Deepseek的图文教程》在本篇文章中,我们将详细介绍如何在JetBrainsIDEA中使用Continue插件接入DeepSeek,让你的AI编程助手更智能,提高开发效率,感兴趣的小... 目录一、前置准备二、安装 Continue 插件三、配置 Continue 连接 DeepSeek四