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

目录

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.mzph.cn/diannao/47176.shtml

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

相关文章

处理多维特征的输入(Multiple Dimension Input)

输入x有多个特征features,最终得到输出y的类别。 在上一节提到,左边是我们最开始了解的线性回归,右边是我们的logistics回归(返回值为一个离散的集合)。对于本节,就是在logistics回归输入x的基础上让其多一…

中伟视界:矿山智能化——AI引领创新,行车不行人检测算法实现实时预警,防范行车不行人事故发生

行车不行人检测AI分析算法通过利用人工智能和深度学习技术,对井下行人和车辆的行驶情况进行实时检测和识别。该算法在提升矿山安全管理、减少事故发生方面具有重要作用。本文将详细介绍该AI算法的识别过程、应用场景及其技术特点。 一、识别过程 行车不行人检测AI分…

Hadoop安装报错

报错:ERROR 2023-03-09 21:33:00,178 NetUtil.py:97 - SSLError: Failed to connect. Please check openssl library versions. 解决方案: 在安装失败得客户端执行 编辑 /etc/python/cert-verification.cfg 配置文件,将 [https] 节的 verify 项 设为禁用…

怎么查看一个网站的ip地址?

1、使用nslookup nslookup 是一个网络诊断工具,用于查询域名系统(DNS)记录,将域名解析为IP地址,或者查询其他DNS记录类型,如MX(邮件交换记录)、CNAME(别名记录&#xff…

css - - - - - 环形倒计时进度条实现

css - - - - - 环形倒计时进度条实现 1. 效果图展示2. 代码展示 1. 效果图展示 2. 代码展示 // html <view class"father"><view class"progress" style"--progress:{{red}}; --last:{{gray}}"></view> </view>// css …

mac合并pdf文件最简单的方法,mac如何合并pdf文件

在数字化办公和学习的过程中&#xff0c;pdf 格式因其稳定性和跨平台兼容性而广受欢迎。但有时候&#xff0c;我们免不了需要将多个pdf文件合并为一个&#xff0c;以便于管理和分享。今天&#xff0c;就让我来为大家介绍几种简单高效的pdf合并方法&#xff0c;让你轻松合并文件…

深度学习落地实战:手势识别

前言 大家好&#xff0c;我是机长 本专栏将持续收集整理市场上深度学习的相关项目&#xff0c;旨在为准备从事深度学习工作或相关科研活动的伙伴&#xff0c;储备、提升更多的实际开发经验&#xff0c;每个项目实例都可作为实际开发项目写入简历&#xff0c;且都附带完整的代…

Android 11 HAL层集成FFMPEG

1.集成目录&#xff1a; android/vendor/noch/common/external/NoboMediaCodec 2.文件夹目录 3. Android.mk实现 # Copyright #LOCAL_PATH : $(call my-dir)SF_COMMON_MK : $(LOCAL_PATH)/common.mkinclude $(call first-makefiles-under,$(LOCAL_PATH))4.common.mk实现 # #…

【EI检索】第二届机器视觉、图像处理与影像技术国际会议(MVIPIT 2024)

一、会议信息 大会官网&#xff1a;www.mvipit.org 官方邮箱&#xff1a;mvipit163.com 会议出版&#xff1a;IEEE CPS 出版 会议检索&#xff1a;EI & Scopus 检索 会议地点&#xff1a;河北张家口 会议时间&#xff1a;2024 年 9 月 13 日-9 月 15 日 二、征稿主题…

Mysql解忧杂货铺

欢迎来到一夜看尽长安花 博客&#xff0c;您的点赞和收藏是我持续发文的动力 对于文章中出现的任何错误请大家批评指出&#xff0c;一定及时修改。有任何想要讨论的问题可联系我&#xff1a;3329759426qq.com 。发布文章的风格因专栏而异&#xff0c;均自成体系&#xff0c;不足…

【python虚拟环境管理】【mac m3】 使用pipx安装poetry

文章目录 一. 安装 pipx二. 安装Poetry1. 安装2. advanced 操作 官网文档&#xff1a;https://python-poetry.org/docs/ pipx介绍文档&#xff1a;https://blog.51cto.com/u_15064632/2570626 一. 安装 pipx pipx 用于全局安装 Python 命令行应用程序&#xff0c;同时在虚拟环…

注册安全分析报告:OneApm

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 暴力破解密码&#xff0c;造成用户信息泄露短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造成亏损无底洞 …

【大型实战】企业网络实验(华为核心交换、ESXI7.0vmware虚拟机、DHCP中继、服务端网络及用户端网络配置)

需求 实验 vmware网络配置&#xff08;企业内部一般为ESXI&#xff09; 这样服务器虚拟机使用192.168.200.X网段才能与用户侧互通 vmware虚拟机配置&#xff08;DHCP服务器网络配置&#xff09; 打开网络管理页面 nmtui重置一下网络连接&#xff08;重启网卡&#xff09; …

十分钟“手撕”七大排序

前言&#xff1a;可以通过目录来找你需要的排序的源代码。先是解释底层原理&#xff0c;后附带代码。 目录 稳定的概念 一、插入排序 二、希尔排序 三、选择排序 四、堆排序 五、冒泡排序 六、快速排序 七、归并排序 八、排序总结 额外&#xff1a;计数排序 稳定的…

论文翻译:Explainability for Large Language Models: A Survey

https://arxiv.org/pdf/2309.01029 目录 可解释性在大型语言模型中&#xff1a;一项调查摘要1 引言2 LLMs的训练范式2.1 传统微调范式2.2 提示范式 3 传统微调范式的解释3.1 局部解释3.1.1 基于特征归因的解释3.1.2 基于注意力的解释3.1.3 基于示例的解释 3.2 全局解释3.2.1 基…

大规模优化问题,Scipy?Ceres?PyTorch!

背景&#xff1a; 优化问题一般通过scipy.optimize或者Ceres Solver优化器求解。但在参数量较大的优化问题上&#xff0c;scipy提供的BFGS、L-BFGS-B、CG、SLSQP等梯度优化算法其复杂度和存储需求指数级上升&#xff0c;无法满足计算效率&#xff1b;而Ceres需要额外的语言来支…

VTK----3D picking的原理、类型及实现

目录 3D picking概述 3D射线投射原理 VTK picking框架 vtkPicker(选Actor) vtkPointPicker(选点) vtkCellPicker(选单元) vtkAreaPicker(框选) 3D picking概述 3D picking 是一种在三维场景中确定用户点击或指向的对象的技术。这在3D应用程序和游戏中非常常见,…

React Native 自定义 Hook 获取组件位置和大小

在 React Native 中自定义 Hook useLayout 获取 View、Pressable 等组件的位置和大小的信息 import {useState, useCallback} from react import {LayoutChangeEvent, LayoutRectangle} from react-nativeexport function useLayout() {const [layout, setLayout] useState&l…

JavaScript Math 函数举例

https://andi.cn/page/621577.html

Mongodb数组字段索引之多键索引

学习mongodb&#xff0c;体会mongodb的每一个使用细节&#xff0c;欢迎阅读威赞的文章。这是威赞发布的第92篇mongodb技术文章&#xff0c;欢迎浏览本专栏威赞发布的其他文章。如果您认为我的文章对您有帮助或者解决您的问题&#xff0c;欢迎在文章下面点个赞&#xff0c;或者关…