Mac系统本地部署Deepseek极简教程

环境准备

  1. 操作系统:macOS 10.15+
  2. 终端工具:iTerm2或系统自带终端
  3. 内存要求:建议16GB以上
  4. 存储空间:至少10GB可用空间

Ollama安装

方法一:Homebrew安装(推荐)

bash 复制代码
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install ollama

方法二:手动安装

  1. 访问Ollama官网下载dmg安装包
  2. 双击打开Ollama.dmg文件
  3. 将Ollama图标拖拽到Applications文件夹

模型部署

bash 复制代码
ollama pull deepseek-coder:6.7b

Python客户端实现

python 复制代码
# test_ollama.py
import requests
import json

def generate(prompt: str, model: str = 'deepseek-coder:6.7b') -> str:
    """
    Deepseek模型生成接口
    
    参数:
        prompt: 输入提示文本
        model: 使用的模型名称(默认deepseek-coder:6.7b)
    
    返回:
        模型生成的文本结果
    """
    try:
        response = requests.post(
            'http://localhost:11434/api/generate',
            json={
                'model': model,
                'prompt': prompt,
                'stream': True
            },
            headers={'Content-Type': 'application/json'},
            stream=True
        )
        response.raise_for_status()
        
        full_response = ''
        for line in response.iter_lines():
            if line:
                chunk = json.loads(line)
                print(chunk.get('response', ''), end='', flush=True)
                full_response += chunk.get('response', '')
        return full_response

    except requests.exceptions.RequestException as e:
        print(f"\nAPI请求错误: {e}")
        return ''
    except json.JSONDecodeError:
        print("\n响应解析失败")
        return ''

if __name__ == "__main__":
    test_prompt = """
    请用Python编写一个快速排序算法函数,要求:
    1. 输入参数为一个整数列表
    2. 返回排序后的升序列表
    3. 添加详细的代码注释
    """
    
    print("测试prompt:\n", test_prompt)
    print("\n模型响应:")
    result = generate(test_prompt)
    
    # 验证代码可执行性
    try:
        exec(result)
        print("\n\n代码验证通过")
    except Exception as e:
        print(f"\n\n代码执行错误: {e}")

执行验证

bash 复制代码
python3 test_ollama.py

预期终端输出片段:

ini 复制代码
模型响应:

def quick_sort(arr):
    # 基线条件:空或单元素数组直接返回
    if len(arr) <= 1:
        return arr
    # 选择基准元素
    pivot = arr[len(arr)//2]
    # 分割为三个子数组
    left = [x for x in arr if x < pivot]
    middle = [x for x in arr if x == pivot]
    right = [x for x in arr if x > pivot]
    # 递归排序并合并
    return quick_sort(left) + middle + quick_sort(right)

代码验证通过

常见问题

Q1: 服务启动失败提示端口占用

bash 复制代码
lsof -i :11434
kill -9 <PID>

Q2: 模型下载中断

bash 复制代码
ollama pull deepseek-coder:6.7b

Q3: Python依赖缺失

bash 复制代码
pip3 install requests

最佳实践

  1. 生产环境建议使用Docker容器化部署
  2. 复杂需求可配合LangChain框架使用
  3. 实时监控API调用:
bash 复制代码
ollama serve
相关推荐
大模型真好玩15 小时前
大模型训练全流程实战指南工具篇(九)——LLamaFactory大模型训练工具使用指南
人工智能·agent·deepseek
Lab_AI2 天前
创腾科技推出DeepSeek智能一体机:AI4S驱动研发效率提升300%,打造科学家“第二大脑”
人工智能·ai4s·deepseek·科学智能
AC赳赳老秦2 天前
OpenClaw核心命令详解(常用指令+实战示例,高效开启自动化工作)
大数据·运维·人工智能·自动化·ai-native·deepseek·openclaw
KIO no way3 天前
自定义Node.js安装路径及环境变量配置
node.js·deepseek
码路飞4 天前
OpenClaw 模型配置终极指南:5 种方案实测,帮你选出最适合的那个
claude·deepseek
gujunge4 天前
Spring with AI (3): 定制对话——Prompt模板引入
ai·大模型·llm·openai·qwen·rag·spring ai·deepseek
视觉&物联智能4 天前
【杂谈】-人工智能蓬勃演进背后的隐性支撑体系
人工智能·ai·aigc·算力·agi·deepseek
DS随心转插件4 天前
ChatGPT或Gemini如何生成word文档
人工智能·ai·chatgpt·word·deepseek·ds随心转
gujunge4 天前
Spring with AI (2): 评估答案——UnitTest引入
ai·大模型·llm·openai·qwen·rag·spring ai·deepseek
AC赳赳老秦6 天前
DeepSeek优化多智能体指令:避免协同冲突,提升自动化流程稳定性
android·大数据·运维·人工智能·自然语言处理·自动化·deepseek