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
相关推荐
Baihai_IDP2 小时前
「DeepSeek-V3 技术解析」:无辅助损失函数的负载均衡
人工智能·llm·deepseek
Harry技术3 小时前
为什么现在的大模型都用多少B来命名,比如7B、13B之类的?
deepseek
Aion_Liu3 小时前
应用实战|借力EdgeOne Pages搭建对话型AI网站
deepseek·mcp
bin915314 小时前
DeepSeek 助力 Vue3 开发:打造丝滑的表格(Table)之添加行拖拽排序功能示例12,TableView16_12 拖拽动画示例
前端·javascript·vue.js·ecmascript·deepseek
HuggingFace1 天前
Open R1 项目进展第二期
deepseek
Liudef061 天前
deepseek v3 0324实现工作流编辑器
前端·css·编辑器·deepseek
正在走向自律1 天前
DeepSeek+Kimi:PPT制作的效率革命
人工智能·powerpoint·deepseek·kimi助手
职场AI研究猿1 天前
别再埋头苦干!你的AI打工人DeepSeek V3已觉醒,效率高到飞起!
deepseek
博云技术社区1 天前
昇腾+DeepSeeK | 博云联合昇腾打造满血版一体机
昇腾·博云·deepseek·ai一体机
Wnq100722 天前
DEEPSEEK创业项目推荐:
运维·计算机视觉·智能硬件·ai创业·deepseek