目录
3. docker安装openwebui,拉去太慢可以使用手动安装
四、使用ollama + anythingllm构建类chatgpt本地问答机器人系
一、ollama是什么?
ollama是一个功能强大的开源框架,旨在简化在docker容器中部署和管理大型语言模型(llm)的过程。以下是关于ollama的详细介绍:
- 定义与功能:
- ollama是一个开源的大型语言模型服务工具,它帮助用户快速在本地运行大模型。
- 通过简单的安装指令,用户可以执行一条命令就在本地运行开源大型语言模型,如llama 2。
- ollama极大地简化了在docker容器内部署和管理llm的过程,使得用户能够快速地在本地运行大型语言模型。
- 特点与优势:
- 功能齐全:ollama将模型权重、配置和数据捆绑到一个包中,定义成modelfile。
- 优化设置与配置:它优化了设置和配置细节,包括gpu使用情况。
- 易用性:用户无需深入了解复杂的部署和管理流程,只需简单的安装和配置即可使用。
- 支持热加载:用户无需重新启动即可切换不同的模型。
- 支持的平台与模型:
- ollama支持在mac和linux平台上运行。
- 它支持运行多种开源大型语言模型,如llama 2。
- api与界面:
- ollama提供了类似openai的api接口和聊天界面,方便用户部署和使用最新版本的gpt模型。
- 安装与部署:
- ollama的安装过程被极大地简化,并提供了多种选择,包括docker镜像。
综上所述,ollama是一个为在本地运行大型语言模型而设计的强大、易用、功能齐全的开源框架。它通过优化设置和配置,简化了在docker容器中部署和管理llm的过程,使得用户能够快速、方便地在本地运行大型语言模型。
二、如何在mac上安装ollama
在mac上安装ollama的步骤如下,结合了参考文章中的信息,并进行了适当的总结和归纳:
1. 准备工作
- 确认系统兼容性:ollama支持在mac上运行,但请确保您的mac满足运行大型语言模型所需的最低系统要求。
- 检查存储空间:安装和运行ollama以及大型语言模型可能需要较大的磁盘空间。请确保您的mac有足够的存储空间。
2. 下载并安装ollama
- 访问ollama官网:前往ollama的官方网站(如:https://ollama.com/)下载适用于mac的安装包。
- 下载安装包:在官网找到适用于mac的下载链接,下载ollama的安装包。
- 安装ollama:双击下载的安装包,按照提示完成安装过程。
3. 运行ollama
- 打开终端:在mac上打开终端(terminal)。
- 运行命令:在终端中,输入相应的命令来启动和运行ollama。例如,使用
ollama pull llama3
命令来拉取并安装llama 3模型(请注意,这只是一个示例命令,具体命令可能因ollama的版本和您的需求而有所不同)。 - 下载llama2地址: llama2
- 下载命令:ollama run llama2:7b
4. 安装和配置大型语言模型
- 选择模型:根据您的需求选择合适的大型语言模型。ollama支持多种开源大型语言模型,如llama 2、llama 3等。
- 安装模型:使用ollama提供的命令来安装所选的模型。例如,使用
ollama pull llama3
命令来安装llama 3模型。 - 配置模型:根据模型的文档和说明,进行必要的配置和设置。这可能包括设置模型的参数、配置gpu使用情况等。
5. 使用ollama
- 启动服务:在成功安装和配置模型后,您可以使用ollama提供的命令或api来启动和运行模型服务。
- 访问和使用:通过ollama提供的web界面或api接口,您可以访问和使用已部署的大型语言模型进行各种任务,如文本生成、问答等。
- api调用
- 回答问题时cpu100%,mac m1 8g内存
请注意,以上步骤和命令可能因ollama的版本和您的具体需求而有所不同。建议您参考ollama的官方文档和社区资源,以获取最准确和最新的安装和使用指南。
三、安装open-webui
1. 准备工作
- 安装docker环境:确保你的系统上已经安装了docker desktop。你可以从docker官网下载并安装适合你操作系统的docker desktop版本。
- 配置docker以支持gpu(可选):如果你的本地有gpu,并且希望利用gpu加速大模型效果,你需要在docker desktop中配置gpu支持。这通常涉及到在docker desktop的设置中启用gpu支持,并安装相应的驱动程序和软件。
- 可参考文章:macbook m1安装docker详细教程_mac m1安装docker-csdn博客
2. open webui ⭐的主要特点
github - open-webui/open-webui: user-friendly webui for llms (formerly ollama webui)
-
🚀 轻松设置:使用 docker 或 kubernetes(kubectl、kustomize 或 helm)无缝安装,提供无忧体验,同时支持标记映像和标记映像。
:ollama
:cuda
-
🤝 ollama/openai api 集成:轻松集成兼容 openai 的 api,与 ollama 模型进行多功能对话。自定义 openai api url 以链接 lmstudio、groqcloud、mistral、openrouter 等。
-
🧩 pipelines、open webui 插件支持:使用 pipelines 插件框架将自定义逻辑和 python 库无缝集成到 open webui 中。启动您的 pipelines 实例,将 openai url 设置为 pipelines url,探索无限可能。示例包括函数调用、控制访问的用户速率限制、使用 langfuse 等工具进行使用情况监控、使用 libretranslate 提供多语言支持的实时翻译、有害消息过滤等等。
-
📱 响应式设计:在台式电脑、笔记本电脑和移动设备上享受无缝体验。
-
📱 适用于移动设备的渐进式 web 应用程序 (pwa):使用我们的 pwa 在您的移动设备上享受类似本机应用程序的体验,提供对 localhost 的离线访问和无缝的用户界面。
-
✒️🔢 完整的 markdown 和 latex 支持:通过全面的 markdown 和 latex 功能提升您的 llm 体验,以实现丰富的交互。
-
🛠️ 模型生成器:通过 web ui 轻松创建 ollama 模型。通过 open webui 社区集成,轻松创建和添加自定义角色/代理、自定义聊天元素和导入模型。
-
📚 本地 rag 集成:通过突破性的检索增强生成 (rag) 支持,深入了解聊天交互的未来。此功能将文档交互无缝集成到您的聊天体验中。您可以将文档直接加载到聊天中或将文件添加到文档库中,在查询之前使用命令轻松访问它们。
#
-
🔍 rag 的 web 搜索:使用 、 、 、 和 等提供程序执行 web 搜索,并将结果直接注入到聊天体验中。
searxng
google pse
brave search
serpstack
serper
-
🌐 web 浏览功能:使用后跟 url 的命令将网站无缝集成到您的聊天体验中。此功能允许您将 web 内容直接合并到您的对话中,从而增强交互的丰富性和深度。
#
-
🎨 图像生成集成:使用 automatic1111 api 或 comfyui(本地)和 openai 的 dall-e(外部)等选项无缝整合图像生成功能,通过动态视觉内容丰富您的聊天体验。
-
⚙️ 许多模型对话:毫不费力地同时与各种模型互动,利用它们的独特优势来获得最佳响应。通过并行利用各种模型来增强您的体验。
-
🔐 基于角色的访问控制 (rbac):确保使用受限权限进行安全访问;只有经过授权的个人才能访问您的 ollama,并且为管理员保留独家模型创建/拉取权限。
-
🌐🌍 多语言支持:通过我们的国际化 (i18n) 支持,以您的首选语言体验 open webui。加入我们,扩展我们支持的语言!我们正在积极寻找贡献者!
-
🌟 持续更新:我们致力于通过定期更新、修复和新功能来改进 open webui。
想了解更多关于open webui的功能吗?查看我们的 open webui 文档,了解全面概述!
3. docker安装openwebui
拉取open-webui镜像:使用docker命令从github container registry拉取open-webui的镜像。例如,你可以运行以下命令来拉取最新的open-webui镜像:
下载太慢,需要配置docker国内镜像仓库,参考这篇文章:
macos上配置docker国内镜像仓库地址_mac docker配置镜像源-csdn博客
如果163也很慢,建议配置阿里云镜像地址,需要登陆阿里云 不过配置发现更慢!手动下载了
最后只能用魔法解决了
4. 安装完成
4.1 本地登陆
登陆地址 http://localhost:3000/ 注册账号登陆
4.2 选择模型
4.3 聊天
4.4 配置文本嵌入模型
4.5 上传pdf文档
4.6 关联文档,回答问题
4. 配置本地大模型llama2-7b
- 下载llama2-7b模型:你需要从适当的来源(如hugging face的模型仓库)下载llama2-7b模型的文件。由于模型文件可能非常大,下载可能需要一些时间。确保你有足够的存储空间来存储这些文件。
- 配置open-webui以使用llama2-7b模型:open-webui允许你通过配置文件或环境变量来指定要使用的模型。你需要根据你的open-webui版本和配置方式,将llama2-7b模型的路径或位置配置到open-webui中。具体的配置方法可能因open-webui版本而异,请参考open-webui的官方文档或github仓库中的说明进行配置。
- 重启open-webui容器:在配置完open-webui以使用llama2-7b模型后,你需要重启open-webui容器以使配置生效。你可以使用docker命令来停止并重新启动容器,或者如果open-webui支持热重载配置,你也可以尝试重新加载配置而不必重启容器。
5. 验证配置
- 访问open-webui界面:在配置完成后,你可以通过浏览器访问本地的3000端口来访问open-webui的界面。在界面上,你应该能够看到已经配置好的llama2-7b模型,并可以开始使用它进行对话或其他任务。
- 测试llama2-7b模型:在open-webui界面中,你可以尝试与llama2-7b模型进行对话或执行其他任务来验证配置是否正确。如果一切正常,你应该能够看到llama2-7b模型对你的输入做出合理的响应。
四、使用ollama + anythingllm构建类chatgpt本地问答机器人系
学习目标
- 使用开源软件ollama+anythingllm构建本地类chatgpt问答机器人系统
- 熟悉和了解基于llm的本地rag知识库搭建原理和逻辑,替换符合国内的llm工具
- 学会安装、配置、使用问答系统,找出符合企业私有化客服(对内)的产品规划逻辑
- 对比和发现问题,寻找优劣点
当在mac上安装anythingllm时,以下是更详细的步骤,结合了参考文章中的信息:
1. 下载anythingllm
- 访问anythingllm的官方网站:download anythingllm for desktop(注意:链接可能随时间而变化,请以最新信息为准)。
- 在下载页面选择适用于macos的桌面版dmg文件,点击下载。
2. 安装anythingllm
- 下载完成后,找到下载的dmg文件,双击打开。
- 跟随安装向导的指示,完成anythingllm的安装过程。
- 安装完成后,打开anythingllm应用。初次启动可能需要一些时间进行初始化操作。
3. 配置anythingllm
3.1 步骤说明
3.2 选择llm、嵌入模型和向量数据库
- 在anythingllm应用中,根据需求选择或下载适当的大语言模型(llm)、嵌入模型和向量数据库。
- llm:anythingllm支持多种llm,包括但不限于openai的gpt系列、gemini、mistral等。
- 嵌入模型:可以选择内置的嵌入模型或下载其他模型,如openai、localai、ollama等提供的嵌入模型。
- 向量数据库:默认使用内置的lancedb,但也可以选择其他如chroma、milvus、pinecone等。
- llm:anythingllm支持多种llm,包括但不限于openai的gpt系列、gemini、mistral等。
3.3 设置环境变量(如果需要)
- 根据anythingllm的文档说明,如有需要,设置所需的环境变量,例如
ollama_models
。
3.4 权限管理(如果需要)
- 如果是企业级应用,可以设置多用户并进行权限管理,确保数据的安全性。
4. 构建知识库
- 在anythingllm中,通过“选择知识”按钮上传文档或给定知识文件链接(支持pdf、txt、docx等文档格式)。
- 将文档通过嵌入模型转化为向量,并保存到向量数据库中。这个过程可能需要一些时间,具体取决于文档的大小和系统的性能。
-
5. 开始使用
- 配置完成后,就可以在anythingllm中进行基于检索增强生成(rag)的聊天或问答了。
- 可以创建自己的工作区(workspace),设置不同的配置,并开始与llm进行交互。
6. 自定义集成(如果需要)
- 如果需要,可以使用anythingllm的开发者api进行自定义集成,以满足特定的业务需求。
7. 监控和反馈
- 利用anythingllm的遥测功能来监控应用的使用情况。
- 如果遇到问题或需要改进,可以通过创建issue或pr来提供反馈。
8. 注意事项
- 定期检查并更新anythingllm和相关的模型、嵌入模型、向量数据库,以获取最佳的性能和安全性。
- 注意保护个人隐私和知识产权,确保上传的文档内容合法合规。
9. 额外信息
- anythingllm是一个全栈应用程序,允许用户将任何文档、资源或内容转化为任何llm在聊天过程中可以用作参考的上下文。
- 该应用程序支持多种llm、嵌入器和向量数据库,并提供了多用户支持和权限管理功能。
- 通过anythingllm,用户可以在本地或云端搭建个性化的聊天机器人系统,无需复杂设置。
参考文章
ollama+open-webui,本地部署自己的大模型_ollama的webui如何部署-csdn博客
macbook m1安装docker详细教程_mac m1安装docker-csdn博客
macos上配置docker国内镜像仓库地址_mac docker配置镜像源-csdn博客
第九期: 使用ollama + anythingllm构建类chatgpt本地问答机器人系统 - 知乎 (zhihu.com)
发表评论