在人工智能领域,GPT(Generative Pre-trained Transformer)模型因其强大的文本生成能力而广受欢迎。但是,由于资源限制,个人用户可能难以直接运行和训练这样的大型模型。幸运的是,有一些开源项目如Ollama和Open-WebUI,它们可以帮助我们搭建私有的GPT环境。本文将指导你如何在Windows系统上使用Docker Compose来安装和配置这两个项目。
一 环境准备
在开始之前,请确保你的Windows系统上已经安装了以下软件:
- Docker Desktop:Docker的桌面版,可以在Windows上运行Docker容器。你可以从Docker官网下载并安装。
- Docker Compose:一个用于定义和运行多容器Docker应用程序的工具。Docker Desktop for Windows 2.0及以上版本已经内置了Docker Compose。
- GPU support in Docker Desktop(可选,如果本地有GPU,则需要安装):https://docs.docker.com/desktop/gpu/
二 安装步骤
2.1 配置Docker Compose
以下是一个docker-compose.yml示例:
version: '3.8'
services:ollama:image: ollama/ollama:latestports:- 11434:11434volumes:- D:\software\llms\ollama\docker\ollama:/root/.ollamacontainer_name: ollamapull_policy: if_not_presenttty: truerestart: alwaysnetworks:- ollama-docker# GPU supportdeploy:resources:reservations:devices:- driver: nvidiacount: 1capabilities:- gpuopen-webui:image: ghcr.io/open-webui/open-webui:maincontainer_name: open-webuipull_policy: if_not_presentvolumes:- D:\software\llms\open-webui\data:/app/backend/datadepends_on:- ollamaports:- 3000:8080environment:- 'OLLAMA_BASE_URL=http://ollama:11434'- 'WEBUI_SECRET_KEY=xxxx你的key'- 'HF_ENDPOINT=https://hf-mirror.com'extra_hosts:- host.docker.internal:host-gatewayrestart: unless-stoppednetworks:- ollama-dockernetworks:ollama-docker:external: false
- deploy: GPU support, 如果只有 CPU ,则不需要
- HF_ENDPOINT:Open WebUI提供了多种安装方法,包括Docker、Docker Compose、Kustomize和Helm。但不管你使用那种安装方法,都绕不过从huggingface.co 下载whisper模型,由于国内墙的原因,你运行半天,最后卡在这里,报错退出, 这时候你就需要配置环境变量 HF_ENDPOINT=https://hf-mirror.com , 意思是从https://hf-mirror.com 镜像,而不是https://huggfacing.co 官网下载所需的模型。
2.2 运行Docker Compose
在包含docker-compose.yml文件的目录中,打开命令提示符或PowerShell,并运行以下命令:
docker-compose up -d
这将启动并运行Ollama和Open-WebUI的服务。-d参数表示在后台运行。
2.3 验证安装
安装完成后,你可以通过访问 http://localhost:3000 来验证Open-WebUI是否成功运行。如果一切正常,你应该能看到Open-WebUI的界面。
2.4 使用私有GPT
现在,你已经成功搭建了私有GPT环境。你可以通过Open-WebUI界面与GPT模型进行交互,或者使用Ollama提供的API来开发自己的应用程序。
三 结语
通过上述步骤,你可以在Windows系统上使用Docker Compose轻松安装和配置Ollama和Open-WebUI,打造属于自己的私有GPT环境。这不仅可以帮助你更好地理解GPT模型的工作原理,还可以为你的个人项目或研究提供强大的支持。