首页 > 其他分享 >玩转大模型之三(FastGPT+OneAPI本地部署)

玩转大模型之三(FastGPT+OneAPI本地部署)

时间:2024-07-24 14:30:18浏览次数:11  
标签:FastGPT compose 配置 模型 知识库 OneAPI 玩转 docker

一、服务器
服务器:一台 Linux 16核32G IP:10.33.19.16
基础环境:Docker、Docker-Compose

二、FastGPT安装
首先下载 docker-compose.yml和config.json两个文件

mkdir fastgpt
cd fastgpt
curl -O https://raw.githubusercontent.com/labring/FastGPT/main/projects/app/data/config.json
curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker/docker-compose-pgvector.yml

然后通过docker启动

docker-compose up -d
# 等待10s,OneAPI第一次总是要重启几次才能连上Mysql
sleep 10
# 重启一次oneapi(由于OneAPI的默认Key有点问题,不重启的话会提示找不到渠道,临时手动重启一次解决,等待作者修复)
docker restart oneapi

打开浏览器,可以通过http://10.33.19.16:3001/访问OneAPI,默认账号为root密码为123456。
在这里插入图片描述
最后可以通过http://10.33.19.16:3000 直接访问(注意防火墙)。登录用户名为 root,密码为docker-compose.yml环境变量里设置的 DEFAULT_ROOT_PSW。如果需要域名访问,请自行安装并配置 Nginx。首次运行,会自动初始化 root 用户,密码为 1234
在这里插入图片描述
到了这里,相关的程序安装就基本结束了,但是现在还没法直接使用FastGPT进行对话,因为咱们还没有配置大模型,接下来就是告诉大家如何来配置模型。

三、FastGPT配置
1、申请通义千问API-KEY值
每个新用户都可以在阿里上面注册使用通义千问的模型,个人测试基本额度够用了,好像是100万的Token。申请步骤按照官网指引即可。
打开API-KEY申请指导官网:
https://help.aliyun.com/zh/dashscope/developer-reference/activate-dashscope-and-create-an-api-key跟随官网创建API-KEY。

2、配置oneapi的渠道和令牌
在这里插入图片描述
密钥处填写从大模型厂商获得的API Key。
在这里插入图片描述
配置完成后可以点击那个绿色的测试按钮验证通道是否成功。接下来继续配置令牌,这个就非常easy了,直接在令牌页面新建一个永不过期的令牌即可,创建好了之后复制下来,后面需要用到。
在这里插入图片描述
3、配置fastGPT
修改 FastGPT 配置文件config.json
vectorModels节点下面新建qianwen模型(vectorModels用于知识库索引模型)
Name需要与oneai中配置的名称一致,model选择该渠道下面的某个模型

{
      "model": "qwen-turbo",
      "name": "qianwen",
      "inputPrice": 0,
      "outputPrice": 0,
      "defaultToken": 700,
      "maxToken": 3000,
      "weight": 100
}

修改docker-compose.yml文件配置:
在这里插入图片描述
其中chat_api_key填写oneai中创建好的令牌信息。
最后用下面的命令重启fastgpt:

docker-compose down
docker-compose up -d

四、FastGPT测试知识库训练
1、新建一个知识库
在这里插入图片描述
索引模型选择上面配置的qianwen
》导入知识文件(支持 .txt, .docx, .csv, .xlsx, .pdf, .md, .html, .pptx 类型文件)
在这里插入图片描述
》搜索测试
在这里插入图片描述
到了这一步,基本就完成了底层模型的配置了,但是目前只是把知识库搭建好了,还需要创建应用,只有应用才能集成到其他系统当中使用。
》新建一个应用,然后选择qianwen模型,并且关联上一个步骤中的知识库,只有这样,对话的时候才会引用知识库中上传的一些文档内容。
在这里插入图片描述
五、FastGPT应用集成
目前应用支持两种集成模式:窗口集成和api集成,如果大家图简单的话,就用窗口集成:
在这里插入图片描述
创建一个免登录窗口,然后根据窗口的展示方式选择对应的js代码放到你的业务系统当中,这样的话,你的页面就会嵌入fastGPT的对话窗口了。
在这里插入图片描述
对话框的一些图标和样式都可以在这个窗口里面定义。
到此为止,咱们就完成了基本的大模型和知识库结合的应用,是不是很简单,大家可以准备一台cpu虚拟机,按照我介绍的步骤,来体验一下大模型的魅力吧。
后续课程我会给大家介绍如何搭建本地化模型,因为上面的课程里面咱们还是使用的大厂的模型,虽然个人测试不需要收费,但是用的人多了,还是会把token额度耗尽,有条件的话,最好搭建开源的本地化模型,这样无论怎么用都不受限制了。

标签:FastGPT,compose,配置,模型,知识库,OneAPI,玩转,docker
From: https://blog.csdn.net/mopmgerg54mo/article/details/140661152

相关文章

  • 用Python玩转Excel的五大功能!
    在数据分析和处理的过程中,Excel一直是备受欢迎的工具。然而,手动操作Excel既费时又容易出错。幸运的是,Python可以让你高效且智能地操作Excel文件,极大提升工作效率。那么,如何用Python玩转Excel呢?  Python可以为我们提供哪些强大的功能来处理Excel文件,使得我们的数据处理工作更......
  • 【Java常用设计模式】通俗易懂的玩转单例、建造者、工厂、策略模式(保姆篇)
    文章目录单例模式建造者模式工厂模式策略模式本篇小结更多相关内容可查看在一个狂风骤雨的下午,有人突然问了我一句,单例模式是什么,我愣了,相信看完这篇就不会愣了,本文以通俗易懂的方式写的,可能有不严谨的地方......
  • 【机器学习】FastGPT 知识库搜索测试功能解析
    本文以FastGPT知识库的搜索测试功能为入口,分析FastGPT的知识检索流程。一、搜索功能介绍1.1整体介绍搜索测试功能包含三种类型:语义检索、全文检索、混合检索。语义检索:使用向量进行文本相关性查询,即调用向量数据库根据向量的相似性检索;全文检索:使用传统的全文检索,适......
  • 掌控数据库:在 PHPStudy 中玩转 MySQL 命令行的终极指南
    文章目录引言1.PHPStudy简介理解数据库,表,字段的模型2.打开MySQL命令行2.1启动PHPStudy2.2启动MySQL服务2.3打开命令行2.4登录MySQL3.MySQL基本命令3.1查看(进去)数据库3.2创建数据库3.3使用数据库3.4创建数据表3.5插入数据3.6查询数据(查表)3.7更新数据3.8......
  • 【Springboot】玩转复杂单元测试启动类-只测试数据访问层(JPA+Mybatis) 和服务层 以及
    上一篇文章写了一个最复杂的SpringBootTest启动类,定制化程序奇高,然而有时候仅测试JPA是不够的。启动类需求:测试SpringDataJPA测试Mybatis从容器中获得ObjectMapper测试单独的Service使用TestNG或者使用Junit阻止Dubbo、Kafka、ElasticSearch等中间件启动使用appl......
  • 小红书矩阵引流训练营:0到1玩转小红书流量,在小红书上分得一杯羹
    小红书流量增长策略与技术实践指南摘要:本技术文献旨在深入探讨小红书平台的流量增长策略,包括免费矩阵引流、矩阵截流及付费投放等多种玩法,旨在帮助个人、团队及公司从零开始,有效掌握并优化小红书流量获取技巧,实现品牌曝光与用户增长。通过系统化的课程设计与实战案例分析,本......
  • 推荐一个新手如何进阶玩转 GitHub 的开源项目,通俗易懂!(带私活源码)
    今天,给大家分享的是一个新手如何进阶玩转GitHub的开源项目。此新手,非彼新手。作者之前确实是没怎么用GitHub,但是人家是作者,作者不仅仅是写了篇文章那么简单。。。这个作者是《Git权威指南》的作者!!GotGitHub是GitHub的详细完整的权威介绍。1.为什么会有这个开源博客?......
  • 玩转微信小程序(第四天)
    玩转微信小程序第四天今日需要完成内容一,完成轮播图效果二,实现滑动效果2.1这里建议把scroll-view套用在view里使用2.2把图片进行横向排列并且不换行三,实现文字显示在图片上的效果3.1先实现简单的布局3.2样式的实现四,自定义组件设置跳转和文字4.1wxml效果4.2js效果4.3如......
  • 玩转springboot之springboot定制化tomcat
    定制化tomcatspringboot中是集成了tomcat容器的,如何定制化内置的tomcat呢?springboot提供了定制化的接口1.5.x版本在1.5.x版本中使用的是EmbeddedServletContainerCustomizer接口来进行定制化的public class MyTomcatCustomizer implements EmbeddedServletContaine......
  • Java中的JSON神器,如何轻松玩转复杂数据结构
    哈喽,大家好,我是木头左!一、揭秘JSON世界的基石在Java的世界中,JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式,它基于文本,易于阅读和编写,同时也易于机器解析和生成。JSON在日常开发中的应用非常广泛,无论是前后端的数据交互,还是配置文件的读取,都离不开JSON的身影。那......