windows下搭建ollama离线大模型服务

        Ollama是一个由Facebook AI Research开发的开源、轻量级且高效的大型语言模型(LLM)框架。它旨在使研究人员和开发人员能够更轻松地在自己的硬件上部署和运行LLM,而无需专门的云计算资源。

31c1a62db32a44148c6dce929ce6aa1b.png

Ollama

        Ollama提供了一个简单直观的界面,用于加载、运行和评估LLM。它还支持各种自定义选项,允许用户根据特定需求定制LLM。

Ollama支持哪些大模型

  • Llama 3:迄今为止功能最强大的公开可用的大型语言模型。
  • Llama 2:由 Meta Platforms 公司发布的 Llama 2 是一款大型语言模型,使用 2 万亿个文本片段进行训练。其默认支持 4096 个字符的上下文长度。Llama 2 聊天模型经过超过一百万条人工标注的微调,专用于聊天对话场景。
  • Mistral:Mistral 7B 是一款由 Mistral AI 公司推出的参数规模为 73 亿的开源大型语言模型,在多项基准测试中展现了优异的性能,能够在常识推理、世界知识、阅读理解、数学、编码等多个领域与其他大型模型相媲美甚至超越,并具有快速推理、低成本处理长序列等特点。
  • gemma:Gemma 是由 Google DeepMind 构建的一系列轻量级、最先进的开源模型。
  • codellama:一款能够理解文本提示并据此生成、讨论代码的大型语言模型。
    phi:Phi-2是微软研究院推出的一款 27 亿参数的语言模型,展现出卓越的推理和语言理解能力。
  • 完整的Ollama支持的大模型列表请查看:
    https://ollama.com/library

    Ollama支持Macos、Linux和Windows系统,我个人再用的windows版本ollama下载地址:

    https://objects.githubusercontent.com/github-production-release-asset-2e65be/658928958/42649cc8-8e65-45e0-b4aa-ce2b161c3064?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=releaseassetproduction%2F20240622%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240622T030707Z&X-Amz-Expires=300&X-Amz-Signature=21c7f15d68cf544a62e5f2f90c01ad6fca5f73ab9532bdf900afd14fa5dfc4bd&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=658928958&response-content-disposition=attachment%3B%20filename%3DOllamaSetup.exe&response-content-type=application%2Foctet-streamhttps://objects.githubusercontent.com/github-production-release-asset-2e65be/658928958/42649cc8-8e65-45e0-b4aa-ce2b161c3064?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=releaseassetproduction%2F20240622%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240622T030707Z&X-Amz-Expires=300&X-Amz-Signature=21c7f15d68cf544a62e5f2f90c01ad6fca5f73ab9532bdf900afd14fa5dfc4bd&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=658928958&response-content-disposition=attachment%3B%20filename%3DOllamaSetup.exe&response-content-type=application%2Foctet-stream

    一、安装Ollama

    下面就开始手工安装:

           1)下载完成后,直接点击运行安装

    4a623d6553c444218090219bacbfb0d2.png

        2)成功后,在右小角可以看到运行的图标。也可以在powershell执行 ollama命令,显示如下,表示安装成功了。非常简单。

    53a0e5f9629e43d989bb17a7acfe51ed.png

    二、配置模型路径

           通过配置windows的环境变了,改变ollama模型存放的位置。我只配置了几个关键的变量,具体变量配置可以参考:在windows下使用本地AI模型提供翻译、对话、文生图服务_ollama 文生图-CSDN博客

    1. OLLAMA_MODELS:模型保存目录
    2. OLLAMA_HOST:服务监听地址,默认是监听localhost:11434,如果需要局域网其他设备访问可以设置为0.0.0.0,如果需要更改默认端口,可以设置为0.0.0.0:12345。
    3. OLLAMA_ORIGINS:跨域配置,如果有一些特殊需求,例如想让浏览器插件可以访问本地的ollama,正常操作时会报跨域错误,所以需要设置为*

    903e731a33314276b32e2623dfe9c6f4.png
                            

    三、下载模型和运行

    查看ollama现有模型库,可以访问下面地址:library

            1)选择模型

    b7bbff063d764780af7e9fe275e64966.png

            2)选择模型版本,若确定加载该版本模型,拷贝运行语句在powershell运行就开始下载模型了,如下:

    ollama run llama3.1

    6a773aa5ed44485a9b514b31bb5e5541.png

    模型下载完成后,自动run模型,就可以开始聊天了(Duxiaoman-DI-XuanYuan-13B-Chat是我自己的模型,改成自己下载的模型名称即可,如果不清楚,可以运行 ollama list查看本地下载好的模型)。

    f157adc4205e4d8590d764f3fa033b7f.png

    四、ollama兼容openai api的访问

            我们做大模型开发,基本都是通过api来访问,并不是通过聊天界面进行的。所以下面介绍ollama的api访问示例:

    API信息

            base_url改为自己的IP地址

    [{ 
    "model": "llama3.1",
    "base_url": "http://192.168.0.110:11434/v1", 
    "api_key":"ollama" ,
    "price": [0.0, 0.0], 
    }]

            将上面的信息如实填写,运行代码即可。

    #!pip install openai #如果没有安装openai包
    
    from openai import OpenAI
    
    client = OpenAI(
      base_url = "http://192.168.0.110:11434/v1",
      api_key = "ollama"#可以不输
    )
    
    completion = client.chat.completions.create(
      model="llama3.1",
      messages=[{"role":"user","content":"你好,请介绍下自己。"}],
      temperature=0.2,
      top_p=0.7,
      max_tokens=1024,
      stream=True
    )
    
    for chunk in completion:
      if chunk.choices[0].delta.content is not None:
        print(chunk.choices[0].delta.content, end="")
    

     

    引用:

    https://zhuanlan.zhihu.com/p/694835506

    在windows下使用本地AI模型提供翻译、对话、文生图服务_ollama 文生图-CSDN博客

     

     

     

    作者:John·Zou

    物联沃分享整理
    物联沃-IOTWORD物联网 » windows下搭建ollama离线大模型服务

    发表回复