本地部署AI并应用


一、前言

  1. 我看很多只会使用官网的AI和API,有时候会出现:服务器繁忙,请稍后重试,需要等一会才能再次提问;调用API的话又要马内,像我这种兜兜里困难的人只能使用开源模型部署本地了。
  2. 本地部署:优点:隐私得到保证,不必担心服务器繁忙,也可以聊一些敏感话题,随时启动,支持多个不同模型,调用自己的API不需要马内;缺点:参数量大的模型需要高性能的设备支持。
  3. 为什么不自己蒸馏自己的模型?首先没有那么多的数据,最重要的是没有马内,也没有时间,而且技术迭代太快,自己训练的模型可能很快就被淘汰了;如果是公司或者团队想蒸馏属于自己的AI大模型,还是没有问题的,根据自己的业务需求,训练自己的模型;不过我认为使用别人开源的模型已经足够了,无非是多加些提示词,多喂点文档。
    ollama项目:https://github.com/ollama/ollama?tab=readme-ov-file
    openwebui项目:https://github.com/open-webui/open-webui

二、部署ollama

2.1 Windows(mac和linux及其它系统大差不差)

  1. 点击下载安装:https://ollama.com/download/OllamaSetup.exe
  2. 双击ollama就可以运行了
  3. 在窗口输入ollama run 模型名称 即可下载对应的模型,支持的模型:https://ollama.com/library
  4. 下载完成后,输入ollama run 模型名称 就可以运行模型了,默认地址是:http://localhost:11434

2.2 哼哼哼是不是很简单?我就知道你有问题,下面是一些问题解决

  1. 下载慢如何解决?
    换个快速的梯子下载ollama的模型,或者去https://huggingface.co/ 下载模型,然后向下看如何使用huggingface下载的模型,如果huggingface进不去下载慢使用huggingface的国内镜像网站:https://hf-mirror.com/

  2. 【可选,其它系统也是如此这里演示Windows】如何避免安装到C盘?
    win + r,在运行窗口输入:

    "C:\你的下载路径\ollamasetup.exe" /D=C:\你安装的路径\ollama

    如果在cmd中运行不起来ollama,可以在系统环境变量中添加ollama.exe的路径,然后把变量名添加到path,然后重启电脑,在cmd运行Ollama list查看是否成功。

  3. 【可选,其它系统也是如此这里演示Windows】如何避免下载的AI模型安装到C盘?
    配置环境变量:
    变量名:OLLAMA_MODELS 变量值D:\ollama\models
    然后重启电脑

  4. 如何使用从ollama之外下载的模型?
    (1)一般都是从Hugging Face下载的模型,这里演示gguf模型
    Hugging Face
    (2)下载完成后在模型目录创建一个txt文件,文件内容:FROM ./你下载的模型名字.gguf
    (3)然后在命令行输入:ollama create ‘自定义模型名称’ -f 你的文件名字.txt
    (4)等待完成后然后输入ollama list查看是否出现你下载的模型

  5. ollama基本命令
    (1)运行:ollama run 模型名字
    (2)查看模型列表:ollama list
    (3)删除模型:ollama rm 模型名字
    (4)模型信息:ollama show 模型名字
    (5)当前加载的模型:ollama ps
    (6)停止模型:ollama stop 模型名字

三、部署openwebui

3.1 下载Docker

Windows:https://www.docker.com/products/docker-desktop

下载安装应该都会吧?

3.2 下载openwebdui

  1. 使用docker一键安装
    如果 Ollama 在您的计算机上,请使用以下命令:
    docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

docker openwebdui

  1. 使用python安装启动(并不是两个都要安装,这是第二种方式安装)
    (1)打开终端并运行以下命令以安装 Open WebUI:pip install open-webui
    (2)通过执行以下命令来启动 Open WebUI:open-webui serve
    (3)默认地址端口号: http://localhost:8080

3.2 使用openwenui

  1. 首先启动ollama
  2. 然后进入openwebui的页面
    openwebdui
  3. 怎么修改模型的名字?
    我直接跳起来,好家伙,首先进入你的models目录然后在修改对应的文件夹名字和文件名字(17B)
    更改后你的运行命令的模型名字也要修改
    openwebdui

四、调用ollama接口

4.1 这里使用python

  1. 使用python调用ollama接口
    (1)输入命令下载:pip install ollama
    (2)然后输入以下代码:

    from ollama import Client
    client = Client(
      host='http://localhost:11434',# 默认是自己的API可以填写别人的API
      headers={'x-some-header': 'some-value'}
    )
    response = client.chat(model='你的模型名字', messages=[
      {
        'role': '角色名字',
        'content': '对AI说的话',
      },
    ])
    # 打印AI回复
    print(response['message']['content'])

    详细信息:https://pypi.org/project/ollama/

  2. ollama也兼容的openai的库,为何不使用openai的库?
    说实话这个库我试过,老是报错,所以放弃思考了

4.2 使用接口工具,这里使用postman

openwebdui

五、其它

  1. openwebui怎么使用其它人的API?
    docker openwebdui
  2. 如何给局域网内的人使用?
    局域网内的人使用openwebui打开浏览器输入:
    http://你的ip地址:3000
    局域网内的人使用ollamaAPI打开浏览器输入:
    http://你的IP地址:11434
  3. 如何给局域网外的人?
    使用frp,这里不演示了,网上教程一大堆,但是需要一台服务器;或者现成的要钱的内网穿透和免费的内网穿透
  1. 部署在外部服务器如何访问
    使用openwebui打开浏览器输入:
    http://你的ip地址:3000
    使用ollamaAPI打开浏览器输入:
    http://你的IP地址:11434

  2. 如何获得免费的API?

好家伙,原来你和我一样,仅供参考:
(1)社区去搜索对应的API
(2)搜索引擎去搜索对应的API
(3)Fofa搜索app=”Ollama” && is_domain=false


文章作者: 孙尾苏
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 孙尾苏 !
评论
  目录