Post's Content

🖥️ 괄호의 의미
a (word) - 가중치 1.1배 증가
a ((word)) - 가중치 1.21배 증가 (1.1 * 1.1)
a [word] - 가중치 1.1배 감소
a (word:1.5) - 가중치 1.5배 증가
a (word:0.25) - 가중치 4배 감소 (= 1 / 0.25)
a \(word\) - 소괄호 그대로 입력

🖥️ 가중치
가중치는 0.6~1.4가 적절하다.

🖥️ 토큰
영어 자연어 처리에선 1토큰은 4글자, 0.75단어이다.

🖥️ 프롬프트 형태
문장보다는 단어 나열이 적절하다.
길어지면 이미지에 왜곡이 생기므로 절단해야 한다.

🖥️ 절단 방법
BREAK 프롬프트를 넣거나
“/” 나누기 표시를 쓴다.

Uploader's Information

Prompter: 탈퇴회원[1864] https://prompts.co.kr/탈퇴회원[1864]
  • Info
  • Date 2023-05-06 12:09:04 +0900
  • Actions
    목록
  • Liked by
  • DokgoSam2

    제가 알고 있는 것과 조금 다른 내용이 있어서, 저는 https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Features 를 읽어 보고 AUTOMATIC1111 기준으로 말씀드립니다. ( 언제나 RTFM 이지요)

    괄호문법에서 소괄호부분 설명이 다릅니다.
    \( \) 로 표시하여야 합니다.
    https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Features#attentionemphasis 를 보세요.

    입력가능한 토큰의 갯수가 틀립니다. 75 token보다 더 많이 쓰여지고 있습니다. 이곳의 Prompts도 세어보시면 왠만한 것은 75 단어를 넘습니다.
    https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Features#infinite-prompt-length 를 보세요.
    아마도 Stable Diffusion 에 직접 pythn으로 제어하는 초기 형태였다면 75 token 제한이 있었을지 모르나, AUTOMATIC1111 등을 위시한 전처리기를 사용하고 있는 요즘은 75 token제한은 내부처리의 문제이지, 사용자에게는 신경쓰지 않아도 됩니다. 다만 짧게 쓸 수록 그 단어에 대한 인식과 중요도가 높게 인식될 수는 있겠죠.

    토큰이 1token 4글자, 0.75단어라는 설명은 어디서 가져오신 것인지요. AUTOMATIC1111 기준으로 prompts를 입력하다가 보면 1단어가 1 token이라고 생각됩니다. 물론 복합명사의 경우에는 다른 것 같습니다. photo, realistic 은 입력하여 보면 2 token 으로 인식하였다고 기억합니다. 저도 궁금해서 찾아봐도 국내나 국외 어디서도 같은 내용은 찾아보지 못하였습니다. 괜찮으시다면 출처를 알려주세요. chatGPT나 LLMA 모델 ( 저는 이것들이 뭔지 모릅니다.)의 QnA에서 비슷한 이야기가 나온 듯도 한데... Stable DIffusion 기준으로는 찾지 못하였습니다

    2023-05-06 12:44:28 +0900
    • 탈퇴회원[1864]

      소괄호 그대로 입력 부분에 작대기 표시(?)가 올바르게 출력이 안되네요. 글 속에는 공식 문서에 적힌대로 쓰여져 있어요. (T-T)

      2023-05-06 13:06:26 +0900
    • 탈퇴회원[1864]

      토큰 단위는 ChatGPT 기준이긴 합니다. 저는 토큰 기준은 통일된 기준인 줄 알았는데 모델마다 다른가보네요. 출처는 여깁니다. https://www.version1.com/an-analysis-of-chatgpt-and-openai-gpt3-how-to-use-it-for-your-business/

      2023-05-06 13:07:14 +0900
    • prompts

      [@1864:1님] 제가 알기론 토큰은 모델 학습시킬때 정하는 것으로 알고 있습니다 기본이 75이고 더 높게 정할수도 있는걸로 알고 있습니다.

      2023-05-06 13:33:38 +0900
    • DokgoSam2

      [@1864:1님]
      감사합니다. 말씀하신 문서에서 찾아보니. "1 token is approximately 4 characters or 0.75 words." 라고 되어 있네요. 아마도 chatGPT에서 학습된 단어들의 평균값인가 봅니다. 그러면 stable diffusion 도 비슷할 수 있겠네요. Automatic 1111 에 입력하다보면 1단어 = 1 token 느낌인데, 복합명사는 두개이상으로도 인식한다고 느껴지더군요. chatGPT 는 자연어를 대상으로하니 꼭 같다고 볼 수는 없지 않을까요. ( 저도 정확한 지식없이 상식선으로 말씀드려 죄송합니다(

      2023-05-06 16:27:43 +0900
    • DokgoSam2

      [@1864:1님] 그렇네요 backslash 가 db로 넘어가면서 빠지네요. 죄송합니다

      2023-05-06 16:35:10 +0900
  • prompts

    a \(word\) - 소괄호 그대로 입력

    이부분이 잘못 표현되는거 같은데 한번 들여다 보겠습니다.

    2023-05-06 13:35:17 +0900
  • DokgoSam2

    Brake는 저는 이렇게 이해하였습니다.

    예를들어 80 token으로 먼든다면, 75 + 5 로 나뉘면서 뒤쪽의 5 token 이 높게 가중치가 갈수 있어, 필요한 곳에서 brake를 이용하여 25 + 55 식으로 강제로 잘라서 써먹는 용도의 키워드로 인식하였습니다.

    2023-05-06 16:33:30 +0900
  • prompts

    \ 이거 표시 제대로 안되는거 수정했습니다.

    2023-05-06 16:44:10 +0900
    • DokgoSam2

      감사합니다

      2023-05-06 17:24:39 +0900