0%

chat-gpt

模型

模型管理平台:ollama

ollama的模型路径

默认情况下,ollama模型的存储目录如下:

macOS: ~/.ollama/models

Linux: /usr/share/ollama/.ollama/models

Windows: C:\Users\<username>\.ollama\models

ollama的配置文件

参考文献

ollama修改模型的位置

系统环境变量增加 OLLAMA_MODELS

参考文献

别的机器监听地址需要改成0.0.0.0

不然会出现networkerror

maxkb

当maxkb和ollama部署在同一台主机上时

maxkb中可以配置的ollama地址:http://host.docker.internal:11434, 访问宿主机的ip端口

ollama模型的支持长度

参考文献

查看ollama模型的版本

ollama show llava:34B

查看ollama的版本

ollama -v

调用ollama的时候使用apikey

参考文献

ollama vs vllm

vllm有paged attention,如果prefix相同会只算一份,kv占的显存也只一份

模型微调

TODO

其他模型

  • ai语音模拟生成
  • ai音频解析
  • ai音频解析

从hugging face上下载模型

linux设置镜像:export HF_ENDPOINT=https://hf-mirror.com

Windows设置镜像:set HF_ENDPOINT=https://hf-mirror.com

下载模型:

huggingface-cli download InstantX/InstantID --local-dir ./checkpoints

参考文献

mteb排行榜

向量模型

TencentBAC/Conan-embedding-v1

HuggingFace Embedding 转为 Ollama Embedding

多模态模型

llava

coder模型

deepseek-coder

LLM模型

qwen2.5

模型排行

qwen模型的版本区别

特性Qwen-2.5-14BQwen-2.5-14B-Instruct
用途- 这是一个通用的大型语言模型,适用于各种自然语言处理任务,如文本生成、翻译、问答等。<br> - 它在大规模的文本数据上进行了预训练,能够生成高质量的文本。- 这是一个经过指令微调的版本,专门用于理解和执行特定的指令。<br> - 它在通用语言模型的基础上,增加了对指令的理解和执行能力,使其更适合处理指令式的任务,如生成特定格式的文本、回答特定类型的问题等。
训练方式- 这个版本主要通过无监督学习的方式在大规模的文本数据上进行预训练。<br> - 它通过预测下一个词或掩码词的任务来学习语言的结构和模式。- 这个版本在通用语言模型的基础上,进行了指令微调。<br> - 微调过程中,模型会接触到大量的指令-响应对,从而学会如何根据指令生成相应的输出。这种微调使得模型在处理特定任务时更加高效和准确。
应用场景- 适用于广泛的自然语言处理任务,如文本生成、翻译、摘要、情感分析等。<br> - 它在这些任务中表现出色,但可能在处理特定指令时不如 Qwen-2.5-14B-Instruct 那么精确。- 特别适合处理指令式的任务,如生成特定格式的文档、回答特定类型的问题、完成特定的编辑任务等。<br> - 它在这些任务中表现更为出色,能够更准确地理解用户的意图并生成相应的输出。
性能- 在通用任务上表现出色,但由于没有专门的指令微调,可能在处理特定指令时表现稍逊一筹。- 在处理特定指令时表现更佳,能够更准确地理解指令并生成高质量的输出。

总结:Qwen-2.5-14B 是一个通用的大型语言模型,适用于各种自然语言处理任务。<br>
Qwen-2.5-14B-Instruct 是在通用模型基础上经过指令微调的版本,特别适合处理指令式的任务。
选择哪个版本取决于你的具体需求。如果你需要一个通用的模型来处理多种任务,可以选择 Qwen-2.5-14B。如果你的任务涉及大量指令式的操作,建议使用 Qwen-2.5-14B-Instruct。

模型转化、量化

打标模型

图片的分类标签非常多样,可以根据不同的标准进行分类。例如,根据场景可以分为自然风光、城市街景、室内环境等;根据物体类型可以分为动物、植物、交通工具等;根据用途可以分为医学影像、遥感图像、艺术作品等。

一些常见的分类标签包括但不限于:

  1. 通用视觉类:如CIFAR-10、CIFAR-100、STL-10等 。
  2. 手写体&单通道类:如MNIST、Fashion-MNIST等 。
  3. 细粒度图像识别类:如SUN Attribute、Oxford-IIIT Pet等 。
  4. 自然界图像和场景类:如IP102、Places365等 。
  5. 遥感类:如EuroSAT、BigEarthNet等 。
  6. 医疗健康类:如HErlev、BBBC041等 。
  7. 科学教育类:如PlantVillage、PlantDoc等 。
  8. 艺术类:如iCartoonFace、KaoKore等 。
  9. 食物类:如Food-101、ECUSTFD等 。
  10. 生活场景类:如SVHN、Clothing1M等 。

此外,还可以根据图像的内容进行分类,如物体、场景、行为等,并返回对应的标签信息,例如花、鸟、鱼、虫、汽车、建筑等 。

对于具体的分类标签,可以通过查看相关的数据集资源来获取更详细的信息。例如,CSDN的博客文章分享了64个图像分类任务相关的热门公开数据集资源,并粗略分为10类,每个类别下都有具体的数据集和对应的标签信息 。此外,还可以参考TensorFlow Lite提供的图像分类模型,这些模型可以识别不同的类别,如兔子、仓鼠和狗等 。

如果想要查找更多的分类标签,可以访问一些提供图像分类数据集的网站,如Kaggle、Google TensorFlow等,这些平台通常会提供详细的标签信息和数据集下载链接。

用于发票识别的微调 Transformer 模型

TrOCR模型微调实战【微软光学字符识别】

llm应用平台

workflow平台推荐

RAG+AI工作流+Agent:LLM框架该如何选择,全面对比MaxKB、Dify、FastGPT、RagFlow、Anything-LLM,以及更多推荐

ragflow

npm下载时报错unable to verify the first certificate解决方法

在dockerfile中新加 npm config set strict-ssl false

Ollama 结合 maxkb做本地知识库

【教程】Windows系统本地部署Ollama+MaxKB安装教程

maxkb去掉社区版限制

参考文献

索引时间测试

字符数分段数cpu型号时间
738.6k1478i9 13900k5min
738.6k1478CPU Intel Celeron J4125(DS920+)1.5h

目录挂载

maxkb知识库:/var/lib/postgresql/data

向量模型:

推理模型:

RAG技术

检索增强生成(Retrieval-augmented Generation)

检索增强生成模型结合了语言模型和信息检索技术。具体来说,当模型需要生成文本或者回答问题时,它会先从一个庞大的文档集合中检索出相关的信息,然后利用这些检索到的信息来指导文本的生成,从而提高预测的质量和准确性。

稀疏检索(Sparse Retrieval)和稠密检索(Dense Retrieval)的区别

在信息检索领域,“稀疏”和“稠密”这两个形容词主要用来描述向量表示的特性。具体来说,它们形容的是向量的稀疏性和稠密性,即向量中非零元素的相对数量和分布情况。

稀疏(Sparse)

  • 特点:稀疏向量中大多数元素是零,只有少数几个元素是非零的。换句话说,向量的绝大部分维度没有激活。
  • 形象例子:假设有一个向量表示包含10,000个词汇的词汇表中的词频向量,如果一个文档中只有50个词出现,那么这个文档的词频向量将有9,950个零值和50个非零值。这个向量被称为稀疏向量。
  • 用途:在稀疏检索中,比如使用TF-IDF或BM25算法,文档和查询通常表示为这种稀疏向量。它们明确地表示了文本中的具体词汇,但大多数词汇在单个文档或查询中是不存在的(值为零)。

稠密(Dense)

  • 特点:稠密向量中大多数元素都是非零的,每个维度都有实际的数值。向量的每个维度都有值,虽然不一定是大的值。
  • 形象例子:假设有一个向量表示包含768个维度的BERT嵌入,这个向量中的每一个维度通常都有非零值。尽管这些值的大小会有所不同,但几乎没有维度是完全零值的。这个向量被称为稠密向量。
  • 用途:在稠密检索中,使用深度学习模型(如BERT、GPT)把文档和查询编码成这种稠密向量。这些向量捕捉了文本的复杂语义和上下文信息,尽管这些信息不是显式的词汇频率,但通过向量的形式隐式地表示出来。

小结

  • 稀疏(Sparse):指向量中大部分维度是零,只有少数维度是非零。这类向量便于从高维数据中提取特定的显式特征,计算效率高。
  • 稠密(Dense):指向量中大部分维度都是非零,每个维度都有实际值。这类向量捕捉到更多复杂的隐式信息,如上下文和语义,是丰富语义表示的结果。

这两个术语帮助区分了两种不同的向量表示方法的特性和适用场景。

参考文献

dify

OpenAPI Swagger标准是什么

OpenAPI Swagger标准是一个用于描述RESTful API的规范,它允许你以一种标准化的方式来创建、描述、调用和发现API。这个标准最初由Swagger规范发展而来,后来由OpenAPI Initiative(OAI)接管并继续发展,目前最新的正式版本是OpenAPI 3.0.0。

OpenAPI规范的主要特点包括:

  1. 机器可读:规范定义了一种机器可读的格式,允许工具能够读取API描述并执行各种操作,如生成文档、代码等。
  2. 人类可读:规范同样强调人类可读性,使得API的描述易于理解。
  3. 语言无关性:规范与具体的编程语言无关,可以用于描述任何语言实现的API。
  4. 丰富的功能:包括请求和响应的验证、参数传递方式等高级功能。
  5. 扩展性:规范支持通过”x-“前缀的字段进行扩展,以适应特定的需求。

OpenAPI文档通常以YAML或JSON格式编写,包含了API的详细信息,如API的路径、请求参数、响应参数、错误码等。文档的结构由以下几个主要部分组成:

  • openapi:指定OpenAPI规范的版本。
  • info:提供API的元数据,如标题、描述、版本等。
  • paths:描述API的路径和操作(如GET、POST、PUT、DELETE等)。
  • components:包含可重用的构件,如参数、响应、安全方案等。
  • security:定义API的安全要求。
  • tags:用于对API进行逻辑分组。
  • externalDocs:提供对外部文档的引用。

使用OpenAPI规范,开发者可以更容易地理解API的工作原理,自动化工具可以根据规范生成文档、代码、测试脚本等,从而提高开发效率和API的可用性。此外,API管理平台和工具也广泛支持OpenAPI规范,使得API的管理和使用更加规范化和便捷化。

在线生成OpenAPI Swagger

硬件

想自己组个或者4块A6000或者A100的服务器有点无从下手

显卡为什么不能扩充升级显存?用最浅显的语言回答你,全是干货

ollama cpu占用高,gpu占用低

模型需要全部载入到gpu的缓存中,才能运行,而模型载入、推理时需要的显存如下

显存占用评估

参考文献

如何选择GPU显卡,带你对比A100/H100/4090性价比、训练/推理该使用谁?

实测自己的ollama可以运行qwen72b,这是为什么?虽然layer载入是39/81,本机内存64GB。

chatGPT

chatgpt

申请gpt4

参考文献

MaxKB+Ollama

扣子工作流

ubuntu安装

1、在windows系统下,首先下载磁盘分区工具diskgenius并安装。

2、下载并安装 启动引导软件 easyUEFI (试用版)。

3、选择并下载合适的ubuntu版本。

4、使用diskgenius分出一个区,格式化为FAT32,并将ubuntu解压至这个盘里。

5、启动easyUEFI,新建一个启动项,选择刚解压的那个ubuntu,设置成第一个启动项,然后重启。

MISC

深度学习PyTorch,TensorFlow中GPU利用率较低,CPU利用率很低,且模型训练速度很慢的问题总结与分析

llama.cpp

编译llama.cpp出问题

我觉得版本不对,删掉了这个路径,为什么w64devkit还是回去这个目录去找。本地有一个cahe文件

代码详情
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
-- The CXX compiler identification is unknown
CMake Error at CMakeLists.txt:2 (project):
The CMAKE_C_COMPILER:

C:/Program Files/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/bin/gcc.exe

is not a full path to an existing compiler tool.

Tell CMake where to find the compiler by setting either the environment
variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to
the compiler, or to the compiler name if it is in the PATH.


CMake Error at CMakeLists.txt:2 (project):
The CMAKE_CXX_COMPILER:

C:/Program Files/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/bin/g++.exe

is not a full path to an existing compiler tool.

Tell CMake where to find the compiler by setting either the environment
variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
to the compiler, or to the compiler name if it is in the PATH.

wsl-ubuntu安装

使用代理

export http_proxy=http://192.168.1.111:10810;

export https_proxy=http://192.168.1.111:10810;

cc: not found

安装gcc g++

sudo apt install gcc

sudo apt-get update

代码详情
1
2
3
4
5
I LDFLAGS:
/bin/sh: 1: cc: not found
I CC:
/bin/sh: 1: c++: not found
I CXX:

ubuntu安装ananconda

apt install libgl1-mesa-glx libegl1-mesa libxrandr2 libxrandr2 libxss1 libxcursor1 libxcomposite1 libasound2 libxi6 libxtst6

参考文献

ollama输出不稳定

输出不可以复现是为什么,待补充

rag测试用例

curl如何设置代理,linux运维,## 使用代理