微立顶科技

新闻资讯

创新 服务 价值

  ollama 如何运行本地模型和提高API服务

发布日期:2024/4/27 9:53:22      浏览量:

ollama 使用各种本地大模型真方便

下载地址:https://ollama.com/download


下载-安装即可,需要运行模型,直接cmd下面

输入命令   ollama run  模型名称

系统会自动下载对应的模型,即可使用啦



一、OLLAMA框架介绍

OLLAMA是一个基于Python的本地大模型运行框架,具有简单易用、高效稳定等特点。它支持多种大模型的加载和运行,包括自然语言处理图像识别语音识别等领域。通过OLLAMA,开发者可以在本地轻松实现大模型的部署和应用,无需依赖云端资源。

二、OLLAMA本地模型调用步骤

  1. 环境准备

首先,确保你的计算机已经安装了Python环境,并且安装了OLLAMA框架所需的依赖库。你可以通过pip命令来安装这些依赖库,如pip install ollama等。

  1. 模型下载

从Ollama官方网站或相关资源下载所需的本地模型文件。模型文件通常以.pb(Protobuf)或.onnx(Open Neural Network Exchange)格式提供。

  1. 模型加载

使用OLLAMA提供的API,将下载的模型文件加载到本地内存中。这可以通过ollama.load_model函数实现,如model = ollama.load_model(’path/to/model.pb’)。

  1. 模型预处理

在进行模型推理之前,需要对输入数据进行适当的预处理,以满足模型的要求。这可能包括数据的格式化、编码、归一化等操作。

  1. 模型推理

使用加载的模型进行推理。这可以通过调用model.predict或model.run等方法实现,具体取决于模型的类型和OLLAMA框架的版本。

  1. 后处理

对模型的输出进行后处理,以得到最终的结果。这可能包括解码、解码、逆归一化等操作。

----------------------------------------------------------------------------------------------------------------------------------------------

Ollama 将自己设置为本地服务器,端口为 11434。我们可以通过一个快速的 curl 命令来检查 API 是否响应。以下是一个非流式(即非交互式)REST 调用,通过 Warp 发送一个 JSON 风格的负载:

> curl http://localhost:11434/api/generate -d ’{  "model": "llama2",  "prompt": "Why is the sky blue?",  "stream": false }’
响应是:

{  "model":"llama2",  "created_at":"2024-02-14T13:48:17.751003Z",  "response": "nThe sky appears blue because of a phenomenon called Rayleigh.."  "done":true,  "context":[518,25580,29962,..],  "total_duration":347735712609,  "load_duration":6372308,  "prompt_eval_duration":6193512000,  "eval_count":368,  "eval_duration":341521220000 }


完整的响应行 —— 涵盖了瑞利散射、光的波长和太阳的角度 —— 在我看来都是正确的。


设置了一个带有 NuGet 支持的 C# 控制台项目,启动速度就会很快。以下是与 Ollama 联系并发送查询的代码:

using OllamaSharp;  var uri = new Uri("http://localhost:11434"); var ollama = new OllamaApiClient(uri);  // select a model which should be used for further operations ollama.SelectedModel = "llama2"; ConversationContext context = null; context = await ollama.StreamCompletion(  "How are you today?",  context, stream => Console.Write(stream.Response));
最终我们在调试控制台直接获得了响应(蓝色部分):



  业务实施流程

需求调研 →

团队组建和动员 →

数据初始化 →

调试完善 →

解决方案和选型 →

硬件网络部署 →

系统部署试运行 →

系统正式上线 →

合作协议

系统开发/整合

制作文档和员工培训

售后服务

马上咨询: 如果您有业务方面的问题或者需求,欢迎您咨询!我们带来的不仅仅是技术,还有行业经验积累。
QQ: 39764417/308460098     Phone: 13 9800 1 9844 / 135 6887 9550     联系人:石先生/雷先生