onlyai可离线运行,需替换为ollama托管模型、部署qwen1.5-0.5b代理层、嵌入all-minilm-l6-v2向量化、冻结前端直连fastapi后端,或启用cpu-only pytorch模式。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

如果您希望在无网络连接或隐私敏感环境下运行OnlyAI,但发现其默认依赖在线API或云端服务,则可能是由于未完成本地模型加载与服务绑定。以下是实现OnlyAI离线运行的多种可行路径:
一、替换为Ollama托管的轻量级替代模型
Ollama支持将Hugging Face上兼容GGUF格式的轻量模型(如Phi-4-mini-reasoning、all-MiniLM-L6-v2)封装为本地可调用服务,无需联网即可响应OnlyAI前端请求。该方法规避了原生OnlyAI对远程推理端点的硬编码依赖。
1、确认系统已安装Ollama并运行服务:执行ollama --version验证版本不低于0.3.12,且ollama list返回空列表或已有模型。
2、从Hugging Face下载目标模型权重文件(如phi-4-mini-reasoning.Q4_K_M.gguf),保存至本地路径/models/phi-4-mini-reasoning/。
3、在该目录下创建Modelfile,内容为:FROM ./phi-4-mini-reasoning.Q4_K_M.ggufPARAMETER num_ctx 2048PARAMETER stop "###"
4、执行ollama create onlyai-offline -f ./Modelfile构建自定义模型。
5、启动服务:ollama run onlyai-offline,此时终端进入交互式本地推理会话。
二、使用Qwen1.5-0.5B构建All-in-One离线代理层
通过部署Qwen1.5-0.5B作为中间代理模型,接收OnlyAI原始输入,经Prompt工程转换后执行情感分析或对话生成,并将结构化结果回传。该方案仅需单个0.5B参数模型,完全脱离GPU与外部API。
1、新建Python虚拟环境:conda create -n onlyai-local python=3.10,激活后安装依赖:pip install torch==2.0.1 transformers==4.30.2 accelerate。
2、下载Qwen1.5-0.5B模型权重包(qwen1.5-0.5b),解压至./models/qwen1.5-0.5b目录。
3、编写proxy_server.py,使用transformers.pipeline加载模型,监听本地http://127.0.0.1:8000/onlyai/invoke端点。
4、修改OnlyAI客户端配置,将所有https://api.onlyai.com/v1/请求重定向至http://127.0.0.1:8000/onlyai/invoke。
5、运行python proxy_server.py,启动纯CPU离线代理服务。
三、嵌入all-MiniLM-L6-v2实现本地语义向量化
若OnlyAI核心功能依赖文本相似度匹配或检索增强(RAG),可直接集成all-MiniLM-L6-v2作为本地embedding引擎。该模型体积仅22.7MB,支持中英文混合输入,单句编码耗时低于35ms,全程离线运行。
1、执行ollama pull mxbai-embed-large或手动下载GGUF版all-MiniLM-L6-v2.Q6_K.gguf。
2、创建Embedding服务脚本embed_service.py,调用sentence-transformers库加载模型,暴露/v1/embeddings接口。
3、设置OnlyAI配置文件中的EMBEDDING_PROVIDER为local,并指定EMBEDDING_ENDPOINT=http://127.0.0.1:8001/v1/embeddings。
4、运行python embed_service.py,启动本地向量服务。
5、验证:发送POST请求至http://127.0.0.1:8001/v1/embeddings,携带{"input": "测试文本"},确认返回data[0].embedding为384维浮点数组。
四、冻结OnlyAI Web前端+本地FastAPI后端直连
剥离OnlyAI的云端JavaScript SDK,将其静态资源(HTML/CSS/JS)下载至本地./dist目录,再用FastAPI构建最小后端,直接调用本地模型API,彻底切断外网请求链路。
1、使用curl -k https://onlyai.com/static/app.js -o ./dist/app.js获取前端逻辑,搜索fetch(定位所有API调用点。
2、将所有fetch("https://api.onlyai.com/...替换为fetch("/api/...。
3、新建main.py,基于FastAPI定义/api/chat等路由,内部调用transformers.pipeline或Ollama requests.post("http://localhost:11434/api/chat")。
4、配置CORS中间件允许http://localhost:3000访问,启用静态文件服务指向./dist。
5、执行uvicorn main:app --host 0.0.0.0 --port 3000,浏览器访问http://localhost:3000即启用全离线OnlyAI。
五、启用CPU-only PyTorch + 内存优化模式
当OnlyAI底层调用PyTorch模型但报错“CUDA out of memory”或“no module named torch.cuda”,说明其尝试启用GPU失败。强制切换至CPU推理并开启内存压缩,可保障基础功能离线可用。
1、卸载GPU版本PyTorch:pip uninstall torch torchvision torchaudio。
2、安装CPU专用版本:pip install torch==2.0.1+cpu torchvision==0.15.2+cpu torchaudio==2.0.2+cpu -f https://download.pytorch.org/whl/torch_stable.html。
3、在OnlyAI启动前设置环境变量:export PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128与export TRANSFORMERS_MEMORY_EFFICIENT=true。
4、验证CUDA状态:python -c "import torch; print(torch.cuda.is_available())"应输出False。
5、启动OnlyAI主程序,观察日志中是否出现Using device: cpu及Memory-efficient attention enabled提示。










