详解Ollama api (Windows环境)

部署运行你感兴趣的模型镜像

Ollama可以像一个本地软件一样在Windows中运行。通常通过以下两种方法来使用Windows中的Ollama。

  • cmdpowershell中输入命令
  • 基于本地主机http://localhost:11434的Ollama API

关于Ollama的安装和命令行的使用方法可以参考我的另一篇博文。这篇博文主要介绍api的使用方法。

powershell中获取Ollama API

下面是从powershell中获取Ollama API的一个简单示例(在cmd中同样如此):

(Invoke-WebRequest -method POST -Body '{"model":"llama3.2", "prompt":"Why is the sky blue?", "stream": false}' -uri http://localhost:11434/api/generate ).Content | ConvertFrom-json
  • Invoke-WebRequest定义一个网络请求,包括以下参数:
    • -method 定义网络请求的方式,分为POSTGET两种,这里使用POST
    • -Body请求的主体,其内容为一个字典字符串,字典包含以下字段:
      • model模型名称
      • prompt提示词
      • stream是否为流式输出(后面会详细解释)
    • -uri主机地址,这里为http://localhost:11434/api/generate
  • .Content取网络请求结果中的Content内容
  • ConvertFrom-json将json格式的内容转换成文本格式

运行结果如下:
powershell中Ollama api的使用

Python中使用Ollama API

在Python中使用Ollama API与网络爬虫相似,只不过将网址和请求的表头换成了相应的Ollama参数而已。
以下代码参考了峰哥Python笔记中的代码

import requests
import json

url_generate = "http://localhost:11434/api/generate"

def get_response(url, data):
    response = requests.post(url, json = data)
    response_dict = json.loads(response.text)
    response_content = response_dict["response"]
    return response_content

data = {
        "model": "llama3.2",
        "prompt": "Why is the sky blue?",
        "stream": False}

res = get_response(url_generate, data)
print(res)

运行部分结果如下:
Python中调用Ollama API
同在powershell中调用Ollama API一样,重点是确定两个东西:

  • 主机地址:"http://localhost:11434/api/generate"
  • 请求主体:就是这里的data,其中包含的字段和powershell命令中的没什么差别。

只不过这里采用的是Python网络爬虫的方法,通过requests.post方式定义爬虫方式,然后json=data中定义请求主体。

总结

在Windows中调用Ollama API的基本思路其实就是网络爬虫,无论是在powershell中还是在Python中。

但是Ollama API的调用模式有很多种,基本上所有的Ollama模型操作都可以通过API来完成。具体可以参考Ollama的官方文档

您可能感兴趣的与本文相关的镜像

Llama Factory

Llama Factory

模型微调
LLama-Factory

LLaMA Factory 是一个简单易用且高效的大型语言模型(Large Language Model)训练与微调平台。通过 LLaMA Factory,可以在无需编写任何代码的前提下,在本地完成上百种预训练模型的微调

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值