특정 독점 AI 모델에 사용자를 종속시키고 월간 구독료에 높은 토큰 마진을 부과하는 일반적인 올인원 도구들과 달리, Novelcrafter는 BYOK(Bring Your Own Key, 자체 API 키 등록) 아키텍처를 채택하고 있습니다. Novelcrafter는 장편 소설 창작에 최적화된 작업 환경——몰입형 원고 편집기, 장면 비트(Scene Beat) 개요 관리, 체계적인 세계관 설정집(Codex)——을 제공하는 데 집중하며, 텍스트 생성을 담당하는 AI 연산과 모델 선택권은 온전히 작가에게 맡깁니다. 따라서 작가는 최상위 상용 모델부터 클라우드 애그리게이터, 오프라인에서 로컬로 구동되는 오픈소스 모델까지 자유롭게 연결하여 활용할 수 있습니다.
이 시스템을 효과적으로 구축하기 위해서는 세 가지 핵심 단계를 거쳐야 합니다: 외부 API 자격 증명 연결, 프롬프트 프리셋에 작업별 모델 배정, 그리고 작품 특유의 문체와 호흡에 맞춘 생성 샘플링 파라미터(Temperature, Top P, 반복 페널티 등) 튜닝입니다.
1. 외부 AI 공급자 및 API 키 연동
Novelcrafter에서 AI 연결은 계정 단위 설정으로 관리됩니다. 화면의 프로필 사진 → Open Settings → AI Credentials(또는 AI Connections) 메뉴로 이동하여 설정할 수 있습니다. 여기서 반드시 기억해야 할 점은 모든 API 키가 클라우드 서버가 아닌 사용자의 브라우저 로컬 스토리지(Local Storage)에만 저장된다는 사실입니다. 브라우저 캐시를 삭제하거나 시크릿/사생활 보호 모드를 사용할 때, 혹은 작업 PC를 변경할 때는 키를 다시 연결하거나 설정 내보내기/가져오기 기능을 통해 환경을 이전해야 합니다.
방법 A: OpenRouter 연동 (대다수 작가에게 가장 권장)
별도의 복잡한 결제 계정 관리 없이 여러 최신 모델을 한곳에서 번갈아 사용하고 싶은 작가에게는 OpenRouter가 가장 유연한 선택지입니다:
- AI Credentials 목록에서 OpenRouter를 찾아 Connect를 클릭합니다.
- Continue to OpenRouter를 선택하여 계정 로그인 후 연결을 승인합니다.
- 연동 시 키별 지출 한도(Credit Limit)를 자율적으로 설정할 수 있습니다. 주의 사항: 설정한 한도에 도달하면 Novelcrafter에서 유효하지 않은 키 또는 잔액 부족 오류가 발생하므로, OpenRouter 대시보드에서 한도를 증액하거나 해제해야 합니다.
- 연동 후에는 단 한 번의 선불 충전으로 Anthropic의 Claude 시리즈, OpenAI의 GPT 모델, Mistral, Llama 기반 소설 특화 미세조정 모델 등을 단일 계정에서 호출할 수 있습니다.
방법 B: OpenAI 공식 API 직접 연결
OpenAI 개발자 플랫폼 계정을 보유하고 있는 경우:
- OpenAI 개발자 콘솔에서 API 시크릿 키를 발급받습니다. 일반 사용자용 ChatGPT Plus 구독은 API 사용 권한을 포함하지 않으며 결제 체계가 완전히 분리되어 있습니다.
- Novelcrafter의 AI Credentials 메뉴에서 OpenAI를 선택하고 키를 붙여넣은 뒤 저장합니다.
방법 C: OpenAI 호환 엔드포인트 (기타 클라우드 및 로컬 모델)
Novelcrafter는 표준화된 OpenAI API 규격을 따르는 제3자 플랫폼 및 로컬 추론 엔진 연결을 폭넓게 지원합니다:
- AI Credentials 화면 하단으로 스크롤하여 OpenAI Compatible Connection → Add를 클릭합니다.
- 임의의 서비스 이름(Fireworks, Grok / xAI, Groq, Mancer, NanoGPT, NovitaAI 등)과 해당 공급자의 Base URL을 입력합니다. 호환 엔드포인트 URL은 대체로
/v1로 끝납니다(예:https://api.groq.com/openai/v1또는https://api.x.ai/v1). - 발급받은 API 키를 입력하면 Novelcrafter가 제공 모델 목록을 자동 검색합니다. 목록이 자동으로 뜨지 않는다면 Use custom model list를 체크한 뒤 쉼표나 줄바꿈으로 모델 식별자를 정확히 입력합니다.
- 완전 오프라인 로컬 환경: LM Studio나 Ollama를 이용해 PC에서 로컬 모델을 구동 중인 작가는 Base URL에 로컬 주소(예:
http://localhost:1234/v1)를 입력할 수 있습니다. 원고 유출 위험이 전혀 없으며 토큰 비용 또한 영구적으로 발생하지 않습니다. - Anthropic 콘솔 직접 연결 제한 사항: 웹 브라우저의 교차 출처 리소스 공유(CORS) 보안 정책으로 인해 브라우저 환경에서 Anthropic 공식 API 콘솔로 직접 통신하는 것은 기술적으로 차단됩니다. Claude 모델을 사용하려는 작가는 OpenRouter를 경유하거나 LiteLLM과 같은 로컬 프록시를 구성해야 합니다.
2. 프롬프트 라이브러리(Prompts)에서 모델 배정 및 관리
API 자격 증명을 등록한 후, 모델은 전체 기능에 하나로 고정되는 것이 아니라 작업 목적별 프롬프트에 개별적으로 할당됩니다. Novelcrafter는 소설 창작 과정을 장면 비트 기반 본문 작성(Scene Beat Completion), 이어쓰기(Continue Writing), 장면 요약(Scene Summarization), 워크숍 대화(Workshop Chat) 등으로 세분화하여 다룹니다.
특정 작업에 연결된 모델을 변경하려면:
- 좌측 사이드바나 메인 메뉴에서 Prompt Library를 엽니다.
- 수정할 프롬프트(예: 기본 제공되는 General Purpose Scene Beat Completion)를 선택합니다.
- 시스템 기본 읽기 전용 프롬프트인 경우 Clone을 클릭하여 복제본을 만듭니다. 공식 기본 프롬프트는 직접 수정이 제한되어 있습니다.
- 프롬프트 편집 화면의 General 탭에서 Models 섹션으로 이동합니다.
- 여기에서 개별 모델을 추가/삭제하거나 미리 구성해 둔 Model Collections(모델 모음집)를 연결할 수 있습니다. '빠른 아이디어 스케치용(Groq Llama 3 등)'과 '심층 본문 집필용(Claude 3.5 Sonnet 등)' 컬렉션을 분리해 두면 원고 작성 시 즉각적인 모델 전환이 가능합니다.
3. 산문 생성 파라미터(Prose Settings) 정밀 조율
소설 집필에서는 모델 자체의 체급 못지않게 샘플링 파라미터 설정이 문체와 어휘 다양성, 서사의 논리적 일관성을 좌우합니다. Models 목록에서 모델 이름 옆의 확장 화살표(>)를 누르면 상세 파라미터 제어판이 열립니다:
1. Temperature (온도: 창의성과 규칙 준수율의 균형)
- 작동 원리: 다음 토큰을 예측할 때의 확률 분포 평탄도를 제어합니다.
- 낮출 때 (0.3 – 0.6): 출력이 신중해지고 지시사항에 엄격하게 집중됩니다. 앞선 장면 요약, 특정 인물의 고유한 말투 유지, 정교한 복선 배치가 필수적인 미스터리 전개에 적합합니다.
- 높일 때 (0.7 – 1.0+): 문장이 훨씬 과감해지고 은유와 묘사가 풍부해집니다. 문장이 뻔하고 단조롭게 느껴지거나, 감각적 배경 묘사, 환상적인 꿈 장면, 격렬한 전투 장면을 집필할 때 이상적입니다.
2. Top P (핵 샘플링: 어휘 풀과 이상 단어 억제)
- 작동 원리: 누적 확률이 설정된 백분율에 도달하는 상위 후보 단어로 선택 범위를 좁힙니다.
- 실전 활용: 오픈소스 모델에서 높은 온도를 설정했을 때 기괴한 오탈자나 의미 없는 기호, 조어가 튀어나오는 현상이 발생하면 Top P를 0.85 – 0.90 수준으로 낮추어 안전하고 검증된 어휘만 선택하도록 제한합니다. 다양한 어휘를 실험하려면 값을 높입니다.
3. Max Tokens (최대 생성 길이 및 호흡 조절)
- 작동 원리: 한 번의 요청에서 생성될 수 있는 최대 토큰 수를 엄격하게 제한합니다.
- 실전 활용: 언어 모델은 설정된 토큰 상한에 도달하면 문장 중간이라도 출력을 즉시 중단합니다. 따라서 문단 길이를 조절하겠다는 이유로 Max Tokens를 너무 낮게 잡지 마십시오. 한 개 비트의 장면을 온전히 끝맺을 수 있는 여유 공간(800 ~ 1,500 토큰)을 부여하고, 실제 원하는 분량은 프롬프트 지시문이나 입력 변수를 통해 유도하는 것이 정석입니다.
4. 페널티 설정 (말버릇 반복과 도돌이표 방지)
- Frequency Penalty (빈도 페널티): 텍스트 내에 이미 여러 번 등장한 단어의 재등장을 억제합니다. 모델이 특정 부사나 표현(예: "갑자기", "응시했다", "숨을 들이쉬며")을 상습적으로 반복할 때 미세하게 상향(+0.1 ~ +0.3)합니다. 과도하게 높이면 등장인물의 고유 이름까지 회피하려 하므로 주의해야 합니다.
- Presence Penalty (존재 페널티): 이미 언급된 주제나 개념이 다시 다루어지는 것을 억제합니다. 대화 장면에서 인물들이 같은 논쟁거리로 맴돌지 않고 새로운 화제를 꺼내도록 유도할 때 유용합니다.
- Repetition Penalty (반복 페널티): 로컬 및 오픈소스 모델에서 널리 활용되는 범용 파라미터(보통 1.05 ~ 1.15)로, 문장 구조가 도돌이표를 도는 현상을 강력히 차단합니다.
- Reasoning / Thinking Effort (추론 연산 깊이): 내부 생각 사슬을 지원하는 추론 모델(Claude 생각 모드나 OpenAI o-시리즈)의 경우, 본문 작성에 앞서 플롯의 인과관계와 Codex 설정 일관성을 검증하는 사전 분석 깊이를 설정합니다.
4. Write 원고 인터페이스에서의 실전 활용
모든 연동과 프롬프트 세팅을 마친 뒤에는 실제 원고 집필 과정에서 직관적으로 AI를 활용할 수 있습니다:
- Write 탭에서 작업할 장이나 장면을 엽니다.
- 에디터 본문의 빈 줄에서 슬래시
/를 입력하고 메뉴에서 Scene Beat를 선택합니다. - 해당 장면에서 전개될 사건이나 인물의 행동 지침을 입력합니다. Novelcrafter는 내용에서 Codex 항목(인물, 장소, 주요 사물)을 자동으로 인식하여 맥락에 연결합니다.
- Play (▶) 버튼 옆의 드롭다운을 열어 미리 맞춰둔 모델 프리셋을 지정하거나, Tweak and Generate를 눌러 세부 옵션을 즉석에서 변경합니다.
- 출력이 완료되면 4가지 선택지가 제공됩니다:
- Apply: 생성된 산문을 원고 본문에 즉시 반영합니다.
- Retry: 이번 결과를 버리고 동일한 조건으로 다시 생성합니다.
- Discard: 생성 결과를 취소하고 삭제합니다.
- Section: 접이식 카드(Section) 블록으로 본문 내에 보관합니다. 서로 다른 모델로 여러 버전을 생성한 뒤, 각 버전에서 가장 빛나는 문장을 골라 결합하는 '키트배싱(Kitbashing)' 작업에 탁월합니다.
로컬 브라우저 기반의 안전한 BYOK 체계, 모듈형 프롬프트 라이브러리, 그리고 정밀한 산문 생성 파라미터 조율을 결합하면 작가는 AI 비용을 투명하게 통제하면서 작품의 고유한 서사 톤을 완벽하게 주도할 수 있습니다.