GPT Image 2.5 Sunburst and Flare are now live on CometAPI →
technology/Исследования CometAPI

Как развернуть deepseek-v3.1 локально через ollama: руководство The Eastest

DeepSeek-V3.1 — это гибридная «мыслящая/немыслящая» языковая модель MoE (всего 671 байт, ≈37 байт активировано на токен), которую можно запустить локально, если использовать правильный

CometAPI
AnnaКоманда исследователей AI-моделей и API
Обновлено Sep 3, 2026 11 мин. чтения
Как развернуть deepseek-v3.1 локально через ollama: руководство The Eastest
Использовать этот подход

Сделайте первый вызов API.

from openai import OpenAI

client = OpenAI(
    api_key="YOUR_COMETAPI_KEY",
    base_url="https://api.cometapi.com/v1",
)

response = client.chat.completions.create(
    model="gpt-5-mini",
    messages=[{"role": "user", "content": "Build this workflow."}],
)

print(response.choices[0].message.content)

DeepSeek-V3.1 — это гибридная языковая модель MoE «думающая/недумающая» (671 байт всего, ≈37 байт активировано на токен), которая может быть запущена локально при использовании подходящего провайдера/квантизации и инструментария. Ниже я расскажу о DeepSeek-V3.1, требованиях к оборудованию и программному обеспечению, пошаговых руководствах по локальному запуску (примеры Ollama + llama.cpp) и о том, как развернуть и использовать режим мышления ( <think>/</think> шаблон чата) с примерами кода, которые можно скопировать/вставить.


Что такое DeepSeek-V3.1?

DeepSeek-V3.1 — это версия 3.1 семейства MoE (Mixture-of-Experts) DeepSeek. Она была разработана как гибридная модель вывода, поддерживающая два диалоговых шаблона/режима: мышление и Не-думающий — из той же контрольной точки, изменив шаблон чата. Архитектура модели соответствует архитектуре DeepSeek-V3 MoE (671 млрд параметров; ≈37 млрд параметров, активируемых на токен для вывода) и добавляет улучшения после обучения для использования инструментов, навыков агента и обработки длинного контекста.

Краткий обзор особенностей

  • Гибридный Мышление / Не-мышление режимы (переключаются токенизацией шаблона чата).
  • Архитектура MoE: большое общее количество параметров, но ограниченное количество активированных параметров на токен (обеспечивает эффективность).
  • Посттренировочные улучшения для вызовов инструментов и рабочих процессов агентов (формат вызовов инструментов и шаблоны агентов задокументированы в активах модели).

Что нужно для локального запуска DeepSeek-V3.1?

Запуск полный DeepSeek-V3.1 (исходные контрольные точки) — это тяжеловесный набор данных — хранение данных для обучения/контрольных точек и организация вывода — нетривиальные задачи. Но есть и практические решения:

Аппаратные средства

  • Полный распределенный вывод (исследование/кластер): несколько графических процессоров с большим объёмом памяти (класса A100/H800) или кластер графических процессоров с параллельной обработкой данных (типично для контрольных точек 600+ байт). Используйте только при запуске исследовательских кластеров для производственных задач.
  • Практические местные варианты: использовать активированный-параметр перспектива (активировано ≈37 байт) или квантованная сборка GGUF/1-битная динамическая сборка. Квантования, предлагаемые сообществом (1-битная динамическая сборка/GGUF), значительно снижают требования к дисковому пространству и оперативной памяти — например, в сообщениях сообщества сообщается о сжатии контрольной точки объёмом 720 ГБ до ~170 ГБ GGUF для квантованного варианта. Это делает локальный односерверный вывод на основе GPU осуществимым для настольных компьютеров/серверов с хорошими ресурсами.

Итог: ожидайте рабочего процесса с большой моделью (от десятков до нескольких сотен ГБ дискового пространства для квантованных артефактов); для видеопамяти графического процессора используйте квантованные варианты и целевые значения видеопамяти ≥24–48 ГБ для разумной пропускной способности; в противном случае используйте ЦП+подкачку с компромиссами по производительности.

Программное обеспечение и инструменты

Python 3.10+ (для инструментов преобразователя/токенизатора и пользовательских скриптов).

transformers (для токенизатора и вспомогательных функций) — на карточке модели показаны примеры использования transformers.AutoTokenizer.

Одна или несколько локальных сред выполнения вывода:

  • Оллама (легкий: ollama pull / ollama run интеграция; некоторые сборки DeepSeek на Ollama требуют предварительных версий, см. примечание model/ollama). Ollama стала стандартным локальным исполнителем для моделей сообщества.
  • llama.cpp / ggml стеки или llama-server для квантованных файлов GGUF — отлично подходит для прямого выполнения GGUF.
  • генерация-вывод текста / Triton / стеки FlashAttention для более производительного вывода графического процессора (расширенные настройки).

Диск: большое свободное место для файлов модели (десятки → сотни ГБ в зависимости от квантования).

Артефакты модели (какой файл получить)

  • Официальные варианты Safetensors / BF16 / FP8 / GGUF: Hugging Face содержит артефакты модели V3.1 и множественные квантизации. Если вам нужен файл GGUF/квантованной модели для llama.cpp, найдите релиз квантования сообщества (или скрипт преобразования от safetensors → GGUF) — в карточке модели перечислены квантованные варианты.

Как подготовить модель для локального вывода?

Ниже приведены рекомендуемые этапы подготовки, расположенные от простого к сложному.

Шаг 1 — Выбор среды выполнения (рекомендация)

  • Тест для начинающих/быстрый: Ollama — минимальная настройка: загрузка, запуск модели, вызов API. Примечание: в некоторых сборках DeepSeek-V3.1 указано, что Ollama v0.11.7 требуется для определённых функций.
  • Расширенное/низкоуровневое управление: llama.cpp + GGUF-квантование (если доступно GGUF-квантование). Это обеспечивает прямое управление выводом и интеграцию с llama-server.

Шаг 2 — Загрузите модель

Если вы используете Олламу:

# install ollama (see https://ollama.com/docs)

# Pull the model (this downloads the model to your machine)
ollama pull deepseek-ai/DeepSeek-V3.1
# or a specific tag: ollama pull deepseek-ai/DeepSeek-V3.1:quant-q4_0

(Оллама run автоматически вытащит, если его нет; pull позволяет вам контролировать время.)

Если вы используете Hugging Face + llama.cpp:

# Example: download via huggingface-cli or hf_transfer

pip install huggingface_hub
hf_hub_download(repo_id="deepseek-ai/DeepSeek-V3.1", filename="DeepSeek-V3.1.gguf")
# or use a community quant file (gguf) referenced on the Hugging Face model page

Hugging Face перечисляет артефакты модели, шаблоны и квантизации на карточке модели.

Шаг 3 — Преобразование/квантизация (необязательно)

Если вы нашли только сейфтензоры или артефакты BF16, но вам нужен GGUF для llama.cpp, используйте скрипты конвертации в llama.cpp (или инструменты сообщества) для преобразования → квантования. Существуют инструменты сообщества для 1-битного динамического квантования, сохраняющие точность при уменьшении размера; см. сообщения сообщества, в которых сообщается о снижении размера примерно до 170 ГБ.


Как на самом деле запустить DeepSeek-V3.1 локально? (Практические руководства по запуску)

Я покажу Оллама (легко, рекомендуется) и лама.cpp Примеры (GGUF) плюс короткий пример Python с использованием вспомогательных функций токенизатора модели и карты.

A — Бег с Олламой (быстрый старт)

  1. Установите Ollama (следуйте официальным инструкциям).
  2. Извлеките и запустите модель:
# pull model to disk (optional; run will pull automatically)

ollama pull deepseek-ai/DeepSeek-V3.1

# start an interactive session (runs model and exposes local API)

ollama run deepseek-ai/DeepSeek-V3.1
  1. Сделайте HTTP-запрос на локальный сервер Ollama:
# curl usage example (local Ollama server usually listens on port 11434)

curl -sS -X POST 'http://localhost:11434/api/generate' \
  -H 'Content-Type: application/json' \
  -d '{
    "model":"deepseek-ai/DeepSeek-V3.1",
    "prompt":"Explain the difference between thinking and non-thinking mode in DeepSeek.",
    "max_tokens":256
  }'

Шаблоны CLI и API Ollama разработаны так, чтобы быть простыми: ollama run При необходимости будет загружен и запущен сервер моделей. Подсказки по памяти и точные названия/теги моделей см. в документации Ollama и на страницах моделей.

B — Запуск квантованного GGUF через llama.cpp

  1. Построить llama.cpp с CUDA (опционально) или CPU:
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
# for CUDA:

make clean && make LLAMA_CUBLAS=1
# or CPU only:

make
  1. Поместите файл модели GGUF в путь и запустите:
./main -m /path/to/DeepSeek-V3.1.q4_K_M.gguf \
  -p "Explain how to enable thinking mode." \
  --temp 0.2 --n_predict 512
  1. Для использования на сервере, llama-server (проект сообщества) может предоставить конечную точку HTTP:
llama-server -m /path/to/DeepSeek-V3.1.q4_K_M.gguf
# then POST to the server like:

curl -X POST "http://localhost:8080/api/v1/generate" -d '{"prompt":"Hello","max_tokens":200}'

Используйте квантования GGUF сообщества (динамические q4/q8/1 бит), чтобы вписаться в бюджеты графического процессора/центрального процессора; llama.cpp репозиторий предоставляет инструменты и рекомендации по конвертации.

C — Пример Python с использованием токенизатора + шаблона чата

Модель «Обнимающее лицо» предоставляет tokenizer.apply_chat_template помощник и показывает, как кодировать разговор с thinking=True. Вот минимальный пример Python, адаптированный из карточки модели:

from transformers import AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained("deepseek-ai/DeepSeek-V3.1")

messages = [
    {"role": "system", "content": "You are a helpful assistant"},
    {"role": "user", "content": "Who are you?"},
    {"role": "assistant", "content": "<think>Hmm</think>I am DeepSeek"},
    {"role": "user", "content": "1+1=?"}
]

# apply thinking chat template

s = tokenizer.apply_chat_template(messages, tokenize=False, thinking=True, add_generation_prompt=True)
print(s)  # the template includes the special <think> token placement

Затем вы можете передать токенизированную подсказку в среду выполнения вывода (Ollama/llama.cpp/TGI) в зависимости от вашего стека.


Как работает Thinking Mode и как его развернуть локально?

DeepSeek-V3.1 использует шаблоны чата которые содержат специальный токен мышления (например, <think> и </think>). шаблон определяет, находится ли модель в режиме мышления или немышления:

  • Не-думающий шаблонные места </think> в префиксе помощника, который инструктирует модель выдавать прямые ответы (формат вызова инструмента поддерживается в режиме отсутствия мышления).
  • мышление шаблонные места <think> в префиксе помощника, который заставляет модель выдавать промежуточные сигналы в стиле внутренней цепочки мыслей (модель обучена использовать эту последовательность токенов для внутреннего рассуждения и получения более качественных многошаговых ответов). Карточка модели «Обнимающее лицо» документирует эти точные токены и tokenizer.apply_chat_template(..., thinking=True) API.

Программное переключение (примеры)

А — С токенизатором (Python):

# thinking=True or thinking=False changes how the prompt is formatted

prompt_thinking = tokenizer.apply_chat_template(messages, thinking=True, add_generation_prompt=True)
prompt_non_thinking = tokenizer.apply_chat_template(messages, thinking=False, add_generation_prompt=True)

Лента prompt_thinking в среду выполнения вывода, чтобы получить поведение Мышления.

B — С необработанным приглашением (llama.cpp / руководство):

Вставить <think> до того, как помощник включится, когда вы подскажете:

<|begin_of_sentence|>You are a helpful assistant<|User|>How to optimize this code?<|Assistant|><think>

(Точное обрамление маркера указано в карточке модели — необходимо соблюдать интервалы и специальные маркеры, если вы используете необработанный шаблон.)

C — С помощью Ollama (переключение пользовательского интерфейса):
В официальной веб-демонстрации DeepSeek и примечаниях к выпуску упоминается переключатель/кнопка «DeepThink» для переключения режимов в размещенном пользовательском интерфейсе. Локально Ollama или ваше приложение должны воспроизводить это поведение, переключая шаблон чата (т.е. изменяя подсказку, отправляемую в среду выполнения, между двумя токенизированными формами). Если вы запускаете DeepSeek через Ollama, вы можете реализовать это в своем приложении, поддерживая два шаблона подсказок (с обдумыванием и без обдумывания) и переключая их через API Ollama.


Как развернуть Thinking Mode в качестве агента (вызовы инструментов, агенты кода)?

Документы DeepSeek-V3.1 вызов инструмента и агент Шаблоны в активах модели. Модель ожидает, что инструменты будут представлены в определённом формате JSON/инструкций, и поддерживает цепочку вызовов нескольких инструментов за один шаг при условии точного соблюдения токенов-обёрток, описанных в карточке модели.

Пример: простая оболочка вызова инструмента (псевдо)

Модель определяет блок дескриптора инструмента и строгий tool_calls_begin / tool_call_begin Формат. Минимальный пример (концептуальный):

## Tools

You have access to the following tools:

### web_search

Description: Query the web
Parameters: {"q": "string"}

<|begin_of_sentence|>{system prompt}

## Tools

...tool descriptions...

<|User|>Find the population of Tokyo<|Assistant|></think>
<|tool_calls_begin|><|tool_call_begin|>web_search<|tool_sep|>{"q":"population of Tokyo 2025"}<|tool_call_end|><|tool_calls_end|>

Выходные данные инструмента затем должны быть возвращены в модель на следующем этапе в соответствии с предписанным форматом модели (см. assets/search_tool_trajectory.html на странице модели для точного описания процесса). Реализация агентов требует программной оркестровки: вызов инструмента → захват результата → внедрение результата обратно в контекст чата точно так, как предписано в шаблоне → повторный вызов модели.


Практические советы, устранение неполадок и меры предосторожности (на что следует обратить внимание?)

  • Шаблоны токенов строгие. Используйте модель tokenizer.apply_chat_template или воспроизвести точное <think>/</think> Маркеры показаны. Неправильное расположение или отсутствие маркеров приведёт к изменению поведения модели.
  • Формат инструмента должен быть допустимым JSON. Модель будет анализировать аргументы инструмента как JSON — недопустимый JSON приведет к прерыванию вызовов инструмента.
  • Компромиссы квантования. Динамическое/агрессивное квантование 1-битной области уменьшает объём хранилища и оперативной памяти, но может немного повлиять на точность числовых данных. Протестируйте на своих рабочих нагрузках. Существуют варианты квантования, разработанные сообществом, которые снижают использование диска на 80% (пример отчёта: 720 ГБ → ~170 ГБ), но всегда сверяйтесь с вашими подсказками.
  • Совместимость с Олламой. В некоторых вариантах DeepSeek указано, что для работы предварительных версий требуется Ollama v0.11.7 — проверьте страницу модели Ollama и обновите ее соответствующим образом.

Пример от начала до конца: запуск DeepSeek-V3.1 локально в режиме Thinking Mode (мини-пошаговое руководство)

  1. Установите Ollama и извлеките модель:
# install ollama per docs, then:

ollama pull deepseek-ai/DeepSeek-V3.1
ollama run deepseek-ai/DeepSeek-V3.1 &
  1. Используйте токенизатор Python для составления подсказки к размышлению:
from transformers import AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("deepseek-ai/DeepSeek-V3.1")

msgs = [
  {"role":"system","content":"You are a helpful assistant."},
  {"role":"user","content":"Plan a multi-step strategy to prototype a mobile app in 2 weeks."}
]
prompt = tokenizer.apply_chat_template(msgs, thinking=True, add_generation_prompt=True)

import requests
resp = requests.post("http://localhost:11434/api/generate", json={
    "model": "deepseek-ai/DeepSeek-V3.1",
    "prompt": prompt,
    "max_tokens": 400
})
print(resp.json())
  1. Если модель возвращает вызов инструмента в формате toolcall, проанализируйте JSON и запустите инструмент, затем внедрите результаты в следующее сообщение в соответствии с шаблонами карточки модели.

Как выбрать путь развертывания?

  • Если вам нужен самый быстрый путь к эксперименту: используют Оллама и примеры модели Hugging Face. Ollama скрывает многие инфраструктурные детали и предоставляет локальный HTTP API.
  • Если вам нужна более низкая стоимость/большая мобильность: использовать сообщество GGUF квантованный артефакт и запустить с llama.cpp or llama-server. Квантование экономит диск и память, но проверяет точность вашей рабочей нагрузки.
  • Если вы строите агенты или инструменты: следуйте образцу карты вызов инструмента и агент шаблоны в точности; организуйте выходные данные инструмента обратно в контекст модели.

Первые шаги

CometAPI — это унифицированная платформа API, которая объединяет более 500 моделей ИИ от ведущих поставщиков, таких как серия GPT OpenAI, Gemini от Google, Claude от Anthropic, Midjourney, Suno и других, в единый, удобный для разработчиков интерфейс. Предлагая последовательную аутентификацию, форматирование запросов и обработку ответов, CometAPI значительно упрощает интеграцию возможностей ИИ в ваши приложения. Независимо от того, создаете ли вы чат-ботов, генераторы изображений, композиторов музыки или конвейеры аналитики на основе данных, CometAPI позволяет вам выполнять итерации быстрее, контролировать расходы и оставаться независимыми от поставщика — и все это при использовании последних достижений в экосистеме ИИ.

Разработчики могут получить доступ ДипСик V3.1 Последние версии моделей CometAPI указаны на дату публикации статьи. Для начала изучите возможности модели в Детская Площадка и проконсультируйтесь с API-руководство для получения подробных инструкций. Перед доступом убедитесь, что вы вошли в CometAPI и получили ключ API. CometAPI предложить цену намного ниже официальной, чтобы помочь вам интегрироваться.


Заключение

DeepSeek-V3.1 предлагает практичную гибридную философию вывода (одна контрольная точка + шаблонное мышление), которая упрощает эксперименты с рассуждениями в стиле цепочки мыслей и использованием инструментов-агентов при соблюдении шаблонов чата и требований к инструментам. Используйте карточку модели Hugging Face и заметки о выпуске DeepSeek в качестве первого шага, выберите локальную среду выполнения (Ollama для простоты, llama.cpp для контроля) и тестовых квантованных сборок для практических локальных развертываний.

Продолжить обучение

Свяжите эту статью со следующим решением.

Посмотреть все темы
Опубликовано Sep 6, 2025
Последнее обновление Sep 3, 2026
707 просмотров
Проверено на ясность, указание источников и актуальную терминологию API.

Готовы сократить затраты на AI-разработку на 20%?

Начните бесплатно за несколько минут. Пробные кредиты включены. Карта не нужна.

Читать далее