教你如何使用 AnythingLLM 搭建一个本地带知识库的 AI 聊天大模型

AI
本文将介绍如何通过 AnythingLLM 在本地计算机上搭建一个带有本地知识库的 AI 聊天大模型。

image.png

AnythingLLM 简介

官网地址:https://anythingllm.com

AnythingLLM 是一个全栈 AI 应用程序,由 Mintplex Labs Inc. 开发,于 2022 年夏季通过 Y Combinator 孵化。

AnythingLLM 特点

  • 支持多种模型:能与各种开源及商业大语言模型集成,如与 llama.cpp 兼容的开源模型、OpenAI、Azure OpenAI、Anthropic、Google Gemini Pro、Hugging Face(聊天模型)等,还支持多种嵌入模型和转录模型,用户可根据需求选择。

  • 文档处理能力强:可无缝解析 PDF、DOCX 等 20 多种格式的文档,自动生成向量嵌入以构建智能知识库,并且能将任何文档、资源(如网址链接、音频、视频)输入大语言模型,实现与大模型的互动。

  • 独特的工作区功能:将文档划分为工作区,工作区类似线程,增加了文档的容器化。工作区之间相互独立,内容不会干扰或污染,可共享文档,能保持每个工作区的上下文清晰。

  • 两种对话模式:提供 “聊天” 和 “查询” 模式。“聊天” 模式会保留之前的问题和修正,“查询” 模式则是针对文档的简单问答,在没有找到文档上下文时可返回自定义拒绝响应。

  • AI 代理功能:工作区内有 AI 代理,可执行浏览网页、运行代码等任务,扩展了应用场景至自动化任务处理。

  • 注重隐私:默认本地化数据存储架构,确保敏感信息全程自主可控零泄露风险。作为开源应用程序,用户可在本地机器上运行,保障数据隐私。

  • 高度可定制:具有 “自带 LLM” 模型,用户可自定义 LLM 模型,还有高效的成本节约措施,比其他文档聊天机器人解决方案节省 90% 的成本,且提供完整的开发者 API,便于进行自定义集成。

部署方式

支持多种部署方式,可在本地运行,也可远程托管,能部署在 AWS、DigitalOcean、Render.com、GCP 等云平台,还可通过 Docker 在任何机器上部署,满足个人到企业级的不同应用需求。

适用场景

适用于多种场景,如内容创作、数据分析、知识管理等。用户无需具备专业的开发知识,通过其简洁的 UI 即可轻松利用大语言模型的强大功能,构建个性化的聊天机器人系统,实现智能文档交互和自动化任务处理等。

安装 AnythingLLM

访问 https://anythingllm.com/desktop 地址,如下图:

image.png

根据您的系统选择合适的版本,笔者这里选择 Windows 版本的安装包 AnythingLLMDesktop.exe。然后,双击安装包,开始安装,如下:

(1)选择“仅为我安装”或者“为所有人安装”,点击“下一步”按钮,如下图:

image.png

(2)选择目标文件夹,选择你安装的位置,然后点击“安装”按钮开始安装,如下图:

image.png

(3)安装完成后,点击“完成”按钮,完成安装,如下图:

image.png

运行 AnythingLLM

双击安装后的 AnythingLLM,启动成功后,如下图:

image.png

点击“开始”按钮,进入到 LLM 偏好设置页面,选择 Ollama,模型选择我们已经准备好的模型“llama3.2:1b”,如下图:

image.png

继续接着一步一步的设置,如填写自己邮箱、工作空间名称等等,创建成功后如下图:

image.png

创建自己的知识库

(1)使用 Ollama 启动 llama3.2:1b 大模型(点击查看 教你如何使用 Ollama 在本机运行大模型),如下图:

image.png

(2)准备一份个人简历数据(存放在 data.txt 文件中),如下:

基本信息
姓名: 张麻子
性别: 男
出生日期: 1996年6月20日
籍贯: 四川成都
联系方式: 15956773403
求职意向: AI开发工程师 / Java开发工程师

专业技能
AI 编程:熟练掌握 TensorFlow、PyTorch 等深度学习框架,精通 Python 语言,能够独立完成数据预处理、模型搭建与训练工作,曾参与基于 AI 的图像识别、自然语言处理项目开发,具备丰富的算法优化与调参经验。
Java 编程:熟悉 Java SE、Java EE 核心技术,熟练使用 Spring Boot、MyBatis 等主流框架进行企业级应用开发,掌握 MySQL 数据库设计与操作,擅长编写高效、可维护的代码,具备解决复杂业务逻辑问题的能力。

兴趣爱好
热爱体育运动,尤其擅长踢足球,在团队比赛中注重战术配合与团队协作;也热衷于打羽毛球,通过日常锻炼保持良好的身体素质和敏捷的思维能力。
这份简历突出了你的专业优势和个人特色。若你有具体的工作经历、项目成果或想调整求职方向,可随时告诉我,我来完善。

(3)打开 AnythingLLM 软件,点击左下角的“Open settings”按钮,打开设置页面,如下图:

image.png

(4)在配置页面左边选择“大语言模型(LLM)”,设置 LLM 提供商为 Ollama,模型为 llama3.2:1b,Ollama 基础地址为 http://127.0.0.1:11434(注意,请提前开启 Ollama 服务),如下图:

image.png

继续点击“嵌入器”,选择使用“Ollama”,如下图:

image.png

(5)点击左上角的 image.png 图标返回到主页,点击“嵌入文档”快捷按钮,如下图:

image.png

(6)打开的嵌入文档页面如下图,左边是我们选择到本地文档,右边是嵌入到 my_workspace 工作空间的文档:

image.png

(7)将上面准备的个人简历数据 data.txt 文件上传上去,如下图:

image.png

(8)点击“保存并嵌入”按钮,开始嵌入文档:

image.png

注意,点击“保存并嵌入”按钮后,需要等待一段时间。

(9)文档嵌入成功后,如下图:

image.png

(10)开始聊天,发送“张麻子是谁?”消息给大模型,此时大模型将根据我们提供的 data.txt 中的内容进行回答,如下图:

image.png

其中,

image.png

表示本次问答召回了 data.txt 文件中到内容。

到这里,一个简单的本地拥有知识库到大模型就搞定了。

注意,如果要上述运行顺畅,需要硬件配置够强,笔者机器是 CPU Intel(R) Core(TM) Ultra 5 125H / 内存32GB / GPU 18GB 集成显卡。

 

生活总会给你答案的,但不会马上把一切都告诉你。只要你肯等一等,生活的美好,总在你不经意的时候,盛装莅临。
0 不喜欢
说说我的看法 -
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
其他应用
公众号