Status |
---|
colour | Yellow |
---|
title | 릴리즈 2.17.0 이상 |
---|
|
Info |
---|
|
릴리즈 2.18.0, 3.0.0 이상에서의 설정 방법은 아래 링크를 이용해주세요. [AIWriteSupporter] 릴리즈 2.18.0, 3.0.0 이상 설정 방법 |
생성형 AI를 연동해 자동 콘텐츠 생성을 지원하는 AI 글 작성 도우미 플러그인입니다.
업무용 콘텐츠 초안을 자동으로 생성하거나 다양한 편집을 할 수 있어 효율적인 콘텐츠 작성을 할 수 있습니다.
목차
...
지원 브라우저
...
Image Added | Image Added | Image Added | Image Added |
---|
Chrome | Edge | Safari | IE |
Image Added | Image Added | Image Added | Image Added |
- 공식적으로 지원하는 웹 브라우저는 다음과 같습니다.
- Microsoft Edge 최신버전
- Google Chrome 최신버전
- Apple Safari 최신버전
- 다른 브라우저에서도 작동할 수는 있지만 모든 기능이 올바르게 작동하지 않을 수 있습니다.
- Internet Explorer 브라우저는 지원하지 않습니다.
...
AI에게 글 작성을 요청하는 버튼을 툴바 영역, 벌룬, 바로 삽입, 메뉴 영역에 추가할 수 있습니다.
툴바에 추가
Image RemovedImage Added
Code Block |
---|
language | js |
---|
theme | Emacs |
---|
title | synapeditor.config.js |
---|
|
//...
'editor.toolbar': [
// AI 요청하기 버튼
'openAIInteraction',
//...
],
// ... |
바로 삽입에 추가
Image RemovedImage Added
Code Block |
---|
language | js |
---|
theme | Emacs |
---|
title | synapeditor.config.js |
---|
|
//...
'editor.quickInsert': [
// AI 요청하기 버튼
'openAIInteraction',
//...
],
// ... |
...
Key | Type | 필수 | 기본값 | 설명 |
---|
url | string | O | '' | - 요청을 보낼 URL을 설정합니다.
- OpenAI의 API 주소
- OpenAI의 API로 요청을 하도록 구현한 URL
- HyperCLOVA
X API 주소HyperCLOVA URL- URL
Status |
---|
| |
---|
colour | Yellow |
---|
title | 릴리즈 2.17.2311 이상 |
---|
|
- 설정이 되지 않으면 툴바에 플러그인 버튼이 표시되지 않습니다.
|
apiKey | string |
| '' | - OpenAI에서 발급받은 API Key를 설정합니다.
- 해당 설정을 사용하게 되면 브라우저에 Key 값이 노출되기 때문에, Key 값을 설정하지 않고 서버를 통해 요청을 할 수 있도록 하는 것이 안전합니다.
|
| string | | 'gpt' | '' Status |
---|
| |
---|
colour | Yellow |
---|
title | 릴리즈 2.1817.0 2311 이상 |
---|
|
- 사용할 AI를 설정합니다. 기본값은 'gpt'입니다.
- OpenAI GPT: 'gpt'
- NAVER HyperCLOVA X: 'hcx'
| tokenUrl | string | 릴리즈 2180 - 토큰 발급 요청을 보낼 URL을 설정합니다.
- HyperCLOVA 요청을 보낼 때 필요하며, GPT의 apiKey에 해당하는 설정입니다.
- 해당 설정을 사용할 경우 반드시 tokenUrl, clientID, clientSecret이 함께 설정되어야 합니다.
- 해당 설정을 사용하게 되면 브라우저에 Key 값이 노출되기 때문에, Key 값을 설정하지 않고 서버를 통해 요청을 할 수 있도록 하는 것이 안전합니다.
| clientID | string | '' | Status |
---|
colour | Yellow |
---|
title | 릴리즈 2.18.0 이상 |
---|
|
- NAVER에서 발급받은 clientID를 설정합니다.
- HyperCLOVA 요청을 보낼 때 필요하며, GPT의 apiKey에 해당하는 설정입니다.
- 해당 설정을 사용할 경우 반드시 tokenUrl, clientID, clientSecret이 함께 설정되어야 합니다.
- 해당 설정을 사용하게 되면 브라우저에 Key 값이 노출되기 때문에, Key 값을 설정하지 않고 서버를 통해 요청을 할 수 있도록 하는 것이 안전합니다.
| clientSecret | string | '' | Status |
---|
colour | Yellow |
---|
title | 릴리즈 2.18.0 이상 |
---|
|
- NAVER에서 발급받은 clientSecret를 설정합니다.
- HyperCLOVA 요청을 보낼 때 필요하며, GPT의 apiKey에 해당하는 설정입니다.
- 해당 설정을 사용할 경우 반드시 tokenUrl, clientID, clientSecret이 함께 설정되어야 합니다.
- 해당 설정을 사용하게 되면 브라우저에 Key 값이 노출되기 때문에, Key 값을 설정하지 않고 서버를 통해 요청을 할 수 있도록 하는 것이 안전합니다.
| requestBody | Object | {} | - 추가로 API에 전송할 내용을 설정합니다.
- max_tokens
- temperature
- n
- ....
- 자세한 내용은 아래 링크를 참고해 주세요.
| ocrUrl | string | '' | - OCR URL을 설정하면 초안 작성 메뉴에서 '이미지 첨부'메뉴가 활성화됩니다.
- 이미지를 첨부하면 이미지에 있는 텍스트를 추출해 추출된 텍스트와 프롬프트를 AI에 함께 전송합니다.
| customPrompts | Object[] | [] | - 사용자 정의 프롬프트 메뉴를 추가합니다.
- key, type, label, prompt 키를 가지는 객체의 배열을 설정합니다.
Code Block |
---|
|
{
key: 'customPromptKey',
type: 'prompt', // 또는 'immediately'
label: {
ko: '메뉴에 보여지는 텍스트',
en: 'Label shown in menu'
},
prompt: {
ko: 'AI에게 전달될 프롬프트. 요약해줘, 내용을 늘려줘, ...', | requestBody | Object |
| {} | - 추가로 API에 전송할 내용을 설정합니다.
- GPT4 모델 설정 가능합니다.
Status |
---|
| |
---|
colour | Yellow |
---|
title | 3.0.2407 이상 |
---|
|
- max_tokens
- temperature
- n
- ....
- 자세한 내용은 아래 링크를 참고해 주세요.
|
ocrUrl | string |
| '' | - OCR URL을 설정하면 초안 작성 메뉴에서 '이미지 첨부'메뉴가 활성화됩니다.
- 이미지를 첨부하면 이미지에 있는 텍스트를 추출해 추출된 텍스트와 프롬프트를 AI에 함께 전송합니다.
|
customPrompts | Object[] |
| [] | - 사용자 정의 프롬프트 메뉴를 추가합니다.
- key, type, label, prompt 키를 가지는 객체의 배열을 설정합니다.
Code Block |
---|
| {
key: 'customPromptKey',
type: 'prompt', // 또는 'immediately'
label: {
enko: 'Prompts메뉴에 to be passed to the AI보여지는 텍스트',
} } | Code Block |
---|
| { en: 'Label shown key:in 'customPromptKeymenu',
type: 'group'},
labelprompt: {
ko: '하위 메뉴가 있는 메뉴AI에게 전달될 프롬프트. 요약해줘, 내용을 늘려줘, ...',
en: 'Menu with submenus'Prompts to be passed to the AI',
}
}, |
Code Block |
---|
| {
itemskey: ['summarizecustomPromptKey',
'explanation', ...]
} |
key | Type | 필수 | 설명 |
---|
key | string | O | - 프롬프트를 구분할 수 있는 유니크한 값을 설정합니다.
| type | 'prompt' | 'immediately' | 'group' | O | - prompt: 프롬프트 입력칸에 prompt에 정의한 텍스트가 추가됩니다.
- immediately: prompt에 정의한 텍스트가 메뉴를 실행 시 바로 전송됩니다.
- group: 하위 메뉴를 가지는 경우 설정합니다.
| label | Object | O | | prompt | Object | | items | string[] | type: 'group' 일 때만 유효합니다.
- 하위 메뉴에 보일 프롬프트 메뉴의 key를 배열 형태로 설정합니다.
| iconName | string | - 아이콘 이름을 설정합니다.
- 이름에 해당하는 아이콘이 에디터에 등록이 되어있으면 메뉴에 아이콘이 보입니다.
| | categoryConfig | Object | {} | - 카테고리 별 보일 프롬프트 메뉴를 설정합니다.
- 카테고리는 아래와 같습니다.
- favorite: 즐겨찾기
- draft: 초안 작성
- edit: 편집 또는 검토
- createByReference: 내용을 참고하여 생성
- write: 글쓰기
|
URL, API Key 설정
요청을 보낼 API의 URL, API Key를 설정합니다.
URL은 OpenAI의 API 주소 (https://api.openai.com/v1/chat/completions) 또는 OpenAI의 API로 요청을 하도록 한 URL을 설정합니다.
URL은 필수 값이기 때문에 설정을 하지 않으면 툴바나 메뉴 등에 플러그인의 'AI 요청하기' 버튼이 보이지 않습니다.
API Key에는 openAI에서 발급받은 키를 설정합니다. API Key를 클라이언트에 설정하게 되면 브라우저의 개발자 도구 > 네트워크 탭에 Key 값이 노출되기 때문에 안전하지 않습니다. Key 값을 보이지 않게 감추려면 해당 설정을 사용하지 않고, 서버에서 요청을 하도록 해야 합니다.
Code Block |
---|
language | js |
---|
theme | Emacs |
---|
title | synapeditor.config.js |
---|
|
// URL과 API Key를 설정하는 경우
'aiWriteSupporter.config': {
url: 'https://api.openai.com/v1/chat/completions',
apiKey: 'sk-abc123...456xyz' // 브라우저에 노출되므로 안전하지 않음
}
// URL만 설정하는 경우
'aiWriteSupporter.config': {
url: '/request'
} |
Status |
---|
colour | Yellow |
---|
title | 릴리즈 2.18.0 이상 |
---|
|
사용할 AI, OpenAI의 GPT 또는 NAVER의 HyperCLOVA X를 URL, API Key 설정을 통해 지정할 수 있습니다.
...
type: 'group',
label: {
ko: '하위 메뉴가 있는 메뉴',
en: 'Menu with submenus'
},
items: ['summarize', 'explanation', ...]
} |
key | Type | 필수 | 설명 |
---|
key | string | O | - 프롬프트를 구분할 수 있는 유니크한 값을 설정합니다.
| type | 'prompt' | 'immediately' | 'group' | O | - prompt: 프롬프트 입력칸에 prompt에 정의한 텍스트가 추가됩니다.
- immediately: prompt에 정의한 텍스트가 메뉴를 실행 시 바로 전송됩니다.
- group: 하위 메뉴를 가지는 경우 설정합니다.
| label | Object | O | | prompt | Object |
| | items | string[] |
| type: 'group' 일 때만 유효합니다.
- 하위 메뉴에 보일 프롬프트 메뉴의 key를 배열 형태로 설정합니다.
| iconName | string |
| - 아이콘 이름을 설정합니다.
- 이름에 해당하는 아이콘이 에디터에 등록이 되어있으면 메뉴에 아이콘이 보입니다.
|
|
categoryConfig | Object |
| {} | - 카테고리 별 보일 프롬프트 메뉴를 설정합니다.
- 카테고리는 아래와 같습니다.
- favorite: 즐겨찾기
- draft: 초안 작성
- edit: 편집 또는 검토
- createByReference: 내용을 참고하여 생성
- write: 글쓰기
|
URL, API Key 설정
요청을 보낼 API의 URL, API Key를 설정합니다.
URL은 OpenAI의 API 주소 (https://api.openai.com/v1/chat/completions) 또는 OpenAI의 API로 요청을 하도록 한 URL을 설정합니다.
URL은 필수 값이기 때문에 설정을 하지 않으면 툴바나 메뉴 등에 플러그인의 'AI 요청하기' 버튼이 보이지 않습니다.
API Key에는 openAI에서 발급받은 키를 설정합니다. API Key를 클라이언트에 설정하게 되면 브라우저의 개발자 도구 > 네트워크 탭에 Key 값이 노출되기 때문에 안전하지 않습니다. Key 값을 보이지 않게 감추려면 해당 설정을 사용하지 않고, 서버에서 요청을 하도록 해야 합니다.
Code Block |
---|
language | js |
---|
theme | Emacs |
---|
title | synapeditor.config.js |
---|
|
// URL과 API Key를 설정하는 경우
'aiWriteSupporter.config': {
ai:
'gpt',
url: 'https://api.openai.com/v1/chat/completions',
apiKey: 'sk-abc123...456xyz' // 브라우저에 노출되므로 안전하지 않음
}
// URL만 설정하는 경우
'aiWriteSupporter.config': {
ai: 'gpt',
url: '/request'
}
|
...
Status |
---|
| |
---|
colour | Yellow |
---|
title | 릴리즈 2.17.2311 이상 |
---|
|
사용할 생성형 AI에 맞춰 아래와 같이 설정합니다.
OpenAI GPT 설정
Code Block |
---|
language | js |
---|
theme | Emacs |
---|
title | synapeditor.config.js |
---|
|
// URL과 API Key를 설정하는 경우
'aiWriteSupporter.config': {
ai: 'hcx',
tokenUrl: 'https://api.hyperclova.ai/v1/tokens', // 토큰 발급 요청 API URL ai: 'gpt',
url: 'https://api.hyperclovaopenai.aicom/v1/chat-completions/HCX-001',
clientID: '2029ae...97b72',
/completions',
apiKey: 'sk-abc123...456xyz' // 브라우저에 노출되므로 안전하지 않음
}
// URL만 설정하는 경우
'aiWriteSupporter.config': {
ai: 'gpt',
clientSecreturl: '8gsetc...0bges3' // 브라우저에 노출되므로 안전하지 않음
}
// URL만 설정하는 경우
/request'
}
|
Naver HyperCLOVA X 설정
Code Block |
---|
language | js |
---|
theme | Emacs |
---|
title | synapeditor.config.js |
---|
|
// url: HyperCLOVA X로 요청을 하도록 구현한 URL
'aiWriteSupporter.config': {
ai: 'hcx',
url: '/request',
} |
Request Body 설정
...
Status |
---|
| |
---|
colour | Yellow |
---|
title | 릴리즈 2.1817.0 2311 이상 |
---|
|
HyperCLOVA X의 설정할 수 있는 값들은 아래와 같습니다.
필드 | 타입 | 설명 |
---|
temperature | double | 생성 토큰에 대한 다양성 정도 (설정값이 높을수록 다양한 문장 생성 가능) - 0~1 (기본값: 0.5) |
topK | int | 생성 토큰 후보군에서 확률이 높은 k 개를 후보로 지정하여 샘플링 - 0~128 (기본값: 0) |
topP | double | 생성 토큰 후보군을 누적 확률을 기반으로 샘플링 - 0~1 (기본값: 0.8) |
repeatPenalty | double | 같은 토큰을 생성하는 것에 대한 패널티 정도 (설정값이 높을수록 같은 결괏값을 반복 생성할 확률 감소) - 0~10 (기본값: 5) |
stopBefore | string | 토큰 생성 중단 문자 - [] (기본값) |
maxTokens | int | 최대 생성 토큰 수 - 0~2048 (기본값: 2048) |
프롬프트의 바로 이미지 첨부 방법
AI가 Gemini 이거나 GPT4 Model 이상을 사용할 경우
Status |
---|
| |
---|
colour | Yellow |
---|
title | 3.0.2407 이상 |
---|
|
AI에게 이미지가 포함된 텍스트 프롬프트를 바로 전송이 가능합니다.
AI Gemini인 경우 이미지는 최대 1개까지 첨부 가능합니다.
GPT4이상의 Model을 사용하는 경우 이미지는 최대 10개까지 첨부 가능합니다.
OCR URL 설정: '이미지 첨부' 기능 사용
ocrUrl
을 설정하면 초안 작성 메뉴에서 '이미지 첨부' 메뉴가 활성화됩니다.
...
플러그인에 미리 정의된 프롬프트 메뉴 Key는 [AIWriteSupporter] 미리 정의된 프롬프트 메뉴에서 확인할 수 있습니다.
적용된 모습 | 설정 |
---|
|
Code Block |
---|
language | js |
---|
theme | Emacs |
---|
title | synapeditor.config.js |
---|
| 'aiWriteSupporter.config': {
categoryConfig: {
draft: [
'meetingRequestEmail', 'salesEmail', 'jobAnnouncement'
]
}
} |
|
...