ollama + fastgpt 搭建免费本地知识库

news2024/11/15 18:51:16

目录

1、ollama

ollama的一些操作命令:

使用的方式:

2、fastgpt

快速部署:

修改配置:

config.json:

docker-compose.yml:

运行fastgpt:

访问OneApi:

添加令牌和渠道:

登陆fastgpt,创建知识库和应用

3、总结:

附录:

1. 11434是ollama的端口:

2. m3e 测试 404 说明:


1、ollama

定义: ollama 是一个本地的大模型运行框架

下载地址:Ollama

ollama的一些操作命令:

# 拉取大模型llama3 
ollama pull llama3

# 运行大模型llama3,若ollama下没有模型,则先下载再运行。之后就可以在命令行问问题,或者使用其他方式使用大模型的能力    
ollama run llama3 

# 查看ollama下的大模型列表    
ollama list      

# 删除大模型llama3     
ollama rm llama3  

# 复制大模型    
ollama cp llama3 my-model   

# 查看大模型详细信息
ollama show llama3    

# 更多操作,详见 https://github.com/ollama/ollama

使用的方式:

  • 命令行
    • 运行大模型之后,直接问问题
  • WebUI:
    • 例如:open-webui
    • 地址:https://github.com/open-webui/open-webui
    • docker启动命令:
      docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
    • 访问地址:
      • http://localhost:3000/
    • 其他方式

2、fastgpt

定义:FastGPT 是一个基于 LLM 大语言模型的知识库问答系统,提供开箱即用的数据处理、模型调用等能力。同时可以通过 Flow 可视化进行工作流编排,从而实现复杂的问答场景!

docker快速部署参考:Docker Compose 快速部署 | FastGPT

快速部署:

mkdir fastgpt
cd fastgpt
curl -O https://raw.githubusercontent.com/labring/FastGPT/main/projects/app/data/config.json

# pgvector 版本(测试推荐,简单快捷)
curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker/docker-compose-pgvector.yml
# milvus 版本
# curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker/docker-compose-milvus.yml
# zilliz 版本
# curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker/docker-compose-zilliz.yml

修改配置:

config.json:

config.json 修改 llmModels(大语言模型) 和 vectorModels (向量模型)的配置。

例如:大语言模型我使用了qwen2:latest,则有如下配置:

"llmModels": [
    {
      "model": "qwen2:latest", // 模型名(对应OneAPI中渠道的模型名)
      "name": "qwen2:latest", // 模型别名
      "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)
    }
]

向量模型我使用了m3e,则有如下配置:

"vectorModels": [
    {
      "model": "m3e",
      "name": "m3e(测试专用)",
      "price": 0,
      "defaultToken": 500,
      "maxToken": 1800
    }
  ]

在fastgpt中,大语言模型和向量模型都可以配置多个。

大语言模型的名称可以查询ollama下的模型列表(ollama list)找到:

上面的m3e向量模型在ollama中没有,所以我们需要下载和运行。命令如下:

# 使用CPU运行
docker run -d --name m3e -p 6008:6008 registry.cn-hangzhou.aliyuncs.com/fastgpt_docker/m3e-large-api
# nvida-docker 使用GPU
docker run -d --name m3e -p 6008:6008 --gpus all registry.cn-hangzhou.aliyuncs.com/fastgpt_docker/m3e-large-api

可以根据自己电脑是否有GPU运行的条件决定使用哪个启动命令。

docker-compose.yml:

docker-compose.yml 需要修改如下内容:(若其他镜像配置的端口有冲突&#x

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1932112.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SCI成稿丨计算机结合,中三区

Web服务器在慢速DDoS攻xxx改进研究互联网技术下基于xxx智能化交互空间艺术研究智慧城市视角企业经济发展中节xxxxx无线网络遥感图像xxx设计和规划中的应用分析基于智能物联网的生态养老控制系统与xxx展基于心理行为大数据分类算法的心理xxxxxxxxxx终端技术对消费者行为分析及客…

使用llama.cpp量化模型

文章目录 概要整体实验流程技术细节小结 概要 大模型量化是指在保持模型性能尽可能不变的情况下,通过减少模型参数的位数来降低模型的计算和存储成本。本次实验环境为魔搭社区提供的免费GPU环境(24G),使用Llama.cpp进行4bit量化可…

go 语言实现快速排序

快速排序 - go 一、思路二、步骤及图解三、代码实现四、复杂度分析 一、思路 快速排序是一种分治策略的排序算法,关键过程是对数组进行划分。选择一个基准值(pivot element),围绕着这个基准值划分子数组,对子数组递归调…

CyberVadis认证流程

1. 评估现有安全实践:组织需要对其现有的安全实践进行全面评估,包括安全策略、技术架构、人员安全意识等。 2. 确定目标:根据组织的需求和目标,确定需要改进的领域和优先级。 3. 制定计划:制定详细的认证计划&#x…

在 Windows 上开发.NET MAUI 应用_2.生成你的第一个应用

先决条件 Visual Studio 2022 17.8 或更高版本,并安装了 .NET Multi-platform App UI 工作负载。 可参考上一篇文章:http://t.csdnimg.cn/n38Yy 创建应用 1.启动 Visual Studio 2022。 在开始窗口中,单击“创建新项目”以创建新项目&#…

美式键盘 QWERTY 布局的来历

注:机翻,未校对。 The QWERTY Keyboard Is Tech’s Biggest Unsolved Mystery QWERTY 键盘是科技界最大的未解之谜 It’s on your computer keyboard and your smartphone screen: QWERTY, the first six letters of the top row of the standard keybo…

黑马头条Day02-app端文章查看,静态化freemarker

学习内容: 一、app端文章列表 1. 需求分析 文章的布局展示 2. 导入文章数据库 可以使用IDEA的数据库连接工具执行SQL脚本 3. 表结构分析 ap_article文章基本信息表 ap_article_config文章配置表 ap_article_content文章内容表 把课前资料里提供的实体类复制到mod…

转移C盘中的conda环境(包括.condarc文件修改,environment.txt文件修改,conda报错)

conda环境一般是默认安装到C盘的,若建立多个虚拟环境,时间长了,容易让本不富裕的C盘更加雪上加霜,下面给出将conda环境从C盘转移到D盘的方法。 目录 电脑软硬件转移方法查看当前conda目录转移操作第一步:.condarc文件修…

vmware虚拟机中,Centos安装Docker,解决国内无法访问

背景 本文主要解决了centos 的yum源 无法更新 和 docker的 源 国内无法访问的问题。 本文环境:windows宿主机装了vmware虚拟机,虚拟机中安装了Centos,centos内装docker。其实可以直接在window装docker desktop for windows,但…

ns3-gym入门(三):在opengym基础上实现一个小小的demo

因为官方给的"opengym""opengym-2"这两个例子都很简单,所以自己改了一个demo,把reward-action-state相互影响的关系表现出来 一、准备工作 在ns3.35/scratch目录下创建一个文件夹: (后续的运行指令后面都需要…

JVM---对象是否存活及被引用的状态

1.如何判断对象是否存活 1.1 引用计数算法 概念:在对象头部增加一个引用计数器,每当有一个地方引用它时,计数器值就加一;当引用失效时,计数器值就减一;任何时刻计数器为零的对象就是不可能再被使用的。 优点&#xff1…

喰星云·数字化餐饮服务系统 多处 SQL注入漏洞复现

0x01 产品简介 喰星云数字化餐饮服务系统是一款专为餐饮企业设计的综合性管理软件,旨在通过信息化手段提升餐饮企业的运营效率、降低运营成本,并实现数据驱动的决策管理。该系统包括供应链管理、财务管理、巡店管理、人力资源管理等多个模块,可全面覆盖餐饮企业的日常运营需…

【多线程综合】java何时考虑线程安全问题、怎么考虑、又怎么解决?

前言:在编程中,线程安全是一个非常重要的概念。它涉及到多个线程并发访问共享资源时的正确性和一致性。在Java中,为了确保线程安全,我们需要考虑一些关键因素。 1、什么是线程安全 线程安全是指当多个线程同时访问一个对象时&am…

十大排序 之 快速排序

!!!排序仅针对于数组哦本次排序是按照升序来的哦代码后边有图解哦 介绍 快速排序英文名为Quick Sort 基本思路 快速排序采用的是分治思想,即在一个无序的序列中选取一个任意的基准元素base,利用base将待排序的序列分…

基于RK3588的8K视频解码显示案例分享!引领超高清工业视频时代

8K、4K、2K显示对比 2K分辨率:也称为全高清(FULL HD),它具有1920 x 1080像素的分辨率。这是目前大多数消费者电视和电脑显示器的标准分辨率,可以提供良好的图像质量。 4K分辨率:也称为4K超高清&#xff0…

我无法给博客园出钱,那我就出点建议吧

相信这张图大家都已经看见过了,从去年就传出博客园经营困难的情况,其实很多平台,不止是博客园,包括现在国内的很多公司都一样,经营是一件大难题,但很多公司我们不知道,悄无声息的倒下了。而博客…

【雅思备考IELTS】写作第一部分Writing Part One

Tips for IELTS Writing (Part 1) By James Lee 2024/7/15 Part 1: 图表数据分析 Analysis of a Graph / Chart / Curve, etc. 这部分一般是让分析一张图表(Graph或Chart),用时约20分钟,字数不用太多,150词以上即可。…

推荐一个可以体验正版ChatGPT的平台

在鱼龙混杂的API市场,智创聚合API以其卓越的性能和创新的服务理念,为用户带来了前所未有的体验。我们自豪地宣布,现在加入我们的限时官方API渠道,您将享受到更快速率提升,以及更高质量的回复服务,而这些仅需…

Python酷库之旅-第三方库Pandas(028)

目录 一、用法精讲 71、pandas.tseries.api.guess_datetime_format函数 71-1、语法 71-2、参数 71-3、功能 71-4、返回值 71-5、说明 71-6、用法 71-6-1、数据准备 71-6-2、代码示例 71-6-3、结果输出 72、pandas.util.hash_array函数 72-1、语法 72-2、参数 72…

【PostgreSQL】PostgreSQL简史

博主介绍:✌全网粉丝20W,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物…