Skip to main content

AI 채팅 기능

딸깍문서의 핵심 기능인 AI 채팅 기반 문서 편집 시스템을 상세히 설명합니다.

개요​

AI 사이드바는 문서 편집기 오른쪽에 위치하며, 사용자와 AI 간의 대화를 통해 문서를 수정합니다.

flowchart LR
A[사용자 입력] --> B[컨텍스트 수집]
B --> C[AI 요청]
C --> D[스트리밍 응답]
D --> E[Diff 파싱]
E --> F[변경사항 표시]
F --> G{사용자 결정}
G -->|수락| H[문서에 적용]
G -->|거부| I[변경 취소]

AI 프로바이더 선택​

딸깍문서는 여러 AI 모델을 지원합니다:

Anthropic Claude (기본)​

const provider = "anthropic";
const model = "claude-sonnet-4-20250514";

OpenAI GPT (선택)​

const provider = "openai";
const model = "gpt-4o";

프롬프트 구조​

시스템 프롬프트​

AI는 다음과 같은 규칙을 따릅니다:

요청 유형AI 동작
수정/변경 요청XML diff 태그 생성
추가 요청<addition> 태그 사용
삭제 요청<deletion> 태그 사용
질문/설명마크다운 응답만

응답 형식​

<deletion>기존 텍스트</deletion>
<addition>새로운 텍스트</addition>

<<<USER_MESSAGE>>>
변경사항에 대한 설명

<<<CITATIONS>>>
[출처 정보 JSON]
<<<CITATIONS>>>

컨텍스트 전달​

문서 전체 컨텍스트​

기본적으로 전체 문서 내용이 AI에게 전달됩니다.

선택 영역 컨텍스트​

텍스트를 선택하면 해당 부분만 수정 대상이 됩니다:

interface SelectedContext {
text: string;
html: string;
range?: { start: number; end: number };
}
선택 영역 활용

특정 부분만 수정하고 싶다면 해당 텍스트를 선택한 후 요청하세요. AI가 선택된 부분만 정확히 수정합니다.

스타일 가이드​

문서 작성 스타일을 일관되게 유지하려면 스타일 가이드를 설정하세요.

설정 방법​

  1. AI 사이드바의 가이드 버튼 클릭
  2. 원하는 스타일 지침 입력
  3. 적용 클릭

가이드 예시​

- 경어체 사용
- 문장은 간결하게
- 전문 용어는 쉽게 풀어서 설명
- 불릿 포인트 활용

용어집​

특정 용어의 일관된 사용을 위해 용어집을 설정할 수 있습니다.

형식​

원문 → 번역/용어
AI → 인공지능
API → 응용 프로그램 인터페이스

활용​

AI가 문서 작성 시 용어집의 정의를 우선적으로 사용합니다.

참고자료 활용​

파일 첨부​

  • 📎 버튼으로 PDF, DOCX 첨부
  • 첨부된 파일 내용을 AI가 참조

@ 멘션​

등록된 참고자료를 @파일명으로 직접 참조:

@계약서.pdf 의 3조 내용을 요약해줘

출처 추적​

AI가 참고자료를 인용하면 [1], [2] 형태로 표시되며, 클릭 시 원문을 확인할 수 있습니다.

스트리밍 응답​

AI 응답은 실시간으로 스트리밍됩니다:

const stream = new ReadableStream({
async start(controller) {
for await (const event of streamResponse) {
if (event.type === "content_block_delta") {
controller.enqueue(
JSON.stringify({
type: "delta",
content: event.delta.text,
}),
);
}
}
},
});

스트리밍 상태​

상태설명
thinkingAI가 분석 중
start응답 시작
delta토큰 스트림
complete응답 완료
error오류 발생

변경사항 관리​

Diff 표시​

변경사항은 다음과 같이 표시됩니다:

  • 녹색 배경: 추가된 내용
  • 빨간색 배경 + 취소선: 삭제된 내용
  • 노란색: 대체된 내용

수락/거부​

각 AI 응답에는 수락(✓)과 거부(✗) 버튼이 있습니다:

  • 수락: 변경사항을 문서에 적용하고 Diff 제거
  • 거부: 변경사항을 취소하고 원본 유지

대화 히스토리​

AI와의 대화는 문서별로 저장됩니다:

interface Message {
role: "user" | "assistant";
content: string;
timestamp: Date;
suggestions?: DocumentChanges;
citations?: Citation[];
}

히스토리 활용​

  • 이전 대화 맥락 유지
  • 문서 재방문 시 대화 이어가기

프롬프트 제한​

플랜일일 제한
무료10회
프리미엄무제한

베스트 프랙티스​

효과적인 프롬프트 작성​

  1. 구체적으로: "문서 개선해줘" ❌ → "첫 문단을 더 격식있게 바꿔줘" ✅
  2. 맥락 제공: 필요시 배경 설명 추가
  3. 한 번에 하나씩: 복잡한 작업은 단계별로

피해야 할 것​

  • 매우 긴 문서 전체 수정 요청
  • 모호한 지시
  • 동시에 여러 작업 요청

다음 단계​