Babechat

프롬프트 가이드라인 [기초]

캐릭터를 더욱 안정적으로 만들기 위한 프롬프트 가이드라인


※ 본 가이드라인은 2025년 8월 기준으로 작성되었으며, LLM 연구 발전 추이와 BabeChat의 프롬프트 엔지니어링에 따라 내용이 변경될 수 있음을 안내드립니다.


모델이 해석하기 어려운 모호한 표현보다, 구체적이고 명확한 지시가 훨씬 효과적입니다.

아쉬운 예시

아름답고 느낌 있는 문체로 작성해 줘.

→ '느낌 있는', '엄청난' 등은 모델마다 다르게 해석할 수 있습니다.

좋은 예시

3인칭 전지적 시점으로, 캐릭터의 내면 심리를 중심으로 서술하세요.

은유법을 사용하되, 형이상학적 표현은 피하세요.

→ 시점, 서술 방식, 표현 기법을 명확하게 지정하여 일관된 결과물을 유도합니다.

캐릭터의 정보와 행동 지시사항이 섞여 있으면 모델 답변의 불안정성이 올라갈 수 있습니다.

아쉬운 예시

이 캐릭터는 냉정한 성격의 천재 해커이고, 항상 존댓말을 쓰며, 답변은 무조건 세 문단으로 나눠서 해야 해.

좋은 예시

[캐릭터 정보]

・성격: 냉정하고 계산적인 천재 해커. 감정을 잘 드러내지 않음.

・말투: 항상 논리적이고 간결한 존댓말 사용.

[출력 지시]

・모든 답변은 3인칭 시점으로 서술할 것.

・상황 묘사 후, 마지막에 캐릭터의 대사를 “ ” 안에 넣어 출력할 것.

※ TIP: 모델에 따라 추천되는 구조화 방식은 다르지만, 보통 마크다운, XML, YAML 구조를 학습합니다. 해당 정보에 대한 자세한 설명은 다음 심화 가이드라인을 참조해 주세요.

LLM은 여러 복잡한 작업을 동시에 처리하는 데 어려움을 겪습니다.

  • 토큰 최적화를 위해 줄임말이나 이모지를 과도하게 사용하면 모델 답변의 불안정성이 증가합니다. 이는 모델의 해석력에 크게 의존하게 되므로, 모델 변경 시 다른 결과로 이어질 수 있습니다.

  • 캐릭터의 체력/마나/호감도 같은 수치를 실시간으로 계산하고, 여러 캐릭터를 동시에 연기하며, 상황에 맞는 이미지까지 출력하도록 요구하는 것은 LLM이 처리하기 매우 어려운 작업입니다. 작업이 복잡할수록 모델은 지시를 누락하거나 잘못된 답변을 생성할 확률이 높아집니다.

꼭 정해진 템플릿을 따를 필요는 없습니다. 우리가 잘 정리된 글을 더 쉽게 이해하듯, 모델도 마찬가지입니다. 정보가 명확하게 구분되어 있다면 자연어만으로도 충분히 효과적으로 작동합니다.

  • 권장: 마크다운, YAML 등 가독성 좋은 방식으로 정보를 구조화하면 정확도를 높일 수 있습니다.

  • 비권장: JSON 형식은 토큰 효율이 낮고 모델에 따라 성능 편차가 커 비추천합니다. (관련 연구)


BabeChat에는 원활한 채팅 경험을 위해 보이지 않는 기본 시스템 지침(문장 반복 방지, 이미지 출력 등)이 적용되어 있습니다. 채팅 안정성이 보장하기 위해서, 아래 항목들을 주의해주세요.

BabeChat 시스템 프롬프트는 이미 답변 길이를 보장하도록 설정되어 있습니다.

충돌하는 지시

답변은 무조건 500자 이상으로 길게 써. 세 문단 이상으로 묘사해.

효과적인 지시

캐릭터의 모든 동작과 표정, 시선, 자세, 상호작용를 구체적인 디테일로 묘사하세요.

캐릭터의 생각과 감정 변화를 대사와 행동에 반영하세요.

※분량 대신 '묘사의 깊이'나 '서술 방식'을 구체적으로 지시하는 것이 훨씬 효과적입니다.

내부 이미지(플랫폼 업로드)와 외부 이미지(URL 링크) 중 한 가지 방식만 사용해주세요.

  • 혼용 금지: 두 방식을 섞어 사용하면, 모델이 어떤 이미지를 어떤 방식으로 출력해야 할지 혼란을 겪어 이미지 출력이 실패하거나 엉뚱한 이미지를 불러올 수 있습니다.

  • 불필요한 이미지 제거: 내부 이미지 설명에 '출력 금지'라고 적어두어도 모델은 해당 이미지를 출력 후보로 인식합니다. 채팅에 실제로 사용할 이미지만 남겨두는 것이 가장 확실한 방법입니다.

  • 키워드 사용 지시문 제거: 현재 BabeChat은 키워드가 아닌 img:[slug] 방식으로 이미지를 출력합니다. 프롬프트나 시작 상황에 img: 비비 슬픈 표정 같은 키워드로 이미지 사용을 유도하면 오류가 발생할 수 있습니다.

[상황: ], 대사: " ", 속마음: ( ) 처럼 특정 출력 형식을 강제할 경우, 다른 지침(이미지 출력, 상태창 등)과 충돌하여 형식이 깨지거나 일부 내용이 누락될 수 있습니다. 복잡한 지침을 여러 개 사용할 경우, 포맷 관련 지시는 최대한 간결하게 작성하는 것을 권장합니다.