1.ollama环境安装DeepSeek

1.1.ollama环境安装

ollama官网地址https://ollama.com/,下载对应安装包,并安装。
在这里插入图片描述

安装完毕,验证

➜  ollama -v
➜  ollama version is 0.5.7

在这里插入图片描述

1.2.ollama安装deepseek

官网搜索deepseek-r1模型,地址:https://ollama.com/library/deepseek-r1

在这里插入图片描述

拷贝对应安装命令ollama run deepseek-r1:1.5b, 根据自身电脑配置,选择版本。安装需要一段时间,安装成功后,会有success提示。

在这里插入图片描述

2.使用DeepSeek

2.1.调用ollama的api接口

ollama提供的http接口,默认为http://127.0.0.1:11434/

curl --location 'http://127.0.0.1:11434/api/generate' \
--header 'Content-Type: application/json' \
--data '{
    "model": "deepseek-r1:1.5b",
    "prompt": "你好,deepseek!"
}'

在这里插入图片描述

2.2.利用python调用ollama的api接口

由于api响应是连续的json,整体报文,需要正则处理。

"""
获取deepseek
"""
def transform() -> None:
    try:    
        url = "http://127.0.0.1:11434/api/generate"
    
        data = dict()
        data["model"] = "deepseek-r1:1.5b"
        data["prompt"] = "你好,deepseek!合肥的历史有多久?"

        request_data = json.dumps(data, ensure_ascii=False)
        #logger.info("url :" + url)
        logger.info("提问 :" + data["prompt"])

        res = requests.post(url, request_data, headers=headers)
        res.raise_for_status()  # 检查请求是否成功
    except requests.exceptions.ConnectionError as e:
        logger.error(f"Connection error: {e}")
        return
    except requests.exceptions.HTTPError as e:
        logger.error(f"HTTP error: {e}")
        return
    except requests.exceptions.RequestException as e:
        logger.error(f"Request error: {e}")
        return

    if res.status_code == 200:
        logger.info("请求成功。")
    else:
        logger.error(f"请求失败,{url} 状态码: {res.status_code}, 响应内容: {res.text}")
        return
    

    # 检查响应内容是否为空
    if res.text.strip() == "":
        logger.error(f"Empty response for URL: {url}")
        return
    
    # 使用正则表达式提取 JSON 数据
    json_pattern = re.compile(r'\{.*?\}')
    json_strings = json_pattern.findall(res.text)

    # 解析 JSON 数据并拼接对话内容
    dialog = ""
    for json_str in json_strings:
        try:
            data = json.loads(json_str)
            dialog += data.get("response", "")
        except json.JSONDecodeError as e:
            logger.info(f"解析错误: {e}")

    logger.info(f"完整对话:{dialog}")

运行结果如图:
在这里插入图片描述

2.3.chatbox ai调用ollama的api接口

chatbox ai软件pc端,下载地址:https://chatboxai.app/zh?ref=openi.cn,手机端App Store下载。

  • chatbox配置本地大模型相关配置
    在这里插入图片描述

  • 运行效果如下:
    在这里插入图片描述

2.4.chatbox app 调用ollama的api接口

  • ollama设置允许远程访问
launchctl setenv OLLAMA_HOST "0.0.0.0"
launchctl setenv OLLAMA_ORIGINS "*"
  • chatbox app对应配置
    在这里插入图片描述

  • chatbox app运行如图:
    在这里插入图片描述

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐