Python调用本地部署Deepseek源代码

该代码定义了一个 call_ollama 函数,用于与本地模型服务交互。函数接收用户输入的提示文本,并可选地以流式方式接收响应。请求被发送到指定的 URL,请求体中包含模型名称、用户提示和流式标志。

在请求发送后,代码首先检查 HTTP 错误。对于非流式响应,直接解析并返回 JSON 中的响应内容。对于流式响应,逐行读取响应数据,将每行解码并解析为 JSON,然后提取并拼接响应部分,最终返回完整结果。

代码中还包含异常处理机制,以捕获并打印请求过程中的错误,确保程序的健壮性。

示例部分展示了如何使用该函数进行非流式和流式调用,并打印返回的响应内容。非流式调用一次性返回完整结果,而流式调用则逐部分打印响应。

import requests


def call_ollama(prompt, model="llama2", stream=False):
    url = "http://localhost:11434/api/generate"
    payload = {
        "model": "deepseek-r1:1.5b",
        "prompt": prompt,
        "stream": stream
    }

    try:
        response = requests.post(url, json=payload)
        response.raise_for_status()  # 检查HTTP错误

        # 处理非流式响应
        if not stream:
            return response.json()["response"]

        # 处理流式响应
        full_response = []
        for line in response.iter_lines():
            if line:
                import json
                chunk = json.loads(line.de
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值