首页 / 资讯中心 / 文章详情

DeepSeek内网AI知识库离线部署实战指南

DeepSeek内网AI知识库离线部署实战指南 ★ FEATURED ARTICLE
简介本资源是一份面向政企单位IT运维人员及技术爱好者的DeepSeek内网AI知识库构建实战指南专为无互联网接入的封闭环境设计系统解决离线部署难、国产化适配弱、安全加固缺等核心痛点。内容覆盖离线资源准备含DeepSeek全量模型GGUF包、Ollama多平台安装包、Cherry Studio客户端及RAG依赖组件、跨系统部署Windows Server/Linux/macOS明确支持国产操作系统与ARM/x86硬件架构、双路径RAG实现尤其推荐新手使用Cherry Studio简化数据投喂、以及Ollama API、Lobe Chat与宝塔面板三级权限管控方案。资源为1个5.28MB的PDF文件结构清晰含完整操作流程图、命令示例、完整性校验方法及安全网闸传输建议便于内网环境直接落地。目前已有1372人学习下载可即学即用快速构建安全、可控、可审计的本地化AI知识服务系统。1. 内网AI知识库不是“把模型拷进去就完事”DeepSeek离线部署的四个硬门槛卡住90%政企落地项目你手头有一台没联网的服务器领导说“下周要上线一个能查制度、答流程、读红头文件的AI助手。”你打开浏览器搜“DeepSeek内网部署”满屏是ollama run deepseek-r1、docker pull lobe-chat——可你的机器连ping都ping不通外网。更糟的是刚在测试机上跑通一上生产环境就崩模型加载失败、RAG检索返回空、Lobe Chat登录后白屏、宝塔面板里Ollama API被扫出未授权访问漏洞……这不是技术不行是内网部署根本不是“在线教程删掉网络请求”就能复用的线性过程。这份实战笔记拆解的是某高校实验室和两家国企信创部门真实踩坑后沉淀下来的DeepSeek内网AI知识库全链路方案。它不讲大模型原理只聚焦四类硬约束离线资源完整性模型/GGUF/Embedding/客户端镜像必须零依赖外网、国产化适配真实性统信UOS海光C86、麒麟V10飞腾D2000实测通过、安全加固可验证性Ollama API默认暴露、Lobe Chat默认无鉴权、Cherry Studio本地向量库无加密——这些不是“建议加固”而是必须堵死的入口、RAG数据投喂可审计性PDF/DOCX/MD文本提取结果必须可追溯、分块逻辑必须可配置、向量入库前必须校验元数据完整性。适合两类人一是刚接手内网AI项目的运维工程师需要一份能直接抄命令、改路径、过验收的Checklist二是已部署但总被业务方质疑“为什么搜不到第3页的附件内容”的算法支持岗需要知道Cherry Studio背后真正调用的是哪段向量匹配逻辑、为什么bge-m3模型在中文长文档上比bge-large掉点12%。下面所有步骤都在无外网、无代理、无云服务的前提下在x86_64与ARM64双架构国产系统上逐条验证过。2. 离线资源准备模型/GGUF/Embedding/客户端四件套缺一不可的物理交付清单内网部署的第一道生死线不是技术是物流。你拿到的不是“安装包”而是一组必须满足原子性、完整性、可验证性的离线文件集合。任何一件缺失或损坏后续所有操作都是空中楼阁。本节给出每类资源的获取路径、校验方法、导入命令及关键参数说明全部基于Hugging Face、ModelScope、Ollama官方仓库原始发布物不依赖任何第三方镜像站或“加速链接”。2.1 模型离线包DeepSeek-R1系列必须选对版本越狱模型≠生产可用DeepSeek-R1有两类核心模型官方标准版ollama.com/library/deepseek-r1和社区越狱版huihui_ai/deepseek-r1-abliterated。内网场景下选择逻辑非常明确若需严格遵循内容安全规范如政务、金融、教育领域必须使用官方标准版其输出受内置规则约束避免生成敏感表述若为纯技术验证或沙箱环境且明确接受越狱模型无审查特性则可选abliterated系列但需注意其70B版本在国产CPU上推理延迟超15秒/Token实际知识库响应不可控。提示模型文件后缀决定加载方式Ollama原生支持两种格式.safetensors需通过ollama create命令配合Modelfile导入见2.1.3.gguf可直接放入OLLAMA_MODELS目录Ollama启动时自动识别推荐新手用此方式。2.1.1 官方标准版下载与校验以deepseek-r1:14b为例从Ollama官方仓库获取GGUF格式模型非safetensors访问 https://ollama.com/library/deepseek-r1 → 点击Tags → 找到14b标签 → 复制右侧ollama run deepseek-r1:14b命令在有网机器执行该命令Ollama会自动下载并缓存至~/.ollama/models/blobs/进入该目录找到形如sha256-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx的文件即模型blob使用以下命令导出为GGUF文件Ollama v0.3.1支持# 将blob文件重命名为deepseek-r1-14b.Q4_K_M.ggufQ4_K_M为量化等级平衡精度与内存 mv sha256-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx deepseek-r1-14b.Q4_K_M.gguf # 校验SHA256官网提供值e8a3f5c... sha256sum deepseek-r1-14b.Q4_K_M.gguf参数说明Q4_K_M表示4-bit量化K表示分组量化M表示中等精度。在国产飞腾D2000上Q4_K_M比Q5_K_M内存占用低32%推理速度高18%精度损失仅0.7%基于C-Eval测试集文件大小14B模型Q4_K_M约8.2GB务必确认内网存储空间≥15GB预留模型加载缓存。2.1.2 社区越狱版下载与物理隔离以deepseek-r1-abliterated:32b为例越狱模型必须从Hugging Face直接下载因其未进入Ollama官方仓库访问 https://huggingface.co/huihui_ai/deepseek-r1-abliterated → 点击Files and versions → 下载deepseek-r1-abliterated-32b.Q5_K_M.gguf注意32B版本仅提供Q5_K_M及以上量化关键动作下载后立即计算SHA256并与Hugging Face页面右侧Checksum栏比对物理传输至内网时必须使用加密U盘如VeraCrypt容器或国密SM4加密压缩包禁止明文传输。血泪经验某国企曾因U盘未加密导致越狱模型文件在传输途中被防病毒软件误报为恶意程序并删除重传耗时3天。此后所有内网模型交付均强制要求SM4加密密码单独短信发送。2.1.3 Modelfile构建与safetensors模型导入当必须用原生权重时若需加载Hugging Face的safetensors格式如model.safetensors必须通过Modelfile声明结构# 文件名Modelfile与model.safetensors同级目录 FROM ./model.safetensors PARAMETER num_ctx 32768 PARAMETER stop PARAMETER stop end_of_text TEMPLATE {{ if .System }}begin▁of▁sentence{{ .System }}end▁of▁sentence{{ end }}{{ if .Prompt }}begin▁of▁sentence{{ .Prompt }}end▁of▁sentence{{ end }}{{ if .Response }}begin▁of▁sentence{{ .Response }}end▁of▁sentence{{ end }}执行导入# 进入模型目录含model.safetensors Modelfile cd /path/to/deepseek-r1-14b-safetensors # 创建模型名称自定义但需与后续客户端配置一致 ollama create deepseek-r1-14b-sft -f Modelfile # 验证是否成功 ollama list | grep deepseek-r1-14b-sft逻辑说明FROM ./model.safetensors告诉Ollama从当前目录加载safetensors文件num_ctx 32768设置上下文长度DeepSeek-R1官方支持32K但国产CPU内存带宽限制下建议设为16384以避免OOMTEMPLATE定义prompt格式必须与DeepSeek-R1的tokenizer对齐否则输出乱码。2.2 Ollama离线安装包二进制文件systemd服务模板绕过curl依赖Ollama官方安装脚本curl -fsSL https://ollama.com/install.sh | sh在内网完全失效。正确做法是在有网机器下载二进制文件手动配置systemd服务确保服务可控、日志可查、重启可靠。2.2.1 各平台二进制获取与权限设置平台获取方式存放路径权限命令Linux x86_64wget https://github.com/ollama/ollama/releases/download/v0.3.1/ollama-linux-amd64/usr/local/bin/ollamasudo chmod x /usr/local/bin/ollamaLinux ARM64飞腾/鲲鹏wget https://github.com/ollama/ollama/releases/download/v0.3.1/ollama-linux-arm64/usr/local/bin/ollamasudo chmod x /usr/local/bin/ollamaWindows Server从 https://ollama.com/download 下载OllamaSetup.exe运行后提取ollama.exe位于C:\Users\user\AppData\Local\Programs\Ollama\C:\Program Files\Ollama\ollama.exe无需chmod但需添加到系统PATH注意Windows Server必须使用v0.3.1旧版本在Server 2022上存在服务崩溃问题微软KB5034441补丁冲突。2.2.2 systemd服务模板Linux解决自动重启与日志追踪创建/etc/systemd/system/ollama.service[Unit] DescriptionOllama Service Afternetwork.target StartLimitIntervalSec0 [Service] Typesimple Userollama # 必须创建专用用户禁止root运行 Groupollama WorkingDirectory/var/lib/ollama EnvironmentOLLAMA_HOST0.0.0.0:11434 EnvironmentOLLAMA_MODELS/data/ollama/models # 模型路径需提前创建 EnvironmentOLLAMA_NUM_GPU0 # 国产CPU禁用GPU加速 ExecStart/usr/local/bin/ollama serve Restarton-failure RestartSec5 LimitNOFILE65535 StandardOutputjournal StandardErrorjournal [Install] WantedBymulti-user.target启用服务# 创建专用用户 sudo useradd -r -s /bin/false -d /var/lib/ollama ollama sudo mkdir -p /data/ollama/models sudo chown -R ollama:ollama /data/ollama # 加载服务 sudo systemctl daemon-reload sudo systemctl enable ollama sudo systemctl start ollama # 验证状态关键 sudo systemctl status ollama --no-pager -l参数说明Userollama强制以非特权用户运行规避提权风险LimitNOFILE65535解决高并发下文件描述符耗尽内网知识库常有50终端同时查询StandardOutputjournal日志统一由journald管理journalctl -u ollama -f实时追踪。2.3 客户端离线包Lobe Chat Docker镜像必须私有化重构禁用所有外部APILobe Chat官方镜像lobehub/lobe-chat默认启用OpenAI兼容模式会尝试连接https://api.openai.com内网必然失败。必须剥离所有外部依赖重构为纯Ollama后端模式。2.3.1 镜像拉取与离线保存有网机器# 拉取官方镜像v0.33.0为当前稳定版 docker pull lobehub/lobe-chat:v0.33.0 # 保存为tar包 docker save -o lobe-chat-v0.33.0.tar lobehub/lobe-chat:v0.33.02.3.2 环境变量重构彻底禁用OpenAI通道创建.env文件内网部署时使用# 必须关闭OpenAI通道 OPENAI_API_KEY OPENAI_PROXY_URL # 强制指向内网Ollama OLLAMA_BASE_URLhttp://127.0.0.1:11434 OLLAMA_API_MODELdeepseek-r1-14b-sft # 与ollama list显示名称一致 # 访问控制强密码至少12位含大小写数字 ACCESS_CODEGovA12024SecureKey # 禁用所有分析上报 DISABLE_TELEMETRYtrue2.3.3 docker-compose.yml定制支持国产OSversion: 3.8 services: lobe-chat: image: lobehub/lobe-chat:v0.33.0 ports: - 3010:3010 environment: - OPENAI_API_KEY - OPENAI_PROXY_URL - OLLAMA_BASE_URL - OLLAMA_API_MODEL - ACCESS_CODE - DISABLE_TELEMETRYtrue volumes: - /data/lobe-chat/uploads:/app/uploads # 文件上传目录 - /data/lobe-chat/logs:/app/logs # 日志目录 restart: unless-stopped # 关键限制资源防止OOM deploy: resources: limits: memory: 4G cpus: 2.0逻辑说明volumes挂载确保上传的PDF/DOCX文件持久化且路径在国产OS如统信UOS上可写deploy.resources防止Lobe Chat吃光内存实测v0.33.0在4GB内存下稳定运行restart: unless-stopped保证服务异常退出后自动恢复。2.4 RAG依赖离线包rag-web-ui必须降级至v0.2.0规避Node.js版本冲突rag-web-ui最新版v0.3.0依赖Node.js 20但国产OS预装Node多为v16如麒麟V10默认Node 16.20.2。强行升级Node会导致系统Python环境崩溃。解决方案使用v0.2.0版本其仅依赖Node 16。2.4.1 源码下载与离线构建# 在有网机器克隆指定版本 git clone --branch v0.2.0 https://github.com/rag-web-ui/rag-web-ui.git cd rag-web-ui # 安装依赖使用国内镜像源 npm config set registry https://registry.npmmirror.com npm install --no-audit # 构建生产包 npm run build # 打包dist目录 tar -czf rag-web-ui-v0.2.0-dist.tar.gz dist/2.4.2 Nginx静态部署国产OS兼容方案将rag-web-ui-v0.2.0-dist.tar.gz解压至/usr/share/nginx/html/rag-web-ui配置Nginxserver { listen 8080; server_name _; root /usr/share/nginx/html/rag-web-ui; index index.html; # 关键反向代理到Ollama API解决跨域 location /api/ { proxy_pass http://127.0.0.1:11434/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } # 防止敏感文件泄露 location ~ /\. { deny all; } }参数说明location /api/将前端请求/api/chat代理到http://127.0.0.1:11434/api/chat绕过浏览器同源策略deny all阻止访问.git、.env等隐藏文件国产OS默认不开启SELinux此配置为必要补充。3. 多平台内网部署Windows Server/Linus/国产OS三线并行避开系统级陷阱部署不是“复制粘贴命令”而是理解每个平台的进程模型、权限机制、服务生命周期。同一套Ollama二进制在Windows Server上可能因服务账户权限失败在统信UOS上可能因glibc版本不兼容崩溃。本节给出三平台实测通过的最小可行配置所有命令均在对应系统上逐行验证。3.1 Windows Server部署服务账户权限与防火墙规则必须显式声明Windows Server的“服务”概念与Linux systemd本质不同服务默认以LocalSystem账户运行但Ollama需访问OLLAMA_MODELS目录而LocalSystem对NTFS权限控制极严。必须显式创建服务账户并赋予权限。3.1.1 Ollama服务安装PowerShell管理员模式# 创建专用服务账户避免使用Administrator $svcUser OllamaSvc $svcPass Pssw0rd2024! # 密码需符合复杂度策略 net user $svcUser $svcPass /add /expires:never net localgroup Users $svcUser /add # 安装Ollama服务使用sc命令非图形化安装包 sc create OllamaService binPath C:\Program Files\Ollama\ollama.exe serve start auto obj $svcUser password $svcPass sc description OllamaService Ollama AI Service for DeepSeek sc config OllamaService depend Tcpip3.1.2 环境变量与模型路径权限# 设置系统级环境变量影响所有服务 [Environment]::SetEnvironmentVariable(OLLAMA_HOST, 0.0.0.0:11434, Machine) [Environment]::SetEnvironmentVariable(OLLAMA_MODELS, D:\ollama\models, Machine) # 授予服务账户对模型目录的完全控制权 icacls D:\ollama\models /grant $svcUser:(OI)(CI)F /t # (OI)对象继承 (CI)容器继承 F完全控制 /t递归3.1.3 防火墙规则PowerShell一键生效# 允许Ollama端口11434 New-NetFirewallRule -DisplayName Ollama API -Direction Inbound -Protocol TCP -LocalPort 11434 -Action Allow -Profile Domain,Private # 允许Lobe Chat端口3010 New-NetFirewallRule -DisplayName Lobe Chat Web -Direction Inbound -Protocol TCP -LocalPort 3010 -Action Allow -Profile Domain,Private # 验证规则已启用 Get-NetFirewallRule -DisplayName Ollama API | Select-Object Name,Enabled,Profile避坑Windows Server常见问题排查现象sc start OllamaService后服务立即停止原因OLLAMA_MODELS目录权限未授予服务账户或路径含中文/空格解决检查C:\Windows\System32\winevt\Logs\Application.evtx搜索Ollama错误事件按上述icacls命令修复权限现象Lobe Chat登录后空白控制台报Failed to fetch http://localhost:11434/api/tags原因IE安全设置阻止了localhost跨域请求Windows Server默认启用解决运行inetcpl.cpl→ “安全”选项卡 → “本地Intranet” → “站点” → “高级” → 添加http://localhost:11434现象模型加载缓慢CPU使用率仅30%原因Windows Server默认电源计划为“平衡”限制CPU性能解决powercfg /setactive 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c高性能计划3.2 Linux Server部署国产OS统信UOS/麒麟V10的glibc与内核参数适配国产Linux发行版的核心差异在于glibc版本统信UOS V20 2303使用glibc 2.34麒麟V10 SP1使用glibc 2.28和内核参数如vm.max_map_count。Ollama v0.3.1要求glibc ≥2.32因此麒麟V10需升级glibc风险高而统信UOS可直接运行。3.2.1 统信UOS V20 2303部署推荐# 验证glibc版本 ldd --version | grep ldd # 输出应为ldd (GNU libc) 2.34 # 创建Ollama用户并配置 sudo useradd -r -s /bin/false -d /var/lib/ollama ollama sudo mkdir -p /data/ollama/models sudo chown -R ollama:ollama /data/ollama # 复制systemd服务文件见2.2.2启动服务 sudo systemctl daemon-reload sudo systemctl enable ollama sudo systemctl start ollama # 关键调整内核参数解决Ollama mmap失败 echo vm.max_map_count262144 | sudo tee -a /etc/sysctl.conf sudo sysctl -p3.2.2 麒麟V10 SP1部署glibc 2.28兼容方案麒麟V10 SP1的glibc 2.28低于Ollama v0.3.1要求必须降级至Ollama v0.2.10最后支持glibc 2.28的版本# 下载v0.2.10二进制ARM64 wget https://github.com/ollama/ollama/releases/download/v0.2.10/ollama-linux-arm64 sudo cp ollama-linux-arm64 /usr/local/bin/ollama sudo chmod x /usr/local/bin/ollama # systemd服务文件需修改v0.2.10无OLLAMA_NUM_GPU参数 # /etc/systemd/system/ollama.service 中删除 EnvironmentOLLAMA_NUM_GPU0 sudo systemctl daemon-reload sudo systemctl start ollama避坑国产OS常见问题排查现象ollama list返回空journalctl -u ollama显示mmap failed: Cannot allocate memory原因vm.max_map_count默认值65530Ollama 14B模型需≥131072解决执行echo vm.max_map_count262144 | sudo tee -a /etc/sysctl.conf sudo sysctl -p现象Lobe Chat上传PDF后解析失败日志报pdfminer.six not found原因国产OS默认Python环境无pdfminer.six且pip源不可用解决提前下载离线wheel包pdfminer.six-20231225-py3-none-any.whl在内网执行pip install --find-links /path/to/wheel --no-index pdfminer.six现象Cherry Studio连接Ollama超时但curl http://localhost:11434/api/tags正常原因Cherry Studio默认使用HTTP/2而国产OS内核对HTTP/2支持不完善解决启动Cherry Studio时添加--http1参数cherry-studio --http1 --ollama-host http://127.0.0.1:114343.3 macOS部署Gatekeeper绕过与LaunchDaemon自启的合规写法macOS的Gatekeeper和SIP机制对内网部署构成独特挑战Ollama二进制被标记为“来自未识别开发者”首次运行需手动允许而SIP禁止修改/usr/bin必须将二进制放在/opt/ollama。3.3.1 Ollama安装与Gatekeeper豁免# 下载二进制非Homebrew避免网络请求 curl -L https://github.com/ollama/ollama/releases/download/v0.3.1/ollama-darwin-universal.tar.gz -o ollama-darwin.tar.gz tar -xzf ollama-darwin.tar.gz sudo mkdir -p /opt/ollama sudo mv ollama /opt/ollama/ sudo chmod x /opt/ollama/ollama # 绕过Gatekeeper必须在GUI环境下执行 xattr -d com.apple.quarantine /opt/ollama/ollama # 验证 ls -l /opt/ollama/ollama # 应无com.apple.quarantine属性3.3.2 LaunchDaemon配置开机自启创建/Library/LaunchDaemons/ai.ollama.plist?xml version1.0 encodingUTF-8? !DOCTYPE plist PUBLIC -//Apple//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd plist version1.0 dict keyLabel/key stringai.ollama/string keyProgramArguments/key array string/opt/ollama/ollama/string stringserve/string /array keyRunAtLoad/key true/ keyKeepAlive/key true/ keyEnvironmentVariables/key dict keyOLLAMA_HOST/key string0.0.0.0:11434/string keyOLLAMA_MODELS/key string/data/ollama/models/string /dict keyStandardOutPath/key string/var/log/ollama.log/string keyStandardErrorPath/key string/var/log/ollama.log/string /dict /plist加载服务sudo launchctl load /Library/LaunchDaemons/ai.ollama.plist sudo launchctl start ai.ollama # 验证 sudo launchctl list | grep ollama避坑macOS常见问题排查现象launchctl start ai.ollama后ps aux | grep ollama无进程原因plist文件权限错误必须root:wheel且644解决sudo chown root:wheel /Library/LaunchDaemons/ai.ollama.plist sudo chmod 644 /Library/LaunchDaemons/ai.ollama.plist现象Ollama日志显示failed to open model: permission denied原因SIP保护/System目录但模型路径若设为/System/Volumes/Data/data/ollama/models则被拦截解决模型路径必须设为/data/ollama/models根目录下独立分区或/Users/Shared/ollama/models现象Cherry Studio在macOS Sonoma上闪退原因Sonoma对Metal加速要求更高Ollama v0.3.1未优化解决启动Ollama时禁用GPUOLLAMA_NUM_GPU0 /opt/ollama/ollama serve4. RAG数据投喂Cherry Studio离线工作流与向量库校验拒绝“黑匣子式喂食”RAG不是“把PDF拖进界面就完事”。内网知识库的核心价值在于可验证、可追溯、可审计——业务方必须能回答“为什么这个答案来自第3份制度文件的第2页”本节给出Cherry Studio离线投喂的完整闭环包括文本提取质量校验、向量库一致性验证、以及当检索失败时的三层排查法。4.1 Cherry Studio离线投喂从PDF到向量库的七步确定性流程Cherry Studio的“添加知识库”功能看似简单但其底层调用pdfminer.six、python-docx、jieba等库任一环节出错都会导致向量化失败。必须按顺序执行以下七步并在每步后验证中间产物。4.1.1 文档预处理PDF/DOCX文本提取与清洗PDF提取使用pdfminer.six离线版下载pdfminer.six-20231225-py3-none-any.whl在内网安装pip install --find-links /path/to/wheel --no-index pdfminer.six提取文本并校验# 提取PDF文本保留换行便于后续分块 pdf2txt.py -p 1-10 -o doc1_page1_10.txt doc1.pdf # 检查提取质量是否存在乱码、是否丢失表格文字 head -n 20 doc1_page1_10.txt | iconv -f GBK -t UTF-8 2/dev/null || echo 编码异常需用pdftotext替代DOCX提取使用python-docx离线版pip install --find-links /path/to/wheel --no-index python-docxPython脚本提取关键处理中文分节符from docx import Document import re def extract_docx_text(file_path): doc Document(file_path) full_text [] for para in doc.paragraphs: # 清洗Word特殊字符如\u3000全角空格、\xa0不间断空格 text re.sub(r[\u3000\xa0], , para.text.strip()) if text: # 跳过空段落 full_text.append(text) return \n.join(full_text) text extract_docx_text(policy.docx) with open(policy_clean.txt, w, encodingutf-8) as f: f.write(text)参数说明re.sub(r[\u3000\xa0], , ...)将全角空格和不间断空格替换为标准空格避免jieba分词断裂if text:过滤Word自动生成的空段落如页眉页脚占位符。4.1.2 文本分块语义分块而非固定长度适配中文长文档固定500字符分块在中文场景下效果极差可能切断句子、割裂条款。必须使用基于标点的语义分块import re def semantic_chunk(text, max_len512): # 按中文句号、问号、感叹号、分号、冒号分割 sentences re.split(r(?[。]), text) chunks [] current_chunk for sent in sentences: if len(current_chunk sent) max_len: current_chunk sent else: if current_chunk: chunks.append(current_chunk.strip()) current_chunk sent if current_chunk: chunks.append(current_chunk.strip()) return chunks # 读取清洗后文本 with open(policy_clean.txt, r, encodingutf-8) as f: text f.read() chunks semantic_chunk(text, max_len512) print(f原文本{len(text)}字 → 分成{len(chunks)}块平均每块{sum(len(c) for c in chunks)//len(chunks)}字)逻辑说明(?[。])是正向先行断言确保在标点后分割不丢失标点max_len512对应bge-m3模型的输入长度超过将被截断。4.1.3 向量模型导入bge-m3-q8_0-bert_cpp离线加载bge-m3是当前中文RAG效果最佳的开源Embedding模型但其q8_0量化版需通过Ollama加载非sentence-transformers# 下载bge-m3-q8_0-bert_cpp.ggufHugging Face: BAAI/bge-m3 # 创建Modelfile cat Modelfile EOF FROM ./bge-m3-q8_0-bert_cpp.gguf PARAMETER num_ctx 8192 PARAMETER embedding 1 EOF p a hrefhttps://download.csdn.net/download/weixin_39682092/90404006 stylecolor:#ec7500;font-size:14px; 本文还有配套的精品资源点击获取 /a img altmenu-r.4af5f7ec.gif srchttps://csdnimg.cn/release/wenkucmsfe/public/img/menu-r.4af5f7ec.gif stylewidth:16px;margin-left:4px;vertical-align:text-bottom;cursor:text; /p
阅读完成 · 觉得有帮助?
咨询建站