分类 大模型 下的文章

设置 Ollama 运行环境

获取 Intel Analytics IPEX 镜像

从 Docker Hub 中提取 IPEX 映像,这里使用私有仓库

docker pull hub.yiqisoft.cn/intelanalytics/ipex-llm-inference-cpp-xpu:latest

启动 Ollama 容器

创建 shell 运行脚本

由于Docker启动容器的命令比较长,所以将其保存为脚本比较方便,方便调整和重启。start-ipex-llm.sh

#!/bin/bash
docker run -d --restart=always \
       --net=bridge \
       --device=/dev/dri \
       -p 11434:11434 \
       -v ~/.ollama/models:/root/.ollama/models \
       -e PATH=/llm/ollama:$PATH \
       -e OLLAMA_HOST=0.0.0.0 \
       -e no_proxy=localhost,127.0.0.1 \
       -e ZES_ENABLE_SYSMAN=1 \
       -e OLLAMA_INTEL_GPU=true \
       -e ONEAPI_DEVICE_SELECTOR=level_zero:0 \
       -e DEVICE=Arc \
       --shm-size="16g" \
       --memory="32G" \
       --name=ipex-llm \
       hub.yiqisoft.cn/intelanalytics/ipex-llm-inference-cpp-xpu:latest \
       bash -c "cd /llm/scripts/ && source ipex-llm-init --gpu --device Arc && bash start-ollama.sh && tail -f /llm/ollama/ollama.log"

运行脚本

sh start-ipex-llm.sh

下载 Qwen3 模型

docker exec ipex-llm ollama pull qwen3:8b

在 Intel Core Ultra 机器上使用 Ollama

使用命令行

docker exec -it ipex-llm ollama run qwen3:8b
  • 运行测试
root@HP:~# docker exec -it ipex-llm ollama run qwen3:8b
>>> 你好
Thinking...
好的,用户发来“你好”,我需要友好回应。首先,确认用户的需求,可能是测试或开始对话。保持自然,用中文回应,避免机械感。可以加入表情符号增加亲切感,同时保持简洁。确保符合规范,不涉及敏感内
容。接下来,用轻松的语气打招呼,并邀请用户提问或分享需求。例如:“你好!😊 有什么我可以帮你的吗?” 这样既友好又开放,鼓励用户进一步互动。
...done thinking.

你好!😊 有什么我可以帮你的吗?

>>> Send a message (/? for help)

使用 API

curl -s http://localhost:11434/v1/completions      -H "Content-Type: application/json"      -d '{
           "model": "qwen3:8b",
           "prompt": "你好"
         }' | json_pp

{
   "choices" : [
      {
         "finish_reason" : "stop",
         "index" : 0,
         "text" : "<think>\n嗯,用户发来“你好”,我需要回应。首先,用户可能正在测试我是不是能正常响应,或者只是随便打个招呼。我应该用友好的语气回应,同时保持简洁。\n\n接下来,我要考虑用户可能的意图。他们可能想开始一段对话,或者只是随便聊聊。不管怎样,我应该主动提供帮助,比如询问有什么我可以协助的。\n\n另外,用户可能有不同的需求,比如需要信息、帮助解决问题,或者只是想找人聊天。所以回应要开放,让用户感到被欢迎和被重视。\n\n还要注意语气,保持自然和亲切。避免使用太正式的语言,让用户觉得轻松。比如用“你好!有什么我可以帮你的吗?”这样既友好又开放。\n\n最后,确认回应是否符合规范,没有使用任何markdown格式,保持口语化。检查是否有拼写错误,确保回复正确无误。\n</think>\n\n你好!有什么我可以帮你的吗? 😊"
      }
   ],
   "created" : 1752292111,
   "id" : "cmpl-521",
   "model" : "qwen3:8b",
   "object" : "text_completion",
   "system_fingerprint" : "fp_ollama",
   "usage" : {
      "completion_tokens" : 194,
      "prompt_tokens" : 9,
      "total_tokens" : 203
   }
}