클라이언트/DeepSeek Harness

DeepSeek Harness에서 Wokey API 사용하기

Wokey API 키를 발급받고 DeepSeek Harness의 Base URL을 Wokey로 지정한 뒤 curl 요청 한 번으로 연결을 확인하세요.

업데이트

이 페이지 내용expand_more

API 키와 Base URL 준비link

모든 클라이언트는 같은 Wokey API 키와 같은 Base URL을 사용합니다.

API 키 만들기

로그인한 뒤 API 페이지에서 플랫폼 키를 만드세요. 같은 계정의 키는 잔액을 공유합니다.

API 키 만들기key

Wokey Base URL 사용

클라이언트의 Base URL에 게이트웨이 도메인을 입력하세요. /v1을 붙일지는 아래 설정을 참고하세요.

클라이언트 설정link

DeepSeek Harness(dsh)는 사용자 지정 게이트웨이를 지원하므로 Wokey 키 하나로 DeepSeek, GPT, GLM, Claude 모델을 모두 사용할 수 있습니다. deepseek-v4.1-flash는 Chat Completions, Responses, Anthropic Messages를 지원합니다. 아래 설정은 Claude Opus 5.5와 DeepSeek-V4.1-Flash를 하나의 Anthropic Messages 공급자 아래에 두고, 두 모델 모두 이미지 입력을 선언합니다.

  1. 1

    0.2.1 프리릴리스 설치

    npm의 latest 태그는 아직 0.2.0입니다. DeepSeek은 V4.1-Flash-1017에 v0.2.1-rc.1 이상을 권장하므로 @next를 설치하세요.

  2. 2

    API 키 변수 설정

    설정에는 apiKeyEnv 이름만 적으므로 키가 파일에 남지 않습니다. 웹 UI의 Settings → Models에서 키를 저장할 수도 있습니다.

  3. 3

    공급자 추가

    ~/.dsh/profiles/web/cordis.patch.yml을 편집하세요(dsh headless는 profiles/headless). 이 예시는 두 모델 모두 Anthropic Messages를 사용하며 Base URL은 https://api.wokey.ai입니다. 대신 OpenAI Chat Completions를 선택한다면 별도의 공급자를 만들고 https://api.wokey.ai/v1을 사용하세요.

  4. 4

    이미지 입력 선언

    DeepSeek Harness는 선언되지 않은 사용자 지정 모델을 텍스트 전용으로 취급하므로, Wokey 모델이 비전을 지원하더라도 요청이 Wokey에 도달하기 전에 이미지를 거부할 수 있습니다. Opus 5.5, Haiku 5.5 등 비전 모델은 해당 모델 아래에 input: [text, image]를 추가하세요. UI에서는 Settings → Models → 공급자 편집 → Customized settings → 모델 행 펼치기 → Input types → Image를 사용하세요. 저장한 뒤 새 세션을 시작하세요.

  5. 5

    기존 공급자 유지

    이 재정의는 llm-pi-ai 항목 설정 전체를 대체하므로, UI에서 이미 공급자를 추가했다면 그것들도 providers 아래에 나열하세요. 모든 들여쓰기는 공백을 사용하고 YAML에 탭을 섞지 마세요. 저장한 뒤 새 세션을 시작하세요.

DeepSeek Harness
# 1. 0.2.1 설치 또는 업데이트
npm install -g @deepseek-ai/dsh@next
export WOKEY_API_KEY="YOUR_API_KEY"

# 2. ~/.dsh/profiles/web/cordis.patch.yml
- id: llm-pi-ai
  config:
    providers:
      wokey:
        displayName: Wokey
        apiKeyEnv: WOKEY_API_KEY
        api: anthropic-messages
        baseURL: https://api.wokey.ai
        models:
          - id: claude-opus-5-5
            name: Claude Opus 5.5
            contextWindow: 1000000
            input: [text, image]
          - id: deepseek-v4.1-flash
            name: DeepSeek-V4.1-Flash
            contextWindow: 1000000
            maxTokens: 393216
            input: [text, image]
- id: agent-default-model
  config:
    provider: wokey
    model: claude-opus-5-5

# 3. 시작
dsh web

API 형식과 Base URLlink

같은 클라이언트라도 API 형식을 바꾸면 Base URL 끝에 /v1을 붙일지가 달라질 수 있습니다.

형식Base URL용도
OpenAI Chat Completionshttps://api.wokey.ai/v1DeepSeek, GLM, Kimi 등 기타 모델
Anthropic Messageshttps://api.wokey.aiClaude 모델

설정 위치: ~/.dsh/profiles/web/cordis.patch.yml

Search / Fetch 요금과 Wokey 지원 범위link

Wokey는 이 페이지에 나열된 모델 추론 인터페이스를 제공하며, 단독 /v1/tools/search 또는 /v1/tools/fetch 엔드포인트는 제공하지 않습니다. 도구 호출을 지원한다고 해서 upstream의 모든 내장 웹 도구를 지원하는 것은 아닙니다. 모델 요청 안의 서버 측 검색은 실제 공급 경로에 따라 달라지며, 현재 Wokey가 검증하고 일관되게 지원하는 기능으로 표시하지 않습니다. 이 페이지는 Search/Fetch 호출당 Wokey 가격도 공개하지 않습니다. 문서로 지원되는 단독 검색·Fetch가 필요하면 DeepSeek API 키로 api.deepseek.com을 사용하고, Wokey 모델 호출과 별도로 설정·과금하세요.

공식 요금, 11월 1일 변경 사항 및 지원 안내

자주 발생하는 문제 해결link

  • “The current model does not support images”: Harness의 로컬 기능 검사 때문이며, Wokey나 Opus 5.5가 비전을 지원하지 않는다는 뜻이 아닙니다. 해당 모델에서 Image를 켜거나 YAML 항목에 input: [text, image]를 추가하세요.
  • 저장 후에도 이미지가 거부됨: 새 세션을 시작하고 모델을 다시 선택하세요. 기존 세션은 기록된 모델 기능과 첨부 파일을 그대로 유지합니다.
  • 이미지 요청이 400을 반환함: 프로토콜과 Base URL을 맞추세요. Anthropic Messages는 /v1 없는 https://api.wokey.ai를, OpenAI Chat Completions는 https://api.wokey.ai/v1을 사용합니다. deepseek-v4.1-flash는 두 형식을 모두 지원하지만, 클라이언트는 선택한 프로토콜의 형식으로 보내야 합니다.
  • 앱이 시작되지 않거나 YAML 줄 번호를 보고함: input이 의도한 모델 아래에 중첩되어 있는지, 모든 모델의 대시가 정렬되어 있는지, 파일에 탭이 없는지 확인하세요. 백업을 복원한 뒤 공백만 사용해 다시 저장하세요.
  • 앱이 “Select a model” 상태로 시작됨: agent-default-model이 여전히 존재하는 공급자와 모델을 가리키는지 확인하세요. 공급자를 삭제하거나 이름을 바꾼 뒤에는 이것도 업데이트하세요.
  • 탐색 후 모델은 보이지만 이미지 기능이 없음: Fetch available models는 주로 ID와 용량 필드만 채웁니다. 모든 모델을 비전 지원으로 표시하지 말고, 사용자 지정 비전 모델마다 input: [text, image]를 명시적으로 선언하세요.
  • 저장 후 다른 공급자가 사라짐: cordis.patch.yml 재정의는 llm-pi-ai 항목 전체를 대체하므로 기존 공급자를 모두 providers 아래에 유지하세요.

curl로 확인link

클라이언트에서 오류가 나면 먼저 curl로 API 키와 Base URL 문제가 아닌지 확인하세요.

DeepSeek Harness는 기본적으로 OpenAI Chat Completions 형식을 사용합니다. 이 요청이 200을 반환하면 API 키와 Base URL이 올바른 것입니다. 보내기 전에 YOUR_API_KEY를 내 키로 바꾸세요.

cURL
curl https://api.wokey.ai/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-v4.1-flash",
    "messages": [
      { "role": "user", "content": "Hello" }
    ]
  }'

오류 및 문제 해결link

먼저 인증, 잔액, 속도 제한, 모델 사용 가능 여부, 업스트림 타임아웃 중 어느 경우인지 구분하세요.

401

invalid api key

키가 없거나, 잘못 입력되었거나, 삭제되었거나, Authorization과 x-api-key 헤더가 서로 다릅니다.

402

insufficient balance

계정 잔액이 부족합니다. 요청을 더 보내기 전에 충전하세요.

403

model_denylisted / account_restricted

반복된 위반으로 해당 모델 또는 계정의 모든 모델에 대한 호출이 일시 중지되었습니다. 위반 처리 수수료 및 제한을 참고하세요.

403

request_blocked

이 요청은 업스트림에 도달하기 전에 차단되었으며 과금되지 않습니다. 예를 들어 모델이 방금 거부한 요청을 그대로 다시 보냈거나, 일시 중지된 최종 사용자(X-End-User-Id)인 경우입니다. 오류 메시지에 무엇이 차단되었는지 나와 있으니 안내에 따라 요청을 수정하거나 나중에 다시 시도하세요. 다른 요청에는 영향이 없습니다.

429

rate limited

요청이 너무 잦습니다. 나중에 다시 시도하거나 동시 실행 수를 줄이세요. 특정 모델 하나 또는 특정 최종 사용자(X-End-User-Id) 하나만 계속 429를 반환한다면 위반 후의 일시적인 제한일 수 있습니다.

499

client disconnected

응답이 끝나기 전에 클라이언트가 연결을 닫았습니다(코드 downstream_aborted). 기본적으로 무료입니다. 계정에서 지난 24시간 동안 클라이언트 연결 끊김이 50회 이상 발생하고 그것이 요청의 10% 이상을 차지하면, 이후 연결이 끊긴 요청은 업스트림이 보고한 사용량으로 과금됩니다. 대상은 캐시 읽기와 쓰기를 포함한 처리된 입력, 그리고 업스트림이 집계한 경우에만 출력입니다. 업스트림이 사용량을 보고하기 전에 끊긴 경우는 계속 무료입니다. 과금이 시작되면 계정에 알림이 가며, 연결 끊김 비율이 정상으로 돌아오면 1시간 안에 과금이 자동으로 중지됩니다. 흔한 원인은 클라이언트나 프록시의 타임아웃이 너무 짧거나, 프로그램이 완료 전에 요청을 취소하는 경우입니다.

502

upstream unavailable

업스트림 모델 서비스를 일시적으로 사용할 수 없습니다. 모델을 바꾸거나 나중에 다시 시도하세요.

504

upstream timeout

업스트림 응답 시간이 초과되었습니다. 컨텍스트를 줄이거나 max_tokens를 낮추거나 다시 시도하세요.

529

upstream overloaded

업스트림 모델이 일시적으로 과부하 상태이며, Wokey는 이미 다른 경로로 재시도했습니다(코드 upstream_overloaded). 잔액과는 관계가 없습니다. 잠시 후 다시 시도하거나 모델을 바꾸세요.

자주 묻는 질문link

DeepSeek Harness의 baseURL은 /v1로 끝나야 하나요?
provider의 api 필드에 따라 다릅니다. anthropic-messages이면 /v1 없이 https://api.wokey.ai를 사용하고, OpenAI Chat Completions에는 https://api.wokey.ai/v1을 사용하는 별도의 provider가 필요합니다.
현재 모델이 이미지를 지원하지 않는다고 나오는 이유는 무엇인가요?
Harness의 로컬 기능 검사 때문입니다. 사용자 지정 모델은 기본적으로 텍스트 입력만 선언합니다. 모델 항목에 input: [text, image]를 추가하고 저장한 뒤 새 세션에서 다시 시도하세요.
저장한 후 다른 provider가 사라진 이유는 무엇인가요?
cordis.patch.yml의 llm-pi-ai 재정의는 항목 전체를 대체합니다. 기존에 있던 provider도 Wokey와 함께 providers에 적어 넣으세요.