Ollama搭建的模型,怎么使用fastapi项目调用

要查看实际的本地 Ollama API 端点,首先需要确认 Ollama 的本地服务是如何配置和运行的。通常情况下,部署 Ollama 时会有配置文件或日志文件显示服务的运行端口和 API 端点信息。

以下是一些步骤和方法,帮助你确认和查看本地 Ollama API 端点:

1. 查看 Ollama 的启动日志

当你启动 Ollama 时,它通常会输出日志信息,其中包含服务运行的端点。例如:

ollama run sqlcoder:70b-alpha-q8_0

启动命令执行后,观察终端输出,寻找类似以下的信息:

Running on http://localhost:5000

这将告诉你 Ollama 服务运行的端点。

2. 查看配置文件

检查 Ollama 的配置文件(如果有),其中可能包含端点和端口配置信息。配置文件通常位于安装目录或 /etc/ollama 等常见目录中。

3. 使用命令行工具

可以使用命令行工具如 netstatlsof 来查看正在监听的端口。例如:

netstat -tuln | grep LISTEN

lsof -iTCP -sTCP:LISTEN -P -n

这些命令会列出所有正在监听的端口,你可以找到 Ollama 服务运行的端口。

4. 查看文档或帮助

查阅 Ollama 的官方文档或帮助命令,通常会提供关于 API 端点的信息。例如:

ollama --help

示例

假设通过启动日志你发现 Ollama 在端口 5000 运行,你可以将端点设置为 http://localhost:5000。如果具体的 API 端点路径未知,可以通过以下方式进行尝试:

  1. 查看默认端点路径:常见的 API 路径如 /api, /predict, /v1/predict 等。
  2. 尝试基本路径:假设为 http://localhost:5000/api/v1/predict 或类似路径。

完整的 FastAPI 示例代码

一旦确定了实际的 API 端点,可以使用以下示例代码来调用本地 Ollama 模型:

from fastapi import FastAPI, HTTPException
import requests

app = FastAPI()

# 替换为实际的本地 Ollama API 端点
OLLAMA_LOCAL_URL = "http://localhost:5000/api/v1/predict"

@app.get("/")
def read_root():
    return {"message": "Welcome to the FastAPI and Ollama integration!"}

@app.post("/ollama")
def call_ollama(payload: dict):
    response = requests.post(OLLAMA_LOCAL_URL, json=payload)
    
    if response.status_code != 200:
        raise HTTPException(status_code=response.status_code, detail=response.text)
    
    return response.json()

确认 API 端点

假如你不确定具体的路径,可以使用以下代码来尝试不同的路径:

from fastapi import FastAPI, HTTPException
import requests

app = FastAPI()

BASE_URL = "http://localhost:5000"

@app.get("/")
def read_root():
    return {"message": "Welcome to the FastAPI and Ollama integration!"}

@app.post("/ollama")
def call_ollama(payload: dict):
    possible_endpoints = ["/api/v1/predict", "/predict", "/api"]
    for endpoint in possible_endpoints:
        try:
            response = requests.post(f"{BASE_URL}{endpoint}", json=payload)
            if response.status_code == 200:
                return response.json()
        except requests.exceptions.RequestException:
            continue
    raise HTTPException(status_code=404, detail="Ollama endpoint not found.")

使用这些方法,你可以确定本地 Ollama API 端点,并通过 FastAPI 调用它。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MonkeyKing.sun

对你有帮助的话,可以打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值