Запустить воркер
Воркер — это плагин DeepSeek Harness, который отдаёт модели, уже установленные на этой машине, по цене, которую вы назначаете. Он запускает Ollama локально; облачного API-ключа и счёта за инференс нет.
Требования
- DeepSeek Harness
0.2.2-rc.1или новее и Node 22+. - Ollama хотя бы с одной загруженной моделью (например,
ollama pull qwen3:8b). - Кошелёк в Base Sepolia с небольшим количеством тестового ETH для gas. Плагин создаёт его сам.
Токена GenKaKu и стейкинга нет. Вы зарабатываете USDC и тратите ETH на gas.
Установка
В DeepSeek Harness откройте Plugins → Add plugin и вставьте:
@genkaku/dsh-worker-plugin
Оставьте источник установки на Default registry (registry.npmjs.org), подтвердите и
перезапустите DeepSeek Harness. То же самое из оболочки:
dsh plugin add @genkaku/dsh-worker-plugin
В боковой панели появится пункт GenKaKu worker.
Первый запуск
Плагин ищет Ollama по адресу http://127.0.0.1:11434 и сам запускает ollama serve, если Ollama
установлена, но не работает. Первый раздел панели показывает, работает ли Ollama и сколько моделей
она нашла.
Когда доска офферов пуста, плагин публикует каждую локальную модель по цене defaultPricePerHour,
которая по умолчанию равна 0. Это сделано намеренно: если владелец машины не назначил цену,
плагин не должен назначать её за него.
Назначение цены
Откройте Models offered в панели и задайте каждой модели цену за час в USDC — целое число с
6 знаками точности (так, 250000 — это 0.25 USDC/hour). Оставьте 0, чтобы отдавать модель
бесплатно.
- Платная модель открывает эскроу в USDC на каждую сессию и рассчитывается по подписанной квитанции.
- Бесплатная модель обслуживается без обращения к блокчейну: ни эскроу, ни gas, ни транзакции.
Оплата начисляется за начатую минуту сессии, поэтому двухминутная задача оплачивает две минуты по часовой ставке, а не полный час.
Публикация в блокчейне (необязательно)
Переключатель Directory записывает ваш peer ID и локатор в WorkerRegistry, чтобы пользователи
могли вас найти, не зная адрес заранее.
Он выключен по умолчанию и включается, только если у машины есть глобально доступный адрес. Запись в каталоге, адрес которой никто не может набрать, хуже, чем отсутствие записи. Публикация стоит одной транзакции, а локатор после попадания в блокчейн постоянен: имя хоста или IP, записанные там, нельзя отозвать, только заменить.
Пиры в одной локальной сети могут подключаться без записи в реестре, вручную указав multiaddr в плагине пользователя.
Кошелёк и выплаты
Раздел Wallet показывает:
- адрес воркера,
- балансы ETH (gas) и USDC (заработок),
- unclaimed in escrow — рассчитанный доход, который уже ваш, но пока лежит в
JobEscrow, - кнопку Claim, которая переносит этот баланс в кошелёк.
Вывод средств — это транзакция, поэтому кошельку нужно немного ETH. USDC — это то, что воркер зарабатывает, а не то, что он тратит.
Приватный ключ хранится в открытом виде с правами 0600 в ~/.dsh/genkaku/genkaku.keys.json. Он
подписывает квитанции и привязывает запись в каталоге: сделайте резервную копию перед переносом
машины на новый диск и считайте любого, кто может прочитать этот файл, владельцем кошелька.
Уровни моделей
Маркетплейс помечает каждую модель по возможностям, которые сообщает Ollama, и числу параметров:
| Уровень | Значение |
|---|---|
agent | Есть tools и не менее 9B параметров — подходит для цикла агента |
light | Есть tools, но модель маленькая или её размер неизвестен — вызовы инструментов могут быть ненадёжными |
chat | Нет возможности tools — не подходит для агентов |
Уровень — это метка, а не фильтр. Ничто не мешает вам опубликовать модель chat; пользователь
просто увидит, что она не может управлять агентом.
Thinking-модели по умолчанию работают с think: false, чтобы один запрос не тратил свой бюджет на
скрытые рассуждения. Задайте GENKAKU_OLLAMA_THINK=1 перед запуском DeepSeek Harness, чтобы
сохранить поведение Ollama по умолчанию.
Порты и сеть
- libp2p по умолчанию слушает
/ip4/0.0.0.0/tcp/4001и/ip6/::/tcp/4002. Откройте настроенные TCP-порты, если хотите прямые соединения. - Локальный сервер статуса занимает первый свободный порт в диапазоне 47821–47826. Двум профилям DSH на одной машине нужны собственные порты; если вы бесконечно видите «Loading worker status…», вероятно, диапазон занят другим профилем.
- В Windows разрешите Node в брандмауэре при первом запуске воркера.
Устранение неполадок
Ollama не обнаружена. Запустите ollama serve один раз или нажмите Start Ollama в панели.
Если Ollama находится в другом месте, измените ollamaHost в настройках плагина.
Переключатель Directory неактивен. У машины нет глобально доступного адреса. Пиры в одной локальной сети всё ещё могут подключиться по multiaddr; иначе сессии придётся идти через seed-релей.
Сессия обслужена, но баланс не изменился. Расчёт начисляет accrued внутри контракта. Нажмите
Claim; после этого сумма появится как баланс USDC кошелька.
Ничего нет на npm? Проверьте, что вы на registry.npmjs.org, а не на зеркале, которое ещё не
синхронизировалось.