建设信用卡在网站挂失几步,磁力猫引擎入口,黄冈网站推广平台,中国建盏品牌形象设计大赛公示背景介绍
Ollama 是目前最流行的大模型本地化工具之一。 Ollama 支持一系列开源大模型#xff0c;包括主流的聊天模型和文本嵌入模型#xff08;Embedding Models#xff09;等。 ChatOllama 是基于 Ollama 的 Web 应用#xff0c;它可以让用户直接在浏览器中使用 Ollama。…背景介绍
Ollama 是目前最流行的大模型本地化工具之一。 Ollama 支持一系列开源大模型包括主流的聊天模型和文本嵌入模型Embedding Models等。 ChatOllama 是基于 Ollama 的 Web 应用它可以让用户直接在浏览器中使用 Ollama。ChatOllama 支持多种大模型包括 Ollama 支持的所有大模型以及 OpenAIAnthropic 的大模型。 ChatOllama 的作者是 B 站的一名 up 五里墩茶社 他经常发布一些关于 LLM 的教程学到很多感谢 本文档是结合他的视频和 GitHub 文档做的实践和翻译。版权归他侵权就删。 本文将使用 Docker 一键运行 ChatOllama让用户可以在本地快速部署 ChatOllama。
ChatOllama 用户手册 https://github.com/sugarforever/chat-ollama?tabreadme-ov-file#users-guide Ollama https://ollama.ai
下载 docker
Install Docker Desktop on Windows | Docker Docs 我用的 Windows 系统
Ollama
Ollama https://ollama.ai Ollama GitHub 仓库 ollama/ollama: Get up and running with Llama 2, Mistral, Gemma, and other large language models. (github.com)
选择 windows 预览版傻瓜式安装不多赘述是很好的开源模型库可以通过 GitHub 查看如何使用为了方便学习我摘录如下
目前已入驻模型
ollama.com/library
ModelParametersSizeDownloadLlama 27B3.8GBollama run llama2Mistral7B4.1GBollama run mistralDolphin Phi2.7B1.6GBollama run dolphin-phiPhi-22.7B1.7GBollama run phiNeural Chat7B4.1GBollama run neural-chatStarling7B4.1GBollama run starling-lmCode Llama7B3.8GBollama run codellamaLlama 2 Uncensored7B3.8GBollama run llama2-uncensoredLlama 2 13B13B7.3GBollama run llama2:13bLlama 2 70B70B39GBollama run llama2:70bOrca Mini3B1.9GBollama run orca-miniVicuna7B3.8GBollama run vicunaLLaVA7B4.5GBollama run llavaGemma2B1.4GBollama run gemma:2bGemma7B4.8GBollama run gemma:7b注意下载根据自己的内存来决定推荐普通电脑用 qwen 1.8 b
查询已安装的模型
ollama list运行模型 windows 直接运行软件即可默认开机启动
ollama serve配置 docker-compose.yaml
这个文件在 GitHub 仓库中有找个位置放着。
version: 3.1
services:chromadb:image: chromadb/chromaports:- 8000:8000restart: alwaysvolumes:- chromadb_data:/chroma/.chroma/indexchatollama:environment:- CHROMADB_URLhttp://chromadb:8000- DATABASE_URLfile:/app/sqlite/chatollama.sqlite- REDIS_HOSTredisimage: 0001coder/chatollama:latestports:- 3000:3000pull_policy: alwaysrestart: alwaysvolumes:- ~/.chatollama:/app/sqliteredis:image: redis:latestrestart: alwaysvolumes:- redis_data:/datavolumes:chromadb_data:redis_data:配置解释 这个文件定义了三个服务serviceschromadb、chatollama 和 redis以及两个数据卷volumeschromadb_data 和 redis_data。
chromadb 使用镜像 chromadb/chroma并映射端口将宿主机的 8000 端口与容器的 8000 端口进行绑定。设置为始终重启 (restart: always)意味着如果容器意外终止则会自动重启它。挂载数据卷 - chromadb_data:/chroma/.chroma/index这意味着容器内的 /chroma/.chroma/index 目录会被持久化存储在宿主机上的 chromadb_data 卷中。 chatollama 设置环境变量其中 CHROMADB_URL 指向 chromadb 服务DATABASE_URL 表示使用 SQLite 数据库存储并指向容器内部的 /app/sqlite/chatollama.sqlite 文件REDIS_HOST 设置为 redis 服务名称。使用镜像 0001coder/chatollama:latest并在宿主机上通过端口映射暴露应用在 3000 端口 (ports: - 3000:3000).同样设置为始终重启并且拉取策略是始终获取最新镜像 (pull_policy: always)。挂载宿主机目录 ~/.chatollama 到容器内 /app/sqlite用于持久化聊天应用相关的SQLite数据库文件。 redis 使用 Redis 的最新镜像。设置为始终重启并挂载数据卷 - redis_data:/data将容器内的 Redis 数据持久化到宿主机的 redis_data 卷。
运行配置文件
在所在文件夹按住 CTRL右键呼出 cmd 运行以下代码
docker compose up系统自动按照配置文件运行。
初始化数据库
程序运行完后同样在在所在文件夹按住 CTRL右键呼出 cmd 运行以下代码初始化数据库。
docker compose exec chatollama npx prisma migrate dev至此已经完成代码拉取。 浏览器输入 localhost: 3000 端口。就可以看到程序正常运行。
修改 ollama 窗口地址
由于 ChatOllama 在 Docker 容器内运行如果您的 Ollama 服务器在本地以默认端口运行请在设置中将 Ollama 服务器设置为 http://host.docker.internal:11434。
本地知识库搭建准备
使用知识库时我们需要一个有效的嵌入模型。它可以是 Ollama 下载的模型之一也可以是从第三方服务提供商例如 OpenAI下载的模型之一。
可以在ollama下载模型以进行嵌入。 nomic-embed-text
可以在模型页面 http://localhost:3000/models 上执行此操作如果您使用的是 Docker则可以通过以下 CLI 执行此操作。
# In the folder of docker-compose.yaml$ docker compose exec ollama ollama pull nomic-embed-text:latest当前实现的效果
该应用为开源程序技术路线 ollamaJavaScriptNuxt 3RAGLangChainRedischromadb RAG Retrieval-Augmented Generation 检索增强生成 是一种结合检索与生成技术的自然语言处理NLP架构。 Nuxt 3 是一个基于 Vue. Js 框架的静态网站生成器和应用框架。 基于 LangChain 高级 RAG 技术的本地知识库。它采用了 Chroma 作为向量存储Redis 作为文档存储
推荐使用 Nomic-embed-text: latest 模型实现 目前实现的功能
查询及下载 ollama 内模型调用本地开源大预言模型建立本地知识库进行 RAG 检索通过 api key 调用 chatgpt 等模型
我是纯新手只是做好物分享有什么不对的地方请指正。